![]() |
Module to calculate electron screening. More...
Functions/Subroutines | |
subroutine, public | init_screening (nreac) |
Initialize the screening module. More... | |
subroutine, public | screen (t9, rho, n, ye, mode) |
This function calculates the screening coefficients hv. More... | |
real(r_kind) function, private | free_energy_kravchuk_yakovlev (gamma) |
Free energy according to parametrization of Kravchuk and Yakovlev. More... | |
subroutine, public | screening (t9, rho, z1, z2, a1, a2, ye, mode, h, ht, hp) |
Interface for the screening. More... | |
subroutine, private | screening_kravchuk_yakovlev (t9, rho, z1, z2, a1, a2, ye, mode, h, ht, hp) |
Screening function according to Kravchuk & Yakovlev (2014) More... | |
Variables | |
real(r_kind), dimension(:), allocatable, public | hv |
Screening correction. More... | |
real(r_kind), dimension(:), allocatable, public | htv |
temp. derivative More... | |
real(r_kind), dimension(:), allocatable, public | hpv |
density derivative More... | |
logical, public | iscreen |
Flag whether screening is enabled or not. More... | |
Module to calculate electron screening.
This module calculates the screening function h (=ln(f_screen))
Edited:
|
private |
Free energy according to parametrization of Kravchuk and Yakovlev.
This function calculates the free energy of a one-component plasma according to equation 19 of Kravchuk & Yakovlev (2014).
[in] | gamma | Ion coupling parameter |
Definition at line 150 of file screening_module.f90.
subroutine, public screening_module::init_screening | ( | integer, intent(in) | nreac | ) |
Initialize the screening module.
Allocates screening correction arrays.
[in] | nreac | Number of reactions |
Definition at line 42 of file screening_module.f90.
subroutine, public screening_module::screen | ( | real(r_kind), intent(in) | t9, |
real(r_kind), intent(in) | rho, | ||
integer, intent(in) | n, | ||
real(r_kind), intent(in) | ye, | ||
integer, intent(in) | mode | ||
) |
This function calculates the screening coefficients hv.
It serves as interface between the subroutine Screening corrections and the jacobian_class.
Edited:
Definition at line 77 of file screening_module.f90.
subroutine, public screening_module::screening | ( | real(r_kind), intent(in) | t9, |
real(r_kind), intent(in) | rho, | ||
integer, intent(in) | z1, | ||
integer, intent(in) | z2, | ||
integer, intent(in) | a1, | ||
integer, intent(in) | a2, | ||
real(r_kind), intent(in) | ye, | ||
integer, intent(in) | mode, | ||
real(r_kind), intent(out) | h, | ||
real(r_kind), intent(out) | ht, | ||
real(r_kind), intent(out) | hp | ||
) |
Interface for the screening.
This subroutine is an interface for the different screening prescriptions.
[in] | mode | =0 no derivatives are calculated, =1 ht=dln(f)/d(t9)=dh/dt9, hp=dln(f)/d(rho)=dh/d(rho) |
[in] | t9 | temperature [GK] |
[in] | rho | density [g/cm^3] |
[in] | z2 | charge numbers of colliding nuclei |
[in] | a2 | mass numbers of colliding nuclei |
[in] | ye | electron fraction |
[out] | h | screening function |
[out] | ht | dln(f)/d(t9)=dh/dt9 |
[out] | hp | dln(f)/d(rho)=dh/d(rho) |
Definition at line 180 of file screening_module.f90.
|
private |
Screening function according to Kravchuk & Yakovlev (2014)
This function calculates the screening function according to equation 62 of Kravchuk & Yakovlev (2014) using the "combined" model.
[in] | mode | =0 no derivatives are calculated, =1 ht=dln(f)/d(t9)=dh/dt9, hp=dln(f)/d(rho)=dh/d(rho) |
[in] | t9 | temperature [GK] |
[in] | rho | density [g/cm^3] |
[in] | z2 | charge numbers of colliding nuclei |
[in] | a2 | mass numbers of colliding nuclei |
[in] | ye | electron fraction |
[out] | h | screening function |
[out] | ht | dln(f)/d(t9)=dh/dt9 |
[out] | hp | dln(f)/d(rho)=dh/d(rho) |
Definition at line 220 of file screening_module.f90.
real(r_kind), dimension(:), allocatable, public screening_module::hpv |
density derivative
Definition at line 22 of file screening_module.f90.
real(r_kind), dimension(:), allocatable, public screening_module::htv |
temp. derivative
Definition at line 21 of file screening_module.f90.
real(r_kind), dimension(:), allocatable, public screening_module::hv |
Screening correction.
Definition at line 20 of file screening_module.f90.
logical, public screening_module::iscreen |
Flag whether screening is enabled or not.
Definition at line 24 of file screening_module.f90.