Numpy SciPy:SciPy.special.fresnel(x[,out1,out2])中的参数是什么?
我试图用SciPy绘制一个回旋函数。是菲涅耳积分的语法,但我无法理解Numpy SciPy:SciPy.special.fresnel(x[,out1,out2])中的参数是什么?,numpy,integration,scipy,fresnel,Numpy,Integration,Scipy,Fresnel,我试图用SciPy绘制一个回旋函数。是菲涅耳积分的语法,但我无法理解scipy.special.Fresnel(x[,out1,out2])中的参数x,out1,out2?说明中的公式是关于t和z,它们不在函数中。参数out1和out2是可选的。你可以用 s, c = fresnel(x) docstring中显示的参数z是x参数。这是一个不幸的差异——docstring应该与函数签名一致 如果要将函数调用的结果放入数组中,则可以使用参数out1和out2。这允许您通过重用现有阵列来节省内存
scipy.special.Fresnel(x[,out1,out2])
中的参数x
,out1
,out2
?说明中的公式是关于t
和z
,它们不在函数中。参数out1
和out2
是可选的。你可以用
s, c = fresnel(x)
docstring中显示的参数z
是x
参数。这是一个不幸的差异——docstring应该与函数签名一致
如果要将函数调用的结果放入数组中,则可以使用参数
out1
和out2
。这允许您通过重用现有阵列来节省内存
请注意,函数的scipy实现将参数按pi/2进行缩放。请参阅维基百科文章中的注释:
此脚本将生成wikipedia文章中显示的第一个绘图:
import numpy as np
from scipy.special import fresnel
import matplotlib.pyplot as plt
t = np.linspace(0, 5.0, 201)
ss, cc = fresnel(t / np.sqrt(np.pi / 2))
scaled_ss = np.sqrt(np.pi / 2) * ss
scaled_cc = np.sqrt(np.pi / 2) * cc
plt.plot(t, scaled_cc, 'g--', t, scaled_ss, 'r-', linewidth=2)
plt.grid(True)
plt.show()
非常感谢。这就解释了一些事情。顺便说一下,我不需要缩放。我在
cc
和ss
前面使用一个系数a
,以获得回旋尾翼的正确角度(pi/2的倍数):plt.plot(a*cc,a*ss,'r-o',线宽=2)
。因此,对于a=1
我得到了结束角pi/2
。