calculates diagonal element of the centrifgual matrix, see Eq. 4 in "Coupling Matrix" section
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int32), | intent(in) | :: | total_angular_momentum_ |
total angular momentum |
||
integer(kind=int32), | intent(in) | :: | j_ |
rotational angular momentum |
||
integer(kind=int32), | intent(in) | :: | omega_ |
\(\bar{\Omega}\) |
(output) value of the diagonal element of the centrifgual matrix
function calculate_diagonal_centrifugal_element(total_angular_momentum_, &
j_, omega_) result(diagonal_element_)
!! calculates diagonal element of the centrifgual matrix, see
!! Eq. 4 in "Coupling Matrix" section
!---------------------------------------------------------------------!
integer(int32), intent(in) :: total_angular_momentum_
!! total angular momentum
integer(int32), intent(in) :: j_
!! rotational angular momentum
integer(int32), intent(in) :: omega_
!! \\(\bar{\Omega}\\)
real(dp) :: diagonal_element_
!! (output) value of the diagonal element of the centrifgual matrix
!---------------------------------------------------------------------!
diagonal_element_ = real( &
total_angular_momentum_ * (total_angular_momentum_ + 1) &
+ j_ * (j_ + 1) - 2 * omega_ **2, dp)
!---------------------------------------------------------------------!
end function calculate_diagonal_centrifugal_element