Angular Momentum Method Documentation¶
Generic methods¶
-
double
wigner_d_element
(const int l, const int m1, const int m2, const double beta)¶ Evaluates \(d^{l}_{m_1, m_2}(\beta)\) wigner-d element of the given angle \(\beta\).
- Return
The wigner-d element, \(d^{l}_{m_1, m_2}(\beta)\).
- Parameters
l
: The rank of the wigner-d matrix element.m1
: The quantum number \(m_1\).m2
: The quantum number \(m_2\).beta
: The angle \(\beta\) given in radian.
-
void
wigner_d_matrices
(const int l, const int n, const double *beta, double *wigner)¶ Evaluates \(n\) wigner-d matrices of rank \(l\) at \(n\) angles given in radians.
At a given angle, \(\beta\), the wigner-d matrix, \(d^{l}\left(m_1, m_2 | \beta\right)\), is a \((2l+1) \times (2l+1)\) square matrix where \(m_1\) and \(m_2\) range from \(-l\) to \(l\). The wigner-d elements, \(d^{l}_{m_1, m_2}(\beta)\), are ordered with \(m_1\) as the leading dimension. For example, when \(l=2\), the wigner-d elements are ordered according to
\[ \left[d^{2}_{-2, -2}(\beta),~d^{2}_{-1, -2}(\beta),~d^{2}_{0, -2}(\beta), ~~...~~d^{2}_{1, 2}(\beta),~d^{2}_{2, 2}(\beta) \right]. \]The \(n\) matrices are stored such that the wigner-d matrix from angle at index \(i\) is stacked after the wigner-d matrix from angle at index \(i-1\), that is, the wigner-d matrix corresponding to
angle[i]
starts at the indexi*(2*l+1)*(2*l+1)
.- Parameters
l
: The rank of the wigner-d matrix.n
: The number of wigner-d matrix to evaluate. This is also the length of angle array,beta
.beta
: A pointer to an array of length \(n\) where the angles \(\beta\) are stored in radians.wigner
: A pointer to an array of lengthn*(2*l+1)*(2*l+1)
.