sasktran2.util.WignerD#
- class sasktran2.util.WignerD(self: sasktran2._core.WignerD, m: int, n: int)#
Bases:
pybind11_objectPerforms calculations of the Wigner (small) d function, \(d^l_{m, n}(\theta)\).
First, this class is constructed for a given m and n, and then
d()is called for a given l.The Wigner functions are closely related to the associated Legendre polynomials, .. math:
d^l_{m, 0}(\theta) = \sqrt{\frac{(l-m)!}{(l+m)!}} P^m_l(\cos \theta)and the regular Legendre polynomials, .. math:
d^l_{0, 0}(\theta) = P_l(\cos \theta)
- __init__(self: sasktran2._core.WignerD, m: int, n: int) None#
Performs calculations of the Wigner (small) d function, \(d^l_{m, n}(\theta)\).
First, this class is constructed for a given m and n, and then
d()is called for a given l.The Wigner functions are closely related to the associated Legendre polynomials, .. math:
d^l_{m, 0}(\theta) = \sqrt{\frac{(l-m)!}{(l+m)!}} P^m_l(\cos \theta)and the regular Legendre polynomials, .. math:
d^l_{0, 0}(\theta) = P_l(\cos \theta)
Methods
__init__(self, m, n)Performs calculations of the Wigner (small) d function, \(d^l_{m, n}(\theta)\).
d(self, theta, l)Calculates \(d^l_{m, n}(\theta)\) for a given l, and m, n provided in the constructor.
- d(self: sasktran2._core.WignerD, theta: numpy.ndarray[numpy.float64], l: numpy.ndarray[numpy.int32]) object#
Calculates \(d^l_{m, n}(\theta)\) for a given l, and m, n provided in the constructor. Note that only one of theta, l can be array-like, one must be scalar.
- Parameters:
theta (numpy.ndarray[numpy.float64]) – Angles (in radians) to calculate the function at
l (numpy.ndarray[numpy.int32]) – The parameter n in \(d^l_{m, n}\)
- Returns:
The calculated Wigner function, either scalar or the same size as theta or l, whichever is array-like.
- Return type:
np.array