source terms module for simple optically thin cooling More...
Data Types | |
| type | sources_cooling |
Functions/Subroutines | |
| subroutine | initsources (this, Mesh, Physics, Fluxes, config, IO) |
| subroutine | setoutput (this, Mesh, config, IO) |
| subroutine | externalsources (this, Mesh, Physics, Fluxes, Sources, time, dt, pvar, cvar, sterm) |
| subroutine | calctimestep (this, Mesh, Physics, Fluxes, pvar, cvar, time, dt, dtcause) |
| caculates the limiting time step due to cooling More... | |
| subroutine | updatecooling (this, Mesh, Physics, time, pvar) |
| Updates the cooling function at each time step. More... | |
| elemental real function | lambda (T) |
| simple optically thin cooling function ATTENTION: input data should be in SI-units, output is provided in W/m^3 More... | |
| subroutine | finalize (this) |
Variables | |
| character(len=32), parameter | source_name = "optically thin cooling" |
Detailed Description
source terms module for simple optically thin cooling
Function/Subroutine Documentation
◆ calctimestep()
| subroutine sources_cooling_mod::calctimestep | ( | class(sources_cooling), intent(inout) | this, |
| class(mesh_base), intent(in) | Mesh, | ||
| class(physics_base), intent(inout) | Physics, | ||
| class(fluxes_base), intent(in) | Fluxes, | ||
| class(marray_compound), intent(inout) | pvar, | ||
| class(marray_compound), intent(inout) | cvar, | ||
| real, intent(in) | time, | ||
| real, intent(inout) | dt, | ||
| integer, intent(out) | dtcause | ||
| ) |
caculates the limiting time step due to cooling
The timescale is calculated by \( t \sim Q_{\mathrm{cool}}/P \), where \( Q_{\mathrm{cool}} \) is the heating term and \( P \) the pressure.
Definition at line 179 of file sources_cooling.f90.
◆ externalsources()
|
private |
Definition at line 143 of file sources_cooling.f90.
◆ finalize()
|
private |
Definition at line 275 of file sources_cooling.f90.
◆ initsources()
|
private |
Definition at line 76 of file sources_cooling.f90.
◆ lambda()
|
private |
simple optically thin cooling function ATTENTION: input data should be in SI-units, output is provided in W/m^3
Definition at line 256 of file sources_cooling.f90.

◆ setoutput()
| subroutine sources_cooling_mod::setoutput | ( | class(sources_cooling), intent(inout) | this, |
| class(mesh_base), intent(in) | Mesh, | ||
| type(dict_typ), pointer | config, | ||
| type(dict_typ), pointer | IO | ||
| ) |
Definition at line 126 of file sources_cooling.f90.
◆ updatecooling()
|
private |
Updates the cooling function at each time step.
Definition at line 213 of file sources_cooling.f90.

Variable Documentation
◆ source_name
|
private |
Definition at line 53 of file sources_cooling.f90.
1.9.4