wigner_big_D Interface

public interface wigner_big_D

Interface to access the routines to calculate D(α,β,γ) via matrix diagonalization or the analytic expression


Module Procedures

private module function wigner_big_D_jint(j, euler_alpha, euler_beta, euler_gamma, use_analytic) result(D)

Return the wigner D-matrix for integer j

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: j

The angular momentum

real(kind=rp), intent(in) :: euler_alpha

The Euler angle α

real(kind=rp), intent(in) :: euler_beta

The Euler angle β

real(kind=rp), intent(in) :: euler_gamma

The Euler angle γ

logical, intent(in), optional :: use_analytic

Force the use of the analytic expression to obtain ?

Return Value complex(kind=rp), allocatable, (:,:)

The Wigner D-matrix

private module function wigner_big_D_jreal(j, euler_alpha, euler_beta, euler_gamma, use_analytic) result(D)

Return the wigner D-matrix for real j

Arguments

Type IntentOptional Attributes Name
real(kind=rp), intent(in) :: j

The angular momentum

real(kind=rp), intent(in) :: euler_alpha

The Euler angle α

real(kind=rp), intent(in) :: euler_beta

The Euler angle β

real(kind=rp), intent(in) :: euler_gamma

The Euler angle γ

logical, intent(in), optional :: use_analytic

Force the use of the analytic expression to obtain ?

Return Value complex(kind=rp), allocatable, (:,:)

The Wigner D-matrix