# Define some meta-data about the simulation
MetaData:
  run_name:   Name of the sim in less than 256 characters.  # The name of the simulation. This is written into the snapshot headers.

# Define the system of units to use internally.
InternalUnitSystem:
  UnitMass_in_cgs:     1   # Grams
  UnitLength_in_cgs:   1   # Centimeters
  UnitVelocity_in_cgs: 1   # Centimeters per second
  UnitCurrent_in_cgs:  1   # Amperes
  UnitTemp_in_cgs:     1   # Kelvin

# Values of some physical constants
PhysicalConstants:
  G:            6.67408e-8  # (Optional) Overwrite the value of Newton's constant used internally by the code.
  mu_0:         1.2566370e1 # (Optional) Overwrite the value of the vacuum permeability used internally by the code.
  
# Cosmological parameters
Cosmology:
  h:              0.6777        # Reduced Hubble constant
  a_begin:        0.0078125     # Initial scale-factor of the simulation
  a_end:          1.0           # Final scale factor of the simulation
  Omega_m:        0.307         # Matter density parameter
  Omega_lambda:   0.693         # Dark-energy density parameter
  Omega_b:        0.0482519     # Baryon density parameter
  Omega_r:        0.            # (Optional) Radiation density parameter
  w_0:            -1.0          # (Optional) Dark-energy equation-of-state parameter at z=0.
  w_a:            0.            # (Optional) Dark-energy equation-of-state time evolution parameter.
  T_nu_0:         1.9514        # (Optional) Present-day neutrino temperature in internal units, used for massive neutrinos
  N_ur:           1.0196        # (Optional) Number of ultra-relativistic species (e.g. massless neutrinos). Assumes instantaneous decoupling T_ur/T_g=(4/11)^(1/3). Cannot be used together with Omega_r.
  N_nu:           2             # (Optional) Integer number of massive neutrinos. Note that neutrinos do NOT contribute to Omega_m = Omega_cdm + Omega_b in our conventions.
  M_nu_eV:        0.05, 0.01    # (Optional) Comma-separated list of N_nu nonzero neutrino masses in electron-volts
  deg_nu:         1.0, 1.0      # (Optional) Comma-separated list of N_nu neutrino degeneracies (default values of 1.0)

# Parameters for the hydrodynamics scheme
SPH:
  resolution_eta:                    1.2348   # Target smoothing length in units of the mean inter-particle separation (1.2348 == 48Ngbs with the cubic spline kernel).
  CFL_condition:                     0.1      # Courant-Friedrich-Levy condition for time integration.
  use_mass_weighted_num_ngb:         0        # (Optional) Are we using the mass-weighted definition of the number of neighbours?
  h_tolerance:                       1e-4     # (Optional) Relative accuracy of the Netwon-Raphson scheme for the smoothing lengths.
  h_max:                             10.      # (Optional) Maximal allowed smoothing length in internal units. Defaults to FLT_MAX if unspecified.
  h_min_ratio:                       0.       # (Optional) Minimal allowed smoothing length in units of the softening. Defaults to 0 if unspecified.
  max_volume_change:                 1.4      # (Optional) Maximal allowed change of kernel volume over one time-step.
  max_ghost_iterations:              30       # (Optional) Maximal number of iterations allowed to converge towards the smoothing length.
  particle_splitting:                1        # (Optional) Are we splitting particles that are too massive (default: 0)
  particle_splitting_mass_threshold: 7e-4     # (Optional) Mass threshold for particle splitting (in internal units)
  generate_random_ids:               0        # (Optional) When creating new particles via splitting, generate ids at random (1) or use new IDs beyond the current range (0) (default: 0)
  initial_temperature:               0        # (Optional) Initial temperature (in internal units) to set the gas particles at start-up. Value is ignored if set to 0.
  minimal_temperature:               0        # (Optional) Minimal temperature (in internal units) allowed for the gas particles. Value is ignored if set to 0.
  H_mass_fraction:                   0.755    # (Optional) Hydrogen mass fraction used for initial conversion from temp to internal energy. Default value is derived from the physical constants.
  H_ionization_temperature:          1e4      # (Optional) Temperature of the transition from neutral to ionized Hydrogen for primoridal gas.
  viscosity_alpha:                   0.8      # (Optional) Override for the initial value of the artificial viscosity. In schemes that have a fixed AV, this remains as alpha throughout the run.
  viscosity_alpha_max:               2.0      # (Optional) Maximal value for the artificial viscosity in schemes that allow alpha to vary.
  viscosity_alpha_min:               0.1      # (Optional) Minimal value for the artificial viscosity in schemes that allow alpha to vary.
  viscosity_length:                  0.1      # (Optional) Decay length for the artificial viscosity in schemes that allow alpha to vary.
  diffusion_alpha:                   0.0      # (Optional) Override the initial value for the thermal diffusion coefficient in schemes with thermal diffusion.
  diffusion_beta:                    0.01     # (Optional) Override the decay/rise rate tuning parameter for the thermal diffusion.
  diffusion_alpha_max:               1.0      # (Optional) Override the maximal thermal diffusion coefficient that is allowed for a given particle.
  diffusion_alpha_min:               0.0      # (Optional) Override the minimal thermal diffusion coefficient that is allowed for a given particle.

# Parameters of the stars
Stars:
  resolution_eta:                      1.2348        # (Optional) Target smoothing length in units of the mean inter-particle separation (1.2348 == 48Ngbs with the cubic spline kernel). Defaults to the SPH value.
  h_tolerance:                          1e-4         # (Optional) Relative accuracy of the Netwon-Raphson scheme for the smoothing lengths. Defaults to the SPH value.
  max_ghost_iterations:                 30           # (Optional) Maximal number of iterations allowed to converge towards the smoothing length. Defaults to the SPH value.
  max_volume_change:                     1.4         # (Optional) Maximal allowed change of kernel volume over one time-step. Defaults to the SPH value.
  overwrite_birth_time:                  0           # (Optional) Do we want to overwrite the birth time of the stars read from the ICs? (default: 0).
  birth_time:                           -1           # (Optional) Initial birth times of *all* the stars to be used if we are overwriting them. (-1 means the stars remain inactive feedback-wise througout the run).
  overwrite_birth_density:               0           # (Optional) Do we want to overwrite the birth density of the stars read from the ICs? (default: 0).
  birth_density:                        -1           # (Optional) Initial birth densities of *all* the stars to be used if we are overwriting them.
  overwrite_birth_temperature:           0           # (Optional) Do we want to overwrite the birth temperature of the stars read from the ICs? (default: 0).
  birth_temperature:                    -1           # (Optional) Initial birth temperatures of *all* the stars to be used if we are overwriting them.
  timestep_age_threshold_unlimited_Myr: 1000.        # (Optional) Age above which stars have no time-step restriction any more (in Mega-years). Defaults to 0.
  timestep_age_threshold_Myr:           10.          # (Optional) Age at which stars switch from young to old for time-stepping purposes (in Mega-years). Defaults to FLT_MAX.
  max_timestep_young_Myr:               0.1          # (Optional) Maximal time-step length of young stars (in Mega-years). Defaults to FLT_MAX.
  max_timestep_old_Myr:                 1.0          # (Optional) Maximal time-step length of old stars (in Mega-years). Defaults to FLT_MAX.
  luminosity_filename:                  ./photometry # In the EAGLE model, directory where the photometry tables are stored.
  
# Parameters for the self-gravity scheme
Gravity:
  mesh_side_length:              128       # Number of cells along each axis for the periodic gravity mesh (must be even).
  distributed_mesh:              0         # (Optional) Are we using a distributed mesh when running over MPI (necessary for meshes > 1290^3)
  mesh_uses_local_patches:       1         # (Optional) Are we using thread-local patches (1) or direct atomic writes to the global mesh (0) in the non-MPI case?
  eta:                           0.025     # Constant dimensionless multiplier for time integration.
  MAC:                           adaptive  # Choice of mulitpole acceptance criterion: 'adaptive' OR 'geometric'.
  epsilon_fmm:                   0.001     # Tolerance parameter for the adaptive multipole acceptance criterion.
  theta_cr:                      0.7       # Opening angle for the purely gemoetric criterion.
  use_tree_below_softening:      0         # (Optional) Can the gravity code use the multipole interactions below the softening scale?
  allow_truncation_in_MAC:       0         # (Optional) Can the Multipole acceptance criterion use the truncated force estimator?
  comoving_DM_softening:         0.0026994 # Comoving Plummer-equivalent softening length for DM particles (in internal units).
  max_physical_DM_softening:     0.0007    # Maximal Plummer-equivalent softening length in physical coordinates for DM particles (in internal units).
  comoving_baryon_softening:     0.0026994 # Comoving Plummer-equivalent softening length for baryon particles (in internal units).
  max_physical_baryon_softening: 0.0007    # Maximal Plummer-equivalent softening length in physical coordinates for baryon particles (in internal units).
  comoving_nu_softening:         0.0026994 # Comoving Plummer-equivalent softening length for neutrino particles (in internal units).
  max_physical_nu_softening:     0.0007    # Maximal Plummer-equivalent softening length in physical coordinates for neutrino particles (in internal units).
  softening_ratio_background:    0.04      # Fraction of the mean inter-particle separation to use as Plummer-equivalent softening for the background DM particles.
  rebuild_frequency:             0.01      # (Optional) Frequency of the gravity-tree rebuild in units of the number of g-particles (this is the default value).
  rebuild_active_fraction:       1.01      # (Optional) Fraction of active gravity particles needed to trigger a gravity-tree rebuild (not triggered by this if > 1, which is the default value).
  a_smooth:                      1.25      # (Optional) Smoothing scale in top-level cell sizes to smooth the long-range forces over (this is the default value).
  r_cut_max:                     4.5       # (Optional) Cut-off in number of top-level cells beyond which no FMM forces are computed (this is the default value).
  r_cut_min:                     0.1       # (Optional) Cut-off in number of top-level cells below which no truncation of FMM forces are performed (this is the default value).

# Parameters when running with SWIFT_GRAVITY_FORCE_CHECKS 
ForceChecks:
  only_when_all_active: 1  # (Optional) Only compute exact forces during timesteps when all gparts are active (default: 0).
  only_at_snapshots:    1  # (Optional) Only compute exact forces during timesteps when a snapshot is being dumped (default: 0).

# Parameters related to the Friends-Of-Friends halo finding
FOF:
  basename:                        fof_output  # Filename for the FOF outputs (Unused when FoF is only run to seed BHs).
  scale_factor_first:              0.91        # Scale-factor of first FoF black hole seeding calls (needed for cosmological runs).
  time_first:                      0.2         # Time of first FoF black hole seeding calls (needed for non-cosmological runs).	
  delta_time:                      1.005       # Time between consecutive FoF black hole seeding calls.
  min_group_size:                  256         # The minimum no. of particles required for a group.
  linking_length_ratio:            0.2         # Linking length in units of the main inter-particle separation.
  seed_black_holes_enabled:        1           # Enable (1) or disable (0) seeding of black holes in FoF groups
  dump_catalogue_when_seeding:     1           # Enable (1) or disable (0) dumping a group catalogue when runnning FOF for seeding purposes.
  black_hole_seed_halo_mass_Msun:  1.5e10      # Minimal halo mass in which to seed a black hole (in solar masses).
  absolute_linking_length:         -1.         # (Optional) Absolute linking length (in internal units). When not set to -1, this will overwrite the linking length computed from 'linking_length_ratio'.
  group_id_default:                2147483647  # (Optional) Sets the group ID of particles in groups below the minimum size. Defaults to 2^31 - 1 if unspecified. Has to be positive.
  group_id_offset:                 1           # (Optional) Sets the offset of group ID labeling. Defaults to 1 if unspecified.
  output_list_on:                  0           # (Optional) Enable the output list
  output_list:       ./output_list_fof.txt     # (Optional) File containing the output times (see documentation in "Parameter File" section)

# Parameters for the task scheduling
Scheduler:
  nr_queues:                 0         # (Optional) The number of task queues to use. Use 0  to let the system decide.
  cell_max_size:             8000000   # (Optional) Maximal number of interactions per task if we force the split (this is the default value).
  cell_sub_size_pair_hydro:  256000000 # (Optional) Maximal number of hydro-hydro interactions per sub-pair hydro/star task (this is the default value).
  cell_sub_size_self_hydro:  32000     # (Optional) Maximal number of hydro-hydro interactions per sub-self hydro/star task (this is the default value).
  cell_sub_size_pair_stars:  256000000 # (Optional) Maximal number of hydro-star interactions per sub-pair hydro/star task (this is the default value).
  cell_sub_size_self_stars:  32000     # (Optional) Maximal number of hydro-star interactions per sub-self hydro/star task (this is the default value).
  cell_sub_size_pair_grav:   256000000 # (Optional) Maximal number of interactions per sub-pair gravity task  (this is the default value).
  cell_sub_size_self_grav:   32000     # (Optional) Maximal number of interactions per sub-self gravity task  (this is the default value).
  cell_split_size:           400       # (Optional) Maximal number of particles per cell (this is the default value).
  cell_subdepth_diff_grav:   4         # (Optional) Maximal depth difference between leaves and a cell that gravity tasks can be pushed down to (this is the default value).
  cell_extra_parts:          0         # (Optional) Number of spare parts per top-level allocated at rebuild time for on-the-fly creation.
  cell_extra_gparts:         0         # (Optional) Number of spare gparts per top-level allocated at rebuild time for on-the-fly creation.
  cell_extra_sparts:         100       # (Optional) Number of spare sparts per top-level allocated at rebuild time for on-the-fly creation.
  max_top_level_cells:       12        # (Optional) Maximal number of top-level cells in any dimension. The number of top-level cells will be the cube of this (this is the default value).
  tasks_per_cell:            0.0       # (Optional) The average number of tasks per cell. If not large enough the simulation will fail (means guess...).
  links_per_tasks:           25        # (Optional) The average number of links per tasks (before adding the communication tasks). If not large enough the simulation will fail (means guess...). Defaults to 10.
  mpi_message_limit:         4096      # (Optional) Maximum MPI task message size to send non-buffered, KB.
  engine_max_parts_per_ghost:    1000  # (Optional) Maximum number of parts per ghost.
  engine_max_sparts_per_ghost:   1000  # (Optional) Maximum number of sparts per ghost.
  engine_max_parts_per_cooling: 10000  # (Optional) Maximum number of parts per cooling task.
  engine_redist_alloc_margin:     1.2  # (Optional) Multiplier factor for the number of local particles to allocate on a given rank.
  engine_foreign_alloc_margin:    1.05 # (Optional) Multiplier factor for the number of foreign particles to allocate on a given rank.
  dependency_graph_frequency:       0  # (Optional) Dumping frequency of the dependency graph. By default, writes only at the first step.
  dependency_graph_cell:            0  # (Optional) Write the dependency graph for a single cell with the same frequency as the full dependency graph. Select which cell to write using its cellID specified with this parameter.
  task_level_output_frequency:      0  # (Optional) Dumping frequency of the task level data. By default, writes only at the first step.
  free_foreign_during_restart:      0  # (Optional) Should the code free the foreign data when dumping restart files in order to get breathing space?
  free_foreign_during_rebuild:      0  # (Optional) Should the code free the foreign data when calling a rebuld in order to get breathing space?
  deadlock_waiting_time_s:          0. # (Optional) If runners didn't fetch a new task from a queue after this many seconds, assume swift deadlocked and abort. Non-positive values turn the detector off. Needs --enable-debugging-checks and MPI to take effect.

# Parameters governing the time integration (Set dt_min and dt_max to the same value for a fixed time-step run.)
TimeIntegration:
  time_begin:          0.    # The starting time of the simulation (in internal units).
  time_end:            1.    # The end time of the simulation (in internal units).
  dt_min:              1e-6  # The minimal time-step size of the simulation (in internal units).
  dt_max:              1e-2  # The maximal time-step size of the simulation (in internal units).
  max_dt_RMS_factor:   0.25  # (Optional) Dimensionless factor for the maximal displacement allowed based on the RMS velocities.
  dt_RMS_use_gas_only: 0     # (Optional) When computing the max RMS dt, should only the gas particles be considered in the baryon component calculation?
  max_nr_rt_subcycles: 0     # (Optional) Maximal number of radiative transfer sub-cycles per hydro step for any particle. Set = 0 to disable subcycling. Needs to be a power of 2.
  
# Parameters governing the snapshots
Snapshots:
  basename:   output      # Common part of the name of output files.
  subdir:     dir         # (Optional) Sub-directory in which to write the snapshots. Defaults to "" (i.e. the directory where SWIFT is run).
  scale_factor_first: 0.1 # (Optional) Scale-factor of the first snapshot if cosmological time-integration.
  time_first: 0.          # (Optional) Time of the first output if non-cosmological time-integration (in internal units)
  delta_time: 0.01        # Time difference between consecutive outputs (in internal units)
  invoke_stf: 0           # (Optional) Call VELOCIraptor every time a snapshot is written irrespective of the VELOCIraptor output strategy.
  invoke_fof: 0           # (Optional) Call FOF every time a snapshot is written
  invoke_ps:  0           # (Optional) Call a power-spectrum calculation every time a snapshot is written
  compression: 0          # (Optional) Set the level of GZIP compression of the HDF5 datasets [0-9]. 0 does no compression. The lossless compression is applied to *all* the fields.
  distributed: 0          # (Optional) When running over MPI, should each rank write a partial snapshot or do we want a single file? 1 implies one file per MPI rank.
  lustre_OST_count:  0    # (Optional) If > 0, the number of lustre OSTs to distribure the single-striped files over. Has no effect on non-Lustre filesystems. Has an effect only on distributed snapshots.
  use_delta_from_edge: 0  # (Optional) Should particles close to the box edge be moved back towards 0 by a vector perpendicular to the box edge? This is useful in cases where lossy compression moves particle beyond the edge.
  delta_from_edge:     0. # (Optional) Norm of the vector to use when moving particles away from the edge
  UnitMass_in_cgs:     1  # (Optional) Unit system for the outputs (Grams)
  UnitLength_in_cgs:   1  # (Optional) Unit system for the outputs (Centimeters)
  UnitVelocity_in_cgs: 1  # (Optional) Unit system for the outputs (Centimeters per second)
  UnitCurrent_in_cgs:  1  # (Optional) Unit system for the outputs (Amperes)
  UnitTemp_in_cgs:     1  # (Optional) Unit system for the outputs (Kelvin)
  output_list_on:      0  # (Optional) Enable the output list
  output_list:         snaplist.txt # (Optional) File containing the output times (see documentation in "Parameter File" section)
  select_output_on:    0  # (Optional) Enable the output selection behaviour
  select_output:       selectoutput.yml # (Optional) File containing information to select outputs with (see documentation in the "Output Selection" section)
  run_on_dump:         0 # (Optional) Run the dump_command each time that a snapshot is dumped?
  dump_command:        ./submit_velociraptor.sh # (Optional) Command to run each time that a snapshot is dumped.
  recording_triggers_part:   [1e-3, 1e-2] # (Optional) Time before the snapshots where the trigger for gas particle tracers start (in internal units).
  recording_triggers_spart:  [1e-3, 1e-2] # (Optional) Time before the snapshots where the trigger for star particle tracers start (in internal units).
  recording_triggers_bpart:  [1e-3, 1e-2] # (Optional) Time before the snapshots where the trigger for BH particle tracers start (in internal units).

# Parameters governing the CSDS snapshot system
CSDS:
  delta_step:           10     # Update the particle log every this many updates
  basename:             index  # Common part of the filenames
  initial_buffer_size:  1      # (Optional) Buffer size in GB
  buffer_scale:	        10     # (Optional) When buffer size is too small, update it with required memory times buffer_scale

# Parameters governing the conserved quantities statistics
Statistics:
  delta_time:           1e-2        # Time between statistics output
  scale_factor_first:     0.1       # (Optional) Scale-factor of the first statistics dump if cosmological time-integration.
  time_first:             0.        # (Optional) Time of the first stats output if non-cosmological time-integration (in internal units)
  energy_file_name:    statistics   # (Optional) File name for statistics output
  timestep_file_name:  timesteps    # (Optional) File name for timing information output. Note: No underscores "_" allowed in file name
  output_list_on:      0   	    # (Optional) Enable the output list
  output_list:         statlist.txt # (Optional) File containing the output times (see documentation in "Parameter File" section)

# Parameters related to the initial conditions
InitialConditions:
  file_name:  SedovBlast/sedov.hdf5 # The file to read
  periodic:                    1    # Are we running with periodic ICs?
  generate_gas_in_ics:         0    # (Optional) Generate gas particles from the DM-only ICs (e.g. from panphasia).
  cleanup_h_factors:           0    # (Optional) Clean up the h-factors used in the ICs (e.g. in Gadget files).
  cleanup_velocity_factors:    0    # (Optional) Clean up the scale-factors used in the definition of the velocity variable in the ICs (e.g. in Gadget files).
  cleanup_smoothing_lengths:   0    # (Optional) Clean the values of the smoothing lengths that are read in to remove stupid values. Set to 1 to activate.
  smoothing_length_scaling:    1.   # (Optional) A scaling factor to apply to all smoothing lengths in the ICs.
  stars_smoothing_length:       -1. # (Optional) Set the smoothing length of all the stars to this value (disabled by default).
  black_holes_smoothing_length: -1. # (Optional) Set the smoothing length of all the black hole to this value (disabled by default).
  shift:      [0.0,0.0,0.0]         # (Optional) A shift to apply to all particles read from the ICs (in internal units).
  replicate:  2                     # (Optional) Replicate all particles along each axis a given integer number of times. Default 1.
  remap_ids:  0                     # (Optional) Remap all the particle IDs to the range [1, NumPart].
  metadata_group_name: ICs_parameters # (Optional) Copy this HDF5 group from the initial conditions file to all snapshots, if found

# Parameters controlling restarts
Restarts:
  enable:             1          # (Optional) whether to enable dumping restarts at fixed intervals.
  save:               1          # (Optional) whether to save copies of the previous set of restart files (named .prev)
  onexit:             0          # (Optional) whether to dump restarts on exit (*needs enable*)
  subdir:             restart    # (Optional) name of subdirectory for restart files.
  basename:           swift      # (Optional) prefix used in naming restart files.
  delta_hours:        5.0        # (Optional) decimal hours between dumps of restart files.
  stop_steps:         100        # (Optional) how many steps to process before checking if the <subdir>/stop file exists. When present the application will attempt to exit early, dumping restart files first.
  max_run_time:       24.0       # (optional) Maximal wall-clock time in hours. The application will exit when this limit is reached.
  resubmit_on_exit:   0          # (Optional) whether to run a command when exiting after the time limit has been reached.
  resubmit_command:   ./resub.sh # (Optional) Command to run when time limit is reached. Compulsory if resubmit_on_exit is switched on. Note potentially unsafe.
  lustre_OST_count:  0           # (Optional) If > 0, the number of lustre OSTs to distribure the single-striped restart files over. Has no effect on non-Lustre filesystems.

# Parameters governing domain decomposition
DomainDecomposition:
  initial_type:     memory    # (Optional) The initial decomposition strategy: "grid",
                              #            "region", "memory", or "vectorized".
  initial_grid: [10,10,10]    # (Optional) Grid sizes if the "grid" strategy is chosen.

  synchronous:      0         # (Optional) Use synchronous MPI requests to redistribute, uses less system memory, but slower.
  repartition_type: fullcosts # (Optional) The re-decomposition strategy, one of:
                              # "none", "fullcosts", "edgecosts", "memory" or
                              # "timecosts".
  trigger:          0.05      # (Optional) Fractional (<1) CPU time difference between MPI ranks required to trigger a
                              # new decomposition, or number of steps (>1) between decompositions
  minfrac:          0.9       # (Optional) Fractional of all particles that should be updated in previous step when
                              # using CPU time trigger
  usemetis:         0         # Use serial METIS when ParMETIS is also available.
  adaptive:         1         # Use adaptive repartition when ParMETIS is available, otherwise simple refinement.
  itr:              100       # When adaptive defines the ratio of inter node communication time to data redistribution time, in the range 0.00001 to 10000000.0.
                              # Lower values give less data movement during redistributions, at the cost of global balance which may require more communication.
  use_fixed_costs:  0         # If 1 then use any compiled in fixed costs for
                              # task weights in first repartition, if 0 only use task timings, if > 1 only use
                              # fixed costs, unless none are available.

# Structure finding options (requires velociraptor)
StructureFinding:
  config_file_name:     stf_input.cfg # Name of the STF config file.
  basename:             haloes        # Common part of the name of output files.
  subdir_per_output:    stf           # (Optional) Sub-directory (within Snapshots:subdir) to use for each invocation of STF. Defaults to "" (i.e. no sub-directory)
  scale_factor_first:   0.92          # (Optional) Scale-factor of the first structure finding (cosmological run)
  time_first:           0.01          # (Optional) Time of the first structure finding output (in internal units).
  delta_time:           1.10          # (Optional) Time difference between consecutive structure finding outputs (in internal units) in simulation time intervals.
  output_list_on:       0   	      # (Optional) Enable the use of an output list
  output_list:          stflist.txt   # (Optional) File containing the output times (see documentation in "Parameter File" section)

# Parameters related to the Line-Of-Sight (SpecWizard) outputs
LineOfSight:
  basename:            los     # Basename of the files
  scale_factor_first:  0.02    # (Optional) Scale-factor of the first line-of-sight (cosmological run)
  time_first:          0.01    # (Optional) Time of the first line-of-sight output (in internal units).
  delta_time:          1.02    # (Optional) Time difference between consecutive line-of-sight outputs (in internal units) in simulation time intervals.
  output_list_on:       0      # (Optional) Enable the use of an output list
  output_list:         ./output_list_los.txt   # (Optional) File containing the output times (see documentation in "Parameter File" section)
  num_along_x:         0       # Number of sight-lines along the x-axis
  num_along_y:         0       # Number of sight-lines along the y-axis
  num_along_z:         100     # Number of sight-lines along the z-axis
  allowed_los_range_x: [0, 100.]   # (Optional) Range along the x-axis where LoS along Y or Z are allowed (Defaults to the box size).
  allowed_los_range_y: [0, 100.]   # (Optional) Range along the y-axis where LoS along X or Z are allowed (Defaults to the box size).
  allowed_los_range_z: [0, 100.]   # (Optional) Range along the z-axis where LoS along X or Y are allowed (Defaults to the box size).
  range_when_shooting_down_x: 100. # (Optional) Range along the x-axis of LoS along x (Defaults to the box size).
  range_when_shooting_down_y: 100. # (Optional) Range along the y-axis of LoS along y (Defaults to the box size).
  range_when_shooting_down_z: 100. # (Optional) Range along the z-axis of LoS along z (Defaults to the box size).

# Parameters related to the equation of state ------------------------------------------

EoS:
  isothermal_internal_energy: 20.26784      # Thermal energy per unit mass for the case of isothermal equation of state (in internal units).
  barotropic_vacuum_sound_speed: 2e4        # Vacuum sound speed (in internal units)
  barotropic_core_density:       1e-13      # Core density (in internal units)
  # Select which planetary EoS material(s) to enable for use.
  planetary_use_idg_def:    0               # Default ideal gas, material ID 0
  planetary_use_Til_iron:       1           # Tillotson iron, material ID 100
  planetary_use_Til_granite:    1           # Tillotson granite, material ID 101
  planetary_use_Til_water:      0           # Tillotson water, material ID 102
  planetary_use_Til_basalt:     0           # Tillotson basalt, material ID 103
  planetary_use_HM80_HHe:   0               # Hubbard & MacFarlane (1980) hydrogen-helium atmosphere, material ID 200
  planetary_use_HM80_ice:   0               # Hubbard & MacFarlane (1980) H20-CH4-NH3 ice mix, material ID 201
  planetary_use_HM80_rock:  0               # Hubbard & MacFarlane (1980) SiO2-MgO-FeS-FeO rock mix, material ID 202
  planetary_use_SESAME_iron:    0           # SESAME iron 2140, material ID 300
  planetary_use_SESAME_basalt:  0           # SESAME basalt 7530, material ID 301
  planetary_use_SESAME_water:   0           # SESAME water 7154, material ID 302
  planetary_use_SS08_water:     0           # Senft & Stewart (2008) SESAME-like water, material ID 303
  planetary_use_ANEOS_forsterite:   0       # ANEOS forsterite (Stewart et al. 2019), material ID 400
  planetary_use_ANEOS_iron:         0       # ANEOS iron (Stewart 2020), material ID 401
  planetary_use_ANEOS_Fe85Si15:     0       # ANEOS Fe85Si15 (Stewart 2020), material ID 402
  planetary_use_custom_0:   0               # Generic user-provided custom tables, material IDs 90[0-9]
  planetary_use_custom_1:   0
  planetary_use_custom_2:   0
  planetary_use_custom_3:   0
  planetary_use_custom_4:   0
  planetary_use_custom_5:   0
  planetary_use_custom_6:   0
  planetary_use_custom_7:   0
  planetary_use_custom_8:   0
  planetary_use_custom_9:   0
  # Tablulated EoS file paths.
  planetary_HM80_HHe_table_file:    ./EoSTables/HM80_HHe.txt
  planetary_HM80_ice_table_file:    ./EoSTables/HM80_ice.txt
  planetary_HM80_rock_table_file:   ./EoSTables/HM80_rock.txt
  planetary_SESAME_iron_table_file:     ./EoSTables/SESAME_iron_2140.txt
  planetary_SESAME_basalt_table_file:   ./EoSTables/SESAME_basalt_7530.txt
  planetary_SESAME_water_table_file:    ./EoSTables/SESAME_water_7154.txt
  planetary_SS08_water_table_file:      ./EoSTables/SS08_water.txt
  planetary_ANEOS_forsterite_table_file:    ./EoSTables/ANEOS_forsterite_S19.txt
  planetary_ANEOS_iron_table_file:          ./EoSTables/ANEOS_iron_S20.txt
  planetary_ANEOS_Fe85Si15_table_file:      ./EoSTables/ANEOS_Fe85Si15_S20.txt
  planetary_custom_0_table_file:    ./EoSTables/custom_0.txt
  planetary_custom_1_table_file:    ./EoSTables/custom_1.txt
  planetary_custom_2_table_file:    ./EoSTables/custom_2.txt
  planetary_custom_3_table_file:    ./EoSTables/custom_3.txt
  planetary_custom_4_table_file:    ./EoSTables/custom_4.txt
  planetary_custom_5_table_file:    ./EoSTables/custom_5.txt
  planetary_custom_6_table_file:    ./EoSTables/custom_6.txt
  planetary_custom_7_table_file:    ./EoSTables/custom_7.txt
  planetary_custom_8_table_file:    ./EoSTables/custom_8.txt
  planetary_custom_9_table_file:    ./EoSTables/custom_9.txt

# Parameters related to external potentials --------------------------------------------

# Point mass external potentials
PointMassPotential:
  useabspos:       0                   # 0 -> positions based on centre, 1 -> absolute positions
  position:        [50.,50.,50.]       # location of external point mass (internal units)
  mass:            1e10                # mass of external point mass (internal units)
  timestep_mult:   0.03                # Dimensionless pre-factor for the time-step condition
  softening:       0.05                # For point-mass-softened option

# Isothermal potential parameters
IsothermalPotential:
  useabspos:       0                   # 0 -> positions based on centre, 1 -> absolute positions
  position:        [100.,100.,100.]    # Location of centre of isothermal potential with respect to centre of the box (internal units)
  vrot:            200.                # Rotation speed of isothermal potential (internal units)
  timestep_mult:   0.03                # Dimensionless pre-factor for the time-step condition
  epsilon:         0.1                 # Softening size (internal units)

# Hernquist potential parameters
HernquistPotential:
  useabspos:       0        # 0 -> positions based on centre, 1 -> absolute positions
  position:        [100.,100.,100.]    # Location of centre of Henrquist potential with respect to centre of the box (if 0) otherwise absolute (if 1) (internal units)
  idealizeddisk:   0        # (Optional) Whether to run with idealizeddisk or without, 0 used the mass and scalelength as mandatory parameters, while 1 uses more advanced disk dependent paramters
  mass:            1e10     # (Optional 0) default parameter, Mass of the Hernquist potential
  scalelength:     10.0     # (Optional 0) default parameter, Scale length of the potential
                            # If multiple X200 values are given, only one is used, in the order M200 > V200 > R200.
  M200:            3e11     # (Optional 1a) M200 of the galaxy+halo (when used V200 and R200 are not used)
  V200:            100.     # (Optional 1b) V200 of the galaxy+halo (when used M200 and R200 are not used, if M200 is given M200 is used)
  R200:            10.      # (Optional 1c) R200 of the galaxy+halo (when used M200 and V200 are not used, if M200 or V200 are given they are used)
  h:               0.704    # (Optional 1) reduced Hubble constant
  concentration:   7.1      # (Optional 1) concentration of the Halo
  diskfraction:              0.0434370991372   # (Optional 1) Disk mass fraction (equal to MD in MakeNewDisk and GalIC)
  bulgefraction:              0.00705852860979  # (Optional 1) Bulge mass fraction (equal to MB in MakeNewDisk and GalIC)
  timestep_mult:   0.01     # Dimensionless pre-factor for the time-step condition, basically determines the fraction of the orbital time we use to do the time integration
  epsilon:         0.1      # Softening size (internal units)

# NFW potential parameters
NFWPotential:
  useabspos:          0             # 0 -> positions based on centre, 1 -> absolute positions
  position:           [0.0,0.0,0.0] # Location of centre of the NFW potential with respect to centre of the box (internal units) if useabspos=0 otherwise with respect to the 0,0,0, coordinates.
  concentration:      8.            # Concentration of the halo
  M_200:              2.0e+12       # Mass of the halo (M_200 in internal units)
  bulgefraction:      0.04          # (optional) The fraction of the halo mass in the bulge, defaults to 0.0.
  diskfraction:      0.04           # (optional) The fraction of the halo mass in the galaxy disk, defaults to 0.0.
  epsilon:            0.8           # The softening used in the NFW potential
  h:                  0.7           # The reduced Hubble constant
  timestep_mult:      0.01          # Dimensionless pre-factor for the time-step condition, basically determines fraction of orbital time we need to do an integration step

# NFW + Miyamoto-Nagai disk potential
NFW_MNPotential:
  useabspos:         0         # 0 -> positions based on centre, 1 -> absolute positions
  position:         [0.,0.,0.] # Location of centre of isothermal potential with respect to centre of the box (if 0) otherwise absolute (if 1) (internal units)
  timestep_mult:    0.01       # Dimensionless pre-factor for the time-step condition, basically determines the fraction of the orbital time we use to do the time integration
  epsilon:          0.01       # Softening size (internal units)
  concentration:    10.0       # concentration of the Halo
  M_200:            150.0      # M200 of the galaxy disk (internal units)
  critical_density: 1.37E-8    # Critical density of the Universe (internal units)
  Mdisk:            3.0        # Mass of the disk (internal units)
  Rdisk:            4.0        # Effective radius of the disk (internal units)
  Zdisk:            0.4704911  # Scale-height of the disk (internal units)

# Disk-patch potential parameters. The potential is along the x-axis.
DiscPatchPotential:
  surface_density: 10.      # Surface density of the disc (internal units)
  scale_height:    100.     # Scale height of the disc (internal units)
  x_disc:          400.     # Position of the disc along the z-axis (internal units)
  x_trunc:         300.     # (Optional) Distance from the disc along z-axis above which the potential gets truncated.
  x_max:           380.     # (Optional) Distance from the disc along z-axis above which the potential is set to 0.
  timestep_mult:   0.03     # Dimensionless pre-factor for the time-step condition
  growth_time:     5.       # (Optional) Time for the disc to grow to its final size (multiple of the dynamical time)

# Sine Wave potential
SineWavePotential:
  amplitude:        10.     # Amplitude of the sine wave (internal units)
  timestep_limit:   1.      # Time-step dimensionless pre-factor.
  growth_time:      0.      # (Optional) Time for the potential to grow to its final size.

# MWPotential2014 potential
MWPotential2014Potential:
  useabspos:        0          # 0 -> positions based on centre, 1 -> absolute positions
  position:         [0.,0.,0.] # Location of centre of potential with respect to centre of the box (if 0) otherwise absolute (if 1) (internal units)
  timestep_mult:    0.005      # Dimensionless pre-factor for the time-step condition, basically determines the fraction of the orbital time we use to do the time integration
  epsilon:          0.001      # Softening size (internal units)
  concentration:    9.823403437774843      # concentration of the Halo
  M_200_Msun:       147.41031542774076e10  # M200 of the galaxy disk (in M_sun)
  H:                1.2778254614201471     # Hubble constant in units of km/s/Mpc
  Mdisk_Msun:       6.8e10                 # Mass of the disk (in M_sun)
  Rdisk_kpc:        3.0                    # Effective radius of the disk (in kpc)
  Zdisk_kpc:        0.280                  # Scale-height of the disk (in kpc)
  amplitude:        1.0                    # Amplitude of the bulge
  r_1_kpc:          1.0                    # Reference radius for amplitude of the bulge (in kpc)
  alpha:            1.8                    # Exponent of the power law of the bulge
  r_c_kpc:          1.9                    # Cut-off radius of the bulge (in kpc)
  potential_factors: [0.4367419745056084, 1.002641971008805, 0.022264787598364262] # Coefficients that adjust the strength of the halo (1st component), the disk (2nd component) and the bulge (3rd component)

# Parameters related to forcing terms     ----------------------------------------------

# Roberts' flow (Tilgner & Brandenburg, 2008, MNRAS, 391, 1477) where the velocity is imposed
RobertsFlowForcing:
  u0:              1.5      # Forcing velocity (internal units)
  Vz_factor:       1.0      # (optional) Scaling of the velocity along the z axis

# Roberts' flow (Tilgner & Brandenburg, 2008, MNRAS, 391, 1477) where the forcing is an acceleration
RobertsFlowAccelerationForcing:
  u0:              1.5      # Forcing velocity (internal units)
  nu:              1.0      # Viscosity (internal units) to convert velocities to accelerations.
  Vz_factor:       1.0      # (optional) Scaling of the velocity along the z axis
  
# Parameters related to entropy floors    ----------------------------------------------

EAGLEEntropyFloor:
  Jeans_density_threshold_H_p_cm3: 0.1       # Physical density above which the EAGLE Jeans limiter entropy floor kicks in expressed in Hydrogen atoms per cm^3.
  Jeans_over_density_threshold:    10.       # Overdensity above which the EAGLE Jeans limiter entropy floor can kick in.
  Jeans_temperature_norm_K:        8000      # Temperature of the EAGLE Jeans limiter entropy floor at the density threshold expressed in Kelvin.
  Jeans_gamma_effective:           1.3333333 # Slope the of the EAGLE Jeans limiter entropy floor
  Cool_density_threshold_H_p_cm3:  1e-5      # Physical density above which the EAGLE Cool limiter entropy floor kicks in expressed in Hydrogen atoms per cm^3.
  Cool_over_density_threshold:     10.       # Overdensity above which the EAGLE Cool limiter entropy floor can kick in.
  Cool_temperature_norm_K:         8000      # Temperature of the EAGLE Cool limiter entropy floor at the density threshold expressed in Kelvin.
  Cool_gamma_effective:            1.        # Slope the of the EAGLE Cool limiter entropy floor

# Parameters for the Quick Lyman-alpha floor
QLAEntropyFloor:
  density_threshold_H_p_cm3: 0.1       # Physical density above which the entropy floor kicks in expressed in Hydrogen atoms per cm^3.
  over_density_threshold:    10.       # Overdensity above which the entropy floor can kick in.
  temperature_norm_K:        8000      # Temperature of the entropy floor at the density threshold expressed in Kelvin.


# Parameters related to pressure floors    ----------------------------------------------

GEARPressureFloor:
  jeans_factor: 10.       # Number of particles required to suppose a resolved clump and avoid the pressure floor.


# Parameters related to cooling function  ----------------------------------------------

# Constant du/dt cooling function
ConstCooling:
  cooling_rate: 1.          # Cooling rate (du/dt) (internal units)
  min_energy:   1.          # Minimal internal energy per unit mass (internal units)
  cooling_tstep_mult: 1.    # Dimensionless pre-factor for the time-step condition

# Constant lambda cooling function
LambdaCooling:
  lambda_nH2_cgs:              1e-22 # Cooling rate divided by square Hydrogen number density (in cgs units [erg * s^-1 * cm^3])
  cooling_tstep_mult:          1.0   # (Optional) Dimensionless pre-factor for the time-step condition.

# Parameters of the EAGLE cooling model (Wiersma+08 cooling tables).
EAGLECooling:
  dir_name:                  ./coolingtables/  # Location of the Wiersma+08 cooling tables
  H_reion_z:                 8.5               # Redshift of Hydrogen re-ionization
  H_reion_eV_p_H:            2.0               # Energy inject by Hydrogen re-ionization in electron-volt per Hydrogen atom
  He_reion_z_centre:         3.5               # Redshift of the centre of the Helium re-ionization Gaussian
  He_reion_z_sigma:          0.5               # Spread in redshift of the  Helium re-ionization Gaussian
  He_reion_eV_p_H:           2.0               # Energy inject by Helium re-ionization in electron-volt per Hydrogen atom
  Ca_over_Si_in_solar:       1.                # (Optional) Ratio of Ca/Si to use in units of solar. If set to 1, the code uses [Ca/Si] = 0, i.e. Ca/Si = 0.0941736.
  S_over_Si_in_solar:        1.                # (Optional) Ratio of S/Si to use in units of solar. If set to 1, the code uses [S/Si] = 0, i.e. S/Si = 0.6054160.

# Quick Lyman-alpha cooling (EAGLE-XL with fixed primoridal Z)
QLACooling:
  dir_name:                ./UV_dust1_CR1_G1_shield1.hdf5 # Location of the Ploeckinger+20 cooling tables
  H_reion_z:               7.5               # Redshift of Hydrogen re-ionization (Planck 2018)
  H_reion_eV_p_H:          2.0               # Energy inject by Hydrogen re-ionization in electron-volt per Hydrogen atom
  He_reion_z_centre:       3.5               # Redshift of the centre of the Helium re-ionization Gaussian
  He_reion_z_sigma:        0.5               # Spread in redshift of the  Helium re-ionization Gaussian
  He_reion_eV_p_H:         2.0               # Energy inject by Helium re-ionization in electron-volt per Hydrogen atom
  rapid_cooling_threshold: 0.333333          # Switch to rapid cooling regime for dt / t_cool above this threshold.

# PS2020 cooling parameters (EAGLE-XL)
PS2020Cooling:
  dir_name:                ./UV_dust1_CR1_G1_shield1.hdf5 # Location of the cooling tables
  H_reion_z:               7.5               # Redshift of Hydrogen re-ionization (Planck 2018)
  H_reion_eV_p_H:          2.0               # Energy inject by Hydrogen re-ionization in electron-volt per Hydrogen atom
  He_reion_z_centre:       3.5               # Redshift of the centre of the Helium re-ionization Gaussian
  He_reion_z_sigma:        0.5               # Spread in redshift of the  Helium re-ionization Gaussian
  He_reion_eV_p_H:         2.0               # Energy inject by Helium re-ionization in electron-volt per Hydrogen atom
  rapid_cooling_threshold: 0.333333          # Switch to rapid cooling regime for dt / t_cool above this threshold.
  delta_logTEOS_subgrid_properties: 0.3      # delta log T above the EOS below which the subgrid properties use Teq assumption

# Cooling with Grackle 3.0
GrackleCooling:
  cloudy_table: CloudyData_UVB=HM2012.h5       # Name of the Cloudy Table (available on the grackle bitbucket repository)
  with_UV_background: 1                        # Enable or not the UV background
  redshift: 0                                  # Redshift to use (-1 means time based redshift)
  with_metal_cooling: 1                        # Enable or not the metal cooling
  provide_volumetric_heating_rates: 0          # (optional) User provide volumetric heating rates
  provide_specific_heating_rates: 0            # (optional) User provide specific heating rates
  max_steps: 10000                             # (optional) Max number of step when computing the initial composition
  convergence_limit: 1e-2                      # (optional) Convergence threshold (relative) for initial composition
  thermal_time_myr: 5                          # (optional) Time (in Myr) for adiabatic cooling after a feedback event.
  self_shielding_method: -1                    # (optional) Grackle (1->3 for Grackle's ones, 0 for none and -1 for GEAR)
  self_shielding_threshold_atom_per_cm3: 0.007 # Required only with GEAR's self shielding. Density threshold of the self shielding
  HydrogenFractionByMass : 1.                  # Hydrogen fraction by mass (default is 0.76)
  use_radiative_transfer : 1                   # Arrays of ionization and heating rates are provided
  RT_heating_rate_cgs    : 0                   # heating         rate in units of / nHI_cgs 
  RT_HI_ionization_rate_cgs  : 0               # HI ionization   rate in cgs [1/s]
  RT_HeI_ionization_rate_cgs : 0               # HeI ionization  rate in cgs [1/s]
  RT_HeII_ionization_rate_cgs: 0               # HeII ionization rate in cgs [1/s]
  RT_H2_dissociation_rate_cgs: 0               # H2 dissociation rate in cgs [1/s]
  volumetric_heating_rates_cgs: 0              # Volumetric heating rate in cgs  [erg/s/cm3]
  specific_heating_rates_cgs: 0                # Specific heating rate in cgs    [erg/s/g]
  
  
  


# Parameters related to chemistry models  -----------------------------------------------

# EAGLE model
EAGLEChemistry:
  init_abundance_metal:     0.           # Inital fraction of particle mass in *all* metals
  init_abundance_Hydrogen:  0.752        # Inital fraction of particle mass in Hydrogen
  init_abundance_Helium:    0.248        # Inital fraction of particle mass in Helium
  init_abundance_Carbon:    0.000        # Inital fraction of particle mass in Carbon
  init_abundance_Nitrogen:  0.000        # Inital fraction of particle mass in Nitrogen
  init_abundance_Oxygen:    0.000        # Inital fraction of particle mass in Oxygen
  init_abundance_Neon:      0.000        # Inital fraction of particle mass in Neon
  init_abundance_Magnesium: 0.000        # Inital fraction of particle mass in Magnesium
  init_abundance_Silicon:   0.000        # Inital fraction of particle mass in Silicon
  init_abundance_Iron:      0.000        # Inital fraction of particle mass in Iron

# GEAR chemistry model (Revaz and Jablonka 2018)
GEARChemistry:
  initial_metallicity: 1         # Initial metallicity of the gas (mass fraction)
  scale_initial_metallicity: 1   # Should we scale the initial metallicity with the solar one?
  diffusion_coefficient: 1e-3    # Coefficient for the diffusion (see Shen et al. 2010; differs by gamma^2 due to h^2).

# AGORA chemistry model (Kim et al. 2014)
AGORAChemistry:
 initial_metallicity: 1
 scale_initial_metallicity: 1
 solar_abundance_Fe: 0.001771
 solar_abundance_Metals: 0.02


# Parameters related to star formation models  -----------------------------------------------

# EAGLE star formation model (Schaye and Dalla Vecchia 2008)
EAGLEStarFormation:
  SF_threshold:                   Subgrid      # Zdep (Schaye 2004) or Subgrid
  SF_model:                       PressureLaw  # PressureLaw (Schaye et al. 2008) or SchmidtLaw
  star_formation_efficiency:         0.01      # In the SchmidtLaw model this regulates the star formation efficiency per free-fall time.
  KS_normalisation:                  1.515e-4  # In the PressureLaw model, normalization of the Kennicutt-Schmidt law in Msun / kpc^2 / yr.
  KS_exponent:                       1.4       # In the PressureLaw model, exponent of the Kennicutt-Schmidt law.
  KS_high_density_threshold_H_p_cm3: 1e3       # In the PressureLaw model, Hydrogen number density above which the Kennicut-Schmidt law changes slope in Hydrogen atoms per cm^3.
  KS_high_density_exponent:          2.0       # In the PressureLaw model, Slope of the Kennicut-Schmidt law above the high-density threshold.
  gas_fraction:                      0.25      # (Optional) In the PressureLaw model, The gas fraction used internally by the model (Defaults to 1).
  density_direct_H_p_cm3:            1e5       # (Optional) Density above which a gas particle gets automatically turned into a star in Hydrogen atoms per cm^3 (Defaults to FLT_MAX).
  min_over_density:                  100.0     # The over-density above which star-formation is allowed.
  EOS_entropy_margin_dex:            0.3       # When using Z-based SF threshold, logarithm base 10 of the maximal entropy above the EOS at which stars can form.
  threshold_norm_H_p_cm3:            0.1       # When using Z-based SF threshold, normalisation of the metal-dependant density threshold for star formation in Hydrogen atoms per cm^3.
  threshold_Z0:                      0.002     # When using Z-based SF threshold, reference metallicity (metal mass fraction) for the metal-dependant threshold for star formation.
  threshold_slope:                   -0.64     # When using Z-based SF threshold, slope of the metal-dependant star formation threshold
  threshold_max_density_H_p_cm3:     10.0      # When using Z-based SF threshold, maximal density of the metal-dependant density threshold for star formation in Hydrogen atoms per cm^3.
  threshold_temperature1_K:          1000      # When using subgrid-based SF threshold, subgrid temperature below which gas is star-forming.
  threshold_temperature2_K:          31622     # When using subgrid-based SF threshold, subgrid temperature below which gas is star-forming if also above the density limit.
  threshold_number_density_H_p_cm3:  10        # When using subgrid-based SF threshold, subgrid number density above which gas is star-forming if also below the second temperature limit.

# Quick Lyman-alpha star formation parameters
QLAStarFormation:
  over_density:              1000      # The over-density above which gas particles turn into stars.

# GEAR star formation model (Revaz and Jablonka 2018)
GEARStarFormation:
  star_formation_mode: default      # default (use the pressure floor limit) or agora (do not use the pressure floor limit)
  star_formation_efficiency: 0.01   # star formation efficiency (c_*)
  maximal_temperature:  3e4         # Upper limit to the temperature of a star forming particle
  n_stars_per_particle: 4           # Number of stars that an hydro particle can generate
  min_mass_frac: 0.5                # Minimal mass for a stellar particle as a fraction of the average mass for the stellar particles.
  density_threshold: 1.67e-23       # Density threshold for star formation

# Parameters related to feedback models  -----------------------------------------------

# EAGLE feedback model
EAGLEFeedback:
  use_SNII_feedback:                   1               # Global switch for SNII thermal (stochastic) feedback.
  use_SNIa_feedback:                   1               # Global switch for SNIa thermal (continuous) feedback.
  use_AGB_enrichment:                  1               # Global switch for enrichement from AGB stars.
  use_SNII_enrichment:                 1               # Global switch for enrichement from SNII stars.
  use_SNIa_enrichment:                 1               # Global switch for enrichement from SNIa stars.
  filename:                            ./yieldtables/  # Path to the directory containing the EAGLE yield tables.
  IMF_min_mass_Msun:                   0.1             # Minimal stellar mass considered for the Chabrier IMF in solar masses.
  IMF_max_mass_Msun:                 100.0             # Maximal stellar mass considered for the Chabrier IMF in solar masses.
  SNII_min_mass_Msun:                  6.0             # Minimal mass considered for SNII stars in solar masses.
  SNII_max_mass_Msun:                100.0             # Maximal mass considered for SNII stars in solar masses.
  SNII_feedback_model:                 Random          # Feedback modes: Random, Isotropic, MinimumDistance, MinimumDensity
  SNII_sampled_delay:                  1               # Sample the SNII lifetimes to do feedback.
  SNII_wind_delay_Gyr:                 0.03            # Time in Gyr between a star's birth and the SNII thermal feedback event when not sampling.
  SNII_delta_T_K:                      3.16228e7       # Change in temperature to apply to the gas particle in a SNII thermal feedback event in Kelvin.
  SNII_delta_v_km_p_s:                 200             # Velocity kick applied by the stars when doing SNII feedback (in km/s).
  SNII_energy_erg:                     1.0e51          # Energy of one SNII explosion in ergs.
  SNII_energy_fraction_function:       Independent     # Type of functional form to use for scaling the energy fraction with density and metallicity ('EAGLE', 'Separable', or 'Independent')
  SNII_energy_fraction_min:            0.3             # Minimal fraction of energy applied in a SNII feedback event.
  SNII_energy_fraction_max:            3.0             # Maximal fraction of energy applied in a SNII feedback event.
  SNII_energy_fraction_delta_E_n:      6.0             # Maximal energy increase due to high density (only used if SNII_energy_fraction_function is 'Independent').
  SNII_energy_fraction_Z_0:            0.0012663729    # Pivot point for the metallicity dependance of the SNII energy fraction (metal mass fraction).
  SNII_energy_fraction_n_0_H_p_cm3:    0.67            # Pivot point for the birth density dependance of the SNII energy fraction in cm^-3.
  SNII_energy_fraction_n_Z:            0.8686          # Power-law for the metallicity dependance of the SNII energy fraction.
  SNII_energy_fraction_n_n:            0.8686          # Power-law for the (birth) density dependance of the SNII energy fraction.
  SNII_energy_fraction_sigma_Z:        0.5             # Transition width for the metallicity dependence of the SNII energy fraction. Specify this or n_Z, both are not simultaneously accepted.
  SNII_energy_fraction_sigma_n:        0.5             # Transition width for the (birth) density dependence of the SNII energy fraction. Specify this or n_n, both are not simultaneously accepted.
  SNII_energy_fraction_use_birth_density: 0            # Are we using the density at birth to compute f_E or at feedback time?
  SNII_energy_fraction_use_birth_metallicity: 0        # Are we using the metallicity at birth to compute f_E or at feedback time?
  SNIa_DTD:                            PowerLaw        # Functional form of the SNIa delay time distribution Two choices: 'PowerLaw' or 'Exponential'.
  SNIa_DTD_delay_Gyr:                  0.04            # Stellar age after which SNIa start in Gyr (40 Myr corresponds to stars ~ 8 Msun).
  SNIa_DTD_power_law_norm_p_Msun:      0.0012          # Normalization of the SNIa delay time distribution in the power-law DTD case (in Msun^-1).
  SNIa_DTD_exp_norm_p_Msun:            0.002           # Normalization of the SNIa delay time distribution in the exponential DTD case (in Msun^-1).
  SNIa_DTD_exp_timescale_Gyr:          2.0             # Time-scale of the SNIa delay time distribution in the exponential DTD case (in Gyr).
  SNIa_energy_erg:                    1.0e51           # Energy of one SNIa explosion in ergs.
  AGB_ejecta_velocity_km_p_s:         10.0             # Velocity of the AGB ejectas in km/s.
  stellar_evolution_age_cut_Gyr:       0.1             # Stellar age in Gyr above which the enrichment is down-sampled.
  stellar_evolution_sampling_rate:      10             # Number of time-steps in-between two enrichment events for a star above the age threshold.
  SNII_yield_factor_Hydrogen:          1.0             # (Optional) Correction factor to apply to the Hydrogen yield from the SNII channel.
  SNII_yield_factor_Helium:            1.0             # (Optional) Correction factor to apply to the Helium yield from the SNII channel.
  SNII_yield_factor_Carbon:            0.5             # (Optional) Correction factor to apply to the Carbon yield from the SNII channel.
  SNII_yield_factor_Nitrogen:          1.0             # (Optional) Correction factor to apply to the Nitrogen yield from the SNII channel.
  SNII_yield_factor_Oxygen:            1.0             # (Optional) Correction factor to apply to the Oxygen yield from the SNII channel.
  SNII_yield_factor_Neon:              1.0             # (Optional) Correction factor to apply to the Neon yield from the SNII channel.
  SNII_yield_factor_Magnesium:         2.0             # (Optional) Correction factor to apply to the Magnesium yield from the SNII channel.
  SNII_yield_factor_Silicon:           1.0             # (Optional) Correction factor to apply to the Silicon yield from the SNII channel.
  SNII_yield_factor_Iron:              0.5             # (Optional) Correction factor to apply to the Iron yield from the SNII channel.

# GEAR feedback model
GEARFeedback:
  supernovae_energy_erg: 0.1e51                            # Energy released by a single supernovae.
  yields_table: chemistry-AGB+OMgSFeZnSrYBaEu-16072013.h5  # Table containing the yields.
  yields_table_first_stars: chemistry-PopIII.hdf5          # Table containing the yields of the first stars.
  metallicity_max_first_stars: -1                          # Maximal metallicity (in mass fraction) for a first star (-1 to deactivate).
  discrete_yields: 0                                       # Should we use discrete yields or the IMF integrated one?
  elements: [Fe, Mg, O, S, Zn, Sr, Y, Ba, Eu]              # Elements to read in the yields table. The number of element should be one less than the number of elements (N) requested during the configuration (--with-chemistry=GEAR_N).

# AGORA feedback model
AGORAFeedback:
  energy_in_erg_per_CCSN: 1e51
  supernovae_efficiency: 1
  supernovae_explosion_time_myr: 5
  ccsne_per_solar_mass : 0.010989
  ejected_mass_in_solar_mass_per_CCSN : 14.8
  ejected_Fe_mass_in_solar_mass_per_CCSN : 2.63
  ejected_metal_mass_in_solar_mass_per_CCSN : 2.63
 

# Parameters related to AGN models  -----------------------------------------------

# EAGLE AGN model
EAGLEAGN:
  subgrid_seed_mass_Msun:             1.5e5      # Black hole subgrid mass at creation time in solar masses.
  use_subgrid_mass_from_ics:          1          # (Optional) Use subgrid masses specified in ICs [1, default], or initialise them to particle masses [0]?
  with_subgrid_mass_check:            1          # (Optional) Verify that initial black hole subgrid masses are positive [1, default]. Only used if use_subgrid_mass_from_ics is 1.
  use_multi_phase_bondi:              0          # Compute Bondi rates per neighbour particle?
  use_subgrid_bondi:                  0          # Compute Bondi rates using the subgrid extrapolation of the gas properties around the BH?
  with_angmom_limiter:                1          # Are we applying the Rosas-Guevara et al. (2015) viscous time-scale reduction term?
  viscous_alpha:                      1e6        # Normalisation constant of the viscous time-scale in the accretion reduction term
  with_boost_factor:                  0          # Are we using the model from Booth & Schaye (2009)?
  boost_alpha_only:                   0          # If using the boost factor, are we using a constant boost only?
  boost_alpha:                        1.         # Lowest value for the accretion effeciency for the Booth & Schaye 2009 accretion model.
  boost_beta:                         2.         # Slope of the power law for the Booth & Schaye 2009 model, set beta to zero for constant alpha models.
  boost_n_h_star_H_p_cm3:             0.1        # Normalization of the power law for the Booth & Schaye 2009 model in cgs (cm^-3).
  with_fixed_T_near_EoS:              0          # Are we using a fixed temperature to compute the sound-speed of gas on the entropy floor in the Bondy-Hoyle accretion term?
  fixed_T_above_EoS_dex:              0.3        # Distance above the entropy floor for which we use a fixed sound-speed
  fixed_T_near_EoS_K:                 8000       # Fixed temperature assumed to compute the sound-speed of gas on the entropy floor in the Bondy-Hoyle accretion term
  radiative_efficiency:               0.1        # Fraction of the accreted mass that gets radiated.
  max_eddington_fraction:             1.         # Maximal allowed accretion rate in units of the Eddington rate.
  eddington_fraction_for_recording:   0.1        # Record the last time BHs reached an Eddington ratio above this threshold.
  use_nibbling:                       0          # Continuously transfer small amounts of mass from all gas neighbours to a black hole [1] or stochastically swallow whole gas particles [0]?
  min_gas_mass_for_nibbling_Msun:     9e5        # Minimum mass for a gas particle to be nibbled from [M_Sun]. Only used if use_nibbling is 1.
  coupling_efficiency:                0.15       # Fraction of the radiated energy that couples to the gas in feedback events.
  AGN_feedback_model:                 Random     # Feedback modes: Random, Isotropic, MinimumDistance, MinimumDensity
  AGN_use_deterministic_feedback:     0          # Deterministic (reservoir) [1] or stochastic [0] AGN feedback?
  AGN_delta_T_K:                      3.16228e8  # Change in temperature to apply to the gas particle in an AGN feedback event in Kelvin, this is used for the constant AGN model, for the mass dependend heating model we use this as an initialization value for the IC and birth properties of the BHs
  use_variable_delta_T:               1             # Switch to enable adaptive calculation of AGN dT [1], rather than using a constant value [0].
  AGN_with_locally_adaptive_delta_T:  1             # Switch to enable additional dependence of AGN dT on local gas density and temperature (only used if use_variable_delta_T is 1).
  AGN_delta_T_mass_norm:              3e8           # Normalisation temperature of AGN dT scaling with BH subgrid mass [K] (only used if use_variable_delta_T is 1).
  AGN_delta_T_mass_reference:         1e8           # BH subgrid mass at which the normalisation temperature set above applies [M_Sun] (only used if use_variable_delta_T is 1).
  AGN_delta_T_mass_exponent:          0.666667      # Power-law index of AGN dT scaling with BH subgrid mass (only used if use_variable_delta_T is 1).
  AGN_delta_T_crit_factor:            1.0           # Multiple of critical dT for numerical efficiency (Dalla Vecchia & Schaye 2012) to use as dT floor (only used if use_variable_delta_T and AGN_with_locally_adaptive_delta_T are both 1).
  AGN_delta_T_background_factor:      0.0           # Multiple of local gas temperature to use as dT floor (only used if use_variable_delta_T and AGN_with_locally_adaptive_delta_T are both 1).
  AGN_delta_T_min:                    1e7           # Minimum allowed value of AGN dT [K] (only used if use_variable_delta_T is 1).
  AGN_delta_T_max:                    3e9           # Maximum allowed value of AGN dT [K] (only used if use_variable_delta_T is 1).
  AGN_use_nheat_with_fixed_dT:        0          # Switch to use the constant AGN dT, rather than the adaptive one, for calculating the energy reservoir threshold (only used if use_variable_delta_T is 1).
  AGN_use_adaptive_energy_reservoir_threshold: 0 # Switch to calculate an adaptive AGN energy reservoir threshold.
  AGN_nheat_alpha:                   -1.0        # Number of particles to be heatable in a feedback event, at the reference accretion rate (only used if AGN_use_adaptive_energy_reservoir_threshold is 1).
  AGN_nheat_maccr_normalisation:     -1.0        # Reference accretion rate for energy reservoir threshold [M_sun / yr] (only used if AGN_use_adaptive_energy_reservoir_threshold is 1).
  AGN_nheat_limit:                   -1.0        # Hard limit for the energy reservoir threshold; above the reference accretion rate, it exponentially tapers off towards this (only used if AGN_use_adaptive_energy_reservoir_threshold is 1).
  AGN_num_ngb_to_heat:                1.         # Target number of gas neighbours to heat in an AGN feedback event.
  max_reposition_mass:                2e8        # Maximal BH mass considered for BH repositioning in solar masses.
  max_reposition_distance_ratio:      3.0        # Maximal distance a BH can be repositioned, in units of the softening length.
  with_reposition_velocity_threshold: 1          # Should we only reposition to particles that move slowly w.r.t. the black hole?
  max_reposition_velocity_ratio:      0.5        # Maximal velocity offset of a particle to reposition a BH to, in units of the ambient sound speed of the BH. Only meaningful if with_reposition_velocity_ratio is 1.
  min_reposition_velocity_threshold: -1.0        # Minimal value of the velocity threshold for repositioning [km/s], set to < 0 for no effect. Only meaningful if with_reposition_velocity_ratio is 1.
  set_reposition_speed:               0          # Should we reposition black holes with (at most) a prescribed speed towards the potential minimum?
  reposition_coefficient_upsilon:     50.0       # Repositioning speed normalisation [km/s/M_sun]. Only meaningful if set_reposition_speed is 1.
  reposition_reference_mass:          1e5        # Reference mass for scaling of reposition speed [M_sun]. Only meaningful if set_reposition_speed is 1.
  reposition_exponent_mass:           2.0        # (Optional) Exponent for scaling of repositioning velocity with BH mass; default = 2.0. Only meaningful if set_reposition_speed is 1.
  reposition_reference_n_H:           1.0        # Reference gas density around the black holes for scaling of repositioning speed [N_H cm^-3]. Only meaningful if set_reposition_speed is 1.
  reposition_exponent_n_H:            1.0        # (Optional) Exponent for scaling of repositioning velocity with gas density; default = 1.0. Only meaningful if set_reposition_speed is 1.
  with_potential_correction:          1          # Should the BH's own contribution to the potential be removed from the neighbour's potentials when looking for repositioning targets.
  threshold_major_merger:             0.333      # Mass ratio threshold to consider a BH merger as 'major'
  threshold_minor_merger:             0.1        # Mass ratio threshold to consider a BH merger as 'minor'
  merger_threshold_type:              DynamicalEscapeVelocity  # Type of velocity threshold for BH mergers ('CircularVelocity', 'EscapeVelocity', 'DynamicalEscapeVelocity').
  merger_max_distance_ratio:          3.0        # Maximal distance over which two BHs can merge, in units of the softening length.
  minimum_timestep_Myr:               1.0        # Minimum time-step size for BHs in Mega-years. The time-step size is computed based on the accretion rate and this serves as a minimum. Defaults to FLT_MAX.

# Spin-jet AGN model
SPINJETAGN:
  subgrid_seed_mass_Msun:             1e5        # Black hole subgrid mass at creation time in solar masses.
  use_subgrid_mass_from_ics:          1          # (Optional) Use subgrid masses specified in ICs [1, default], or initialise them to particle masses [0]?
  with_subgrid_mass_check:            1          # (Optional) Verify that initial black hole subgrid masses are positive [1, default]. Only used if use_subgrid_mass_from_ics is 1.
  use_multi_phase_bondi:              0          # Compute Bondi rates per neighbour particle [1] or for the smoothed ambient gas around the black hole [0]?
  use_subgrid_gas_properties:         1          # Use subgrid density [1] or dynamical density [0] to calculate BH accretion rates?
  use_krumholz:                       1          # Use Krumholz et al. (2006) [1] or standard Bondi-Hoyle-Lyttleton formula [0] for black hole accretion rates? Only used if multi_phase_bondi is 0.
  with_krumholz_vorticity:            0          # Include the vorticity term in Krumholz et al. formula? Only used if use_multi_phase_bondi is 0.
  with_angmom_limiter:                0          # Are we applying the Rosas-Guevara (2015) viscous time-scale reduction term?
  viscous_alpha:                      1e6        # Normalisation constant of the viscous time-scale in the accretion reduction term. Only used if with_angmom_limiter is 1.
  with_boost_factor:                  0          # Are we using the model from Booth, Schaye (2009)?
  boost_alpha:                        1.         # Lowest value for the accretion effeciency for the Booth, Schaye 2009 accretion model.
  boost_beta:                         2.         # Slope of the power law for the Booth, Schaye 2009 model, set beta to zero for constant alpha models.
  boost_n_h_star_cm3:                 0.1        # Normalization of the power law for the Booth Schaye 2009 model in cgs (cm^-3).
  max_eddington_fraction:             1.         # Maximal allowed accretion rate in units of the Eddington rate.
  eddington_fraction_for_recording:   0.1        # Record the last time BHs reached an Eddington ratio above this threshold.
  use_nibbling:                       1          # Continuously transfer small amounts of mass from all gas neighbours to a black hole [1] or stochastically swallow whole gas particles [0]? 
  min_gas_mass_for_nibbling_Msun:     9e5        # Minimum mass for a gas particle to be nibbled from [M_Sun]. Only used if use_nibbling is 1.
  coupling_efficiency:                0.15       # Fraction of the radiated energy that couples to the gas in feedback events.
  AGN_delta_T_K:                      3.16228e8  # Change in temperature to apply to the gas particle in an AGN feedback event in Kelvin.
  AGN_num_ngb_to_heat:                1.         # Target number of gas neighbours to heat in an AGN feedback event.
  with_potential_correction:          1          # Subtract BH's own contribution to the potential of neighbours when determining repositioning targets.
  max_reposition_mass_Msun:           2e8        # Maximal BH mass considered for BH repositioning in solar masses.
  max_reposition_distance_ratio:      3.0        # Maximal distance a BH can be repositioned, in units of the softening length.
  with_reposition_velocity_threshold: 0          # Should we only reposition to particles that move slowly w.r.t. the black hole?
  max_reposition_velocity_ratio:      0.25       # Maximal velocity offset of a particle to reposition a BH to, in units of the ambient sound speed of the BH. Only meaningful if with_reposition_velocity_ratio is 1.
  min_reposition_velocity_threshold_km_p_s: -1.0 # Minimal value of the velocity threshold for repositioning [km/s], set to < 0 for no effect. Only meaningful if with_reposition_velocity_ratio is 1.
  set_reposition_speed:               0          # Should we reposition black holes with (at most) a prescribed speed towards the potential minimum?
  reposition_coefficient_upsilon:     0.001      # Repositioning speed normalisation [km/s/M_sun]. Only meaningful if set_reposition_speed is 1.
  reposition_exponent_xi:             1.0        # (Optional) Scaling of repositioning velocity with BH subgrid mass (default: 1.0, linear). Only meaningful if set_reposition_speed is 1.
  threshold_major_merger:             0.333      # Mass ratio threshold to consider a BH merger as 'major'
  threshold_minor_merger:             0.1        # Mass ratio threshold to consider a BH merger as 'minor'
  merger_threshold_type:              DynamicalEscapeVelocity   # Type of velocity threshold for BH mergers (CircularVelocity as in EAGLE, EscapeVelocity, or DynamicalEscapeVelocity)
  merger_max_distance_ratio:          3.0        # Maximal distance over which two BHs can merge, in units of the softening length.
  AGN_use_deterministic_feedback:     1          # Deterministic (1) or stochastic (0) AGN feedback model
  AGN_feedback_model:                 Isotropic  # AGN feedback model (Isotropic or MinimumDistance)
  minimum_timestep_yr:                1000.0     # Minimum time-step of black-hole particles
  include_jets:                       1          # Global switch whether to include jet feedback [1] or not [0].
  turn_off_radiative_feedback:        0          # Global switch whether to turn off radiative (thermal) feedback [1] or not [0]. This should only be used if 'include_jets' is set to 1, since we want feedback in some form or another.
  alpha_acc:                          0.2        # Viscous alpha of the subgrid accretion disks. Likely to be within the 0.1-0.3 range. The main effect is that it sets the transition accretion rate between the thin and thick disk, as dot(m) = 0.2 * alpha^2.
  mdot_crit_ADAF:                     0.03       # The transition normalized accretion rate (Eddington ratio) at which the disc goes from thick (low accretion rates) to thin (high accretion rates). The feedback also changes from kinetic jets to thermal isotropic, respectively.
  seed_spin:                          0.01       # The (randomly-directed) black hole spin assigned to BHs when they are seeded. Should be strictly between 0 and 1.
  AGN_jet_velocity_model:             Constant   # How AGN jet velocities are calculated. If 'Constant', a single value is used. If 'BlackHoleMass', then an empirical relation between halo mass and black hole mass is used to calculate jet velocities. 'HaloMass' is currently not supported. 
  v_jet_km_p_s:                       3160.      # Jet velocity to use if 'AGN_jet_velocity_model' is 'Constant'. Units are km/s.
  v_jet_cs_ratio:                     10.        # This sets the jet velocity to v_jet_cs_ratio times the sound speed of the hot gas of the parent halo the black hole is in. This is used if 'AGN_jet_velocity_model' is 'BlackHoleMass'.
  v_jet_BH_mass_scaling_reference_mass_Msun: 3.4e3 # The reference mass used in the relation between halo mass and BH mass used to calculate jet velocities. Only used if 'AGN_jet_velocity_model' is 'BlackHoleMass'.
  v_jet_BH_mass_scaling_slope:        0.65       # The slope of the relation between halo mass and BH mass used to calculate jet velocities. Only used if 'AGN_jet_velocity_model' is 'BlackHoleMass'.
  v_jet_mass_loading:                 400.       # The constant mass loading to use if 'AGN_jet_velocity_model' is 'MassLoading'.
  v_jet_xi:                           1.         # The numerical multiplier by which the jet velocity formula is scaled, if 'AGN_jet_velocity_model' is 'Local'. If a value of 1 is used, the formulas are used as derived, i.e. they are not rescaled.
  v_jet_min_km_p_s:                   500        # The minimal jet velocity. This is used if 'AGN_jet_velocity_model' is 'BlackHoleMass', 'MassLoading' or 'Local'.
  v_jet_max_km_p_s:                   1e5        # The maximal jet velocity. This is used if 'AGN_jet_velocity_model' is 'BlackHoleMass', 'MassLoading' or 'Local'.
  temperature_hot_gas_min_K:          1e4        # The minimum temperature (in Kelvin) of hot gas to include in the calculation of the hot gas sound speed around the BH. This is only used if 'AGN_jet_velocity_model' is 'Local'.
  opening_angle_in_degrees:           7.5        # The half-opening angle of the jet in degrees. Should use values < 15 unless for tests.
  N_jet:                              2          # Target number of particles to kick as part of a single jet feedback event. Should be a multiple of 2 to ensure approximate momentum conservation (we always kick particles in pairs, one from each 'side' of the BH, relative to the spin vector).
  AGN_jet_feedback_model:             MinimumDistance   # Which particles to kick from the black hole smoothing kernels. Should be 'SpinAxis', 'MinimumDistance', 'MaximumDistance' or 'MinimumDensity'
  eps_f_jet:                          1.         # Coupling efficiency for jet feedback. No reason to expect this to be less than 1.
  fix_jet_efficiency:                 0          # Global switch whether to fix jet efficiency to a particular value [1], or use a spin-dependant formula [0].
  jet_efficiency:                     0.1        # The constant jet efficiency used if 'fix_jet_efficiency' is set to 1.
  fix_jet_direction:                  0          # Global switch whether to fix the jet direction to be along the z-axis, instead of along the spin vector.
  accretion_efficiency:               1.         # The accretion efficiency (suppression factor of the accretion rate) to use in the thick disc (ADAF), to represent the effects of subgrid winds that take away most of the mass flowing through the accretion disc.
  fix_radiative_efficiency:           0          # Global switch whether to fix the radiative efficiency to a particular value [1], or use a spin-dependant formula [0]. 
  radiative_efficiency:               0.1        # The constant jet efficiency used if 'fix_radiative_efficiency' is set to 1. Otherwise, this value is used to define the Eddington accretion rate.
  TD_region:                          B          # How to treat the subgrid accretion disk if it is thin, according to the Shakura & Sunyaev (1973) model. If set to B, region b will be used. If set to C, region c will be used.
  include_GRMHD_spindown:             1          # Whether to include high jet spindown rates from GRMHD simulations [1], or use an analytical formula that assumes extraction of energy from the rotational mass/energy of the BH.
  turn_off_secondary_feedback:        1          # If set to 1, there will be only radiative (thermal) feedback in the thin disk mode, and only jets in the thick disk mode.
  jet_h_r_slope:                      1.         # The slope of the dependence of jet efficiency on aspect ratio of the subgrid accretion disk, H/R. Default value is 1, and another reasonable value is 0 (same jet efficiency for all disks). Reality could be anything in between. This parameter is only used if turn_off_secondary_feedback is set to 0.
  delta_ADAF:                         0.2        # Electron heating parameter, which controls the strength of radiative feedback in thick disks. Should be between 0.1 and 0.5. This parameter is only used if turn_off_secondary_feedback is set to 0.
  include_slim_disk:                  1          # Global switch whether to include super-Eddington accretion, modeled as the slim disk. If set to 0, disks will be considered thin even at very large accretion rates.

  
# Parameters related to the neutrinos --------------------------------------------
Neutrino:
  use_delta_f:                        1          # Use the delta-f method for shot noise reduction
  use_delta_f_mesh_only:              0          # Use the delta-f method, but only in the mesh gravity calculation and outputs
  generate_ics:                       0          # Automatically generate neutrino velocities at the start of the run
  neutrino_seed:                      0          # Seed used in the delta-f weighting step for Fermi-Dirac momentum generation
  use_linear_response: 0                         # Option to use the linear response method
  transfer_functions_filename: perturb.hdf5      # For linear response neutrinos, path to an hdf5 file with transfer functions, redshifts, and wavenumbers
  dataset_redshifts: Redshifts                   # For linear response neutrinos, name of the dataset with the redshifts (a vector of length N_z)
  dataset_wavenumbers: Wavenumbers               # For linear response neutrinos, name of the dataset with the wavenumbers (a vector of length N_k)
  dataset_delta_cdm: Functions/d_cdm             # For linear response neutrinos, name of the dataset with the cdm density transfer function (N_z x N_k)
  dataset_delta_baryon: Functions/d_b            # For linear response neutrinos, name of the dataset with the baryon density transfer function (N_z x N_k)
  dataset_delta_nu: Functions/d_ncdm[0]          # For linear response neutrinos, name of the dataset with the neutrino density transfer function (N_z x N_k)
  fixed_bg_density: 1                            # For linear response neutrinos, whether to use a fixed present-day background density
  use_model_none: 0                              # Option to use no neutrino model

# Parameters related to extra i/o (X-ray emmisivity)  ----------------------------

XrayEmissivity:
  xray_table_path:         ./X_Ray_tables.hdf5   # Path to the X-ray emissivity tables
  
# Parameters related to the sink particles ---------------------------------------

# Default sink particles
DefaultSink:
  cut_off_radius:        1e-3       # Cut off radius of the sink particles (in internal units). This parameter should be adapted with the resolution.

# GEAR sink particles
GEARSink:
  cut_off_radius:        1e-3       # Cut off radius of the sink particles (in internal units). This parameter should be adapted with the resolution.

# Parameters related to radiative transfer ---------------------------------------

GEARRT:
  f_reduce_c: 1e-3                                  # reduce the speed of light for the RT solver by multiplying c with this factor
  CFL_condition: 0.9                                # CFL condition for RT, independent of hydro
  f_limit_cooling_time: 0.6                         # (Optional) multiply the cooling time by this factor when estimating maximal next time step. Set to 0.0 to turn computation of cooling time off.
  photon_groups_Hz: [3.288e15, 5.945e15, 13.157e15] # Lower photon frequency group bin edges in Hz. Needs to have exactly N elements, where N is the configured number of bins --with-RT=GEAR_N
  stellar_luminosity_model: const                   # Which model to use to determine the stellar luminosities.
  const_stellar_luminosities_LSol: [1., 1., 1.]     # (Conditional) constant star luminosities for each photon frequency group to use if stellar_luminosity_model:const is set, in units of Solar Luminosity.
  hydrogen_mass_fraction:  0.76                     # total hydrogen (H + H+) mass fraction in the metal-free portion of the gas
  set_equilibrium_initial_ionization_mass_fractions: 0   # (Optional) set the initial ionization fractions depending on gas temperature assuming ionization equilibrium.
  set_initial_ionization_mass_fractions: 0          # (Optional) manually overwrite initial mass fraction of each species (using the values you set below)
  mass_fraction_HI: 0.76                            # (Conditional) If overwrite_initial_ionization_fractions=1, needed to set initial HI mass fractions to this value
  mass_fraction_HII: 0.                             # (Conditional) If overwrite_initial_ionization_fractions=1, needed to set initial HII mass fractions to this value
  mass_fraction_HeI: 0.24                           # (Conditional) If overwrite_initial_ionization_fractions=1, needed to set initial HeI mass fractions to this value
  mass_fraction_HeII: 0.                            # (Conditional) If overwrite_initial_ionization_fractions=1, needed to set initial HeII mass fractions to this value
  mass_fraction_HeIII: 0.                           # (Conditional) If overwrite_initial_ionization_fractions=1, needed to set initial HeIII mass fractions to this value
  skip_thermochemistry: 0                           # (Optional) skip the thermochemistry. This is intended only for debugging and testing the radiation transport, as it breaks the purpose of RT.
  stellar_spectrum_type: 0                          # Which radiation spectrum to use. 0: constant from 0 until some max frequency set by stellar_spectrum_const_max_frequency_Hz. 1: blackbody spectrum.
  stellar_spectrum_const_max_frequency_Hz: 1.e17    # (Conditional) if stellar_spectrum_type=0, use this maximal frequency for the constant spectrum. 
  stellar_spectrum_blackbody_temperature_K: 1.e4    # (Conditional) if stellar_spectrum_type=1, use this temperature (in K) for the blackbody spectrum. 
  stars_max_timestep: -1.                           # (Optional) restrict the maximal timestep of stars to this value (in internal units). Set to negative to turn off.
  grackle_verbose: 0                                # (Optional) set grackle to verbose. (Default: 0)
  case_B_recombination: 1                           # (Optional) use case B recombination interaction rates. (Default: 1)
  max_tchem_recursion: 0                            # (Optional) if > 0, sets the maximal recursion depth when re-computing the thermochemistry if |u_new/u_old - 1| > 0.1.

SPHM1RT:
  cred: 2.99792458e10                                 # value of reduced speed of light for the RT solver in code unit
  CFL_condition: 0.1                                  # CFL condition for RT, independent of hydro 
  chi:  [0, 0, 0, 0]                                  # (Optional) initial opacity in code unit for all gas particles
  photon_groups_Hz: [3.288e15, 5.945e15, 13.157e15]   # Photon frequency group bin edges in Hz. Needs to be 1 less than the number of groups (N) requested during the configuration (--with-RT=SPHM1RT_N). Outer edges of zero and infinity are assumed.
  use_const_emission_rates: 1                         # (Optional) use constant emission rates for stars as defined with star_emission_rates parameter
  star_emission_rates: [1e-32, 1e-32, 1e-32, 1e-32]     # (Optional) constant star emission rates for each photon frequency group to use if use_constant_emission_rates is set.
  stellar_spectrum_type: 0                            # Which radiation spectrum to use. 0: constant from 0 until some max frequency set by stellar_spectrum_const_max_frequency_Hz. 1: blackbody spectrum.
  stellar_spectrum_const_max_frequency_Hz: 1.e17      # (Conditional) if stellar_spectrum_type=0, use this maximal frequency for the constant spectrum. 
  stars_max_timestep: -1.                             # (Optional) restrict the maximal timestep of stars to this value (in internal units). Set to negative to turn off.
  stellar_spectrum_blackbody_temperature_K: 1.e4      # (Conditional) if stellar_spectrum_type=1, use this temperature (in K) for the blackbody spectrum. 
  skip_thermochemistry: 0                             # (Optional) skip the thermochemistry. This is intended only for debugging and testing the radiation transport, as it breaks the purpose of RT.
  init_mass_fraction_metal:     0.                    # (Optional) Inital mass fraction of particle mass in *all* metals (if it is set, the initial fraction will be over-written.)
  init_mass_fraction_Hydrogen:  0.752                 # (Conditional) (if init_mass_fraction_metal != -1.0f) Inital mass fraction of particle mass in Hydrogen
  init_mass_fraction_Helium:    0.248                 # (Conditional) (if init_mass_fraction_metal != -1.0f) Inital mass fraction of particle mass in Helium
  useabundances:              0                       # (Optional) use the species abundances below, instead of reading from initial condition
  init_species_abundance_e:        4e-5               # (Conditional) (if useabundances==1) free electron abundances (in unit hydrogen number density:nH)
  init_species_abundance_HI:       0.99999            # (Conditional) (if useabundances==1) HI abundances (in unit hydrogen number density:nH)
  init_species_abundance_HII:      1e-5               # (Conditional) (if useabundances==1) HII abundances (in unit hydrogen number density:nH)
  init_species_abundance_HeI:      0.08242680851      # (Conditional) (if useabundances==1) HeI abundances (in unit hydrogen number density:nH)
  init_species_abundance_HeII:     1e-5               # (Conditional) (if useabundances==1) HeII abundances (in unit hydrogen number density:nH)
  init_species_abundance_HeIII:    1e-5               # (Conditional) (if useabundances==1) HeIII abundances (in unit hydrogen number density:nH)
  relativeTolerance:          1e-3                    # (Optional) Relative tolerance for SPHM1RT thermo-chemistry intergration
  absoluteTolerance:          1e-10                   # (Optional) Absolute tolerance for SPHM1RT thermo-chemistry integration
  explicitTolerance:          0.1                     # (Optional) Tolerance below which we use the explicit solution in SPHM1RT thermo-chemistry
  ionizing_photon_energy_erg: [3.0208e-11, 5.61973e-11, 1.05154e-10]  # (Optional) ionizing photon energy in erg averaged within frequency bins #note that we start from frequency bin 1 (instead of 0).
  coolingon:              1                           # (Optional) switch for cooling (and photoheating), but photo-ionization will be ongoing even if coolingon==0 
  useparams:              0                           # (Optional) switch to use thermo-chemistry parameters from the parameter file
  fixphotondensity:       0                           # (Optional) switch for fixing the photo-density
  Fgamma_fixed_cgs:       [0.0, 0.0, 0.0]             # (Conditional) (if fixphotondensity=1) the photo-density values if the photo density is fixed
  onthespot:              1                           # (Optional) switch for the on the spot approximation
  sigma_cross:            [2.99e-18, 5.66e-19, 7.84e-20] # (Conditional) (if useparams=1) The cross section of ionizing photons for hydrogen (cm^2)
  alphaA:                 4.29e-13                    # (Conditional) (if useparams=1) The case A recombination coefficient for hydrogen (cgs)
  alphaB:                 2.59e-13                    # (Conditional) (if useparams=1) The case B recombination coefficient for hydrogen (cgs)
  beta:                   1.245e-15                   # (Conditional) (if useparams=1) The collisional ionization coefficient for hydrogen (cgs)
  reinject:               1                           # (Optional) gather energy around injection radius and re-inject the energy


# Parameters related to power spectra --------------------------------------------

PowerSpectrum:
  grid_side_length:  256                  # Size of the grid used in power spectrum calculation.
  num_folds:         6                    # Number of foldings (1 means no foldings), determines the max k
  fold_factor:       4                    # (Optional) factor by which to reduce the box along each side each folding (default: 4)
  window_order:      3                    # (Optional) order of the mass assignment scheme (default: 3, TSC)
  output_list_on:    0                    # (Optional) Enable the output list
  output_list:       ./output_list_ps.txt # (Optional) File containing the output times (see documentation in "Parameter File" section)
  requested_spectra: ["matter-matter","cdm-cdm","starBH-starBH","gas-matter","pressure-pressure","matter-pressure", "neutrino0-neutrino1"] # Array of strings indicating which components should be correlated for power spectra
    

# Parameters related to lightcones  -----------------------------------------------
# Parameters in the LightconeCommon section apply to all lightcones but can be overridden in the LightconeX sections.
# Up to 8 Lightcone sections named Lightcone0 to Lightcone7 may be present.
LightconeCommon:

  subdir:            lightcones   # All lightcone output is written to this directory
  buffer_chunk_size: 10000        # Particles and map updates are buffered in a linked list of chunks of this size

  z_range_for_DM:     [0.0, 0.05] # Output redshift range for dark matter
  z_range_for_Gas:    [0.0, 0.05] # Output redshift range for gas
  z_range_for_Stars:  [0.0, 0.05] # Output redshift range for stars
  z_range_for_BH:     [0.0, 0.05] # Output redshift range for black holes

  max_particles_buffered: 100000  # Output particles if buffer size reaches this value
  max_updates_buffered:   100000  # Flush map updates if buffer size reaches this value
  hdf5_chunk_size:        16384   # Chunk size for HDF5 particle and healpix map datasets

  nside:                512                    # Healpix resolution parameter
  radius_file:          ./shell_redshifts.txt  # Redshifts of shells for healpix maps
  max_map_update_send_size_mb: 16.0            # Apply map updates over mutliple iterations to limit memory overhead
  map_names_file:       ./map_types.txt        # List of types of healpix maps to make

  distributed_maps:   1           # Split maps over multiple files (1) or use collective I/O to write one file (0)

  particles_lossy_compression: 0  # Apply lossy compression to lightcone particles
  particles_gzip_level:        6  # Apply lossless (deflate) compression to lightcone particles
  maps_gzip_level:             6  # Apply lossless (deflate) compression to healpix maps

# Parameters specific to lightcone 0 - any lightcone parameters not found here are taken from LightconeCommon, above,
# except for 'enabled' and 'basename'.
Lightcone0:
  enabled: 1                                           # Enable this lightcone
  basename: lightcone0                                 # Base name of this lighcone's output files
  observer_position: [35.561875, 35.561875, 35.561875] # Location of the observer in this lightcone

# Parameters specific to lightcone 1 - any lightcone parameters not found here are taken from LightconeCommon, above,
# except for 'enabled' and 'basename'.
Lightcone1:
  enabled: 1
  basename: lightcone1
  observer_position: [35.561875, 35.561875, 35.561875]

  gas_filtering_enabled:      1      # Enable filtering out of certain gas particles from particle outputs
  min_z_for_gas_filtering:    0.025  # Filter gas particles above this redshift, output all below
  min_temp_for_filtered_gas:  1.0e5  # Above min_z_for_gas_filtering only output gas with temperature above this
  min_nh_for_filtered_gas:    1.0e-6 # Above min_z_for_gas_filtering only output gas with nh/(1+z)^4 above this