SpinWeightedSpheroidalHarmonics

Install this package!

The SpinWeightedSpheroidalHarmonics package for Mathematica provides functions for computing spin-weighted spheroidal harmonics, spin-weighted spherical harmonics and their associated eigenvalues. Support is included for both arbitrary-precision numerical evaluation, and for series expansions.

S(s=-2, l=2, gamma=1.9)

Explicitly the package computes solutions to the equation

\[\left[\frac{1}{\sin\theta} \frac{d}{d\theta} \left( \sin\theta \frac{d}{d\theta}\right) - \gamma^2 \sin^2\theta - \frac{(m+s\cos\theta)^2}{\sin^2\theta} - 2\gamma s \cos\theta + s+ 2m\gamma + {}_s\lambda_{lm} \right] { }_{s}S_{lm} = 0 \nonumber\]

where

$S$ is the spin-weighted spheroidal harmonic
$s$ is the spin-weight
$l,m$ are the multipolar indices
$\gamma$ is the spheroidicity
$\lambda$ is the spheroidal eigenvalue

Numerical evaluation

Evaluating the spheroidal eigenfunction for $s=-2,l=2,m=2,\gamma=1.5$ is done via

SpinWeightedSpheroidalHarmonicS[-2, 2, 2, 1.5`30, π/2, 0]
0.066929509191673988268462820

Likewise the eigenvalue, $\lambda$, is computed by

SpinWeightedSpheroidalEigenvalue[-2, 2, 2, 1.5`30]
-5.5776273646788261891028539326

Note the output tracks the precision of the input so it is very easy to compute high precision results.

Small frequency expansions

Small frequency expansions can be performed for the eigenfunctions and eigenvalues

For given $s,l,m$ the eigenfunction can be expanded via, e.g.,

Series[SpinWeightedSpheroidalaHarmonicS[2, 3, 2, γ], {γ, 0, 1}]

This returns

$\frac{1}{2} \sqrt{\frac{7}{\pi }} e^{2 i \phi } \sin ^4\left(\frac{\theta }{2}\right) (3 \cos (\theta )+2)-\frac{1}{72} \gamma \left(\sqrt{\frac{7}{\pi }} e^{2 i \phi } \sin^4\left(\frac{\theta }{2}\right) (54 \cos (\theta )+27 \cos (2 \theta)+29)\right)+O\left(\gamma ^2\right)$

The series expansion above can also be performed for generic values of $s,l,m$ which returns a series in SpinWeightedSphericalHarmonicsY functions.

For generic $s,l,m$ the eigenvalues are expanded via:

Series[SpinWeightedSpheroidalEigenvalue[s, l, m, γ], {γ, 0, 1}]

returns

$\left(l^2+l-s (s+1)\right) + \gamma \left(-\frac{2 m s^2}{l (l+1)}-2 m\right) + O\left(\gamma ^2\right).$

The code is fast but note that in general the series expansion will be quicker to compute if you provide explicit values of $s,l,m$.

High frequency expansions

You can also calculate series expansions of the eigenvalue about $\gamma = \infty$. For example, for the $s=2,l=2,m=2$ case, the command:

Series[SpinWeightedSpheroidalEigenvalue[2, 2, 2, γ], {γ, ∞, 6}]

returns

$-6 \gamma -1 + \frac{3}{4 \gamma } -\frac{15}{64 \gamma ^3} -\frac{3}{16 \gamma ^4} +\frac{3}{512 \gamma ^5} + \frac{27}{128 \gamma ^6} +O\left[\frac{1}{\gamma}\right]^7$

Currently, for the high frequency expansions, you have to given explicit values for $s,l,m$.

Further examples

See the Documentation Centre for a tutorial and documentation on individual commands. See also the Mathematica Toolkit Examples for further example notebooks.

Authors and contributors

Barry Wardell, Niels Warburton, Marc Casals, Sarp Akcay, Adrian Ottewill