Input file
The input file format is Fortran namelist. All of the headers and variables must be present. If your input file does not work, start back with a working example. An input file, example.nml is provided with any distributed version of Exo-REM, with a short description of each variables.
Comments are handled with !
.
Below is the complete list of headers and variables as well as an extended description. The units are indicated in parenthesis:
output_files
The output_files
section allows you to personalize the names of the output files.
-
spectrum_file_prefix
- string
- prefix of the spectrum files
- e.g. with
spectrum_file_prefix = 'spectra'
, the spectrum file will be spectra_XXX.dat, where XXX is the output files suffix.
-
temperature_profile_file_prefix
- string
- prefix of the temperature profile files
- e.g. with
temperature_profile_file_prefix = 'temperature_profile'
, the temperature file will be temperature_profile_XXX.dat, where XXX is the output files suffix.
-
vmr_file_prefix
- string
- prefix of the volume mixing ratio profiles files
- e.g. with
vmr_file_prefix = 'vmr'
, the vmr file will be vmr_XXX.dat, where XXX is the output files suffix.
-
output_files_suffix
- string
- suffix of the output files
- e.g. with
output_files_suffix = 'example'
, the output files will be YYY_example.dat, where YYY are the output files prefix.
target_parameters
The target_parameters
section handles the target (planet) settings.
-
use_gravity
- boolean
- if True, uses equatorial gravity instead of mass to calculate gravity
- e.g.
use_gravity = False
. In that case, the equatorial gravity at 1 bar will be derived fromtarget_equatorial_radius
andtarget_mass
. IfTrue
, the equatorial gravity at 1 bar will be derived fromtarget_equatorial_gravity
.
-
use_flattening
- boolean
- if True, uses flattening instead of polar radius to calculate gravity
- e.g.
use_flattening = True
. In that case, the gravity at 1 bar will be derived fromtarget_flattening
,latitude
and the equatorial gravity. IfFalse
, the gravity at 1 bar will be derived fromtarget_polar_radius
,target_equatorial_radius
,latitude
and the equatorial gravity.
-
target_mass
- float
- (kg) mass of the target
- e.g.
target_mass = 5e25
. Used to calculate gravity, only ifuse_gravity
isFalse
.
-
target_equatorial_gravity
- float
- (m.s-2) gravity at 1 bar of the target
- e.g.
target_equatorial_gravity = 14.83
. Used only ifuse_gravity
isTrue
.
-
target_equatorial_radius
- float
- (m) equatorial radius at 1 bar of the target
- e.g.
target_equatorial_radius = 15000e3
.
-
target_polar_radius
- float
- (m) polar radius at 1 bar of the target
- e.g.
target_polar_radius = 15000e3
. Used only ifuse_flattening
isFalse
.
-
target_flattening
- float
- flattening of the target
- e.g.
target_flattening = 0
for a perfect sphere. Used only ifuse_flattening
isTrue
.
-
latitude
- float
- (deg) latitude of observation on the target
- e.g.
latitude = 0
to look at the equator.
-
target_internal_temperature
- float
- (K) internal (or intrinsic) temperature of the target
- e.g.
target_internal_temperature = 500
. This is the temperature derived from the radiosity (upward flux) of the target (i.e. the radiosity corresponds to that of a black body attarget_internal_temperature
) if it was perfectly isolated (i.e. without any external light source/star). Exo-REM will change the temperature profile so that the calculated internal temperature is as close as possible totarget_internal_temperature
.
-
emission_angle
[unused parameter]- float
- (deg) emission angle
- e.g.
emission_angle = 0.0
to look along the normal of the atmosphere. Could be used in the calculation of the emission spectrum.
light_source_parameters
The light_source_parameters
section handles the light source (star) settings.
-
add_light_source
- boolean
- if True, add the light source
- e.g.
add_light_source = True
. In that case, a light source/star will be added, and the atmosphere will be irradiated. IfFalse
, the other parameters in this section are not taken into.
-
use_irradiation
- boolean
- if True, use irradiation instead of range to calculate the light source spectrum
- e.g.
use_irradiation = False
. In that case, the irradiation will be calculated usinglight_source_range
. IfTrue
, the distance between the light source and the target will be directly calculated fromuse_light_source_spectrum
.
-
use_irradiation
- boolean
- if True, use a spectrum for the light source instead of a black body
- e.g.
use_light_source_spectrum = False
. In that case, the spectral irradiance of the target will be calculated from a black body. IfTrue
, the spectral irradiance will be read fromlight_source_spectrum_file
and re-adapted so that the light source radiosity correspond tolight_source_effective_temperature
.
-
light_source_radius
- float
- (m) radius of the light source
- e.g.
light_source_radius = 100e6
.
-
light_source_range
- float
- (m) distance between the target and the light source
- e.g.
light_source_range = 2e9
. Used to calculate the target/planet irradiance ifuse_irradiation
isFalse
.
-
light_source_effective_temperature
- float
- (K) light source effective temperature
- e.g.
light_source_effective_temperature = 3450
.
-
light_source_irradiation
- float
- (W.m-2) light source irradiation
- e.g.
light_source_irradiation = 20000
. Used to calculate the target/planet irradiance ifuse_irradiation
isTrue
.
-
light_source_spectrum_file
- string
- spectrum of the light source
- e.g. with
light_source_spectrum_file = 'spectrum_BTSettl_3500K_logg5_met0.dat'
. The file must be placed in thepath_light_source_spectra
directory. Used only ifuse_light_source_spectrum
isTrue
.
-
incidence_angle
[unused parameter]- float
- (deg) incident light source light relative to the normal of the atmosphere
- e.g.
incidence_angle = 0.0
if the light rays are have the same direction than the normal of the atmosphere. Could be used to calculate the temperature profile at a specific local hour on the target/planet.
atmosphere_parameters
The atmosphere_parameters
section handles the atmospheric settings.
-
use_metallicity
- boolean
- if True, uses metallicity instead of H2, He and Z VMR to get the elemental abundances
- e.g.
use_metallicity = True
. In that case, the elemental abundances are calculated frommetallicity
. IfFalse
, they are calculated fromh2_vmr
,he_vmr
andz_vmr
.
-
use_pressure_grid
- boolean
- if True, uses the pressure grid in the temperature profile file to generate the pressure grid
- e.g.
use_pressure_grid = False
. In that case, the pressure grid will be equally spaced in the log-space betweenpressure_min
andpressure_max
. IfTrue
, it will be directly read fromtemperature_profile_file
(seeretrieval_parameters
).
-
h2_vmr
- float
- H2 volume mixing ratio
- e.g.
h2_vmr = 0.6
.h2_vmr
,he_vmr
andz_vmr
will be automatically adjusted so that their sum is 1.
-
he_vmr
- float
- He volume mixing ratio
- e.g.
he_vmr = 0.1
.h2_vmr
,he_vmr
andz_vmr
will be automatically adjusted so that their sum is 1.
-
z_vmr
- float
- other species volume mixing ratio
- e.g.
z_vmr = 0.3
.h2_vmr
,he_vmr
andz_vmr
will be automatically adjusted so that their sum is 1. The heavy elements abundances are scaled from the solar abundance.
-
metallicity
- float
- (solar metallicity) atmospheric metallicity
- e.g.
metallicity = 10.0
. The metallicity is a factor by which all the elemental abundances except H are multiplied compared to their solar abundances. The solar abundances are read in the data/solar_abundances.dat file.
-
n_levels
- integer
- number of atmospheric levels
- e.g.
n_levels = 81
. Ifuse_pressure_grid
isFalse
, the bottom level has the pressurepressure_max
, and the top level has the pressurepressure_min
.retrieval_level_top
must be lower or equal to this parameter.
-
n_species
- integer
- number of absorbing species
- e.g.
n_species = 13
. This parameter must match the number of elements inspecies_names
andspecies_at_equilibrium
(seespecies_parameters
).
-
n_cia
- integer
- number of collision induced absorptions
- e.g.
n_cia = 3
. This parameter must match the number of elements incia_names
(seespecies_parameters
).
-
n_clouds
- integer
- number of clouds in atmosphere
- e.g.
n_clouds = 2
. This parameter must match the number of elements incloud_names
,cloud_particle_radius
,sedimentation_parameter
,cloud_particle_density
,cloud_molar_mass
andreference_wavenumber
(seeclouds_parameters
).
species_parameters
clouds_parameters
retrieval_parameters
Code
This page is a work in progress
In order to have information on the different functions used in the code and their parameters, we you can look at the docstrings in the source code.