Wigner \(D\) and Pauli matrices#

Hide code cell content
import sympy as sp
from ampform.io import aslatex
from IPython.display import Math
from sympy import pi
from sympy.physics.matrices import msigma
from sympy.physics.quantum.spin import Rotation as Wigner

j, m, mp = sp.symbols(R"j m m^{\prime}", nonnegative=True, rational=True)
alpha, beta, gamma = sp.symbols("alpha beta gamma", real=True)
half = sp.Rational(0.5)

Big Wigner \(D\) matrices#

Hide code cell source
def render_wigner_big_d(j: sp.Rational) -> Math:
    symbol = Wigner.D(j, m, mp, alpha, beta, gamma)
    expr = get_wigner_big_d(j)
    return Math(aslatex({symbol: sp.latex(expr)}))


def get_wigner_big_d(j: sp.Rational) -> sp.Matrix:
    dim = int(2 * j + 1)
    return sp.Matrix([
        [
            Wigner.D(j, x - j, y - j, alpha, beta, gamma).doit().simplify()
            for x in range(dim)
        ]
        for y in range(dim)
    ])
render_wigner_big_d(j=half)
\[\begin{split}\displaystyle \begin{array}{rcl} D^{\frac{1}{2}}_{m,m^{\prime}}\left(\alpha,\beta,\gamma\right) &=& \left[\begin{matrix}e^{\frac{i \left(\alpha + \gamma\right)}{2}} \cos{\left(\frac{\beta}{2} \right)} & - e^{- \frac{i \left(\alpha - \gamma\right)}{2}} \sin{\left(\frac{\beta}{2} \right)}\\e^{\frac{i \left(\alpha - \gamma\right)}{2}} \sin{\left(\frac{\beta}{2} \right)} & e^{- \frac{i \left(\alpha + \gamma\right)}{2}} \cos{\left(\frac{\beta}{2} \right)}\end{matrix}\right] \\ \end{array}\end{split}\]
render_wigner_big_d(j=1)
\[\begin{split}\displaystyle \begin{array}{rcl} D^{1}_{m,m^{\prime}}\left(\alpha,\beta,\gamma\right) &=& \left[\begin{matrix}\frac{\left(\cos{\left(\beta \right)} + 1\right) e^{i \left(\alpha + \gamma\right)}}{2} & - \frac{\sqrt{2} e^{i \gamma} \sin{\left(\beta \right)}}{2} & \frac{\left(1 - \cos{\left(\beta \right)}\right) e^{i \left(- \alpha + \gamma\right)}}{2}\\\frac{\sqrt{2} e^{i \alpha} \sin{\left(\beta \right)}}{2} & \cos{\left(\beta \right)} & - \frac{\sqrt{2} e^{- i \alpha} \sin{\left(\beta \right)}}{2}\\\frac{\left(1 - \cos{\left(\beta \right)}\right) e^{i \left(\alpha - \gamma\right)}}{2} & \frac{\sqrt{2} e^{- i \gamma} \sin{\left(\beta \right)}}{2} & \frac{\left(\cos{\left(\beta \right)} + 1\right) e^{- i \left(\alpha + \gamma\right)}}{2}\end{matrix}\right] \\ \end{array}\end{split}\]

Small Wigner \(d\) matrices#

Hide code cell source
def render_wigner_small_d(j: sp.Rational) -> Math:
    symbol = Wigner.d(j, m, mp, beta)
    expr = get_wigner_small_d(j)
    return Math(aslatex({symbol: sp.latex(expr)}))


def get_wigner_small_d(j: sp.Rational) -> sp.Matrix:
    dim = int(2 * j + 1)
    return sp.Matrix([
        [Wigner.d(j, x - j, y - j, beta).doit().simplify() for x in range(dim)]
        for y in range(dim)
    ])
render_wigner_small_d(j=half)
\[\begin{split}\displaystyle \begin{array}{rcl} d^{\frac{1}{2}}_{m,m^{\prime}}\left(\beta\right) &=& \left[\begin{matrix}\cos{\left(\frac{\beta}{2} \right)} & - \sin{\left(\frac{\beta}{2} \right)}\\\sin{\left(\frac{\beta}{2} \right)} & \cos{\left(\frac{\beta}{2} \right)}\end{matrix}\right] \\ \end{array}\end{split}\]
render_wigner_small_d(j=1)
\[\begin{split}\displaystyle \begin{array}{rcl} d^{1}_{m,m^{\prime}}\left(\beta\right) &=& \left[\begin{matrix}\frac{\cos{\left(\beta \right)}}{2} + \frac{1}{2} & - \frac{\sqrt{2} \sin{\left(\beta \right)}}{2} & \frac{1}{2} - \frac{\cos{\left(\beta \right)}}{2}\\\frac{\sqrt{2} \sin{\left(\beta \right)}}{2} & \cos{\left(\beta \right)} & - \frac{\sqrt{2} \sin{\left(\beta \right)}}{2}\\\frac{1}{2} - \frac{\cos{\left(\beta \right)}}{2} & \frac{\sqrt{2} \sin{\left(\beta \right)}}{2} & \frac{\cos{\left(\beta \right)}}{2} + \frac{1}{2}\end{matrix}\right] \\ \end{array}\end{split}\]
render_wigner_small_d(j=3 * half)
\[\begin{split}\displaystyle \begin{array}{rcl} d^{\frac{3}{2}}_{m,m^{\prime}}\left(\beta\right) &=& \left[\begin{matrix}\frac{3 \cos{\left(\frac{\beta}{2} \right)}}{4} + \frac{\cos{\left(\frac{3 \beta}{2} \right)}}{4} & - \frac{\sqrt{3} \left(\sin{\left(\frac{\beta}{2} \right)} + \sin{\left(\frac{3 \beta}{2} \right)}\right)}{4} & \frac{\sqrt{3} \left(\cos{\left(\frac{\beta}{2} \right)} - \cos{\left(\frac{3 \beta}{2} \right)}\right)}{4} & - \frac{3 \sin{\left(\frac{\beta}{2} \right)}}{4} + \frac{\sin{\left(\frac{3 \beta}{2} \right)}}{4}\\\frac{\sqrt{3} \left(\sin{\left(\frac{\beta}{2} \right)} + \sin{\left(\frac{3 \beta}{2} \right)}\right)}{4} & \frac{\cos{\left(\frac{\beta}{2} \right)}}{4} + \frac{3 \cos{\left(\frac{3 \beta}{2} \right)}}{4} & \frac{\sin{\left(\frac{\beta}{2} \right)}}{4} - \frac{3 \sin{\left(\frac{3 \beta}{2} \right)}}{4} & \frac{\sqrt{3} \left(\cos{\left(\frac{\beta}{2} \right)} - \cos{\left(\frac{3 \beta}{2} \right)}\right)}{4}\\\frac{\sqrt{3} \left(\cos{\left(\frac{\beta}{2} \right)} - \cos{\left(\frac{3 \beta}{2} \right)}\right)}{4} & - \frac{\sin{\left(\frac{\beta}{2} \right)}}{4} + \frac{3 \sin{\left(\frac{3 \beta}{2} \right)}}{4} & \frac{\cos{\left(\frac{\beta}{2} \right)}}{4} + \frac{3 \cos{\left(\frac{3 \beta}{2} \right)}}{4} & - \frac{\sqrt{3} \left(\sin{\left(\frac{\beta}{2} \right)} + \sin{\left(\frac{3 \beta}{2} \right)}\right)}{4}\\\frac{3 \sin{\left(\frac{\beta}{2} \right)}}{4} - \frac{\sin{\left(\frac{3 \beta}{2} \right)}}{4} & \frac{\sqrt{3} \left(\cos{\left(\frac{\beta}{2} \right)} - \cos{\left(\frac{3 \beta}{2} \right)}\right)}{4} & \frac{\sqrt{3} \left(\sin{\left(\frac{\beta}{2} \right)} + \sin{\left(\frac{3 \beta}{2} \right)}\right)}{4} & \frac{3 \cos{\left(\frac{\beta}{2} \right)}}{4} + \frac{\cos{\left(\frac{3 \beta}{2} \right)}}{4}\end{matrix}\right] \\ \end{array}\end{split}\]

Relation to Pauli matrices#

Note how the Pauli matrices are related to the rotation around each axis in 3D space, which lives in \(SO(3)\), and each Wigner-\(D\) matrix, which lives in \(SU(2)\):

\[\begin{split} \begin{array}{rcl} \sigma_x &=& i \, D^\tfrac{1}{2}(-\pi,0,0) \\ \sigma_y &=& i \, D^\tfrac{1}{2}(0,+\pi,0) \\ \sigma_z &=& i \, D^\tfrac{1}{2}(0,0,-\pi) \,. \end{array} \end{split}\]
Hide code cell source
Math(aslatex({Rf"\sigma_{x}": sp.latex(msigma(i)) for i, x in enumerate("xyz", 1)}))
\[\begin{split}\displaystyle \begin{array}{rcl} \sigma_x &=& \left[\begin{matrix}0 & 1\\1 & 0\end{matrix}\right] \\ \sigma_y &=& \left[\begin{matrix}0 & - i\\i & 0\end{matrix}\right] \\ \sigma_z &=& \left[\begin{matrix}1 & 0\\0 & -1\end{matrix}\right] \\ \end{array}\end{split}\]
sp.I * get_wigner_big_d(j=half).subs({
    alpha: -pi,
    beta: 0,
    gamma: 0,
})
\[\begin{split}\displaystyle \left[\begin{matrix}1 & 0\\0 & -1\end{matrix}\right]\end{split}\]
sp.I * get_wigner_big_d(j=half).subs({
    alpha: 0,
    beta: pi,
    gamma: 0,
})
\[\begin{split}\displaystyle \left[\begin{matrix}0 & - i\\i & 0\end{matrix}\right]\end{split}\]
sp.I * get_wigner_big_d(j=half).subs({
    alpha: 0,
    beta: 0,
    gamma: -pi,
})
\[\begin{split}\displaystyle \left[\begin{matrix}1 & 0\\0 & -1\end{matrix}\right]\end{split}\]