rotex__MQDTXS Module

Routines to calculate cross sections with MQDT + S-matrix


Subroutines

public module subroutine get_smat_probs(total_energy_grid, prob, transitions, nmin, nmax, targcharge, smat_j, jmin, jmax, channels_j, channels_tot, spin_isomer_kind, symaxis)

Given a rotationally resolved S-matrix, calculate rotational (de-)excitation cross section probabilities for the supplied transitions.

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: total_energy_grid(:)

The total energy grid on which the S-matrix will be evaluated

type(rvector_type), intent(out), allocatable :: prob(:)

Probability at each pair of channels (n,N,Ka,Kc) ←→ (n',N',Ka',Kc')

type(asymtop_rot_transition_type), intent(inout), allocatable :: transitions(:)

Array of transitions that will be considered for (de-)excitation

integer, intent(in) :: nmin

Min/max values of N to consider for excitation calculations

integer, intent(in) :: nmax

Min/max values of N to consider for excitation calculations

integer, intent(in) :: targcharge

Charge of the target molecule

type(cmatrix_type), intent(in) :: smat_j(jmin:jmax)

Array of S-matrix sub-blocks for each J

integer, intent(in) :: jmin

Min/max values of J to consider for the S-matrix subblocks

integer, intent(in) :: jmax

Min/max values of J to consider for the S-matrix subblocks

type(asymtop_rot_channel_l_vector_type), intent(in) :: channels_j(jmin:jmax)

Contains the array of channels for each J

type(asymtop_rot_channel_l_type), intent(in) :: channels_tot(:)

Contains the array of channels ∀ J

integer, intent(in) :: spin_isomer_kind

What kinda spin symmetry we need to respect

character(len=1), intent(in) :: symaxis

The symmetry axis of the target