In this part of the parameter file the radiation transport module has to be selected. Depending on this selection a couple of additional parameters have to be specified. Table 12 gives a list of the parameters and the modules they apply to. The standard routines are now in the MSrad module for local models and the SHORTrad module for global ``Star-in-a-Box'' models. The LHDrad module is not maintained very much anymore.
|
character radscheme
:
character radscheme f=A80 b=80 n='Radiation transport scheme' & c0='LHDrad/MSrad/SHORTrad' & c1='None (skip radiation transport step entirely)' SHORTradPossible values are
None
: Skip radiation transport entirely.
LHDrad
:
(old ``supergiant module'')
It uses long characteristics and is restricted to an equidistant grid and
open boundaries at all surfaces.
Note that the switch -Drhd_r01=1
has to be set during compilation
(see Sect. 3.7).
MSrad
:
(``solar module'')
It uses long characteristics. The lateral boundaries have to be periodic.
Top and bottom can be closed or open.
Note that the switch -Drhd_r02=1
has to be set during compilation
(see Sect. 3.7).
SHORTrad
:
(new ``supergiant module'')
It uses short characteristics and is restricted to an equidistant grid and
open boundaries at all surfaces.
Note that the switch -Drhd_r03=1
has to be set during compilation
(see Sect. 3.7).
integer n_radminiter
:
integer n_radminiter f=I4 b=4 & n='Minimum number of radiation transport iterations' c0=8 1If less iterations are needed the time step limit for the next step is increased. This value will in almost any case (for explicit radiation transport) be set to
1
.
In the implicit case it is set to a higher value (typically 5
).
integer n_raditer
:
n_raditer
iterations will (probably) needed.
The parameter can be set e.g. with
integer n_raditer f=I4 b=4 & n='Number of radiation transport iterations' c0=10 8For a simulation of a solar-type star (with comparatively long radiative time scales) it will typically be set to
1
.
For starts with shorter radiative time scales values around 10
may be considered.
All three radiation transport modules understand this parameter.
integer n_radmaxiter
:
integer n_radmaxiter f=I4 b=4 & n='Maximum number of rad. transport iterations' c0=30 0If more iterations are needed the computation for the current time step is stopped and resumed with a smaller one (which means that the hydrodynamics and the tensor viscosity step have to be done again). Usually,
n_radmaxiter
will either be set to a values somewhat larger
than the recommended number of iterations (n_raditer
)
or to 0
which disable the check for too many iterations completely.
This can be safely allowed in many cases and has the advantage that there is
no need to save the initial model before calling the radiation transport module,
which saves some memory.
To disable the iteration of the radiation transport sub-step set
n_radminiter
=n_raditer
=n_radmaxiter
=1
.
All three radiation transport modules understand this parameter.
character radraybase
:
LHDrad
or SHORTrad
the orientation of the base axis system
can be selected e.g. with
character radraybase f=A80 b=80 n='Base axis system' & c0='unity/random/randomgroup' randomAllowed values are
unity
: (default) During all time steps and radiative sub-steps
the direction of the rays stays the same.
random
: At each time step (and radiative sub-step) a new base axis system is
chosen at random
randomgroup
: At each new time step a new base axis system is
chosen at random. It is kept for all radiative sub-steps.
radraystar
) it is advisable to vary the directions of the rays
(by choosing radraybase
=random
or randomgroup
) to cover
the entire sphere at least over a longer time.
character radraystar
:
LHDrad
or SHORTrad
the list of ray directions (i.e. the number of rays and their coordinates)
relative to the base axis system can be specified with e.g.
character radraystar f=A80 b=80 n='List of relative ray directions' & c0='x1(1)/x2(1)/x3(1)/oktaeder(3)/tetraeder(4)/cube(4)' & c1='ikosaeder(6)/dodekaeder(10)' oktaederExamples for allowed values are
x1
: (N=1) one single ray along x1 axis (not enough to specify fluxes in all directions)
x2
: (N=1) one single ray along x2 axis (not enough to specify fluxes in all directions)
x3
: (N=1) one single ray along x3 axis (not enough to specify fluxes in all directions)
oktaeder
: (N=3, default) octahedron
tetraeder
: (N=4) tetrahedron
cube
: (N=4)
ikosaeder
: (N=6) icosahedron
dodekaeder
: (N=10) dodecahedron
list-01
, list-01(3)
: Choose ray systems from a list (oktahedrons, tetrahedrons).
If character radraybase
is set to unity
the rays
will only be aligned to the axes or diagonals and thus avoid the
time-consuming interpolation step of the short-characteristics method.
integer n_radtheta
:
MSrad
module the ray directions have to specified in a different way:
The number of ray sets in theta direction can be chosen with e.g. integer n_radtheta f=I4 b=4 & n='NTHETA: Number of ray sets in theta direction' c0=2 2
integer n_radphi
:
MSrad
module
the number of ray sets in phi direction can be set e.g. with
integer n_radphi f=I4 b=4 & n='NPHI: Number of ray sets in phi direction' c0=2 2
integer n_radsubray
:
MSrad
module
the number of rays per cell (with the same direction)
can be specified e.g. with
integer n_radsubray f=I4 b=4 n='KPHI: Number of rays per cell' c0=2 2
integer n_radthickpoint
:
MSrad
module the lower part of the model can be computed in diffusion approximation.
The number of points in diffusion approximation can be set with e.g. integer n_radthickpoint f=I4 b=4 & n='Number of grid points with optically thick (diff.) approximation' & c0='0: no diffusion approximation' 0Setting this value to
0
means that the diffusion approximation is not used
in any part of the model.
integer n_radtaurefine
:
LHDrad
and the MSrad
module the number of points on the rays
can be finer than the number of points in the basic numerical grid.
The refinement can be set e.g. with
integer n_radtaurefine f=I4 b=4 & n='Refinement factor' 0
integer n_radband
:
integer n_radband f=I4 b=4 n='Number of frequency bins' & c0='1: grey opacities' & c1='2: non-grey opacities (if available from table)' 1Allowed values are
1
: Use the grey part of the table
2
: Use the other (possibly non-grey, frequency-dependent) part of the table
MSrad
module so far can handle non-grey tables.
real c_radimplicitmu
:
LHDrad
and the SHORTrad
module (tentatively) support
implicit radiation transport.
It can be activated with the parameter
real c_radimplicitmu f=E15.8 b=4 & n='Implicitness parameter for radiation transport' u=1 & c0='0.0: explicit / 0.5: time centered / 1.0: fully implicit' 0.0Allowed values are
0.0
: Fully explicit radiation transport
(possible with all modules)
0.0
1.0
: Partly implicit radiation transport
0.5
: Radiation transport time-centered
1.0
: Fully implicit radiation transport
real c_raditereps
:
LHDrad
module only)
the requested convergence accuracy of the iteration can be set e.g. with
real c_raditereps f=E15.8 b=4 & n='Relative accuracy for radiation iteration' u=1 & c0='Typical value: 1.0E-03' 2.0E-03
real c_raditerstep
:
LHDrad
module only)
the step size of the iteration can be restricted with e.g. real c_raditerstep f=E15.8 b=4 & n='Step size of radiation iteration' u=1 & c0='Typical values: 0.7,0.81' 1.0Allowed values are
0.0
1.0
: Restricted step size
1.0
: No restriction, standard step size
1.0
: Extra large steps
real c_radtvisdtau
:
LHDrad
module
the limit in delta optical depth (rho*kappa*dx) below which the
``radiative temperature viscosity'' (=temperature smoothing) is to be applied
can be set with e.g.
real c_radtvisdtau f=E15.8 b=4 & n='Optical depth limit for temperature viscosity' u=1 0.1The introduction of this ``temperature diffusion'' is a somewhat desperate and inelegant attempt to improve the behavior of the Greens function (hot cells should be cooled, cool cells should be heated). This diffusion is necessary for not well resolved models. It is switched off with
c_radtvisdtau
0.0
.
real c_radtvis
:
LHDrad
module
the amount of the ``radiative temperature viscosity'' (=temperature smoothing)
can be specified e.g. with
real c_radtvis f=E15.8 b=4 n='Temperature viscosity' u=1 1.6For well resolved models it should be switched off (with
c_radtvis
0.0
).
But often its use is necessary.