Input File#
Introduction#
The input file is simply a text file containing runtime variables. Variables are collected in to groups of similar variables. The group name is inside brackets, [], and the corresponding variables are below it. For example, the control group might contain,
[control]
calculation = 'binned_scatter_rate'
run_description = 'example_1'
out_folder = './examples/1/output/'
The description of all the groups, along with their their variables and default values, is given below.
While most variables take a singular value, some accept an array. The dimensions of the input array must match that specified by Dim in the variable description. For example, a_vecs_Ang in the material group has Dim: [3, 3], and therefore the input must be specified as a \(3 \times 3\) matrix. This can be done in two ways: placing the rows side by side, e.g.,
a_vecs_Ang = 1, 0, 0, 0, 1, 0, 0, 0, 1
for the identity matrix, or with the += operator (the preferred method for matrix inputs for readability),
a_vecs_Ang = 1, 0, 0
a_vecs_Ang += 0, 1, 0
a_vecs_Ang += 0, 0, 1
A colon in Dim signifies that the variable accepts an array of any size. For example, mX in the dm_model group has Dim: [:], meaning that a list of variables is accepted,
mX = 1e6, 1e7, 1e8, ...
A mixed dimension, e.g., Dim: [:, 3] means that any number of length 3 vectors may be specified. For example, v_e_km_per_sec in the astroph_model group may be specified as
v_e_km_per_sec = 0, 0, 230
v_e_km_per_sec += 0, 0, 240
v_e_km_per_sec += 0, 0, 250
⋮
See https://github.com/jannisteunissen/config_fortran for more details concerning the input format.
Groups#
astroph_model#
v_0_km_per_sec
: Dark matter SHM velocity distribution parameter, \(v_0\).- Units: \(\text{km}/\text{s}\)
v_0_km_per_sec = 2.300000E+02
v_e_km_per_sec
: List of Earth velocity vectors, \(\mathbf{v}_e\).- Units: \(\text{km}/\text{s}\)
- Dim: [ : , 3]
v_e_km_per_sec = 0.000000E+00 0.000000E+00 2.400000E+02
v_esc_km_per_sec
: Dark matter SHM velocity distribution parameter, \(v_\mathrm{esc}\).- Units: \(\text{km}/\text{s}\)
v_esc_km_per_sec = 6.000000E+02
vel_distribution_name
: Specify the velocity distribution to use in the calculation.vel_distribution_name = 'SHM'
control#
calculation
: Which calculation to performcalculation = ''
default_input_markdown_filename
: Filename to store default input parameters in markdown format todefault_input_markdown_filename = './default_inputs.md'
input_markdown_filename
: Filename to store input parameters in markdown format toinput_markdown_filename = './inputs.md'
out_folder
: Folder to store the ouput dataout_folder = './'
run_description
: Small description of calculation which will be appended to ‘EXDM_out_’ to set the output filenamerun_description = ''
save_default_inputs_markdown
: Toggle to save the default input parameters to a markdown filesave_default_inputs_markdown = F
save_inputs_markdown
: Toggle to save the input parameters to a markdown filesave_inputs_markdown = F
verbose
: Toggle output printing to the consoleverbose = T
dm_model#
FIF_id
: Form factor ID to compute forFIF_id = 'SI'
mX
: Dark matter masses, \(m_\chi\)- Units: \(\text{eV}\)
- Dim: [ : ]
mX = 0.000000E+00
mX_linspace
: Add \(N\) linearly spaced dark matter masses between \(m_\text{min}\) and \(m_\text{max}\): [\(N\), \(m_\text{min}\), \(m_\text{max}\)]- Units: [-, \(\text{eV}\), \(\text{eV}\)]
- Dim: [3]
mX_linspace = 0.000000E+00 1.000000E+00 1.000000E+00
mX_logspace
: Add \(N\) logarithmically spaced dark matter masses between \(m_\text{min}\)and \(m_\text{max}\): [\(N\), \(m_\text{min}\), \(m_\text{max}\)]- Units: [-, \(\text{eV}\), \(\text{eV}\)]
- Dim: [3]
mX_logspace = 0.000000E+00 1.000000E+00 1.000000E+00
med_FF
: Mediator form factor powers, \(\beta\)- Formula: \(\mathcal{F}_\text{med} = \left( \frac{\alpha m_e}{q} \right)^\beta\)
- Dim: [ : ]
med_FF = 0.000000E+00
particle_type
: Type of incoming dark matter particleparticle_type = 'fermion'
rho_X_GeV_per_cm3
: Local dark matter density- Units: \(\text{GeV}/\text{cm}^3\)
rho_X_GeV_per_cm3 = 4.000000E-01
elec_config_input#
filename
: File containing the electronic configurationfilename = ''
experiment#
M_kg
: Mass of the experimental target- Units: \(\text{kg}\)
M_kg = 1.000000E+00
T_year
: Exposure time of the experimental target- Units: \(\text{yr}\)
T_year = 1.000000E+00
material#
a_vecs_Ang
: Lattice vectors of the target material, \(\mathbf{a}_i\)- Units: \(\text{Å}\)
- Dim: [3, 3]
a_vecs_Ang = 1.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 1.000000E+00 0.000000E+00 0.000000E+00 0.000000E+00 1.000000E+00
band_gap
: Band gap of the target material, \(E_g\)- Units: \(\text{eV}\)
band_gap = 0.000000E+00
materials_project_ID
: Materials Project ID of the target materialmaterials_project_ID = ''
n_T_g_per_cm3_per_AMU
: Number density of the target material, \(n_T\)- Units: \(\text{g}/\text{cm}^3/\text{AMU}\)
n_T_g_per_cm3_per_AMU = 1.000000E+00
name
: Name of the target materialname = ''
rho_T_g_per_cm3
: Mass density of the target material, \(\rho_T\)- Units: \(\text{g}/\text{cm}^3\)
rho_T_g_per_cm3 = 1.000000E+00
numerics_TIF_calculator_atomic#
integration_scheme
: Specific method of sampling the radial direction.integration_scheme = 'log'
n_r
: Number of radial points to integrate with.n_r = 1
r_max_a0
: Maximum radius to use in the integration, in units of the Bohr radius, \(a_0\).- [\(a_0\)]
r_max_a0 = 1.000000E+03
r_min_a0
: Minimum radius to use in the integration, in units of the Bohr radius, \(a_0\).- [\(a_0\)]
r_min_a0 = 1.000000E-03
numerics_absorption_rate#
smear_type
: Defines broadening behavior for the imaginary part of the Greens functionsmear_type = 'lorentz'
widths
: List of widths, \(\delta \, [\text{eV}]\), to compute for, parameterized as [\(a\), \(b\), \(c\)]- Formula: \(\delta = \text{min}(a + b \omega, c)\)
- Units: [\(\text{eV}\), -, \(\text{eV}\)]
- Dim: [ : , 3]
widths = 0.000000E+00 1.000000E-01 1.000000E+02
numerics_binned_scatter_rate#
E_bin_width
: Width of bins in \(\omega\) space- Units: \(\text{eV}\)
E_bin_width = 1.000000E+00
n_E_bins
: Number of bins in \(\omega\) spacen_E_bins = 1
n_q_bins
: Number of bins in \(q\) spacen_q_bins = 1
q_bin_width
: Width of bins in \(q\) space- Units: \(\text{keV}\)
q_bin_width = 1.000000E+00
numerics_dielectric#
E_bin_width
: Width of bins in \(\omega\) space- Units: \(\text{eV}\)
E_bin_width = 1.000000E+00
eta
: Parameter controlling the small \(q\) approximation for the dielectric.eta = 1.000000E-01
n_E_bins
: Number of bins in \(\omega\) spacen_E_bins = 1
n_q_bins
: Number of bins in \(q\) spacen_q_bins = 1
n_q_phi
: Number of bins in \(\phi_\mathbf{q}\)n_q_phi = 1
n_q_theta
: Number of bins in \(\theta_\mathbf{q}\)n_q_theta = 1
q_bin_width
: Width of bins in \(q\) space- Units: \(\text{keV}\)
q_bin_width = 1.000000E+00
smear_type
: Defines broadening behavior for the imaginary part of the Greens function.smear_type = 'lorentz'
widths
: List of widths, \(\delta \, [\text{eV}]\), to compute for, parameterized as [\(a\), \(b\), \(c\)]- Formula: \(\delta = \text{min}(a + b \omega, c)\)
- Units: [\(\text{eV}\), -, \(\text{eV}\)]
- Dim: [ : , 3]
widths = 0.000000E+00 1.000000E-01 1.000000E+02
screening#
E_bin_width
: Width of bins in \(\omega\) space- Units: \(\text{eV}\)
E_bin_width = 1.000000E+00
alpha
: Shape parameter for analytic screening- Formula: \(\alpha\), Eq. (6), https://journals.aps.org/prb/pdf/10.1103/PhysRevB.47.9892
alpha = 1.000000E+00
dielectric_filename
: Location of the numerically computed dielectric to use as the screening factor.dielectric_filename = ''
e0
: Static dielectric parameter for analytic screening- Formula: \(\epsilon(0)\), Eq. (6), https://journals.aps.org/prb/pdf/10.1103/PhysRevB.47.9892
e0 = 1.000000E+00
omega_p
: Plasma frequency parameter for analytic screening- Formula: \(\omega_p\), Eq. (6), https://journals.aps.org/prb/pdf/10.1103/PhysRevB.47.9892
- Units: \(\text{eV}\)
omega_p = 1.000000E+00
q_bin_width
: Width of bins in \(q\) space- Units: \(\text{keV}\)
q_bin_width = 1.000000E+00
q_tf
: Thomas-Fermi momentum parameter for analytic screening- Formula: \(q_\text{TF}\), Eq. (6), https://journals.aps.org/prb/pdf/10.1103/PhysRevB.47.9892
- Units: \(\text{keV}\)
q_tf = 1.000000E+00
type
: Model to use for the screening factor. Default is a screening factor of \(1\) (no screening).type = ''
width_id
: Width ID of the dielectric to use. Dielectric will be taken from ‘dielectric/width_<width_id>’inside ‘dielectric_filename’width_id = 1