|
MPI-AMRVAC 3.2
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
|
This module reads in CAK line opacities in the Gayley (1995) notation (alpha, Qbar, Q0, kappae) from corresponding tables. Tabulated values assume LTE conditions and are a function of mass density (D) and temperature (T), which are both given in base 10 logarithm. The construction of the tables is outlined in Poniatowski+ (2021), A&A 667. More...
Functions/Subroutines | |
| subroutine, public | init_cak_table (tabledir, set_custom_tabledir) |
| This routine is called when the FLD or CAK module is initialised. | |
| subroutine, public | set_cak_opacity (rho, temp, alpha_output, qbar_output, q0_output, kappae_output) |
| This subroutine calculates the opacity for a given temperature-density structure. Opacities are read from a table with given metalicity. | |
Variables | |
| double precision, dimension(idmin:idmax, itmin:itmax), public | alpha_vals |
| The opacity tables are read once and stored globally. | |
| double precision, dimension(idmin:idmax, itmin:itmax), public | qbar_vals |
| double precision, dimension(idmin:idmax, itmin:itmax), public | q0_vals |
| double precision, dimension(idmin:idmax, itmin:itmax), public | kappae_vals |
| double precision, dimension(idmin:idmax), public | logd_list |
| double precision, dimension(itmin:itmax), public | logt_list |
This module reads in CAK line opacities in the Gayley (1995) notation (alpha, Qbar, Q0, kappae) from corresponding tables. Tabulated values assume LTE conditions and are a function of mass density (D) and temperature (T), which are both given in base 10 logarithm. The construction of the tables is outlined in Poniatowski+ (2021), A&A 667.
The CAK opacity tables are stored in src/tables/CAK_tables. It is possible to use different tables when giving the absolute or relative path to the directory containing the tables. The only limitation is that the size of the non-default tables equals the size of the tables in src/tables/CAK_tables.
This module is used in the FLD radiation module and the CAK force module.
| subroutine, public mod_cak_opacity::init_cak_table | ( | character(len=*), intent(in) | tabledir, |
| logical, intent(in), optional | set_custom_tabledir ) |
This routine is called when the FLD or CAK module is initialised.
Definition at line 42 of file mod_cak_opacity.t.
| subroutine, public mod_cak_opacity::set_cak_opacity | ( | double precision, intent(in) | rho, |
| double precision, intent(in) | temp, | ||
| double precision, intent(out) | alpha_output, | ||
| double precision, intent(out) | qbar_output, | ||
| double precision, intent(out) | q0_output, | ||
| double precision, intent(out) | kappae_output ) |
This subroutine calculates the opacity for a given temperature-density structure. Opacities are read from a table with given metalicity.
Definition at line 70 of file mod_cak_opacity.t.

| double precision, dimension(idmin:idmax,itmin:itmax), public mod_cak_opacity::alpha_vals |
The opacity tables are read once and stored globally.
Definition at line 30 of file mod_cak_opacity.t.
| double precision, dimension(idmin:idmax,itmin:itmax), public mod_cak_opacity::kappae_vals |
Definition at line 33 of file mod_cak_opacity.t.
| double precision, dimension(idmin:idmax), public mod_cak_opacity::logd_list |
Definition at line 34 of file mod_cak_opacity.t.
| double precision, dimension(itmin:itmax), public mod_cak_opacity::logt_list |
Definition at line 34 of file mod_cak_opacity.t.
| double precision, dimension(idmin:idmax,itmin:itmax), public mod_cak_opacity::q0_vals |
Definition at line 32 of file mod_cak_opacity.t.
| double precision, dimension(idmin:idmax,itmin:itmax), public mod_cak_opacity::qbar_vals |
Definition at line 31 of file mod_cak_opacity.t.