Kinematics Distributions

Class providing kinematics distributions for mass distribution components—the temperature, velocity dispersion, and mean radial velocity of particles (or fluid elements) as a function of position. For collisional (gaseous) components the temperature profile enters the cooling and feedback calculations; for collisionless (stellar and dark matter) components the velocity dispersion is computed by solving the spherical Jeans equation given the mass distribution and its potential.

Methods

isCollisionallogical

Return true if the kinematics is collisional.

temperaturedouble precision

Return the temperature of the distribution at the given coordinates.

  • class(coordinate), intent(in ) :: coordinates

temperatureGradientLogarithmicdouble precision

Return the logarithmic gradient of the temperature of the distribution at the given coordinates.

  • class(coordinate), intent(in ) :: coordinates

velocityRadialdouble precision

Return the mean radial velocity at the given coordinate.

  • class(coordinate ), intent(in ) :: coordinates

  • class(massDistributionClass), intent(inout) :: massDistributionEmbedding

velocityDispersion1Ddouble precision

Return the 1D velocity dispersion at the given coordinate.

  • class(coordinate ), intent(in ) :: coordinates

  • class(massDistributionClass), intent(inout), target :: massDistribution_, massDistributionEmbedding

velocityDispersion1DNumericaldouble precision

Return the 1D velocity dispersion at the given coordinate by numerically solving the Jeans equation.

  • class(coordinate ), intent(in ) :: coordinates

  • class(massDistributionClass), intent(inout), target :: massDistribution_, massDistributionEmbedding

jeansEquationRadiusdouble precision

Return the radius variable used in solving the Jeans equation that corresponds to a given physical radius.

  • double precision , intent(in ) :: radius

  • class (massDistributionClass), intent(inout) :: massDistributionEmbedding

jeansEquationIntegranddouble precision

Evaluate the integrand of the Jeans equation at the given radius, returning \(\mathrm{G}M(r)\rho(r)/r^2\) needed for numerical integration of the spherical Jeans equation to obtain the line-of-sight velocity dispersion.

  • double precision , intent(in ) :: radius

  • class (massDistributionClass), intent(inout) :: massDistribution_, massDistributionEmbedding

solverSetvoid

Set a sub-module scope pointers on a stack to allow recursive calls to functions.

  • class (massDistributionClass), intent(in ), target :: massDistribution_, massDistributionEmbedding

solverUnsetvoid

Unset a sub-module scope pointers on the stack.

resetvoid

Reset memoized (cached) velocity-dispersion state, so that a kinematics distribution attached to a re-initialized (e.g. pooled) mass distribution never returns stale results.

kinematicsDistributionBurkert

A kinematic distribution class for Burkert mass distributions.

Methods

  • timeFreefallTabulate — Tabulate the freefall time as a function of radius in a scale-free Burkert mass distribution.

Parameters

  • [densityNormalization] (default 1.0d0/Pi/(log(8.0d0)-Pi/2.0d0)) — The density normalization of the Burkert profile.

  • [scaleLength] (default 1.0d0) — The scale radius of the Burkert profile.

  • [mass] (default 1.0d0) — The total mass (in \(\mathrm{M}_\odot\)) of the Burkert profile, used to set the density normalization \(\rho_0\) when densityNormalization is not supplied.

  • [radiusOuter] — The outer radius of the Burkert profile.

  • [dimensionless] (default .true.) — If true the Burkert profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionCollisionless

A kinematic distribution class for collisionless (dark matter or stellar) mass distributions that computes the 1D velocity dispersion by numerically solving the isotropic Jeans equation. Convergence tolerances for the velocity dispersion integral are controlled by [toleranceRelativeVelocityDispersion] and [toleranceRelativeVelocityDispersionMaximum].

Methods

  • tabulate — Tabulate the virial density contrast as a function of mass and time.

  • restoreTable — Restore a tabulated solution from file.

  • storeTable — Store a tabulated solution to file.

Parameters

  • [velocityCharacteristic] (default 250.0d0) — The velocity scale at which the SNe-driven outflow rate equals the star formation rate in disks.

  • [exponent] (default 3.5d0) — The velocity scaling of the SNe-driven outflow rate in disks.

  • [fraction] (default 0.01d0) — The normalization \(f\) of the outflow rate relative to the star formation rate at a reference halo velocity of 200 km/s and expansion factor of 1, setting the overall mass-loading amplitude of the halo-scaling feedback model.

  • [exponentVelocity] (default -2.0d0) — The exponent of virial velocity in the outflow rate in disks.

  • [exponentRedshift] (default 0.0d0) — The power-law exponent of the cosmological expansion factor \((1+z)\) in the halo-scaling outflow rate, allowing the mass-loading factor to evolve with redshift; a value of zero gives no redshift evolution.

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [radiusNormalization] (default 3.3d-6) — The initial value appearing in the radius-mass relation

  • [toleranceAbsoluteMass] (default 1.0d-6) — The mass tolerance used to judge whether the nuclear star cluster is physically plausible.

  • [toleranceRelativeMetallicity] (default 1.0d-4) — The metallicity tolerance for ODE solution.

  • [inactiveLuminositiesStellar] (default .false.) — Specifies whether or not nuclear star cluster stellar luminosities are inactive properties (i.e. do not appear in any ODE being solved).

  • [scaleRelativeMass] (default 1.0d-2) — The mass scale, relative to the total mass of the node, below which calculations in the delayed very simple hot halo component are allowed to become inaccurate.

  • [starveSatellites] (default .false.) — Specifies whether or not the hot halo should be removed (“starved”) when a node becomes a satellite.

  • [starveSatellitesOutflowed] (default .false.) — Specifies whether or not the outflowed hot halo should be removed (“starved”) when a node becomes a satellite.

  • [outflowReturnOnFormation] (default .false.) — Specifies whether or not outflowed gas should be returned to the hot reservoir on halo formation events.

  • [angularMomentumAlwaysGrows] (default .false.) — Specifies whether or not negative rates of accretion of angular momentum into the hot halo will be treated as positive for the purposes of computing the hot halo angular momentum.

  • [fractionBaryonLimitInNodeMerger] (default .false.) — Controls whether the hot gas content of nodes should be limited to not exceed the universal baryon fraction at node merger events. If set to true, hot gas (and angular momentum, abundances, and chemicals proportionally) will be removed from the merged halo to the unaccreted gas reservoir to limit the baryonic mass to the universal baryon fraction where possible.

  • [scaleAbsoluteMass] (default 100.0d0) — The absolute mass scale below which calculations in the very simple disk component are allowed to become inaccurate.

  • [toleranceAbsoluteMass] (default 1.0d-6) — The mass tolerance used to judge whether the disk is physically plausible.

  • [toleranceAbsoluteMass] (default 1.0d-6) — The mass tolerance used to judge whether the disk is physically plausible.

  • [toleranceRelativeMetallicity] (default 1.0d-4) — The metallicity tolerance for ODE solution.

  • [radiusStructureSolver] (default 1.0d0) — The radius (in units of the standard scale length) to use in solving for the size of the disk.

  • [structureSolverUseCole2000Method] (default .false.) — If true, use the method described in Cole et al. (2000) to correct for difference between thin disk and spherical mass distributions when solving for disk radii.

  • [diskNegativeAngularMomentumAllowed] (default .true.) — Specifies whether or not negative angular momentum is allowed for the disk.

  • [inactiveLuminositiesStellar] (default .false.) — Specifies whether or not disk stellar luminosities are inactive properties (i.e. do not appear in any ODE being solved).

  • [postStepZeroNegativeMasses] (default .true.) — If true, negative masses will be zeroed after each ODE step. Note that this can lead to non-conservation of mass.

  • [ratioAngularMomentumSolverRadius] (default ratioAngularMomentumSolverRadiusDefault) — The assumed ratio of the specific angular momentum at the structure solver radius to the mean specific angular momentum of the standard disk component.

  • [scaleAbsoluteMass] (default 100.0d0) — The absolute mass scale below which calculations in the very simple spheroid component are allowed to become inaccurate.

  • [toleranceAbsoluteMass] (default 1.0d-6) — The mass tolerance used to judge whether the spheroid is physically plausible.

  • [efficiencyEnergeticOutflow] (default 1.0d-2) — The proportionality factor relating mass outflow rate from the spheroid to the energy input rate divided by \(V_\mathrm{spheroid}^2\).

  • [toleranceRelativeMetallicity] (default 1.0d-4) — The metallicity tolerance for ODE solution.

  • [toleranceAbsoluteMass] (default 1.0d-6) — The mass tolerance used to judge whether the spheroid is physically plausible.

  • [inactiveLuminositiesStellar] (default .false.) — Specifies whether or not spheroid stellar luminosities are inactive properties (i.e. do not appear in any ODE being solved).

  • [postStepZeroNegativeMasses] (default .true.) — If true, negative masses will be zeroed after each ODE step. Note that this can lead to non-conservation of mass.

  • [ratioAngularMomentumScaleRadius] (default ratioAngularMomentumScaleRadiusDefault) — The assumed ratio of the specific angular momentum at the scale radius to the mean specific angular momentum of the standard spheroid component.

  • [outputMergers] (default .false.) — Determines whether or not properties of black hole mergers will be output.

  • [fileNames] — The name of the file(s) from which merger tree data should be read when using the [mergerTreeConstruct]\(=\)read tree construction method.

  • [forestSizeMaximum] (default 0_c_size_t) — The maximum number of nodes allowed in a forest before it will be broken up into trees and processed individually. A value of 0 implies that forests should never be split.

  • [presetMergerTimes] (default .true.) — Specifies whether merging times for subhalos should be preset when reading merger trees from a file.

  • [presetMergerNodes] (default .true.) — Specifies whether the target nodes for mergers should be preset (i.e. determined from descendant nodes). If they are not, merging will be with each satellite’s host node.

  • [presetSubhaloMasses] (default .true.) — Specifies whether subhalo mass should be preset when reading merger trees from a file.

  • [subhaloAngularMomentaMethod] (default var_str('summation')) — Specifies how to account for subhalo angular momentum when adding subhalo mass to host halo mass.

  • [presetSubhaloIndices] (default .true.) — Specifies whether subhalo indices should be preset when reading merger trees from a file.

  • [presetPositions] (default .true.) — Specifies whether node positions should be preset when reading merger trees from a file.

  • [presetScaleRadii] (default .true.) — Specifies whether node scale radii should be preset when reading merger trees from a file.

  • [scaleRadiiFailureIsFatal] (default .true.) — Specifies whether failure to set a node scale radii should be regarded as a fatal error. (If not, a fallback method to set scale radius is used in such cases.)

  • [presetScaleRadiiConcentrationMinimum] (default 3.0d0) — The lowest concentration (\(c=r_\mathrm{vir}/r_\mathrm{s}\)) allowed when setting scale radii, \(r_\mathrm{s}\).

  • [presetScaleRadiiConcentrationMaximum] (default 60.0d0) — The largest concentration (\(c=r_\mathrm{vir}/r_\mathrm{s}\)) allowed when setting scale radii, \(r_\mathrm{s}\).

  • [presetScaleRadiiMinimumMass] (default 0.0d0) — The minimum halo mass for which scale radii should be preset (if [presetScaleRadii]\(=\)true).

  • [presetUnphysicalAngularMomenta] (default .false.) — When reading merger trees from file and presetting halo angular momenta, detect unphysical (<=0) angular momenta and preset them using the selected halo spin method.

  • [presetAngularMomenta] (default .true.) — Specifies whether node angular momenta should be preset when reading merger trees from a file.

  • [presetAngularMomenta3D] (default .false.) — Specifies whether node 3-D angular momenta vectors should be preset when reading merger trees from a file.

  • [presetOrbits] (default .true.) — Specifies whether node orbits should be preset when reading merger trees from a file.

  • [presetOrbitsSetAll] (default .true.) — Forces all orbits to be set. If the computed orbit does not cross the virial radius, then select one at random instead.

  • [presetOrbitsAssertAllSet] (default .true.) — Asserts that all virial orbits must be preset. If any can not be set, Galacticus will stop.

  • [presetOrbitsBoundOnly] (default .true.) — Specifies whether only bound node orbits should be set.

  • [beginAt] (default -1_kind_int8) — Specifies the index of the tree to begin at. (Use -1 to always begin with the first tree.)

  • [outputTimeSnapTolerance] (default 0.0d0) — The relative tolerance required to “snap” a node time to the closest output time.

  • [missingHostsAreFatal] (default .true.) — Specifies whether nodes with missing host nodes should be considered to be fatal—see the discussion of missing host nodes in the class description above.

  • [treeIndexToRootNodeIndex] (default .false.) — Specifies whether tree indices should always be set to the index of their root node.

  • [allowBranchJumps] (default .true.) — Specifies whether nodes are allowed to jump between branches.

  • [allowSubhaloPromotions] (default .true.) — Specifies whether subhalos are permitted to be promoted to being isolated halos.

  • [alwaysPromoteMostMassive] (default .false.) — If true, the most massive progenitor is always promoted to be the primary progenitor even if it is a subhalo. Otherwise, isolated progenitors are given priority over subhalo progenitors, even if they are less massive.

  • [presetNamedReals] — Names of real datasets to be additionally read and stored in the nodes of the merger tree when using the [mergerTreeConstruct]\(=\)read tree construction method.

  • [presetNamedIntegers] — Names of integer datasets to be additionally read and stored in the nodes of the merger tree when using the [mergerTreeConstruct]\(=\)read tree construction method.

  • [fatalMismatches] (default .true.) — Specifies whether mismatches in cosmological parameter values between Galacticus and “Sussing Merger Trees” format (Srisawat et al., 2013) merger tree files should be considered fatal.

  • [fatalNonTreeNode] (default .true.) — Specifies whether nodes in snapshot files but not in the merger tree file should be considered fatal when importing from the “Sussing Merger Trees” format (Srisawat et al., 2013).

  • [subvolumeCount] (default 1) — Specifies the number of subvolumes along each axis into which a “Sussing Merger Trees” format (Srisawat et al., 2013) merger tree files should be split for processing through Galacticus.

  • [subvolumeBuffer] (default 0.0d0) — Specifies the buffer region (in units of Mpc\(/h\) to follow the format convention) around subvolumes of a “Sussing Merger Trees” format (Srisawat et al., 2013) merger tree file which should be read in to ensure that no halos are missed from trees.

  • [subvolumeIndex] (default [0,0,0]) — Specifies the index (in each dimension) of the subvolume of a “Sussing Merger Trees” format (Srisawat et al., 2013) merger tree file to process. Indices range from 0 to [subvolumeCount]\(-1\).

  • [badValue] (default -0.5d0) — Use for bad value detection in “Sussing” merger trees. Values for scale radius and halo spin which exceed this threshold are assumed to be bad.

  • [badValueTest] (default var_str('lessThan')) — Use for bad value detection in “Sussing” merger trees. Values which exceed the threshold in ths specified direction are assumed to be bad.

  • [treeSampleRate] (default 1.0d0) — Specify the probability that any given tree should processed (to permit subsampling).

  • [massOptions] (default var_str('default')) — Mass option for Sussing merger trees.

  • [mergeProbability] (default 0.1d0) — The largest probability of branching allowed in a timestep in merger trees built by the Cole et al. (2000) method.

  • [accretionLimit] (default 0.1d0) — The largest fractional mass change due to subresolution accretion allowed in a timestep in merger trees built by the Cole et al. (2000) method.

  • [redshiftMaximum] (default 1.0d5) — The highest redshift to which merger trees will be built in the Cole et al. (2000) method.

  • [toleranceTimeEarliest] (default 2.0d-6) — The fractional tolerance used to judge if a branch is at the earliest allowed time in the tree.

  • [branchIntervalStep] (default .true.) — If false use the original Cole et al. (2000) method to determine whether branching occurs in a timestep. If true draw branching intervals from a negative exponential distribution.

  • [toleranceResolutionSelf] (default 1.0d-6) — The fractional tolerance in node mass at the resolution limit below which branch mis-orderings will be ignored.

  • [toleranceResolutionParent] (default 1.0d-3) — The fractional tolerance in parent node mass at the resolution limit below which branch mis-orderings will be ignored.

  • [ignoreNoProgress] (default .false.) — If true, failure to make progress on a branch will be ignored (and the branch terminated).

  • [ignoreWellOrdering] (default .false.) — If true, non-well-ordered tree branches are pruned away instead of causing errors..

  • [redshiftBase] (default 0.0d0) — The redshift at which to plant the base node when building merger trees.

  • [timeSnapTolerance] (default 1.0d-6) — The fractional tolerance within which the tree base time will be snapped to a nearby output time.

  • [treeBeginAt] (default 0) — The index (in order of increasing base halo mass) of the tree at which to begin when building merger trees. A value of “0” means to begin with tree number 1 (if processing trees in ascending order), or equal to the number of trees (otherwise).

  • [processDescending] (default .true.) — If true, causes merger trees to be processed in order of decreasing mass.

  • [splitTrees] (default .false.) — If true, prune away any nodes of the tree that are not needed to determine evolution up to the latest time at which a node is present inside the lightcone. This typically leads to a tree splitting into a forest of trees.

  • [label] — A label for the mass function.

  • [comment] — A descriptive comment for the mass function.

  • [starFormationRates] — The star formation rates corresponding to bin centers.

  • [covarianceBinomialBinsPerDecade] (default 10) — The number of bins per decade of star formation rate to use when constructing star formation rate function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMinimum] (default 1.0d10) — The star formation rate to consider when constructing star formation rate function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMaximum] (default 1.0d12) — The maximum star formation rate to consider when constructing star formation rate function covariance matrices for main branch galaxies.

  • [targetLabel] — Label for the target dataset.

  • [functionValueTarget] — The target function for likelihood calculations.

  • [functionCovarianceTarget] — The target function covariance for likelihood calculations.

  • [likelihoodBins] — Controls which bins in the stellar mass–halo mass relation will be used in computing the likelihood: * not present: all bins are included in the likelihood calculation; * list of integers: use only the mass bin(s) given in this list in the likelihood calculation; * auto: use only bins which have a non-zero number of halos contributing to them in the likelihood calculation.

  • [fileNameTarget] — The name of the file containing the target data.

  • [redshiftInterval] (default 1) — The redshift interval to use.

  • [likelihoodNormalize] (default .false.) — If true, then normalize the likelihood to make it a probability density.

  • [computeScatter] (default .false.) — If true, the scatter in log10(stellar mass) is computed. Otherwise, the mean is computed.

  • [systematicErrorPolynomialCoefficient] (default [0.0d0]) — The coefficients of the systematic error polynomial for stellar mass in the stellar vs halo mass relation.

  • [systematicErrorMassHaloPolynomialCoefficient] (default [0.0d0]) — The coefficients of the systematic error polynomial for halo mass in the stellar vs halo mass relation.

  • [errorTolerant] (default .false.) — Error tolerance for the N-body spin distribution operator.

  • [logNormalRange] (default 100.0d0) — The multiplicative range of the log-normal distribution used to model the distribution of the mass and energy terms in the spin parameter. Specifically, the lognormal distribution is truncated outside the range \((\lambda_\mathrm{m}/R,\lambda_\mathrm{m} R\), where \(\lambda_\mathrm{m}\) is the measured spin, and \(R=\)[logNormalRange]

  • [fileName] — The name of the file from which to read spin distribution function parameters.

  • [comment] — A comment describing this analysis.

  • [label] — A label for this analysis.

  • [label] — A label for the spin distribution function.

  • [comment] — A descriptive comment for the spin distribution function.

  • [redshift] — The redshift at which to compute the spin distribution function.

  • [massMinimum] — Minimum halo mass for the spin distribution function.

  • [massMaximum] — Maximum halo mass for the spin distribution function.

  • [spinMinimum] — Minimum spin for the spin distribution function.

  • [spinMaximum] — Maximum spin for the spin distribution function.

  • [countSpinsPerDecade] — Number of spins per decade at which to compute the spin distribution function.

  • [timeRecent] — Halos which experienced a major node merger within a time \(\Delta t=\)[timeRecent] of the analysis time will be excluded from the analysis.

  • [particleCountMinimum] — The minimum particle count to assume when computing N-body errors on spins.

  • [massParticle] — The mass of the particle used in the N-body simulation from which spins were measured.

  • [energyEstimateParticleCountMaximum] — The maximum number of particles used in estimating halo energies when measuring spins from the N-body simulation.

  • [targetLabel] — Label for the target dataset.

  • [functionValueTarget] — The target function for likelihood calculations.

  • [functionCovarianceTarget] — The target function covariance for likelihood calculations.

  • [label] — A label for the mass function.

  • [comment] — A descriptive comment for the mass function.

  • [masses] — The masses corresponding to bin centers.

  • [covarianceBinomialBinsPerDecade] (default 10) — The number of bins per decade of halo mass to use when constructing HI mass function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMinimum] (default 1.0d8) — The minimum halo mass to consider when constructing HI mass function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMaximum] (default 1.0d16) — The maximum halo mass to consider when constructing HI mass function covariance matrices for main branch galaxies.

  • [targetLabel] — Label for the target dataset.

  • [functionValueTarget] — The target function for likelihood calculations.

  • [functionCovarianceTarget] — The target function covariance for likelihood calculations.

  • [label] — A label for the luminosity function.

  • [comment] — A descriptive comment for the luminosity function.

  • [magnitudesAbsolute] — The absolute magnitudes corresponding to bin centers.

  • [covarianceBinomialBinsPerDecade] (default 10) — The number of bins per decade of halo mass to use when constructing luminosity function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMinimum] (default 1.0d8) — The minimum halo mass to consider when constructing luminosity function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMaximum] (default 1.0d16) — The maximum halo mass to consider when constructing luminosity function covariance matrices for main branch galaxies.

  • [targetLabel] — Label for the target dataset.

  • [functionValueTarget] — The target function for likelihood calculations.

  • [functionCovarianceTarget] — The target function covariance for likelihood calculations.

  • [label] — A label for the luminosity function.

  • [comment] — A descriptive comment for the luminosity function.

  • [luminosities] — The luminosities corresponding to bin centers.

  • [covarianceBinomialBinsPerDecade] (default 10) — The number of bins per decade of halo mass to use when constructing luminosity function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMinimum] (default 1.0d8) — The minimum halo mass to consider when constructing luminosity function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMaximum] (default 1.0d16) — The maximum halo mass to consider when constructing luminosity function covariance matrices for main branch galaxies.

  • [includeNitrogenII] (default .false.) — If true, include contamination by the [NII] (6548AA \(+\) 6584AA) doublet.

  • [depthOpticalISMCoefficient] (default 1.0d0) — Multiplicative coefficient for optical depth in the ISM.

  • [targetLabel] — Label for the target dataset.

  • [functionValueTarget] — The target function for likelihood calculations.

  • [functionCovarianceTarget] — The target function covariance for likelihood calculations.

  • [label] — A label for the mass function.

  • [comment] — A descriptive comment for the mass function.

  • [masses] — The masses corresponding to bin centers.

  • [covarianceBinomialBinsPerDecade] (default 10) — The number of bins per decade of halo mass to use when constructing stellar mass function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMinimum] (default 1.0d8) — The minimum halo mass to consider when constructing stellar mass function covariance matrices for main branch galaxies.

  • [covarianceBinomialMassHaloMaximum] (default 1.0d16) — The maximum halo mass to consider when constructing stellar mass function covariance matrices for main branch galaxies.

  • [targetLabel] — Label for the target dataset.

  • [functionValueTarget] — The target function for likelihood calculations.

  • [functionCovarianceTarget] — The target function covariance for likelihood calculations.

  • [rootVarianceFractionalMinimum] (default 0.0d0) — The minimum fractional root variance (relative to the target dataset).

  • [fileName] — The name of the file from which to read concentration distribution function parameters.

  • [comment] — A comment describing this analysis.

  • [label] — A label for this analysis.

  • [label] — A label for the concentration distribution function.

  • [comment] — A descriptive comment for the concentration distribution function.

  • [redshift] — The redshift at which to compute the concentration distribution function.

  • [massMinimum] — Minimum halo mass for the concentration distribution function.

  • [massMaximum] — Maximum halo mass for the concentration distribution function.

  • [concentrationMinimum] — Minimum concentration for the concentration distribution function.

  • [concentrationMaximum] — Maximum concentration for the concentration distribution function.

  • [countConcentrationsPerDecade] — Number of concentrations per decade at which to compute the concentration distribution function.

  • [timeRecent] — Halos which experienced a major node merger within a time \(\Delta t=\)[timeRecent] of the analysis time will be excluded from the analysis.

  • [massParticle] — The particle mass in the source N-body simulation.

  • [targetLabel] — Label for the target dataset.

  • [functionValueTarget] — The target function for likelihood calculations.

  • [functionCovarianceTarget] — The target function covariance for likelihood calculations.

  • [fileName] — The name of the file from which to read star forming main sequence function parameters.

  • [comment] — A comment describing this analysis.

  • [label] — A label for this analysis.

  • [label] — A label for the star forming main sequence function.

  • [comment] — A descriptive comment for the star forming main sequence function.

  • [massMinimum] — Minimum stellar mass for the star forming main sequence function.

  • [massMaximum] — Maximum stellar mass for the star forming main sequence function.

  • [countMassesPerDecade] — Number of masses per decade at which to compute the star forming main sequence function.

  • [targetLabel] — Label for the target dataset.

  • [meanValueTarget] — The target function for likelihood calculations.

  • [meanCovarianceTarget] — The target function covariance for likelihood calculations.

  • [label] — A label for the mass function.

  • [comment] — A descriptive comment for the mass function.

  • [separations] — The separations corresponding to bin centers.

  • [massMinima] — The minimum mass of each mass sample.

  • [massMaxima] — The maximum mass of each mass sample.

  • [massHaloBinsPerDecade] (default 10) — The number of bins per decade of halo mass to use when constructing the mass function covariance matrix for main branch galaxies.

  • [massHaloMinimum] (default 1.0d8) — The minimum halo mass to consider when constructing the mass function covariance matrix for main branch galaxies.

  • [massHaloMaximum] (default 1.0d16) — The maximum halo mass to consider when constructing the mass function covariance matrix for main branch galaxies.

  • [wavenumberCount] (default 60_c_size_t) — The number of bins in wavenumber to use in computing the correlation function.

  • [wavenumberMinimum] (default 1.0d-3) — The minimum wavenumber to use when computing the correlation function.

  • [wavenumberMaximum] (default 1.0d4) — The maximum wavenumber to use when computing the correlation function.

  • [integralConstraint] — The integral constraint for these correlation functions.

  • [depthLineOfSight] — The line-of-sight depth over which the correlation function was projected.

  • [halfIntegral] — Set to true if the projection integrand should be over line-of-sight depths greater than zero.

  • [binnedProjectedCorrelationTarget] — The target function for likelihood calculations.

  • [binnedProjectedCorrelationCovarianceTarget] — The target function covariance for likelihood calculations.

  • [targetLabel] (default var_str('')) — A label for the target dataset in a plot of this analysis.

  • [starFormationRateSpecificQuiescentLogarithmic] — The base-10 logarithm specific star formation rate (in units of Gyr\(^{-1}\)) separating quiescent and star-forming galaxies.

  • [starFormationRateSpecificLogarithmicError] — The observational fractional error in specific star formation rate (in units of dex) of galaxies.

  • [fileName] — The name of the file from which to read quiescent fraction function parameters.

  • [comment] — A comment describing this analysis.

  • [label] — A label for this analysis.

  • [label] — A label for the star forming main sequence function.

  • [comment] — A descriptive comment for the star forming main sequence function.

  • [massMinimum] — Minimum stellar mass for the star forming main sequence function.

  • [massMaximum] — Maximum stellar mass for the star forming main sequence function.

  • [countMassesPerDecade] — Number of masses per decade at which to compute the star forming main sequence function.

  • [targetLabel] — Label for the target dataset.

  • [meanValueTarget] — The target function for likelihood calculations.

  • [meanCovarianceTarget] — The target function covariance for likelihood calculations.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [radiusFractionalTruncateMinimum] (default 2.0d0) — The minimum radius (in units of the virial radius) to begin truncating the density profile.

  • [radiusFractionalTruncateMaximum] (default 4.0d0) — The maximum radius (in units of the virial radius) to finish truncating the density profile.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [velocityDispersionApproximate] (default .true.) — If true, radial velocity dispersion is computed using an approximate method in which we assume that \(\sigma_\mathrm{r}^2(r) \rightarrow \sigma_\mathrm{r}^2(r) - (2/3) \epsilon(r)\), where \(\epsilon(r)\) is the specific heating energy. If false then radial velocity dispersion is computed by numerically solving the Jeans equation.

  • [tolerateEnclosedMassIntegrationFailure] (default .false.) — If true, tolerate failures to find the mass enclosed as a function of radius.

  • [tolerateVelocityDispersionFailure] (default .false.) — If true, tolerate failures to compute the velocity dispersion.

  • [tolerateVelocityMaximumFailure] (default .false.) — If true, tolerate failures to find the radius of the maximum circular velocity.

  • [toleratePotentialIntegrationFailure] (default .false.) — If true, tolerate numerical failures when computing the gravitational potential of a heated dark matter profile, allowing the calculation to continue with a fallback result rather than aborting.

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [fractionRadiusFinalSmall] (default 1.0d-3) — The initial radius is limited to be no smaller than this fraction of the final radius. This can help avoid problems in profiles that are extremely close to being disrupted.

  • [toleranceRelativePotential] (default 1.0d-3) — The maximum allowed relative tolerance to use in numerical solutions for the gravitational potential in dark-matter-only density profiles before aborting.

  • [tolerateVelocityMaximumFailure] (default .true.) — If true, tolerate failures to find the radius of the peak in the rotation curve.

  • [lengthResolution] — The gravitational softening length \(\Delta x\) (in Mpc) of the N-body simulation, which sets the minimum spatial scale below which the dark matter profile is smoothed to avoid artificial two-body effects.

  • [massResolution] — The mass resolution \(\Delta M\) (in \(\mathrm{M}_\odot\)) of the N-body simulation, representing the minimum halo mass that can be resolved; profiles of halos near this limit are softened to account for particle discreteness effects.

  • [resolutionIsComoving] — If true, the resolution length is assumed to be fixed in comoving coordinates, otherwise in physical coordinates.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [C] (default 400.0d0) — The parameter \(C\) appearing in the halo concentration algorithm of Ludlow et al. (2016).

  • [f] (default 0.02d0) — The parameter \(f\) appearing in the halo concentration algorithm of Ludlow et al. (2016).

  • [timeFormationSeekDelta] (default 0.0d0) — The parameter \(\Delta \log t\) by which the logarithm of the trial formation time is incremented when stepping through the formation history of a node to find the formation time. If set to zero (or a negative value) the cumulative mass histories of nodes are assumed to be monotonic functions of time, and the formation time is instead found by a root finding algorithm,

  • [massBoundIsInactive] (default .false.) — Specifies whether or not the bound mass of the satellite component is inactive (i.e. does not appear in any ODE being solved).

  • [useLastIsolatedTime] (default .false.) — If true, evaluate the halo virial radius using a the virial density definition at the last isolated time of the halo.

  • [filterName] — The filter to select.

  • [filterType] — The filter type (rest or observed) to select.

  • [redshiftBand] — The redshift of the band (if not the output redshift).

  • [postprocessChain] — The postprocessing chain to use.

  • [cloudyTableFileName] (default var_str('%DATASTATICPATH%/hiiRegions/emissionLineLuminosities_BC2003_highResolution_imfChabrier.hdf5')) — The file of emission line luminosities to use.

  • [lineNames] — The emission lines to extract.

  • [component] — The component from which to extract star formation rate.

  • [toleranceRelative] (default 1.0d-3) — The relative tolerance used in integration over stellar population spectra.

  • [component] — The component from which to extract star formation rate.

  • [radiusCore] — The soliton core radius (in Mpc) characterizing the size of the quantum pressure-supported central core of the fuzzy dark matter halo; the density profile flattens inside this scale.

  • [densitySolitonCentral] — The central density (in \(\mathrm{M}_\odot\)/Mpc\(^3\)) of the solitonic core at \(r=0\), which sets the overall normalization of the density profile \(\rho(r) = \rho_\mathrm{c} [1+(r/r_c)^2]^{-8}\).

  • [toleranceRelativePotential] (default 1.0d-3) — The relative tolerance used in numerical ODE solutions for the gravitational potential of the solitonic core profile.

  • [dimensionless] (default .true.) — If true the soliton profile is treated as dimensionless (scale-free), allowing its radial and density quantities to be specified in arbitrary units.

  • [componentType] (default var_str('unknown')) — The galactic structure component type (e.g.dark matter halo, disk, spheroid) represented by this mass distribution, used for component-specific queries.

  • [massType] (default var_str('unknown')) — The mass type (e.g.dark matter, baryonic, total) represented by this mass distribution, used for mass-type-specific queries.

  • [radiusTransition] — The transition radius (in Mpc) at which the density profile smoothly switches from the halo profile to the accretion flow, controlled by the fourth-order transition function \(f_\mathrm{trans}(r)\).

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [timeAge] — The age of the halo (in Gyr) since its formation, determining the total time available for SIDM self-interactions to thermalize the inner halo and produce an isothermal core.

  • [velocityRelativeMean] — Mean relative velocity to calculate self interaction cross section.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [tolerateVelocityMaximumFailure] (default .false.) — If true, tolerate failures to find the radius of the peak in the rotation curve.

  • [tolerateEnclosedMassIntegrationFailure] (default .false.) — If true, tolerate failures to find the mass enclosed as a function of radius.

  • [toleratePotentialIntegrationFailure] (default .false.) — If true, tolerate failures to compute the potential.

  • [fractionRadiusFinalSmall] (default 1.0d-3) — The initial radius is limited to be no smaller than this fraction of the final radius. This can help avoid problems in profiles that are extremely close to being disrupted.

  • [toleranceRelativePotential] (default 1.0d-3) — The maximum allowed relative tolerance to use in numerical solutions for the gravitational potential in dark-matter-only density profiles before aborting.

  • [lengthResolution] — The spatial resolution length scale (in Mpc) below which the underlying density profile is softened to a flat core, mimicking the finite force resolution of an N-body simulation.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [massMinimum] — The minimum halo mass (in \(\mathrm{M}_\odot\)) below which halos are excluded from the mass function histogram.

  • [massMaximum] — The maximum halo mass (in \(\mathrm{M}_\odot\)) above which halos are excluded from the mass function histogram.

  • [massCountPerDecade] — The number of logarithmic bins per decade of halo mass used when constructing the halo mass function.

  • [description] — A human-readable description of this mass function dataset, stored as metadata in the output file.

  • [simulationReference] — A bibliographic reference for the N-body simulation from which this mass function is derived, stored as metadata.

  • [simulationURL] — A URL pointing to the publicly accessible dataset or documentation for the N-body simulation, stored as metadata.

  • [bootstrapSampleCount] (default 30_c_size_t) — The number of bootstrap resamples of the particles that should be used.

  • [representativeMinimumCount] (default 10_c_size_t) — Minimum number of representative particles used to compute the center of a halo.

  • [tolerance] (default 1.0d-2) — The tolerance in the summed weight of bound particles which must be attained to declare convergence.

  • [bootstrapSampleRate] (default 1.0d0) — The sampling rate for particles.

  • [representativeFraction] (default 0.05d0) — Fraction of bound particles used to compute the center of a halo.

  • [analyzeAllParticles] (default .true.) — If true, all particles are assumed to be self-bound at the beginning of the analysis. Unbound particles at previous times are allowed to become bound in the current snapshot. If false and the self-bound information from the previous snapshot is available, only the particles that are self-bound at the previous snapshot are assumed to be bound at the beginning of the analysis.

  • [useVelocityMostBound] (default .false.) — If true, the velocity of the most bound particle in velocity space is used as the representative velocity of the satellite. If false, use the mass weighted mean velocity (center-of-mass velocity) of self-bound particles instead.

  • [orderRotation] (default var_str('none')) — The order in which evaluation of likelihoods should be rotated as a function of process number.

  • [logLikelihoodAccept] (default huge(0.0d0)) — The log-likelihood which should be “accepted”—once the log-likelihood reaches this value (or larger) no further updates to the chain will be made.

  • [report] (default .false.) — If true, report on the log-likelihood obtained.

  • [means] — The mean of the multivariate normal distribution.

  • [covariance] — The covariance matrix for the of the multivariate normal distribution.

  • [countForestsMaximum] (default -1_c_size_t) — If set to a positive number, this is the maximum number of forests that will be evolved.

  • [walltimeMaximum] (default -1_kind_int8) — If set to a positive number, this is the maximum wall time for which forest evolution is allowed to proceed before the task gives up.

  • [tolerateFailures] (default .false.) — If true then failures to evolve a forest are tolerated. The forest is evolved no further, but evolution of other forests continues.

  • [evolveForestsInParallel] (default .true.) — If true then each forest is evolved by a separate OpenMP thread. Otherwise, a single thread evolves all forests.

  • [suspendToRAM] (default .true.) — Specifies whether trees should be suspended to RAM (otherwise they are suspend to file).

  • [suspendPath] — The path to which tree suspension files will be stored.

  • [timeIntervalCheckpoint] (default -1_kind_int8) — If positive, gives the time in seconds between storing of checkpoint files. If zero or negative, no checkpointing is performed..

  • [fileNameCheckpoint] — The path to which checkpoint data will be stored.

  • [logM0] (default 10.0d0) — The parameter \(\log_{10} M_0\) (with \(M_0\) in units of \(\mathrm{M}_\odot\)) appearing in the star formation rate threshold expression for the star formation rate galactic filter class.

  • [logSFR0] (default 9.0d0) — The parameter \(\alpha_0\) appearing in the star formation rate threshold expression for the star formation rate galactic filter class.

  • [logSFR1] (default 0.0d0) — The parameter \(\alpha_1\) appearing in the star formation rate threshold expression for the star formation rate galactic filter class.

  • [cW] (default 3.78062835d0) — The parameter \(c_\mathrm{W}\) in the Bohr et al. (2021) power spectrum window function.

  • [beta] (default 3.4638743d0) — The parameter \(\beta\) in the Bohr et al. (2021) power spectrum window function.

  • [transferFunctionType] (default var_str('darkMatter')) — Specifies whether to use the darkMatter or total transfer function.

  • [fileName] — The name of the file from which to read a tabulated transfer function.

  • [redshift] (default 0.0d0) — The redshift of the transfer function to read.

  • [factorWavenumberSmoothExtrapolation] (default 0.0d0) — If positive, and extrapolation is used at high wavenumbers, the slope for extrapolation will be set by averaging over wavenumbers from \(k_\mathrm{max}/f\) to \(k_\mathrm{max}\), where \(f=\)[factorWavenumberSmoothExtrapolation] and \(k_\mathrm{max}\) is the highest wavenumber tabulated. This avoids spurious extrapolation for highly oscillatory transfer functions.

  • [acceptNegativeValues] (default .false.) — If true, negative values in the transfer function are allowed (and the absolute value is taken prior to interpolation). Otherwise, negative values result in an error.

  • [fractionalTimeStep] (default 0.01d0) — The fractional time step used when computing barrier crossing rates (i.e. the step used in finite difference calculations).

  • [fileName] (default var_str('none')) — The name of the file to/from which tabulations of barrier first crossing probabilities should be written/read. If set to “none” tables will not be stored.

  • [fractionalTimeStep] (default 0.01d0) — The fractional time step used when computing barrier crossing rates (i.e. the step used in finite difference calculations).

  • [varianceNumberPerUnitProbability] (default 1000) — The number of points to tabulate per unit variance for first crossing probabilities.

  • [varianceNumberPerUnit] (default 40) — The number of tabulation points per unit of \(\sigma^2\) used when building the rate look-up table for the Farahi excursion-set first-crossing distribution; higher values improve interpolation accuracy at the cost of memory and initialization time.

  • [varianceNumberPerDecade] (default 400) — The number of points to tabulate per decade of progenitor variance for first crossing rates.

  • [varianceNumberPerDecadeNonCrossing] (default 40) — The number of points to tabulate per decade of progenitor variance for non-crossing rates.

  • [timeNumberPerDecade] (default 10) — The number of tabulation points per decade of cosmic time used when building the first-crossing rate look-up table as a function of time; higher values improve temporal interpolation accuracy for rapidly evolving cosmologies.

  • [varianceIsUnlimited] (default .false.) — If true, the variance is assumed to have no upper limit (e.g. as in the case of CDM). This allows the tabulated solutions to be extended arbitrarily. Otherwise, tables are extended to encompass just the range of variance requested.

  • [linkingLength] (default 0.2d0) — The friends-of-friends linking length to use in computing virial density contrasts with the percolation analysis of More et al. (2011).

kinematicsDistributionCollisionlessTabulated

A kinematic distribution base class for collisionless mass distributions that computes the 1D velocity dispersion by numerically solving the isotropic Jeans equation and caching the results in tabulated form. Numerical convergence is governed by [toleranceRelativeVelocityDispersion] and [toleranceRelativeVelocityDispersionMaximum].

Methods

  • parameters — Return parameters of the current mass distribution.

  • factoryTabulation — Return an instance of the class with the given tabulation parameters.

  • suffix — Return a suffix to append to table file names.

  • fileRead — Read tabulation data from file.

  • fileWrite — Write tabulation data to file.

  • tabulate — (Re)tabulate the mass distribution.

  • interpolate — Interpolate in the mass distribution.

  • isTabulating — Return true if the thread associated with the object is tabulating.

  • velocityDispersion1D — Compute the 1D velocity dispersion at the given coordinates.

  • initialize — Initialize the container (specifically the number of parameters).

  • nameParameter — Return the name of the index parameter for a given tabulation.

  • countParameters — Return the number of parameters for a given tabulation.

Parameters

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

kinematicsDistributionCuspNFW

A kinematic distribution class for the cusp-NFW dark matter profile of (Delos, 2025), which describes halos with a central density cusp transitioning to an NFW envelope. The 1D velocity dispersion is computed from tabulated solutions to the isotropic Jeans equation for this two-component density profile.

Parameters

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion.

  • [velocityDispersionUseSeriesExpansion] (default .true.) — If true, radial velocity dispersion is computed using series expansion (but only for the case of \(y=0\), i.e. an NFW profile).

  • [densityNormalization] (default 1.0d0/2.0d0/Pi/(log(4.0d0)-1.0d0)) — The density normalization of the cusp-NFW profile.

  • [radiusScale] (default 1.0d0) — The scale radius of the cusp-NFW profile.

  • [y] (default 0.0d0) — The cusp amplitude parameter the cusp-NFW profile.

  • [mass] (default 1.0d0) — The total mass (in \(\mathrm{M}_\odot\)) of the cusp-NFW halo, used to set the density normalization when the concentration and virial radius are provided instead of densityNormalization.

  • [concentration] (default 1.0d0) — The concentration of the cusp-NFW profile.

  • [radiusVirial] (default 1.0d0) — The virial radius of the cusp-NFW profile.

  • [dimensionless] (default .true.) — If true the cusp-NFW profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [toleranceRelativePotential] (default 1.0d-3) — The relative tolerance to use in numerical solutions for the gravitational potential.

kinematicsDistributionEnzoHydrostatic

A kinematic class that implements the “hydrostatic” temperature profile available in the ENZO code. Specifically,

\[T(r) = \hbox{max}\left( {\mathrm{G} M(<r) \mu m_\mathrm{H} \over 3 \mathrm{k_B} r} , T_\mathrm{min} \right),\]

where \(M(<r)\) is the total mass enclosed within radius \(r\), \(\mu\) is the primordial mean atomic mass, and \(T_\mathrm{min}=100\) K is a temperature floor introduced so as to avoid the temperature reaching arbitrarily low values.

Methods

  • normalizationDensity — Return the normalization of the density profile.

Parameters

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [mass] — The total mass (in \(\mathrm{M}_\odot\)) of the hot gas distribution enclosed within radiusOuter; used to normalize the Enzo hydrostatic density profile.

  • [radiusOuter] — The outer radius of the mass distribution.

  • [radiusScale] — The core radius of the mass distribution.

  • [truncateAtOuterRadius] (default .false.) — If true then the mass distribution is truncated beyond the outer radius.

kinematicsDistributionFiniteResolutionNFW

A kinematic distribution class for finite-resolution NFW mass distributions.

Methods

  • radiusEnclosingDensityTabulate — Tabulate the radius enclosing a given density as a function of density and core radius.

  • radiusEnclosingMassTabulate — Tabulate the radius enclosing a given mass as a function of density and core radius.

  • energyTabulate — Tabulate the energy as a function of concentration and core radius.

  • densityScaleFree — The density of the profile in units where the mass and scale length are both 1.

  • massEnclosedScaleFree — The mass enclosed of the profile in units where the mass and scale length are both 1.

  • storeDensityTable — Store the tabulated radius-enclosing-density to file.

  • restoreDensityTable — Attempt to restore the tabulated radius-enclosing-density from file, returning true if successful.

  • storeMassTable — Store the tabulated radius-enclosing-mass to file.

  • restoreMassTable — Attempt to restore the tabulated radius-enclosing-mass from file, returning true if successful.

  • storeEnergyTable — Store the tabulated energy to file.

  • restoreEnergyTable — Attempt to restore the tabulated energy from file, returning true if successful.

  • suffix — Return a file name suffix (containing a source code digest.

Parameters

  • [useSeriesApproximation] (default .true.) — If true, use a fast series approximation to the velocity dispersion profile in an NFW mass distribution. The approximation matches the exact (dilogarithm-based) form to better than \(5\times 10^{-6}\) in relative terms across \(r/r_\mathrm{s} \in [10^{-4},10^4]\) (see tests.kinematic_distributions.NFW).

  • [velocityDispersionUseSeriesExpansion] (default .true.) — If true, radial velocity dispersion is computed using series expansion.

  • [lengthResolution] — The gravitational softening length \(\Delta x\) (in Mpc) of the N-body simulation used to smooth the NFW profile at small radii, preventing artificial divergence below the resolution scale.

  • [massResolution] — The mass resolution \(\Delta M\) (in \(\mathrm{M}_\odot\)) of the N-body simulation, used to determine the finite-resolution softening of the NFW profile for halos near the resolution limit.

  • [resolutionIsComoving] — If true, the resolution length is assumed to be fixed in comoving coordinates, otherwise in physical coordinates.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [f] (default 0.01d0) — The parameter \(f\) appearing in the halo concentration algorithm of Navarro et al. (1996).

  • [C] (default 2000.0d0) — The parameter \(C\) appearing in the halo concentration algorithm of Navarro et al. (1996).

  • [densityNormalization] (default 1.0d0/2.0d0/Pi/(log(4.0d0)-1.0d0)) — The density normalization of the NFW profile.

  • [scaleLength] (default 1.0d0) — The NFW scale radius (in Mpc) \(r_\mathrm{s}\) at which the density profile transitions from the inner \(\rho \propto r^{-1}\) to the outer \(\rho \propto r^{-3}\) slope.

  • [mass] (default 1.0d0) — The total mass (in \(\mathrm{M}_\odot\)) of the NFW profile, used to set the density normalization when the concentration and virial radius are provided.

  • [concentration] (default 1.0d0) — The halo concentration parameter \(c = r_\mathrm{vir}/r_\mathrm{s}\) of the NFW profile, controlling how centrally concentrated the dark matter density profile is.

  • [virialRadius] (default 1.0d0) — The virial radius (in Mpc) \(r_\mathrm{vir}\) of the NFW halo, which defines the outer boundary of the profile at which the mean enclosed density equals the virial overdensity threshold.

  • [dimensionless] (default .true.) — If true the NFW profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [lengthResolution] — The spatial resolution length scale (in Mpc) of the N-body simulation being modeled; sets the minimum effective radius below which the NFW density profile is softened.

  • [radiusScale] — The NFW scale radius (in Mpc) at which the density profile transitions from the inner \(\rho \propto r^{-1}\) slope to the outer \(\rho \propto r^{-3}\) slope.

  • [radiusVirial] — The virial radius (in Mpc) of the halo, defining the outer boundary of the NFW profile at which the mean enclosed density equals the virial overdensity threshold.

  • [mass] — The total mass (in \(\mathrm{M}_\odot\)) enclosed within the virial radius, used together with radiusScale and radiusVirial to normalize the NFW density profile.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionHeated

A kinematic distribution class for mass distributions subject to external heating. The 1D velocity dispersion is computed by solving the Jeans equation modified to account for the additional energy injected by the heating source. The [velocityDispersionApproximate] flag enables an approximate solver for improved performance.

Parameters

  • [velocityDispersionApproximate] (default .true.) — If true, radial velocity dispersion is computed using an approximate method in which we assume that \(\sigma_\mathrm{r}^2(r) \rightarrow \sigma_\mathrm{r}^2(r) - (2/3) \epsilon(r)\), where \(\epsilon(r)\) is the specific heating energy. If false then radial velocity dispersion is computed by numerically solving the Jeans equation.

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [temperature] — The (dimensionless) temperature to which to heat the provided likelihood.

kinematicsDistributionIsothermal

An isothermal kinematic distribution class for collisional gas components in which all particles share a single uniform temperature. The 1D velocity dispersion is derived from the gas temperature [temperature] and mean atomic mass [massAtomicMean], appropriate for modelling thermally supported gas in hydrostatic equilibrium.

Parameters

  • [temperature] — The temperature (in Kelvin) of the isothermal gas distribution; used with massAtomicMean to compute the 1D velocity dispersion via \(\sigma^2 = k_\mathrm{B} T / (\mu m_\mathrm{H})\).

  • [massAtomicMean] — The mean atomic mass (in atomic mass units) of the distribution.

  • [velocityDispersion] — The 1D velocity dispersion (in km/s) of the isothermal distribution, used directly when no temperature is specified; sets the thermally broadened line-of-sight velocity spread.

  • [densityNormalization] (default 0.25d0/Pi) — The density normalization of the isothermal profile.

  • [lengthReference] (default 1.0d0) — The reference radius (in Mpc) of the isothermal profile at which densityNormalization is evaluated; sets the physical length scale of the \(\rho \propto r^{-2}\) profile.

  • [mass] (default 1.0d0) — The total mass (in \(\mathrm{M}_\odot\)) enclosed within the reference radius, used to normalize the \(\rho \propto r^{-2}\) density profile when densityNormalization is not supplied.

  • [dimensionless] (default .true.) — If true the isothermal profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionLam2013

A kinematic distribution class implementing the Lam et al. (2013) model of radial velocity infall in halo accretion flows. The radial velocity profile is computed from the volume-averaged two-point correlation function and cosmological linear growth rate, encoding the infall dynamics around collapsed halos at a given redshift and virial mass.

Parameters

  • [scaleFactorVelocity] (default 1.0d0) — A scale factor to be applied to inflow velocities.

  • [redshift] — The cosmological redshift of the halo, used to evaluate the cosmic time and the Lam et al. (2013) infall velocity profile at the appropriate epoch.

  • [massVirial] — The virial mass (in \(\mathrm{M}_\odot\)) of the halo whose accretion flow kinematics are modeled by the Lam et al. (2013) framework.

  • [radiusVirial] — The virial radius (in Mpc) of the halo, setting the spatial scale for the Lam et al. (2013) radial infall velocity profile.

  • [overdensityCritical] — The critical linear overdensity threshold for collapse used in the Lam et al. (2013) accretion flow model to normalize the radial infall velocity.

  • [rateLinearGrowth] — The logarithmic derivative of the linear growth factor with respect to expansion factor.

  • [radius] — The radius in the tabulated volume-averaged correlation function.

  • [correlationFunctionVolumeAveraged] — The correlation in the tabulated volume-averaged correlation function.

kinematicsDistributionLocal

A local kinematic distribution class in which the 1D velocity dispersion is given by

\[\sigma_\mathrm{1D}(\mathbf{r}) = \alpha V_\mathrm{c}(r),\]

where \(r = |\mathbf{r}|\) and \(V_\mathrm{c}(r)\) is the rotation curve. Here, \(\alpha=\)[] is a parameter.

Parameters

  • [alpha] (default 1.0d0/sqrt(2.0d0)) — The parameter \(\alpha\) in the relation \(\sigma_\mathrm{1D}(\mathbf{r}) = \alpha V_\mathrm{c}(r)\).

kinematicsDistributionNFW

A kinematic distribution class that computes the collisionless 1D velocity dispersion profile for Navarro-Frenk-White (NFW) dark matter mass distributions by solving the Jeans equation. A series approximation for the velocity dispersion integral can be selected via [useSeriesApproximation] to improve numerical efficiency.

Methods

  • radiusEnclosingDensityTabulate — Tabulate the radius enclosing a given density as a function of density and core radius.

  • radiusEnclosingMassTabulate — Tabulate the radius enclosing a given mass as a function of density and core radius.

  • energyTabulate — Tabulate the energy as a function of concentration and core radius.

  • densityScaleFree — The density of the profile in units where the mass and scale length are both 1.

  • massEnclosedScaleFree — The mass enclosed of the profile in units where the mass and scale length are both 1.

  • storeDensityTable — Store the tabulated radius-enclosing-density to file.

  • restoreDensityTable — Attempt to restore the tabulated radius-enclosing-density from file, returning true if successful.

  • storeMassTable — Store the tabulated radius-enclosing-mass to file.

  • restoreMassTable — Attempt to restore the tabulated radius-enclosing-mass from file, returning true if successful.

  • storeEnergyTable — Store the tabulated energy to file.

  • restoreEnergyTable — Attempt to restore the tabulated energy from file, returning true if successful.

  • suffix — Return a file name suffix (containing a source code digest.

Parameters

  • [useSeriesApproximation] (default .true.) — If true, use a fast series approximation to the velocity dispersion profile in an NFW mass distribution. The approximation matches the exact (dilogarithm-based) form to better than \(5\times 10^{-6}\) in relative terms across \(r/r_\mathrm{s} \in [10^{-4},10^4]\) (see tests.kinematic_distributions.NFW).

  • [velocityDispersionUseSeriesExpansion] (default .true.) — If true, radial velocity dispersion is computed using series expansion.

  • [lengthResolution] — The gravitational softening length \(\Delta x\) (in Mpc) of the N-body simulation used to smooth the NFW profile at small radii, preventing artificial divergence below the resolution scale.

  • [massResolution] — The mass resolution \(\Delta M\) (in \(\mathrm{M}_\odot\)) of the N-body simulation, used to determine the finite-resolution softening of the NFW profile for halos near the resolution limit.

  • [resolutionIsComoving] — If true, the resolution length is assumed to be fixed in comoving coordinates, otherwise in physical coordinates.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [f] (default 0.01d0) — The parameter \(f\) appearing in the halo concentration algorithm of Navarro et al. (1996).

  • [C] (default 2000.0d0) — The parameter \(C\) appearing in the halo concentration algorithm of Navarro et al. (1996).

  • [densityNormalization] (default 1.0d0/2.0d0/Pi/(log(4.0d0)-1.0d0)) — The density normalization of the NFW profile.

  • [scaleLength] (default 1.0d0) — The NFW scale radius (in Mpc) \(r_\mathrm{s}\) at which the density profile transitions from the inner \(\rho \propto r^{-1}\) to the outer \(\rho \propto r^{-3}\) slope.

  • [mass] (default 1.0d0) — The total mass (in \(\mathrm{M}_\odot\)) of the NFW profile, used to set the density normalization when the concentration and virial radius are provided.

  • [concentration] (default 1.0d0) — The halo concentration parameter \(c = r_\mathrm{vir}/r_\mathrm{s}\) of the NFW profile, controlling how centrally concentrated the dark matter density profile is.

  • [virialRadius] (default 1.0d0) — The virial radius (in Mpc) \(r_\mathrm{vir}\) of the NFW halo, which defines the outer boundary of the profile at which the mean enclosed density equals the virial overdensity threshold.

  • [dimensionless] (default .true.) — If true the NFW profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

  • [lengthResolution] — The spatial resolution length scale (in Mpc) of the N-body simulation being modeled; sets the minimum effective radius below which the NFW density profile is softened.

  • [radiusScale] — The NFW scale radius (in Mpc) at which the density profile transitions from the inner \(\rho \propto r^{-1}\) slope to the outer \(\rho \propto r^{-3}\) slope.

  • [radiusVirial] — The virial radius (in Mpc) of the halo, defining the outer boundary of the NFW profile at which the mean enclosed density equals the virial overdensity threshold.

  • [mass] — The total mass (in \(\mathrm{M}_\odot\)) enclosed within the virial radius, used together with radiusScale and radiusVirial to normalize the NFW density profile.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionShi2016

A kinematic distribution class for the Shi (2016) model of halo accretion flows.

Methods

  • solve — Solve for the structure of the accretion flow.

Parameters

  • [scaleFactorVelocity] (default 1.0d0) — A dimensionless multiplicative scale factor applied to the inflow velocities computed from the Shi (2016) splashback and accretion flow model, allowing calibration of the infall velocity amplitude relative to the theoretical prediction.

  • [mass] — The virial mass (in \(\mathrm{M}_\odot\)) of the halo used to set the normalization of the Shi (2016) accretion flow density profile.

  • [massAccretionRate] — The mass accretion rate (in \(\mathrm{M}_\odot\)/Gyr) of the halo, used in the Shi (2016) framework to set the amplitude of the outer accretion flow density profile.

  • [radiusVirial] — The virial radius (in Mpc) of the halo, used together with the turnaround radius ratio to set the spatial scale of the Shi (2016) accretion flow.

  • [ratioRadiusTurnaroundVirial] — The ratio of the turnaround to virial radii of the halo.

  • [redshift] — The cosmological redshift of the halo, used to evaluate the cosmic time and expansion factor for the Shi (2016) accretion flow solution.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionSIDMIsothermal

A kinematic distribution class implementing the “isothermal” approximation to the effects of SIDM based on the model of Jiang et al. (2023).

Parameters

  • [temperature] — The temperature (in Kelvin) of the isothermal gas distribution; used with massAtomicMean to compute the 1D velocity dispersion via \(\sigma^2 = k_\mathrm{B} T / (\mu m_\mathrm{H})\).

  • [massAtomicMean] — The mean atomic mass (in atomic mass units) of the distribution.

  • [velocityDispersion] — The 1D velocity dispersion (in km/s) of the isothermal distribution, used directly when no temperature is specified; sets the thermally broadened line-of-sight velocity spread.

  • [densityNormalization] (default 0.25d0/Pi) — The density normalization of the isothermal profile.

  • [lengthReference] (default 1.0d0) — The reference radius (in Mpc) of the isothermal profile at which densityNormalization is evaluated; sets the physical length scale of the \(\rho \propto r^{-2}\) profile.

  • [mass] (default 1.0d0) — The total mass (in \(\mathrm{M}_\odot\)) enclosed within the reference radius, used to normalize the \(\rho \propto r^{-2}\) density profile when densityNormalization is not supplied.

  • [dimensionless] (default .true.) — If true the isothermal profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionSoliton

A kinematic distribution class for the solitonic core mass distribution found in fuzzy dark matter halos. The 1D velocity dispersion profile is computed from tabulated solutions to the isotropic Jeans equation applied to the soliton density profile, encoding the quantum pressure support of ultralight axion dark matter.

Methods

  • radiusMerge — Compute the radius at which the satellite will be merged in FDM models.

Parameters

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [recordMergedSubhaloProperties] (default .false.) — If true, record the orbital properties of subhalo that merge.

  • [recordFirstLevelOnly] (default .false.) — If true, record only mergers with first-level subhalos relative to the host.

kinematicsDistributionSolitonNFW

A kinematic distribution class for the soliton-NFW mass distribution. In the NFW region, the velocity dispersion is computed using the analytic solution of Łokas and Mamon (2001), plus a correction term which accounts for the difference in mass inside the soliton radius between the soliton and the NFW profile. Specifically, we solve the Jeans equation for a point mass (since outside of the soliton radius, the mass within it acts as a point mass) and the NFW density profile:

\[\frac{\mathrm{d}(\rho\sigma^2}{\mathrm{d}r} = - \frac{\mathrm{G} \Delta M}{r^2} \rho,\]

where \(\Delta M = M_\mathrm{soliton}(r_\mathrm{soliton}) - M_\mathrm{NFW}(r_\mathrm{soliton})\), and which has the solution:

\[\rho \sigma^2 = - \frac{\mathrm{G} \Delta M \rho_\mathrm{s}}{r_\mathrm{s}} \left( \frac{4}{r/r_\mathrm{s}} - \frac{1}{(r/r_\mathrm{s})^2} + \frac{2}{1+r/r_\mathrm{s}} + 6 \log \left[\frac{r}{r+r_\mathrm{s}}\right] \right).\]

Inside the soliton, the NFW solution is used as a boundary condition at \(r_\mathrm{soliton}\), and the Jeans equation is then solved using the soliton density profile, which results in a solution

\[\frac{\pi \mathrm{G} r_\mathrm{c}^2 \rho_\mathrm{c}^2}{20038287360 a^{3/2}} \left[ -\sqrt{a} (169995 + 631540 y + 1200199 y^2 + 1317888 y^3 + 849849 y^4 + 300300 y^5 + 45045 y^6) (28672 + 169995 y + 631540 y^2 + 1200199 y^3 + 1317888 y^4 + 849849 y^5 + 300300 y^6 + 45045 y^7)/(1+y)^{14} +45045 \tan^{-1}(\sqrt{a} x) \left\{ -2 ( 14336 + 169995 y + 631540 y^2 + 1200199 y^3 + 1317888 y^4 + 849849 y^5 + 300300 y^6 + 45045 y^7)/[x (1+y)^7] -45045 \sqrt{a} \tan^{-1}(\sqrt{a} x) \right\} \right],\]

where \(x = r/r_\mathrm{c}\) and \(y = a x^2\).

Methods

  • computeProperties — Compute properties of the mass distribution.

  • calculationReset — Reset memoized calculations.

Parameters

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion.

  • [scatterFractional] (default 0.5d0) — The fractional scatter in the solitonic core-halo mass relation (default corresponds to a 50% fractional scatter).

  • [radiusScale] — The scale radius of the NFW component of the mass distribution.

  • [radiusCore] — The soliton core radius (in Mpc) characterizing the size of the central quantum pressure-supported core of the fuzzy dark matter halo before the profile transitions to the outer NFW envelope.

  • [radiusSoliton] — The transition radius (in Mpc) at which the solitonic core profile smoothly joins onto the outer NFW envelope; the density profile matches the NFW form beyond this radius.

  • [densitySolitonCentral] — The central density (in \(\mathrm{M}_\odot\)/Mpc\(^3\)) of the solitonic core at \(r=0\), which sets the normalization of the soliton density profile \(\rho(r) = \rho_\mathrm{c} [1+(r/r_c)^2]^{-8}\).

  • [densityNormalizationNFW] — The density normalization \(\rho_0\) (in \(\mathrm{M}_\odot\)/Mpc\(^3\)) of the outer NFW component, setting the amplitude of the \(\rho(r) = \rho_0/[(r/r_\mathrm{s})(1+r/r_\mathrm{s})^2]\) profile.

  • [concentration] — The concentration parameter \(c = r_\mathrm{vir}/r_\mathrm{s}\) of the outer NFW component, specifying how centrally concentrated the NFW halo is.

  • [radiusVirial] — The virial radius (in Mpc) of the outer NFW component, defining the outer boundary of the halo at which the mean enclosed density equals the virial overdensity threshold.

  • [toleranceRelativePotential] (default 1.0d-3) — The relative tolerance used in numerical ODE solutions for the gravitational potential of the soliton-NFW composite profile.

  • [dimensionless] (default .true.) — If true the soliton-NFW profile is treated as dimensionless (scale-free), allowing its radial and density quantities to be specified in arbitrary units.

  • [componentType] (default var_str('unknown')) — The galactic structure component type (e.g.dark matter halo, disk, spheroid) represented by this mass distribution, used for component-specific queries.

  • [massType] (default var_str('unknown')) — The mass type (e.g.dark matter, baryonic, total) represented by this mass distribution, used for mass-type-specific queries.

kinematicsDistributionSolitonNFWHeated

A kinematic distribution class for a composite soliton-NFW mass distribution subject to heating, as occurs in fuzzy dark matter halos with a quantum-pressure-supported solitonic core embedded in an NFW envelope. The 1D velocity dispersion is computed by solving the isotropic Jeans equation for the heated composite profile.

Methods

  • computeProperties — Compute properties of the mass distribution.

  • calculationReset — Reset memoized calculations.

Parameters

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion in dark-matter-only density profiles.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available. If set to “fallThrough” then the solution ignoring heating is used, while if set to “numerical” then numerical solvers are used to find solutions.

  • [tolerateEnclosedMassIntegrationFailure] (default .false.) — If true, tolerate failures to find the mass enclosed as a function of radius.

  • [tolerateVelocityMaximumFailure] (default .false.) — If true, tolerate failures to find the radius of the maximum circular velocity.

  • [toleratePotentialIntegrationFailure] (default .false.) — If true, tolerate numerical failures when computing the gravitational potential of the heated soliton-NFW dark matter profile (e.g. due to extreme heating), allowing the calculation to proceed with a fallback result.

  • [velocityDispersionApproximate] (default .true.) — If true, radial velocity dispersion is computed using an approximate method in which we assume that \(\sigma_\mathrm{r}^2(r) \rightarrow \sigma_\mathrm{r}^2(r) - (2/3) \epsilon(r)\), where \(\epsilon(r)\) is the specific heating energy. If false then radial velocity dispersion is computed by numerically solving the Jeans equation.

  • [toleranceRelativeVelocityDispersion] (default 1.0d-6) — The relative tolerance to use in numerical solutions for the velocity dispersion.

  • [toleranceRelativeVelocityDispersionMaximum] (default 1.0d-3) — The maximum relative tolerance to use in numerical solutions for the velocity dispersion.

  • [fractionRadiusFinalSmall] (default 1.0d-3) — The initial radius is limited to be no smaller than this fraction of the final radius. This can help avoid problems in profiles that are extremely close to being disrupted.

  • [toleranceRelativePotential] (default 1.0d-3) — The maximum allowed relative tolerance to use in numerical solutions for the gravitational potential in dark-matter-only density profiles before aborting.

  • [scatterFractional] (default 0.5d0) — The fractional scatter in the solitonic core-halo mass relation (default corresponds to a 50% fractional scatter).

  • [radiusCore] — The soliton core radius (in Mpc) that characterizes the size of the central quantum pressure-supported core of the fuzzy dark matter halo; density is approximately constant within this radius.

  • [radiusSoliton] — The outer radius (in Mpc) of the soliton region, beyond which the profile transitions from the soliton core to the heated NFW outer envelope.

  • [densitySolitonCentral] — The central density (in \(\mathrm{M}_\odot\)/Mpc\(^3\)) of the solitonic core at \(r=0\), which sets the normalization of the soliton density profile \(\rho(r) = \rho_\mathrm{c} [1+(r/r_\mathrm{c})^2]^{-8}\).

  • [toleranceRelativePotential] (default 1.0d-3) — The relative tolerance used in numerical ODE solutions for the gravitational potential of the heated soliton-NFW composite profile.

  • [dimensionless] (default .true.) — If true the NFW profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionSphericalScaler

A kinematic distribution decorator class that rescales the velocity dispersion of an underlying spherical kinematic distribution by applying independent scaling factors to the length and mass dimensions. The scale factors [factorScalingLength] and [factorScalingMass] allow the kinematic profile to be mapped between systems of different physical size or mass.

Methods

  • initialize — (Re)initialize the scaling factors of the scaled mass distribution.

Parameters

  • [factorScalingLength] — The multiplicative factor applied to all length scales in the underlying kinematic distribution; used to rescale the distribution from one physical size to another.

  • [factorScalingMass] — The multiplicative factor applied to the mass normalization of the underlying kinematic distribution; used to rescale the distribution from one physical mass to another.

  • [factorScalingLength] — The factor by which to scale lengths.

  • [factorScalingMass] — The factor by which to scale the mass.

  • [factorScalingLength] — The factor by which to scale lengths.

  • [factorScalingMass] — The factor by which to scale the mass.

kinematicsDistributionTruncated

A kinematic distribution class for truncated mass distributions.

Methods

  • truncationFunction — Compute the truncation fraction (and related quantities) from the radius.

Parameters

  • [radiusTruncateMinimum] — The minimum radius to begin truncating the density profile.

  • [radiusTruncateMaximum] — The maximum radius to finish truncating the density profile.

  • [nonAnalyticSolver] (default var_str('fallThrough')) — Selects how solutions are computed when no analytic solution is available.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.

kinematicsDistributionUndecorator

A kinematic distribution class for decorated mass distributions, that uses the undecorated mass distribution.

kinematicsDistributionZhao1996

A kinematic distribution class for Zhao (1996) mass distributions.

Methods

  • timeFreefallTabulate — Tabulate the freefall time as a function of radius in a scale-free Zhao1996 mass distribution.

Parameters

  • [alpha] — The parameter \(\alpha\) of the Zhao (1996) dark matter density profile.

  • [beta] — The parameter \(\beta\) of the Zhao (1996) dark matter density profile.

  • [gamma] — The parameter \(\gamma\) of the Zhao (1996) dark matter density profile.

  • [alpha] — The parameter \(\alpha\) of the Zhao1996 profile.

  • [beta] — The parameter \(\beta\) of the Zhao1996 profile.

  • [gamma] — The parameter \(\gamma\) of the Zhao1996 profile.

  • [densityNormalization] (default (3.0d0-gamma)/4.0d0/Pi/Hypergeometric_2F1([(3.0d0-gamma)/alpha,(beta-gamma)/alpha],[1.0d0+(3.0d0-gamma)/alpha],-1.0d0)) — The density normalization of the Zhao1996 profile.

  • [scaleLength] (default 1.0d0) — The scale radius of the Zhao1996 profile.

  • [mass] (default 1.0d0) — The total mass (in \(\mathrm{M}_\odot\)) of the Zhao (1996) profile, used to set the density normalization \(\rho_0\) when densityNormalization is not supplied directly.

  • [radiusOuter] — The outer radius of the Zhao1996 profile.

  • [dimensionless] (default .true.) — If true the Zhao1996 profile is considered to be dimensionless.

  • [componentType] (default var_str('unknown')) — The component type that this mass distribution represents.

  • [massType] (default var_str('unknown')) — The mass type that this mass distribution represents.