scipy.special.mathieu_cem#
- scipy.special.mathieu_cem(m, q, x, out=None) = <ufunc 'mathieu_cem'>#
偶马蒂厄函数及其导数
返回阶数为 m,参数为 q 的偶马蒂厄函数
ce_m(x, q)
,在 x 处的值(以度为单位)。同时返回 ce_m(x, q) 关于 x 的导数。- 参数:
- marray_like
函数的阶数
- qarray_like
函数的参数
- xarray_like
函数的自变量,以度为单位,而非弧度
- outndarray 元组,可选
函数结果的可选输出数组
- 返回:
- y标量或 ndarray
函数的值
- yp标量或 ndarray
相对于 x 的导数的值
注释
偶马蒂厄函数是马蒂厄微分方程的解
\[\frac{d^2y}{dx^2} + (a_m - 2q \cos(2x))y = 0\]其中特征数 \(a_m\) (使用
mathieu_a
计算)得到一个周期为 180 度(对于偶数 \(m\))或 360 度(对于奇数 \(m\))的奇数周期解 \(y(x)\)。参考文献
[1]‘马蒂厄函数’。维基百科。 https://en.wikipedia.org/wiki/Mathieu_function
示例
绘制阶数为
2
和4
的偶马蒂厄函数。>>> import numpy as np >>> from scipy import special >>> import matplotlib.pyplot as plt >>> m = np.asarray([2, 4]) >>> q = 50 >>> x = np.linspace(-180, 180, 300)[:, np.newaxis] >>> y, _ = special.mathieu_cem(m, q, x) >>> plt.plot(x, y) >>> plt.xlabel('x (degrees)') >>> plt.ylabel('y') >>> plt.legend(('m = 2', 'm = 4'))
因为阶数
2
和4
是偶数,所以每个函数的周期为 180 度。