2

我正在尝试使用 SciPy 绘制回旋曲线函数。是菲涅耳积分的语法,但我不明白参数x, out1, out2in 是scipy.special.fresnel(x[, out1, out2])什么?描述中的公式是关于tz,它们不在函数中。

4

1 回答 1

2

参数out1out2是可选的。您可以使用

s, c = fresnel(x)

文档字符串中显示的参数zx参数。这是一个不幸的差异——文档字符串应该与函数签名一致。

如果您已经有要在其中放置函数调用结果的数组,则可以使用参数out1和。out2这允许您通过重用现有数组来节省内存。

请注意,函数的 scipy 实现将参数缩放 pi/2。请参阅维基百科文章中关于此的注释:http ://en.wikipedia.org/wiki/Fresnel_integral

该脚本将生成维基百科文章中显示的第一个图:

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()
于 2012-11-09T13:33:46.227 回答