... | ... | @@ -14,7 +14,7 @@ CONTENTS |
|
|
[Specification of NCCM parameters](3.2-User-interfaces#specification-of-NCCM-parameters)
|
|
|
[User-controllable macros](3.2-User-interfaces#user-controllable-macros)
|
|
|
|
|
|
### Overview
|
|
|
## Overview
|
|
|
|
|
|
User interfaces are certain code modules in order to generate and
|
|
|
customize a simulation problem. There are three different types of user
|
... | ... | @@ -69,7 +69,7 @@ necessary for a problem setup. |
|
|
|
|
|
- `User.h` – freely available header file
|
|
|
|
|
|
### Specification of main simulation parameters
|
|
|
## Specification of main simulation parameters
|
|
|
|
|
|
NIRVANA requires the parameter file `nirvana.par` as input. In this file
|
|
|
the user specifies main parameters which characterize the properties of
|
... | ... | @@ -168,22 +168,22 @@ for the type of coordinate system. |
|
|
|
|
|
- `_C.freq_log`: interval in units of timestep cycles at which the
|
|
|
NIRVANA log file `nirvana.log` (cf.
|
|
|
\[here\](3.3-Output-data\#log-file)) and monitoring file
|
|
|
`nirvana.mon` (cf. \[here\](3.3-Output-data\#monitoring-file))
|
|
|
[here](3.3-Output-data#log-file)) and monitoring file
|
|
|
`nirvana.mon` (cf. [here](3.3-Output-data#monitoring-file))
|
|
|
is updated.
|
|
|
|
|
|
- `_C.freq_nir`: interval in units of timestep cycles at which
|
|
|
NIRVANA snapshots (cf.
|
|
|
\[here\](3.3-Output-data\#snapshot-files)) are produced.
|
|
|
[here](3.3-Output-data#snapshot-files)) are produced.
|
|
|
|
|
|
- `_C.freq_ana`: interval in units of timestep cycles at which the
|
|
|
user interface function `analysisUser()` is called for
|
|
|
user-specific analysis tasks (cf.
|
|
|
\[here\](3.5-Data-analysis\#runtime-data-analysis)).
|
|
|
[here](3.5-Data-analysis#runtime-data-analysis)).
|
|
|
|
|
|
- `_C.freq_walltime`: interval in seconds at which the special
|
|
|
snapshot `NIRLAST.#` (cf.
|
|
|
\[here\](3.3-Output-data\#snapshot-files)) is renewed
|
|
|
[here](3.3-Output-data#snapshot-files)) is renewed
|
|
|
overwriting existing older files.
|
|
|
|
|
|
`GEOMETRY`:
|
... | ... | @@ -349,7 +349,7 @@ for the type of coordinate system. |
|
|
concerning MPI and AMR.*
|
|
|
|
|
|
- `U`: user-defined boundary conditions (cf.
|
|
|
\[here\](3.2-User-interfaces\#defining-boundary-conditions)).
|
|
|
[here](3.2-User-interfaces#defining-boundary-conditions)).
|
|
|
|
|
|
`MESH REFINEMENT`:
|
|
|
|
... | ... | @@ -364,7 +364,7 @@ for the type of coordinate system. |
|
|
|
|
|
- `_C.imr` (≤`MAXLEVEL`): maximal requested refinement level in a
|
|
|
user-defined initially refined mesh (cf.
|
|
|
\[here\](3.2-User-interfaces\#user-defined-initial/restricted-mesh)).
|
|
|
[here](3.2-User-interfaces#user-defined-initial/restricted-mesh)).
|
|
|
`_C.imr` cannot be larger than the macro `MAXLEVEL` defined in
|
|
|
the header file `nirvanaUser.h`.
|
|
|
|
... | ... | @@ -379,7 +379,7 @@ for the type of coordinate system. |
|
|
field strength (`_C.amr_eps[3]`) and tracer variables
|
|
|
(`_C.amr_eps[4]`) in the derivatives-based mesh refinement
|
|
|
criterion (cf.
|
|
|
\[here\](3.1-Code-basics\#adaptive-mesh-refinement)). A zero or
|
|
|
[here](3.1-Code-basics#adaptive-mesh-refinement)). A zero or
|
|
|
negative value means that the respective component is disabled
|
|
|
for a mesh refinement check.
|
|
|
|
... | ... | @@ -426,12 +426,12 @@ for the type of coordinate system. |
|
|
|
|
|
- `_C.amr_Jeans` (typical value: 0.2): threshold in the
|
|
|
Jeans-length-based mesh refinement criterion (cf.
|
|
|
\[here\](3.1-Code-basics\#adaptive-mesh-refinement)). The value
|
|
|
[here](3.1-Code-basics#adaptive-mesh-refinement)). The value
|
|
|
`_C.amr_Jeans` defines the fraction of local Jeans length to be
|
|
|
resolved by at least one grid cell. A zero or negative value
|
|
|
means that the Jeans-length-based criterion is disabled.
|
|
|
|
|
|
- `_C.amr_dJeans` ( ≥ 0): tuning parameter for the
|
|
|
- `_C.amr_dJeans` (≥0): tuning parameter for the
|
|
|
Jeans-length-based mesh refinement criterion allowing a
|
|
|
systematic reduction of the Jeans threshold with increasing
|
|
|
refinement level *l* according to the expression `_C.amr_Jeans`
|
... | ... | @@ -443,7 +443,7 @@ for the type of coordinate system. |
|
|
|
|
|
- `_C.amr_Field` (typical value: 0.2): threshold in the
|
|
|
Field-length-based mesh refinement criterion (cf.
|
|
|
\[here\](3.1-Code-basics\#adaptive-mesh-refinement)). The value
|
|
|
[here](3.1-Code-basics#adaptive-mesh-refinement)). The value
|
|
|
`_C.amr_Field` defines the fraction of the local Field length to
|
|
|
be resolved by at least one grid cell. A zero or negative value
|
|
|
means that the Field-length-based criterion is disabled.
|
... | ... | @@ -546,13 +546,13 @@ for the type of coordinate system. |
|
|
|
|
|
- `06` (`_C.heatloss_max_change`)
|
|
|
|
|
|
- `_C.heatloss_max_change` (typical value: ≤ 0.1): maximal
|
|
|
- `_C.heatloss_max_change` (typical value: ≤0.1): maximal
|
|
|
allowed relative change in temperature due to the heatloss
|
|
|
source term.
|
|
|
|
|
|
- `07` (`_C.reactions_max_changeX`, `_C.reactions_max_changeT`)
|
|
|
|
|
|
- `_C.reactions_max_changeX` (typical value: ≤ 0.1): maximal
|
|
|
- `_C.reactions_max_changeX` (typical value: ≤0.1): maximal
|
|
|
relative change of species number densities (or total number
|
|
|
density) in the time integration of the chemo-thermal rate
|
|
|
equations.
|
... | ... | @@ -561,7 +561,7 @@ for the type of coordinate system. |
|
|
weight in applying the parameter `_C.reactions_max_change` to
|
|
|
individual number densities and to the total number density.*
|
|
|
|
|
|
- `_C.reactions_max_changeT` (typical value: ≤ 0.1): maximal
|
|
|
- `_C.reactions_max_changeT` (typical value: ≤0.1): maximal
|
|
|
relative change of temperature in the time integration of the
|
|
|
chemo-thermal rate equations.
|
|
|
|
... | ... | @@ -599,8 +599,8 @@ for the type of coordinate system. |
|
|
|
|
|
*Note: The Gaussian unit system can be mimicked by choosing a
|
|
|
value
|
|
|
`_``C``.``p``e``r``m``e``a``b``i``l``i``t``y``_``r``e``l` = 10<sup>7</sup>
|
|
|
so that the magnetic permeability is *μ* = 4*π*.*
|
|
|
`_``C.permeability_rel`=10<sup>7</sup>
|
|
|
so that the magnetic permeability is *μ*=4*π*.*
|
|
|
|
|
|
- `02` (`_C.viscosity`, `_C.viscosity_coeff`)
|
|
|
|
... | ... | @@ -642,7 +642,7 @@ for the type of coordinate system. |
|
|
`_C.conduction_coeff_perp` in the anisotropic case) described
|
|
|
next. The value U enables thermal conduction with a user-defined
|
|
|
conduction coefficient as coded in the user interface
|
|
|
**conductionCoeffUser.c**. The value S refers to the standard
|
|
|
`conductionCoeffUser.c`. The value S refers to the standard
|
|
|
Spitzer conductivity model (cf. physics guide
|
|
|
[Wiki](https://gitlab.aip.de/ziegler/NIRVANA/-/wikis/A-PhysicsGuide),
|
|
|
[PDF](https://gitlab.aip.de/ziegler/NIRVANA/doc/pdf/PhysicsGuide.pdf)).
|
... | ... | @@ -737,11 +737,11 @@ for the type of coordinate system. |
|
|
|
|
|
- USER: user-defined analytic EOS. This choice requires the
|
|
|
specification of special macros (cf.
|
|
|
\[here\](3.2-User-interfaces\#user-defined-equation-of-state))
|
|
|
[here](3.2-User-interfaces#user-defined-equation-of-state))
|
|
|
|
|
|
- TAB: user-defined tabulated EOS. This choice requires the
|
|
|
generation of look-up tables (cf.
|
|
|
\[here\](3.2-User-interfaces\#user-defined-equation-of-state)).
|
|
|
[here](3.2-User-interfaces#user-defined-equation-of-state)).
|
|
|
|
|
|
*Note: The choice of an isothermal EOS or polytropic EOS is not
|
|
|
compatible with solving for an energy equation.*
|
... | ... | @@ -753,7 +753,7 @@ for the type of coordinate system. |
|
|
freely selectable parameter but is approximated by the
|
|
|
expression*
|
|
|
|
|
|
*γ* = \[5(*n*<sub>*H*</sub>+*n*<sub>*H**e*</sub>+*n*<sub>*e*</sub>)+7*n*<sub>*H*<sub>2</sub></sub>\]/\[3(*n*<sub>*H*</sub>+*n*<sub>*H**e*</sub>+*n*<sub>*e*</sub>)+5*n*<sub>*H*<sub>2</sub></sub>\]
|
|
|
*γ*=\[5(*n*<sub>*H*</sub>+*n*<sub>*H**e*</sub>+*n*<sub>*e*</sub>)+7*n*<sub>*H*<sub>2</sub></sub>\]/\[3(*n*<sub>*H*</sub>+*n*<sub>*H**e*</sub>+*n*<sub>*e*</sub>)+5*n*<sub>*H*<sub>2</sub></sub>\]
|
|
|
|
|
|
- `_C.polytropic_constant`: polytropic constant in the polytropic
|
|
|
EOS.
|
... | ... | @@ -771,9 +771,9 @@ for the type of coordinate system. |
|
|
[PDF](https://gitlab.aip.de/ziegler/NIRVANA/doc/pdf/PhysicsGuide.pdf)).
|
|
|
The value U enables the heatloss term assuming a user-defined
|
|
|
cooling/heating function coded in the interfaces
|
|
|
**sourceCoolingUser.c** for cooling and **sourceHeatingUser.c**
|
|
|
`sourceCoolingUser.c` for cooling and `sourceHeatingUser.c`
|
|
|
for heating (cf.
|
|
|
\[here\](3.2-User-interfaces\#user-defined-cooling/heating-function)).
|
|
|
[here](3.2-User-interfaces#user-defined-cooling/heating-function)).
|
|
|
|
|
|
- `11` (`_C.tracer`)
|
|
|
|
... | ... | |