Runtime parameters for rascas#
Configuration files are organised in sections that each contains parameters related to a given code module. At runtime, codes from the RASCAS suite will search for the sections they need in the configuration file and parse parameter names. A unique configuration file can thus be used for several codes, and sections which are not needed will be ignored. Sections do not need to be in any particular order. Examples of parameter files can be found in the tests directory.
Note on paths: we recommend defining absolute paths in the parameters.
[RASCAS]#
The section [RASCAS] is used to define runtime parameters of the rascas code.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Path to the directory where the domain and mesh files are |
|
|
|
Path to the photon packet initial conditions file |
|
|
|
Path to the standard output file |
|
|
|
Number of photon packets sent by the master to each worker at each message (use a large value (e.g. 10,000) when there are few scatterings per photon packet, and a low value (e.g. 10) for Lyman-alpha) |
|
|
|
Set verbosity to true or false |
[dust]#
The section [dust] contains parameters that define the dust modelling. This section is read by module_dust_model.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Dust albedo, the value is dust and wavelength dependant. Default 0.32 for Lya, from Li & Draine 2001 |
|
|
|
g parameter of the Henyey-Greenstein phase function for dust scattering. Default 0.73 from Li & Draine 2001 |
|
|
|
Dust extinction law. Could be SMC or LMC |
[gas_composition]#
The section [gas_composition] is used to define the collection of absorbers that will interact with photons. It is read in module_gas_composition.f90 and uses atomic data from files in the directory atomic_data_dir which are described below.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
– |
|
Number of scatterers in the run |
|
– |
|
List of names of scatterers (e.g., lines) |
|
|
|
Directory where the atomic data files are located |
|
|
|
Directory where Krome metallic ion density files are located (optional) |
|
|
|
Ionization factor used in dust density computation |
|
|
|
Reference metallicity (e.g., ~0.005 for SMC, ~0.01 for LMC) |
|
|
|
Constant turbulent velocity across the simulation, in km/s |
|
|
|
If true, dust is ignored during radiative transfer (but still defined) |
The photons may interact with dust and scatterers. Scatterers are defined by their absorption chanel (e.g. HI-1216 refers to the absorption of radiation at H Lyman-alpha). Some absorption channels may lead to multiple de-excitation routes (e.g. fluorescent emission from SiII). This is allowed and described in the atomic data files. There are example files in the ions_parameters directory shipped with the code. The generic format is as follows:
! SiII - 1260.42 line
m_ion = 28.085d0. ! mass in atomic mass unit
name_ion = SiII ! name of the ion (prefix of line name)
lambda_cm = 1260.42d-8 ! wavelength in cm
A = 2.57d9 ! Einstein coefficient A21
f = 1.22d0. ! Oscillator strength
n_fluo = 1 ! number of fluorescent channels (i.e. secondary de-escitation channels)
lambda_fluo_cm = 1265.02d-8 ! wavelengths of these channels
A_fluo = 4.73d8 ! Einseint coeff of these channels
HI-Lyman-alpha is a specific case which has the extra following parameters:
isotropic = F ! controls whether scattering is isotropic or not.
recoil = T ! controls whether the recoil effect is included or not
core_skip = F ! allows the core-skipping approximation
xcritmax = 100 ! parameter to moderate the core-skipping approximation
lee_correction = F ! apply the Lee correction.
[IdealisedModel]#
The section [IdealisedModel] contains parameters that define the idealized models. This section is read by module_idealised_model.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Column density from the center to the edge of the sphere [cm^-2] |
|
|
|
Physical size of the simulation box [cm] |
|
|
|
Radius of the sphere in box-size units |
|
|
|
Gas temperature [K] |
|
|
|
Turbulent velocity dispersion [km/s] |
[master]#
The section [master] is used to define global runtime parameters and checkpoint/restart options. This section is read by module_master.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Set verbosity flag |
|
|
|
If true, resume run from backup file specified by |
|
|
|
Path to the photon backup file |
|
|
|
Time interval between backups [seconds] |
[mesh]#
The section [mesh] is used to define mesh refinement parameters and settings. It is read in module_mesh.f90. The parameters refine_lmax, refine_err_grad_d, refine_err_grad_v, and refine_dv_over_vth are only used to generate AMR grids for idealised models (i.e. with GenerateAMRmodel). These four parameters are ignored when reading simulation outputs.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Set verbosity to true or false for mesh operations |
|
|
|
Maximum level of refinement allowed in the mesh. |
|
|
|
Parameter to control the refinement on density gradients. A cell will be refined if \((\rho_{max}-\rho_{min})/(\rho_{max}+\rho_{min}) >\) |
|
|
|
Parameter to control the refinement on velocity gradients. Same as for density above, but now computed on the norm of the velocity field. If a negative value is passed, this criterion is ignored. |
|
|
|
Parameter to control the refinement on the velocity field. If set to true, a cell is refined when variations of the norm of the velocity accross the cell are larger than the local thermal velocity. |
[mock]#
The section [mock] is used to define parameters for the generation of mock observations. This section is read by module_mock.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Number of viewing directions for mock observations |
|
— |
|
Path to the mock parameter configuration file |
|
— |
|
Prefix for output mock files (including absolute path); suffixes |
The mock parameter configuration file is a text file that contains one block per direction (or pointing). Each block must contain one line per entry as detailed in the table below. Each block of this file is read by the routine read_a_mock_param_set from module_mock.f90.
Line number |
description |
units |
example |
comment |
|---|---|---|---|---|
1 |
a normalised vector giving the direction of observation |
none |
|
|
2 |
the coordinates of the target |
code units |
|
|
3 |
the radius of the circular aperture within which we collect flux |
code units |
|
If the value is 0, no flux is computed. A non-zero value will generate a |
4 |
number of pixels, aperture radius, min and max wavelengths |
no units, code units, Angstrom, Angstrom |
|
If the number of pixels is set to zero, no spectrum is computed. Otherwise, a spectrum is computed and written in the |
5 |
number of pixels on each side of the image, size of the image |
no units, code units |
|
If the number of pixels is zero, no image is computed. Otherwise, an image is computed and written to the |
6 |
number of pixels in the spectral dimension, number of pixels in the spatial dimensions, min and max wavelengths, side |
none, none, Angstrom, Angstrom, code units |
|
If any number of pixels is zero, no cube is computed. Otherwise, a cube is computed and written to the |
[ramses]#
The section [ramses] is used to define RAMSES simulation parameters and RT variable settings. This section is read by module_ramses.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
If true, reproduce self-shielding approximation made in RAMSES to compute nHI |
|
|
|
If true, read RAMSES-RT output and compute nHI and T accordingly |
|
|
|
If true, read RT variables (e.g. to compute heating terms) |
|
|
|
If false, assume idealised simulation |
|
|
|
If true, use proper time instead of conformal time for cosmo runs |
|
|
|
If true, all particles have an extra family field, and the header file is different |
|
|
|
Display some run-time info on this module |
|
|
|
Index of thermal pressure |
|
|
|
Index of metallicity |
|
|
|
Index of HII fraction |
|
|
|
Index of HeII fraction |
|
|
|
Index of HeIII fraction |
|
|
|
Ratio between deuterium and hydrogen |
|
|
|
If true, recompute particle initial mass |
|
|
|
Time delay for supernovae in Myr, only used if |
|
|
|
Recycling fraction to correct for mass of stars formed, only used if |
[uparallel]#
The section [uparallel] is used to define parameters for parallel velocity computation methods. This section is read by module_uparallel.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Computation method, may be ‘Smith’, ‘Semelin’, or ‘RASCAS’ |
|
|
|
Above this value, use a Gaussian to draw u_parallel |
[voigt]#
The section [voigt] is used to define the numerical approximation to the Voigt function, used at each interaction. This section is read by module_voigt.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Could be ‘COLT’, ‘Tasitsiomi’ or ‘Humlicek_w4’ |
[worker]#
The section [worker] is used to define runtime parameters of the workers. This section is read by module_worker.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Set verbosity flag |
[RASCAS-serial]#
The section [RASCAS-serial] is used to define input/output files and general settings for a serial RASCAS run.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Directory where the outputs of |
|
|
|
Path to the file containing the initial photon packets |
|
|
|
Path to the output file containing processed photons |
|
|
|
Set verbosity flag |
[CreateDomDump]#
The section [CreateDomDump] is used to configure the generation of the meshes (or domain dumps) from a simulation output. It is read by the code CreateDomDump.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Directory where the outputs of |
|
|
|
Ramses run directory (where all output_xxxxx dirs are) |
|
|
|
Ramses output number to use |
|
|
|
strategy to read ramses data, could be |
|
|
|
Type of the computational domain (e.g. cube, sphere, shell, slab) |
|
|
|
Center position of the computational domain [code units] |
|
|
|
Radius of the spherical computational domain [code units] |
|
|
|
Size of the cubic computational domain [code units] |
|
|
|
Inner radius of a shell computational domain [code units] |
|
|
|
Outer radius of a shell computational domain [code units] |
|
|
|
Thickness of a slab computational domain [code units] |
|
|
|
Type of the decomposition domain(s) (e.g. cube, sphere, shell, slab). Only works with a number of domains, sharing the same type. |
|
|
|
Number of domains in the decomposition |
|
|
|
x center of domain(s) [code units]. A list of |
|
|
|
y center of domain(s) [code units] |
|
|
|
z center of domain(s) [code units] |
|
|
|
Radius of the spherical domain(s) [code units] |
|
– |
|
Size of the cubic domain(s) [code units] |
|
– |
|
Inner radius of the shell domain(s) [code units] |
|
– |
|
Outer radius of the shell domain(s) [code units] |
|
– |
|
Thickness of the slab domain(s) [code units] |
|
|
|
Set verbosity flag |
[LyaPhotonsFromGas]#
The section [LyaPhotonsFromGas] is used to configure the generation of Lyman-alpha photon packets from gas emission processes. It is read by the code LyaPhotonsFromGas.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Path to the output file for recombination photon packets |
|
|
|
Path to the output file for collisional photon packets |
|
|
|
Path to the base repository directory containing simulation data |
|
|
|
Snapshot number to process from the simulation |
|
|
|
Type of emission domain geometry (e.g., cube, sphere) |
|
|
|
Position coordinates (x, y, z) of the emission domain center |
|
|
|
Spherical domain radius parameter |
|
|
|
Inner radius for shell-type emission domains |
|
|
|
Outer radius for shell-type emission domains |
|
|
|
Size parameter of the emission domain |
|
|
|
Thickness parameter for shell-type emission domains |
|
|
|
Total number of photon packets to generate |
|
|
|
Random seed for photon packet generation |
|
|
|
Enable processing of recombination photons |
|
|
|
Enable processing of collisional photons |
|
|
|
Temperature resolution factor for cooling calculations |
|
|
|
Set verbosity to true or false |
[HaPhotonsFromGas]#
The section [HaPhotonsFromGas] is used to define runtime parameters related to the generation of H-alpha photons from gas emission processes. It is read by the code HaPhotonsFromGas.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Path to file to which recombination photons will be written |
|
|
|
Path to file to which collisional photons will be written |
|
|
|
RAMSES run directory (where all |
|
|
|
RAMSES snapshot number to use |
|
|
|
Type of the emission domain (e.g. cube, sphere, shell, slab) |
|
|
|
Center position of the emission domain [code units] |
|
|
|
Radius of the spherical emission domain [code units] |
|
|
|
Size of the cubic emission domain [code units] |
|
|
|
Inner radius of a shell emission domain [code units] |
|
|
|
Outer radius of a shell emission domain [code units] |
|
|
|
Thickness of a slab emission domain [code units] |
|
|
|
Number of photon packets to generate |
|
|
|
Random number generator seed for photon sampling |
|
|
|
Enable sampling of emission from recombinations |
|
|
|
Enable sampling of emission from collisional excitations |
|
|
|
Cells with |
|
|
|
Set verbosity flag |
[GenerateAMRmodel]#
The section [GenerateAMRmodel] is used to configure the generation of the meshes (or domain dumps) for idealised (analytical) models. It is read by the code GenerateAMRmodel.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Directory where the outputs of |
|
|
|
Type of the computational domain (e.g. cube, sphere, shell, slab) |
|
|
|
Center position of the computational domain [code units] |
|
|
|
Radius of the spherical computational domain [code units] |
|
|
|
Size of the cubic computational domain [code units] |
|
|
|
Inner radius of a shell computational domain [code units] |
|
|
|
Outer radius of a shell computational domain [code units] |
|
|
|
Thickness of a slab computational domain [code units] |
|
|
|
Type of the decomposition domain(s) (e.g. cube, sphere, shell, slab). Only works with a number of domains, sharing the same type. |
|
|
|
Number of domains in the decomposition |
|
|
|
x center of domain(s) [code units]. A list of |
|
|
|
y center of domain(s) [code units] |
|
|
|
z center of domain(s) [code units] |
|
– |
|
Radius of the spherical domain(s) [code units] |
|
|
|
Size of the cubic domain(s) [code units] |
|
– |
|
Inner radius of the shell domain(s) [code units] |
|
– |
|
Outer radius of the shell domain(s) [code units] |
|
– |
|
Thickness of the slab domain(s) [code units] |
|
|
|
Set verbosity flag |
[PhotonsFromStars]#
The section [PhotonsFromStars] is used to configure the generation of continuum photon packets from the stellar populations. It is read by the code PhotonsFormStars.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Path to the output file for the photon packets |
|
|
|
Path to the base repository directory containing simulation data |
|
|
|
Snapshot number to process from the simulation |
|
|
|
Geometry of the domain containing the emitting stars. Could be cube, sphere, shell, or slab |
|
|
|
Position coordinates (x, y, z) of the domain center |
|
|
|
Spherical domain radius parameter |
|
|
|
Inner radius for shell-type emission domains |
|
|
|
Outer radius for shell-type emission domains |
|
|
|
Size parameter of the emission domain |
|
|
|
Thickness parameter for shell-type emission domains |
|
|
|
Spectral shape of the emitting stars. Could be Mono, Gauss, PowLaw, or Table |
|
|
|
The SSP lib directory |
|
|
|
Monochromatic emission wavelength [A] |
|
|
|
Central wavelength [A] of the Gaussian distribution |
|
|
|
Line width in velocity [km/s] of the Gaussian distribution |
|
|
|
min wavelength [A] for the sampling of the tabulated spectrum |
|
|
|
max wavelength [A] for the sampling of the tabulated spectrum |
|
|
|
min wavelength [A] for the sampling of a power-law continuum |
|
|
|
max wavelength [A] for the sampling of a power-law continuum |
|
|
|
min wavelength [A] for the fit |
|
|
|
max wavelength [A] for the fit |
|
|
|
If true remove absorption lines from fit |
|
|
|
Total number of photon packets to generate |
|
|
|
Random seed for photon packet generation |
|
|
|
Set verbosity to true or false |
[ExtractSubvol]#
The code ExtractSubvol.f90 is a post-processing tool for RAMSES simulations. It is inherited from the code CreateDomDump.f90. The basic idea is to extract from a RAMSES snapshot a subvolume of the simulation using the domain strategy of RASCAS. This cutout is then easy to manipulate with Python. It also uses the rebuilding of the oct-tree structure for the selected cells, allowing the use of neighbors to compute some properties (e.g. velocity dispersion).
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Directory where the outputs of |
|
|
|
Ramses run directory (where all output_xxxxx dirs are) |
|
|
|
Ramses output number to use |
|
|
|
strategy to read ramses data, could be |
|
|
|
Type of the decomposition domain (e.g. cube, sphere, shell, slab). |
|
|
|
x center of domain [code units] |
|
|
|
y center of domain [code units] |
|
|
|
z center of domain [code units] |
|
|
|
Radius of the spherical domain [code units] |
|
|
|
Size of the cubic domain [code units] |
|
|
|
Inner radius of the shell domain [code units] |
|
|
|
Outer radius of the shell domain [code units] |
|
|
|
Thickness of the slab domain [code units] |
|
|
|
Set verbosity flag |
|
|
|
If true add the stellar particles contained in the domain to the cutout. |
|
|
|
Same for DM particles. Not implemented yet. |
[PhotonsFromSourceModel]#
The section [PhotonsFromSourceModel] is used to configure the generation of photon packets from idealised source models. It is read by the code PhotonsFromSourceModel.f90.
Parameter |
Default Value |
Fortran type |
Description |
|---|---|---|---|
|
|
|
Define the path to the output file |
|
|
|
Can only be point like |
|
|
|
Coordinates of the source (x,y,z), in box units |
|
|
|
Velocity of the source (vx,vy,vz), in cm/s |
|
|
|
Number of photon to launch from the source |
|
|
|
Could be ‘Mono’ or ‘Gauss’ or ‘PowLaw’ or ‘Table’ or ‘TablePowerLaw’ |
|
|
|
Wavelength of the source in Angstrom, only used if |
|
|
|
Central wavelength of the gaussian in Angstrom, only used if |
|
|
|
Width of the gaussian in km/s, only used if |
|
|
|
min wavelength to sample in Angstrom, only used if |
|
|
|
max wavelength to sample in Angstrom, only used if |
|
|
|
Power law index, only used if |
|
|
|
Path to the SSP lib directory, only used if |
|
|
|
min wavelength to sample in Angstrom, only used if |
|
|
|
max wavelength to sample in Angstrom, only used if |
|
|
|
Age of the stellar population to use in Myr, only used if |
|
|
|
Metallicity of the stellar population to use, only used if |
|
|
|
Mass of the source in solar mass, only used if |
|
|
|
min wavelength to sample in Angstrom, only used if |
|
|
|
max wavelength to sample in Angstrom, only used if |
|
|
|
min wavelength to sample for fit, only used if |
|
|
|
max wavelength to sample for fit, only used if |
|
|
|
If true remove absorption lines from fit, only used if |
|
|
|
Seed for the random generator |
|
|
|
Set verbosity flag |