jax.scipy.special.lpmn_values#

jax.scipy.special.lpmn_values(m, n, z, is_normalized)[源代码]#

第一类缔合勒让德函数 (ALF)。

lpmn 不同,此函数仅计算 ALF 的值。第一类 ALF 可用于球谐函数。次数为 l 且阶数为 m 的球谐函数可以写成 \(Y_l^m(\theta, \phi) = N_l^m * P_l^m(\cos \theta) * \exp(i m \phi)\),其中 \(N_l^m\) 是归一化因子,θ 和 φ 分别是余纬和经度。\(N_l^m\) 的选择方式是使球谐函数构成 \(L^2(S^2)\) 的一组正交基函数。对 \(P_l^m\) 进行归一化可以避免溢出/下溢,并获得更好的数值稳定性。

参数:
  • m (int) – 缔合勒让德函数的最大阶数。

  • n (int) – 关联勒让德函数的最大阶数,通常在描述 ALFs 时称为 l。 阶数和次数均为 [0, 1, 2, …, l_max],其中 l_max 表示最大阶数。

  • z (Array) – 一个类型为 float32float64 的向量,包含计算 ALFs 的采样点。

  • is_normalized (bool) – 如果关联勒让德函数已归一化,则为 True。 进行归一化后,会应用 \(N_l^m\),使得球谐函数形成 \(L^2(S^2)\) 的一组正交基函数。

返回:

一个形状为 (l_max + 1, l_max + 1, len(z)) 的 3D 数组,包含第一类关联勒让德函数的值。 返回类型与 z 的类型匹配。

引发:
  • TypeError 如果数组 z 的元素不在 (float32, float64) 中。

  • ValueError 如果数组 z 不是 1D 的。

  • NotImplementedError 如果 m!=n。

返回类型:

Array