Parameters

This section describes all of the parameters that can be set in the input parameter file. This file is actually parsed by a Python interpreter, so any valid Python expression can be used to construct the parameter values.

During normal “simulation mode”, the code will check all variables that were set in the parameter files, and if it encounters one that it doesn’t recognise, then it will issue and error and abort the program. This is to catch misspelled parameters.

If you need to use intermediate variables to calculate parameter values, then prefix them with an underscore; the code ignores any variables that start with an underscore.

Gravity, Domains, Trees

Parameters in this section are used to override the gravitational softening \(\epsilon\), control the tree memory layout, as well as to control how often domain decomposition and tree building occur.

dSoft (default 0.0)float

This sets the gravitational softening length globally for all particles in code units. Normally the softening is read from the input file, and can be different for each particle (for example for different masses).

dSoftMax (default 0.0)float

maximum comoving gravitational softening length (abs or multiplier)

bPhysicalSoft (default False)Boolean

Physical gravitational softening length

bSoftMaxMul (default True)Boolean

Use maximum comoving gravitational softening length as a multiplier

bDoGravity (default True)Boolean

By setting this to false, accelerations due to gravitational forces are not applied. This is useful for hydrodyamical simulations.

nGridLin (default 0)integer

Grid size for linear species 0=disabled

bDoLinPkOutput (default False)Boolean

enable power spectrum output for linear species

dFracNoDomainDecomp (default 0.1)float

Fraction of Active Particles for no DD

dFracNoDomainRootFind (default 0.1)float

Fraction of Active Particles for no DD root finding

dFracNoDomainDimChoice (default 0.1)float

Fraction of Active Particles for no DD dimension choice

iMaxRungDomainDecomp (default 2147483648)integer

Rung above which no domain decomposition is performed.

Analysis

dDeltakRedshift (default 0.0)float

starting redshift to output delta(k) field

Power Spectrum Measurement

The code provides a built-in tool for measuring the power spectrum P(k) of a simulation. These parameters control the configuration.

nGridPk (default 0)integer

This size of the 3D grid for measuring the power spectrum. This feature is disabled if the grid size is zero which is the default. A reasonable value is to set this to the same size as the IC grid, plus or minus a factor of two.

nBinsPk (default \(\frac{\text{nGridPk}}{2}\))integer

Specifies the number of P(k) bins (in log space) when measuring the power spectrum. The default is half of the grid size (nGridPk).

nFoldPk (default none)

Normally the power spectrum measurement is done on a fixed size grid. This parameter allows the measurement to be done multiple times by folding the particles allowing high k values to be reached with a smaller grid.

bPkInterlace (default True)Boolean

If enabled, the power spectrum measurement tool creates two mass assignment grids. The second contains the mass with the particles offset by half a grid cell. The results of the two mass assignment grids are combined to reduce grid aliasing effects. See Hockney and Eastwood [1], section 7-8 “Interlacing” for details..

iPkOrder (default 3)IPKORDER

Selects the mass assignment order. The models should be imported with:

from PKDGRAV import ASSIGNMENT_ORDER

Possible values are: - ASSIGNMENT_ORDER.NGP: Nearest Grid Point - ASSIGNMENT_ORDER.CIC: Cloud in Cell - ASSIGNMENT_ORDER.TSC: Triangular Shaped Cloud - ASSIGNMENT_ORDER.PCS: Piecewise Cubic Spline

The recommended method is PCS. See Sefusatti et al. [9] for details.

Light Cone

bLightCone (default False)Boolean

Enable or disable light cone output.

dRedshiftLCP (default 0.0)float

starting redshift to output light cone

nSideHealpix (default 0)integer

Sets the “nSide” parameter for healpix, and if non-zero enables the output of the healpix maps.

bLightConeParticles (default False)Boolean

output light cone particles

bBowtie (default False)Boolean

output +++ and — octants of the cone; a bowtie

lstLightConeOctants (default all)

Normally when a light cone sphere is output, all octants are written to the same set of files. This is a list of octants to output. The default filename is contructed by appending “.lcp.{octant}.{i}”. Examples:

lstLightConeOctants = [0,1,2]   # Output octants 0,1 and 2
lstLightConeOctants = range(3)  # same thing
The octants are numbered as follows:
  • 0: x>=0, y>=0, z>=0

  • 1: x>=0, y>=0, z<0

  • 2: x>=0, y<0, z>=0

  • 3: x>=0, y<0, z<0

  • 4: x<0, y>=0, z>=0

  • 5: x<0, y>=0, z<0

  • 6: x<0, y<0, z>=0

  • 7: x<0, y<0, z<0

sqdegLCP (default 50.0)float

square degrees of lightcone (if (<0 || >41253) then all sky)

hLCP (default [0.749, 0.454, 1.0])

lightcone direction vector

Group Finding

Several group finding schemes are available. The following parameters apply to all schemes.

nMinMembers (default 10)integer

After groups have been identified, and that have fewer than this many particles are removed.

dEnvironment0 (default disabled)float

first radius for density environment about a group

dEnvironment1 (default disabled)float

second radius for density environment about a group

Friends of Friends

This provides a classic Friends-of-Friends group finder where particles are linked together if they are within a certain distance \(\tau\).

bFindGroups (default False)Boolean

The Friends-of-friends group finder is enabled when this is true.

dTau (default 0.0)float

The linking length \(\tau\). This is normally set to one fifth of the mean particle separation. For example, if you use the built-in IC generator you could set this parameter with:

dTau = 0.2 / nGrid

Grasshopper

This halo finder is not currently available.

bFindHopGroups (default False)Boolean

enable density-gradient group finder

dHopTau (default -4.0)float

linking length for Gasshopper (negative for multiples of softening)

I/O Parameters

achInFile (default none)string

input file name

achOutName (default “pkdgrav3”)string

This parameter sets the base name for output files and should be a simple string such as “simulation” or “galaxy1”. It will be substituted into the output path. For details see achOutPath.

achOutPath (default “{name}.{step:05d}{type}”)string

This parameter specifies the full name and possibly the path for output files. This includes tipsy outputs, checkpoints, and analysis files, but see also achIoPath and achCheckpointPath. This string must include the format specifiers {name}, {step} and {type} as in the default. It may also include a directory path, for example “output/{name}.{step:05d}{type}”. The following field names are allowed:

  • name – simulation name (same as achOutName)

  • step – current simulation step (or zero for intial conditions)

  • type – file type (e.g., “.log”, “.fof” or empty for outputs)

  • kind – extension name without leading dot or “output” for outputs

achIoPath (default same as achOutPath)string

If specified, this will override the path for Tipsy outputs. It otherwise behaves exactly like achOutPath. This is useful if you want outputs to be stored in a different directory for example. It is also possible to include {i} which is used when parallel writing, and causes parallel Tipsy files to be written to separate files instead of a single file. Like achOutPath you must specify all fields, for example:

{name}.{step:05d}{type}.{i}
achCheckpointPath (default same as achOutPath)string

If specified, this will override the path for checkpoint outputs. It otherwise behaves exactly like achOutPath. This is useful if you want checkpoints to be stored in a different directory for example.

achDataSubPath (default none)string

sub-path for data

bInFileLC (default False)Boolean

input light cone data

bParaRead (default True)Boolean

enable parallel reading of files

bParaWrite (default False)Boolean

disable parallel writing of files

nParaRead (default 0)integer

number of threads to read with during parallel read (0=unlimited)

nParaWrite (default 0)integer

number of threads to write with during parallel write (0=unlimited)

iOutInterval (default 0)integer

number of timesteps between snapshots

iCheckInterval (default 0)integer

number of timesteps between checkpoints

iLogInterval (default 1)integer

number of timesteps between logfile outputs

iPkInterval (default 1)integer

number of timesteps between pk outputs

iDeltakInterval (default 0)integer

number of timesteps between DeltaK outputs

bHDF5 (default False)Boolean

output in HDF5 format

bDoublePos (default False)Boolean

input/output double precision positions (standard format only)

bDoubleVel (default False)Boolean

input/output double precision velocities (standard format only)

bDoSoftOutput (default False)Boolean

enable soft outputs

bDoDensity (default False)Boolean

enable density outputs

bDoAccOutput (default False)Boolean

enable acceleration outputs

bDoPotOutput (default False)Boolean

enable potential outputs

bDoRungOutput (default False)Boolean

enable rung outputs

bDoRungDestOutput (default False)Boolean

enable rung destination outputs

bStandard (default True)Boolean

output in standard TIPSY binary format

iCompress (default 0)integer

compression format, 0=none, 1=gzip, 2=bzip2

iWallRunTime (default 0)integer

Maximum Wallclock time (in minutes) to run

iSignalSeconds (default 0)integer

Time (in seconds) that USR1 is sent before termination

lstOrbits (default none)

List of particle IDs of particle to write to orbit file

Time Stepping

iStartStep (default 0)integer

Simulations always start at step zero and steps increment by one as the simulation progresses. This parameter is intended to restart from an output which is not recommended. Instead you should use the checkpoint/restore mechanism.

nSteps (default none)

This parameter specifies the number of steps in the simulation. It can also be a list in which case dRedTo or dDelta must be a list of the same length.

dRedTo (default none)

This specifies the ending redshift for comsological simulations. It has no meaning for non-cosmological simulations. It can also be a list of redshifts in which case nSteps must be a list of the same length.

dDelta (default none)

This specifies the time step \(\Delta t\) for each step in the simulation. This can be a list of values in which case nSteps must be a list of the same length.

dEta (default 0.2)float

time step criterion

bGravStep (default False)Boolean

Gravity timestepping according to iTimeStep Criterion

time_step (default 1)integer

Which timestep scheme to use

bAccelStep (default False)Boolean

Acceleration timestepping

bEpsAccStep (default False)Boolean

Sqrt(Epsilon on a) timestepping

bDensityStep (default False)Boolean

Sqrt(1/Rho) timestepping

iTimeStepCrit (default 0)integer

Criteria for dynamical time-stepping

nPartRhoLoc (default 32)integer

Number of particles for local density in dynamical time-stepping

dPreFacRhoLoc (default \(\frac{4}{3}\pi\))float

Pre-factor for local density in dynamical time-stepping

dEccFacMax (default 3000.0)float

Maximum correction factor for eccentricity correction

nPartColl (default 0)integer

Number of particles in collisional regime

iMaxRung (default 63)integer

maximum timestep rung

bNewKDK (default False)Boolean

Use new implementation of KDK time stepping=no

nTruncateRung (default 0)integer

number of MaxRung particles to delete MaxRung

Force Accuracy

Parameters in this section control force accuracy and in turn control RMS error in calculated accelerations.

Barnes/Hut Opening Angle

Opening angle control.

dTheta (default 0.7)float

The Barns/Hut opening criterion \(\theta\). A value of 0.7 gives an RMS error of approximately \(0.1\%\) which is normally adequate. At very high redshift, when the particle distribution is very uniform and thus the force on each particle is nearly zero then decreasing this to 0.4 is recommended. Theta should be relaxed at lower redshift by using accuracy.classic_theta_switch().

Ewald

bEwald (default True)Boolean

If this is true then the Ewald correction to forces is applied for periodic volumes. This has no effect if the simulation is not periodic.

nReplicas (default 1)integer

This sets the number of box replicas that will be considered for tree-based force calculations. When periodic boundary conditions are disabled this parameter is ignored. For cosmological simulations it is recommended to switch between 1 and 2 replicas depending on \(\theta\) by using accuracy.classic_replicas_switch().

dEwCut (default 2.6)float

dEwCut

dEwhCut (default 2.8)float

dEwhCut

Periodic Boundaries

bPeriodic (default False)Boolean

This turns on periodic boundary conditions. If you have gravity turned on (which is the usual case) then you also want to enable Ewald correction.

dPeriod (default [1.0, 1.0, 1.0])

Length of the periodic box in code units. This can be scalar float in which case all three dimensions have the same length, or it can be a list of three numbers for the x, y and z period.

Cosmology

bComove (default False)Boolean

Enables comoving coordinate system and cosmology.

dBoxSize (default 1.0)float

The size of the simulation box in \(h^{-1}~\text{Mpc}\). This is used when generating an initial condition and to normalize the power spectrum measurement. It is also required to normalize \(\theta\) and \(\delta\) if the CLASS interface is used. For pure dark matter simulations it is not technically necessary to specify this, but it is recommended.

dHubble0 (default \(\sqrt{\frac{8}{3}\pi}\))float

The Hubble parameter \(H_0\) in code units. It is very unlikely that you will need to change this.

Normalization

Input transfer functions need to be normalized.

dSpectral (default none)float

This sets the spectral index \(n_{\text{s}}\).

dNormalization (default none)float

This set the normalization \(A_{\text{s}}\) of the transfer function. This is normally used for the CLASS/CONCEPT interface.

dSigma8 (default none)float

Alternatively, the normalization of the transfer function can be specified by supplying \(\sigma_8\), an observable. This is more commonly used when specifying a transfer function.

Transfer Function

The cosmology can be specified using a tabulated transfer function and by setting the cosmological parameters. If you instead use the CONCEPT/CLASS interface then none of these parameters should be specified as they will be read from the HDF5 input file.

achTfFile (default none)string

A tabulated transfer function in CMBFAST format. The first column is k and the second column is T(k). Units are \(h^{-1}~\text{Mpc}\). This can be omitted if you are not using the built-in IC generator (i.e., you are supplying your own input file), but the other parameters need to be specified for cosmological runs.

h (default 0.0)float

hubble parameter h

dOmega0 (default 1.0)float

The matter density of the universe \(\Omega_m\).

dLambda (default 0.0)float

The dark energy density of the universe \(\Omega_\Lambda\).

dOmegaDE (default 0.0)float

Omega for Dark Energy using w0 and wa parameters: <dOmegaDE

w0 (default -1.0)float

w0 parameter for Dark Energy <w0

wa (default 0.0)float

wa parameter for Dark Energy <wa

dOmegaRad (default 0.0)float

dOmegaRad

dOmegab (default 0.0)float

dOmegab

CONCEPT/CLASS

The code can use HDF5 files created by CONCEPT by tabulating CLASS data for cosmology.

bClass (default False)Boolean

Enable/disable the use of CLASS

achClassFilename (default none)string

Name of hdf5 file containing the CLASS data

achLinSpecies (default none)string

Plus-separated string of linear species, e.g. "g+ncdm[0]+metric"

achPkSpecies (default none)string

Plus-separated string of linear species for linear P(k)

dRunning (default 0.0)float

Primordial tilt running: <dRunning

dPivot (default 0.05)float

Primordial pivot scale in 1/Mpc (not h/Mpc): <dPivot

Initial Conditions

The code contains an Initial Condition (IC) generator that supports first order (Zeldovich), second order and third order Lagrangian perturbation theory. It is important that the cosmological parameters be properly set, so refer to that section for details.

dRedFrom (default none)float

specifies initial redshift for the simulation

nGrid (default none)integer

This sets the grid size and hence the number of particles in the IC. For a grid size of \(N\) there will be \(N^3\) particles.

iSeed (default 0)integer

Random seed for IC

iLPT (default 2)integer

LPT order for IC

bWriteIC (default False)Boolean

Write IC after generating

bFixedAmpIC (default False)Boolean

Use fixed amplitude of 1 for ICs

dFixedAmpPhasePI (default 0.0)float

Phase shift for fixed amplitude in units of PI

bICgas (default False)Boolean

Enable/disable gas in the ICs

dInitialT (default 100.0)float

Initial temperature of the gas generated ICs

Memory Model and Control

nBucket (default 16)integer

Classic tree codes build the tree down to nodes that contain a single particle. This parameter specifies the largest “bucket” size; when a tree cell has this many or fewer particles, the node is no longer split.

In theory, single particle buckets allow for improved performance as cells can be the exact size that the opening criteria requires. In practice this introduces two complications. First, the amount of memory required for the tree grows exponentially and will eventually take more memory than the particles. The other complication is that the tree walking time increases and even though less work is done calculating the forces, the extra time walking the tree can end up taking longer.

A value between 8 and 32 is a reasonable compromise. Larger bucket sizes result in less memory usage.

nGroup (default 64 or 256 if GPU enabled)integer

When a tree node with this many particles or fewer is reached during the tree walk, the walk is stopped and all of these particles receive the same set of interactions. Increasing this parameters moves work from tree walking to force calculations. The default values are usually optimally tuned. This parameter must be greater or equal to nBucket.

dExtraStore (default 0.1)float

The code allocates exactly enough space to store the particles if they are evenly distributed between all of the threads, plus this fraction. For example, if this parameter is set to 0.1 then it increases the size of the particle storage by 10%. This uses additional memory, but makes it easier to balance work.

dExtraDecoratorStore (default 0.2)float

The code allocates exactly enough space to store the decorators if they are evenly distributed between all of the threads, plus this fraction. This uses additional memory, but makes it easier to balance work.

nTreeBitsLo (default 14)integer

number of low bits for tree

nTreeBitsHi (default 18)integer

number of high bits for tree

nMemEphemeral (default 0)integer

minimum size of ephemeral (in bytes)

bMemIntegerPosition (default False)Boolean

By default particle positions are stored as double precision floating point numbers. Enabling this feature changes positions to 32-bit integers. This can only be used with periodical boxes, and will save 12 bytes of memory per particle.

bMemUnordered (default False)Boolean

This feature removes the particle ID (particle number) and will save 4 bytes per particle. It is not possible to track particles between snapshots as there is no way to sort them, unless bMemParticleID is enable.

bMemNewRung (default False)Boolean

This enables a 8 bit rung field in the particle information that stores the proposed new rung (i.e., timestep) of the particle.

bMemParticleID (default False)Boolean

This enables a 64-bit integer particle id that can be used to track particles between snapshots. This feature is only available with file formats that support this additional field. Currently this field can be read from GADGET2 format files and read and written to the HDF5 format.

bMemAcceleration (default False)Boolean

Particles have acceleration

bMemVelocity (default False)Boolean

Particles have velocity

bMemPotential (default False)Boolean

Particles have potential

bMemGroups (default False)Boolean

Particles support group finding

bMemGlobalGid (default False)Boolean

Particles support global group ids

bMemMass (default False)Boolean

Particles have individual masses

bMemSoft (default False)Boolean

Particles have individual softening

bMemVelSmooth (default False)Boolean

Particles support velocity smoothing

bMemNodeMoment (default False)Boolean

Tree nodes support multipole moments

bMemNodeAcceleration (default False)Boolean

Tree nodes support acceleration (for bGravStep)

bMemNodeVelocity (default False)Boolean

Tree nodes support velocity (for iTimeStepCrit = 1)

bMemNodeSphBounds (default False)Boolean

Tree nodes support fast-gas bounds

bMemNodeBnd (default True)Boolean

Tree nodes support 3D bounds

bMemNodeVBnd (default False)Boolean

Tree nodes support velocity bounds

bMemBall (default False)Boolean

Particles have ball

Gas

hydro_model (default NONE)HYDRO_MODEL

Specifies which Hydro model to use. The models should be imported with:

from PKDGRAV import HYDRO_MODEL
Possible values are:
  • HYDRO_MODEL.NONE: Do not use hydrodynamics

  • HYDRO_MODEL.SPH: Smoothed-Particle Hydrodynamics (SPH)

  • HYDRO_MODEL.MFM: Meshless Finite-Mass Hydrodynamics (MFM)

  • HYDRO_MODEL.MFV: Meshless Finite-Volume Hydrodynamics (MFV)

nSmooth (default 64)integer

The number of particles to smooth over.

If hydro_model is not HYDRO_MODEL.SPH, this is the exact number of particles to smooth over.

In the case of HYDRO_MODEL.SPH this is the target value of particles to smooth over, while the actual number can be smaller or larger depending on the local particle density. The kernel size of each particle is set such that \(\frac{4}{3}\pi R_{kernel}^3(h)\rho =\) nSmooth.

bGasIsentropic (default True)Boolean

This uses the equation of state to force isentropic evolution of the gas in the absence of shocks. Only for HYDRO_MODEL.SPH, ignored otherwise.

dEtaCourant (default 0.4)float

Courant criterion

dEtauDot (default -1.0)float

Timestepping criterion for internal energy. If active, time step is limited to \(dT <= dEtauDot\left|\frac{u}{\dot{u}}\right|\). If dEtauDot is negative, this is disabled.

dEtaSdot (default -1.0)float

Timestepping criterion for deviatoric stress. If active, time step is limited to \(dT <= dEtaSdot\left|\frac{S_{xx}}{\dot{S}_{xx}}\right|\). If dEtaSdot is negative, this is disabled.

dTimeStepSmin (default 0.0)float

Minimum S value used in the timestepping criterion for deviatoric stress. Modifies the above formula to \(dT <= dEtaSdot\frac{\left|S_{xx}\right|+dTimeStepSmin}{\left|\dot{S}_{xx}\right|}\).

dCFLacc (default 0.01)float

Timestep criterion for the acceleration

dConstAlpha (default 1.0)float

Alpha constant in viscosity

dConstBeta (default 2.0)float

Beta constant in viscosity

dConstGamma (default \(\frac{5}{3}\))float

Ratio of specific heats

dMeanMolWeight (default 1.0)float

Mean molecular weight in amu

dGasConst (default 1.0)float

Gas Constant

dKBoltzUnit (default 1.0)float

Boltzmann Constant in System Units

dhMinOverSoft (default 0.0)float

Minimum h as a fraction of Softening

dFastGasFraction (default 0.01)float

Fraction of active particles below which FastGas is active for HYDRO_MODEL.SPH. In FastGas, instead of calculating density for all particles, density is only calculated for potential neighbors of active particles (or potential neighbors of potential neighbors of active particles if bGasInterfaceCorrection is active).

dMsolUnit (default 1.0)float

This is the number of solar masses (\(M_\odot\)) per system mass unit. If you measure a mass of 1 in system units, it is this many solar masses.

dKpcUnit (default 1000.0)float

This is the number of kiloparsecs per system unit length. If you measure a distance of 1 in system units, it is this many kiloparsecs.

bAddDelete (default False)Boolean

Add Delete Particles

dVelocityDamper (default 0.0)float

Velocity damper that is applied before each opening kick:

\(v\rightarrow v\cdot exp(-2/\Delta t \cdot \Delta t(rung)\cdot VelocityDamper)\)

This means the value of dVelocityDamper is the number of e-foldings the velocity experiences per full step, i.e. the time given by the global time step size dDelta.

dVelocityDamperEnd (default 0.0)float

Velocity damper end value. A constant velocity damper is not always helpful. Together with dVelocityDamperEndTime, this allows to apply the velocity damper in a ramp. The value used in the formula of dVelocityDamper is modified in each substep to use the value:

\(VelocityDamper = 10.0^{\log10(dVDE/dVD)/dVDET\cdot dTime + \log10(dVD)}\)

After dVelocityDamperEndTime, the value is then set to zero to allow for undamped relaxation at the end.

dVelocityDamperEndTime (default 0.0)float

Velocity Damper End Time

dBallSizeLimit (default 10.0)float

Ball size limit. For HYDRO_MODEL.SPH, the kernel size is not allowed to grow to arbitrarily large values. It is limited to this value, resulting in an effective minimum density that depends on the particle mass and the ball size limit, as well as the kernel type.

iKernelType (default 0)integer
For HYDRO_MODEL.SPH, the kernel type can be chosen between these values:
  • 0: M3 cubic spline kernel. Recommended nSmooth = 32 - 64.

  • 1: Wendland C2 kernel. Recommended nSmooth = 100.

  • 2: Wendland C4 kernel. Recommended nSmooth = 200.

  • 3: Wendland C6 kernel. Recommended nSmooth = 400.

bGasBuiltinIdeal (default False)Boolean

For HYDRO_MODEL.SPH, this uses the builtin ideal gas formulation instead of the one provided by EOSlib.

bGasOnTheFlyPrediction (default False)Boolean

For HYDRO_MODEL.SPH, the gas values are predicted on the fly. This means enormous amounts of calls to the equation of state. This is only sensible if using bGasBuiltinIdeal. It has a whole host of problems, so it is not recomended to be used. It is incompatible with bGasConsistentPrediction.

bGasConsistentPrediction (default False)Boolean

For HYDRO_MODEL.SPH, the velocities are predicted before the force evaluation starts. Also, gas values are not updated after the closing kick. This massively improves conservation of linear and angular momenta. If using HYDRO_MODEL.SPH, this is the recomended prediction method. Incompatible with bGasOnTheFlyPrediction.

bGasInterfaceCorrection (default False)Boolean

Enables interface correction for HYDRO_MODEL.SPH. This uses an additional pass to correct densities at interfaces (material and vacuum).

bGasEvolveDensity (default False)Boolean

Evolves the density with \(\frac{D\rho}{D t} = -\rho \nabla\cdot \vec{v}\) instead of using a smooth to calculate the density. This is not compatible with bGasInterfaceCorrection or bDoDensity. If bGasEvolveDensity is active together with either one of them, the program halts.

bCentrifugal (default False)Boolean

This enables the centrifugal force. It allows for the application of a centrifucal force around the z-axis. The centrifucal force starts at dCentrifT0 with a value of 0.0 and ramps up linearly to the value dCentrifOmega0 at time dCentrifT1, after which this value is held constant until the end of the simulation.

dCentrifT0 (default 0.0)float

Start time for centrifugal ramp

dCentrifT1 (default 0.0)float

End time for centrifugal ramp

dCentrifOmega0 (default 0.0)float

Maximum omega for centrifugal ramp

bShearStrengthModel (default False)Boolean

Enables the shear strength model for HYDRO_MODEL.SPH.

bDisableStressAtInterface (default False)Boolean

Disables stress interactions at interfaces between materials for the shear strength model for HYDRO_MODEL.SPH.

bDisableShockHeatingWithVelocityDamper (default True)Boolean

When velocity damper is active (or >0 if dynamic velocity damper is used), shock heating for HYDRO_MODEL.SPH is disabled.

bTrackPeakPressure (default False)Boolean

Track the peak pressure and the density, temperature and time at preak pressure. This only works with HYDRO_MODEL.SPH.

bMeshlessHydro (default False)Boolean

Use the new implementation of the hydrodynamics

bGlobalDt (default False)Boolean

Force all particles to the same rung

bIterativeSmoothingLength (default True)Boolean

Use an iterative scheme to obtain h

bConditionedBarthJespersen (default True)Boolean

Take into account the condition number around the particle to use a less restrictive Barth-Jespersen limiter for quasi-regular geometries

bStricterSlopeLimiter (default False)Boolean

Use a stricter slope limiter for meshless-hydro gradients

bWakeUpParticles (default False)Boolean

Wake the particles when there is a big rung difference

dNeighborsStd (default 1.0)float

Maximum deviation from desired number of neighbors

bOutFineStatistics (default False)Boolean

Save high cadence information on the rung distribution and star formation

ddHonHLimit (default 0.1)float

\(\frac{|dH|}{H}\) limiter

dMaxPhysicalSoft (default 0.0)float

maximum softening in physical coordinates

dExternalAcceleration (default [0.0, 0.0, 0.0])

External acceleration that is applied to all particles in every step. Only active if HYDRO_MODEL.SPH is used.

iLowerGroupSizeThreshold (default 0)integer

If size of the interaction list is below this value, dynamic maximum group size is increased. Only relevant if HYDRO_MODEL.SPH is active

iUpperGroupSizeThreshold (default 2147483648)integer

If size of the interaction list is above this value, dynamic maximum group size is decreased. Only relevant if HYDRO_MODEL.SPH is active

Cooling

bDoCooling (default False)Boolean

Do radiative cooling for the meshless hydrodynamics

achCoolingTables (default none)string

Path to the cooling tables

fH_reion_z (default 11.5)float

Redshift of Hydrogen reionization

fH_reion_eV_p_H (default 2.0)float

Energy injected per proton during H reionization, eV

fHe_reion_eV_p_H (default 2.0)float

Energy injected per proton during He reionization, eV

fHe_reion_z_centre (default 3.5)float

Mean redshift of Helium reionization

fHe_reion_z_sigma (default 0.5)float

Redshift interval for Helium reionzation

fT_CMB_0 (default 2.725)float

Temperature of the CMB at z=0

dCoolingMinTemp (default 100.0)float

Minimum allowed temperature, K

Effective equation of state

bDoEOS (default False)Boolean

Pressurize the gas at high densities following a polytropic effective EOS

dEOSFloornH (default \(10^{-5}\))float

Minimum density at which the internal energy floor will be applied, n_H cm-3

dEOSFloorMinOD (default 10)integer

Minimum baryonic overdensity at which the internal energy floor will be applied

dEOSFloorTemp (default 10000.0)float

Temperature at the internal energy floor, K

dEOSPolyFloornH (default 0.1)float

Density threshold beyond which the polytropic effective EOS will be applied, nH cm-3)

dEOSPolyFloorMinOD (default 10)integer

Minimum baryonic overdensity at which the polytropic effective EOS will be applied

dEOSPolyFloorIndex (default \(\frac{4}{3}\))float

Index of the polytropic effective EOS

dEOSPolyFloorTemp (default 10000.0)float

Temperature at the density threshold for the effective EOS, K

dEOSNJeans (default 8.75)float

Number of elements to resolve the Jeans length

Star formation

bStars (default False)Boolean

Allow stellar particles in the simulation

bDoStarFormation (default False)Boolean

Convert gas particles to stellar particles in dense, cold regions

dSFThresholdDen (default 0.1)float

Minimum density at which the star formation can happen, nH cm-3

bSFThresholdDenSchaye2004 (default False)Boolean

Use the metallicity-dependent star-formation density threshold of Schaye (2004)

dSFThresholdT (default 100000.0)float

Maximum temperature at which the star formation can happen, K

dSFMinOverDensity (default 57.7)float

Minimum overdensity for allowing star formation

dSFGasFraction (default 0.3)float

Gas fraction assumed for the star formation

dSFindexKS (default 1.4)float

Index of the Kennicutt-Schmidt star-formation law

dSFnormalizationKS (default \(1.515\times 10^{-4}\))float

Normalization of the Kennicutt-Schmidt star-formation law. Value must be consistent with the chosen IMF

dSFEfficiency (default 0.0)float

Star formation efficiency per free-fall time; set >0 to use density-based SFR

Supernova feedback

bCCSNFeedback (default False)Boolean

Activate energy feedback from CCSN events

bSNIaFeedback (default False)Boolean

Activate energy feedback from SNIa events

dSNFBEfficiency (default 1.0)float

Efficiency of SN feedback. Asymptotic minimum efficiency if dSNFBMaxEff is provided

dSNFBMaxEff (default 0.0)float

Asymptotic maximum efficiency of SN feedback

dSNFBEffIndex (default 0.87)float

Metallicity and density index for the feedback efficiency

dSNFBEffnH0 (default 0.67)float

Hydrogen number density normalization of the feedback efficiency, nH cm-3

dSNFBDT (default \(10^{7.5}\))float

Gas-particle temperature increment per SN feedback event, K

dCCSNFBDelay (default \(3\times 10^7\))float

Time between star formation and injection of CCSN energy, yr

dCCSNEnergy (default \(10^{51}\))float

CCSN event energy, erg

dSNIaFBDelay (default \(2\times 10^8\))float

Time between star formation and injection of SNIa energy, yr

dSNIaEnergy (default \(10^{51}\))float

SNIa event energy, erg

Blackholes

bBlackholes (default False)Boolean

Allow blackhole particles in the simulation

bBHPin (default True)Boolean

Pin light blackhole particles to the center of the potential well

bBHMerger (default True)Boolean

Activate mergers of blackhole particles

bBHAccretion (default True)Boolean

Activate the accretion of gas particles into blackholes

bBHFeedback (default True)Boolean

Activate the BH feedback

dBHAccretionAlpha (default 1.0)float

Accretion boost parameter

dBHAccretionCvisc (default 0.0)float

Accretion viscosity parameter

dBHRadiativeEff (default 0.1)float

AGN radiative efficiency

dBHFBEff (default 0.1)float

AGN coupling efficiency with its surroundings

dBHFBDT (default \(10^8\))float

Gas-particle temperature increment per AGN feedback event, K

dBHAccretionEddFac (default \(\frac{4\pi\times m_p}{\sigma_t\times c} = 1.05391277\times 10^{-6}\))float

4pi * m_p / sigma_T / c , kg m^-3 s

bBHPlaceSeed (default True)Boolean

Place BH seeds in FOF groups

dBHSeedMass (default 1.0)float

Mass of the BH seed, in code units

dBHMhaloMin (default 1.0)float

Minimum mass required to place a BH in a FOF group, in code units

Chemistry

dInitialH (default 0.75)float

Initial Hydrogen abundance

dInitialHe (default 0.25)float

Initial Helium abundance

dInitialC (default 0.0)float

Initial Carbon abundance

dInitialN (default 0.0)float

Initial Nitrogen abundance

dInitialO (default 0.0)float

Initial Oxygen abundance

dInitialNe (default 0.0)float

Initial Neon abundance

dInitialMg (default 0.0)float

Initial Magnesium abundance

dInitialSi (default 0.0)float

Initial Silicon abundance

dInitialFe (default 0.0)float

Initial Iron abundance

dInitialMetallicity (default 0.0)float

Initial metallicity

Stellar Initial-Mass Function (IMF)

achIMFType (default “chabrier”)string

Type of IMF

dIMFMinMass (default 0.1)float

Lower-mass limit of the IMF, Msol

dIMFMaxMass (default 100.0)float

Upper-mass limit of the IMF, Msol

dCCSNMinMass (default 6.0)float

Minimum mass for a star to end its life as a Core Collapse Supernova, Msol

dCCSNMaxMass (default 100.0)float

Maximum mass for a star to end its life as a Core Collapse Supernova, Msol

Stellar evolution

achStelEvolPath (default none)string

Path to stellar evolution tables

achSNIaDTDType (default “exponential”)string

Type of Delay-Time Distribution function for SNIa events

bChemEnrich (default True)Boolean

Activate chemical enrichment of gas particles surrounding a star particle

dSNIaExpScale (default \(2\times 10^9\))float

Time scale of the exponential Delay-Time Distribution function, yr

dSNIaPLScale (default -1.1)float

Index of the power-law Delay-Time Distribution function

dSNIaPLInitTime (default \(40\times 10^6\))float

Initial time for the normalization of the power-law Delay-Time Distribution function, yr

dSNIaPLFinalTime (default \(13.7\times 10^9\))float

Final time for the normalization of the power-law Delay-Time Distribution function, yr

dSNIaNumPerMass (default 0.002)float

Number of SNIa events per stellar mass, 1/Msol

dSNIaMaxMass (default 8.0)float

Maximum mass for the likely progenitors of SNIa events, Msol

dStellarWindSpeed (default 10.0)float

Stellar wind speed, km/s

Debugging/Testing/Diagnostics

bOverwrite (default False)Boolean

When a simulation is run, a special file named “.lockfile” is created. If The program exits normally (after a checkpoint or output) then the file is removed. If the file is present when the code is run and this parameter is false, then the code will immediately exit with an error. Setting this to true disables this behaviour.

bVWarnings (default True)Boolean

Prints a warning when unusual (but valid) conditions are encountered, for example if a .lockfile exists and bOverwrite is true, or the maximum rung is set to zero (forcing single stepping).

bVStart (default True)Boolean

Causes additional progress updates to be printed during the start of a simulation, for example which file is being read, or that an initial condition is being generated.

bVStep (default True)Boolean

Provides verbose information on what calculations and analysis is being performed during the base steps.

bVRungStat (default True)Boolean

Provides rung related information, such as the distribution of particles by rung, as well as details on the load balancer calculations.

bVDetails (default False)Boolean

Provides verbose tracing information which is normally not useful except to a developer debugging an issue with the code.

iCacheSize (default 0)integer

size of the MDL cache (0=default)

iCacheMaxInflight (default 0)integer

maximum number of inflight cache message to each rank (0=no limit)

iWorkQueueSize (default 0)integer

size of the MDL work queue

bGPU (default True)Boolean

If compiled with GPU support, the code will try to use a GPU to accelerate some phases of the calculation. If no GPU is present, the CPU alone will be used. The use of the GPU can be disabled by setting this to False.