do_coulomb_born_approx Module Subroutine

public module subroutine do_coulomb_born_approx(cfg, n_states, egrid_elec_cb, transitions_cb, xs_xcite_pcb, xs_xcite_tcb, pcb_output_directory, tcb_output_directory)

Use the Coulomb-Born approximation to get scattering cross sections for e⁻ + target. Also determines Einstein A coefficients and excited state average lifetimes within !! the radiative dipole/multipole approximation. The target charge Z is supplied and used by the routine that are called here, so various target charges can be used, including Z = 0 (neutral targets). This routine loops over the different pairs Nτ —→ N'τ'

Arguments

Type IntentOptional Attributes Name
type(config_type), intent(in) :: cfg
type(N_states_type), intent(inout), allocatable :: n_states(:)
type(rvector_type), intent(out), allocatable :: egrid_elec_cb(:)

Array of arrays of electron/collision energies for each transition

type(asymtop_rot_transition_type), intent(out), allocatable :: transitions_cb(:)

Array containing transitions between rotational states for the long-range CB excitations

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

Array of arrays of the Partial and Total Coulomb-Born cross sections for each transition

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

Array of arrays of the Partial and Total Coulomb-Born cross sections for each transition

character(len=*), intent(in) :: pcb_output_directory
character(len=*), intent(in) :: tcb_output_directory