jax.scipy.special.sph_harm#

jax.scipy.special.sph_harm(m, n, theta, phi, n_max=None)[原始碼]#

計算球諧函數。

注意

此函數已過時,應改用 sph_harm_y(),請注意 mn 的順序已反轉,且 thetaphi 的定義已交換。

JAX 版本有一個額外參數 n_max,即 n 中的最大值。

n 和階 m 的球諧函數可以寫成 \(Y_n^m(\theta, \phi) = N_n^m * P_n^m(\cos \phi) * \exp(i m \theta)\),其中 \(N_n^m = \sqrt{\frac{\left(2n+1\right) \left(n-m\right)!} {4 \pi \left(n+m\right)!}}\) 是歸一化因子,而 \(\phi\)\(\theta\) 分別是餘緯和經度。\(N_n^m\) 的選擇方式使球諧函數形成 \(L^2(S^2)\) 的正交基函數集。

參數:
  • m (Array) – 諧波的階數;必須具有 |m| <= n|m| > n 的傳回值未定義。

  • n (Array) – 諧波的度數;必須具有 n >= 0。 球諧函數描述中度的標準表示法是 l (小寫 L)。 這裡我們使用 n 是為了與 scipy.special.sph_harm 保持一致。 n < 0 的傳回值未定義。

  • theta (Array) – 方位角(經度)座標;必須在 [0, 2*pi] 範圍內。

  • phi (Array) – 極座標(餘緯)座標;必須在 [0, pi] 範圍內。

  • n_max (int | None | None) – 最大度數 max(n)。 如果提供的 n_max 不是 n 的真實最大值,則結果會被裁剪為 n_max。 例如,sph_harm(m=jnp.array([2]), n=jnp.array([10]), theta, phi, n_max=6) 實際上會傳回 sph_harm(m=jnp.array([2]), n=jnp.array([6]), theta, phi, n_max=6)

傳回:

包含 (m, n, theta, phi) 處球諧函數的一維陣列。

傳回類型:

Array