Stellar Populations¶
Class providing stellar populations—composite descriptions of a coeval group of stars formed with a given initial mass function, metallicity, and age. For a given population, implementations return the mass recycled back to the ISM per unit stellar mass formed, the metal yield, and the energy input rate from stellar evolution as a function of age interval. Both explicit (time-resolved) and instantaneous recycling approximations are supported. The spectra method returns the associated stellarPopulationSpectraClass object for computing integrated luminosities.
Default implementation: stellarPopulationStandard
Methods¶
rateRecycling→double precisionReturn the rate of mass recycling (per unit initial stellar mass formed, per unit time) from this stellar population back to the ISM over the age interval \([\mathrm{ageMinimum}, \mathrm{ageMaximum}]\) for the given elemental abundances.
type (abundances), intent(in ) :: abundances_double precision , intent(in ) :: ageMinimum , ageMaximum
uniqueID→integer(c_size_t)Return the unique integer identifier assigned to this stellar population, which distinguishes populations with different IMFs, metallicities, or other properties and is used to cache pre-computed integrals.
rateYield→double precisionReturn the rate of metal (element) yield (per unit initial stellar mass formed, per unit time) from this stellar population over the age interval \([\mathrm{ageMinimum}, \mathrm{ageMaximum}]\), optionally restricted to a specific element index.
type (abundances), intent(in ) :: abundances_double precision , intent(in ) :: ageMinimum , ageMaximuminteger , intent(in ), optional :: elementIndex
rateEnergy→double precisionReturn the rate of mechanical energy input (per unit initial stellar mass formed, per unit time) from stellar evolution processes (supernovae, winds) in this population over the age interval \([\mathrm{ageMinimum}, \mathrm{ageMaximum}]\).
type (abundances), intent(in ) :: abundances_double precision , intent(in ) :: ageMinimum , ageMaximum
recycledFractionInstantaneous→double precisionReturn the recycled fraction from this population in the instantaneous approximation.
yieldInstantaneous→double precisionReturn the metal yield from this population in the instantaneous approximation.
spectra→class(stellarPopulationSpectraClass)Return the
stellarPopulationSpectraClassobject associated with this stellar population, which provides methods to compute the integrated spectral energy distribution as a function of wavelength and age.
stellarPopulationStandard¶
A standard stellar population class, which uses a fully non-instantaneous, metal-dependent calculation of recycling, metal production and rates. These rates are determined from the stellarPopulationClass object provided by a stellarPopulationSelectorClass.
It is possible to force this method to operate in the instantaneous recycling approximation limit (which can be useful for testing and comparison) by setting:
<stellarPopulations value="standard">
<!-- Force the calculation of recycling, yields etc. to -->
<!-- be done assuming instantaneous recycling -->
<instantaneousRecyclingApproximation value="true"/>
<!-- Set the recycled fraction and yield -->
<recycledFraction value="0.35"/>
<metalYield value="0.02"/>
</stellarPopulationProperties>
where the recycled fraction and metal yield are specified directly, or
<stellarPopulations value="standard">
<!-- Force the calculation of recycling to be done -->
<!-- assuming the instantaneous recycling approximation -->
<instantaneousRecyclingApproximation value="true"/>
<!-- Set the mass of stars which should be used as the -->
<!-- dividing line between long-lived and instantaneously -->
<!-- evolving in this approximation. -->
<massLongLived value="1.0"/>
<!-- Set the effective age of populations to use in this -->
<!-- approximation when computing SNe numbers. -->
<ageEffective value="13.8"/>
</stellarPopulationProperties>
in which case the recycled fraction and metal yield will be computed that all stars with mass greater than massLongLived have fully evolved, and energy input (from stellar winds and supernovae) will be computed assuming that stellar populations instantaneously reach an age of ageEffective.
Similar options are available to control whether metal yields and energy input from stellar populations are computed using the fully non-instantaneous or instantaneous approximations, e.g.:
<stellarPopulations value="standard">
<!-- Force the calculation of recycling to be done -->
<!-- assuming the instantaneous recycling approximation -->
<instantaneousRecyclingApproximation value="true"/>
<!-- Force the calculation of yields to be done -->
<!-- assuming the instantaneous recycling approximation -->
<instantaneousYieldApproximation value="true"/>
<!-- Force the calculation of energy input to be done -->
<!-- assuming the instantaneous recycling approximation -->
<instantaneousEnergyInputApproximation value="true"/>
<!-- Set the mass of stars which should be used as the -->
<!-- dividing line between long-lived and instantaneously -->
<!-- evolving in this approximation. -->
<massLongLived value="1.0"/>
<!-- Set the effective age of populations to use in this -->
<!-- approximation when computing SNe numbers. -->
<ageEffective value="13.8"/>
</stellarPopulationProperties>
(Default implementation)
Methods
factors— Compute factors needed for tidal tensor calculation.tidalTensorGet— Get the tidal tensor.
Parameters
[stellarDensityChangeBinaryMotion](default.true.) — If true, account for the change in stellar density caused by the black hole binary’s motion through the stellar background when computing the hardening rate of the binary via stellar scattering.[computeVelocityDispersion](default.false.) — Specifies whether or not the velocity dispersion of dark matter and stars should be computed using Jeans equation in black hole binary hardening calculations. Iffalse, then the velocity dispersions are assumed to equal the characteristic velocity of dark matter and spheroid.[bondiHoyleAccretionEnhancementSpheroid](default5.0d0) — The factor by which the Bondi-Hoyle accretion rate of spheroid gas onto black holes is enhanced.[bondiHoyleAccretionEnhancementHotHalo](default6.0d0) — The factor by which the Bondi-Hoyle accretion rate of hot halo gas onto black holes is enhanced.[bondiHoyleAccretionEnhancementNuclearStarCluster](default5.0d0) — The factor by which the Bondi-Hoyle accretion rate of NSC gas onto black holes is enhanced.[bondiHoyleAccretionHotModeOnly](default.true.) — Determines whether accretion from the hot halo should only occur if the halo is in the hot accretion mode.[bondiHoyleAccretionTemperatureSpheroid](default1.0d2) — The assumed temperature (in Kelvin) of gas in the spheroid when computing Bondi-Hoyle accretion rates onto black holes.[bondiHoyleAccretionTemperatureNuclearStarCluster](default1.0d2) — The assumed temperature (in Kelvin) of gas in the NSC when computing Bondi-Hoyle accretion rates onto black holes.[instantaneousRecyclingApproximation](default.false.) — If true, then use an instantaneous recycling approximation when computing recycling rates.[instantaneousYieldApproximation](default.false.) — If true, then use an instantaneous recycling approximation when computing yield rates.[instantaneousEnergyInputApproximation](default.false.) — If true, then use an instantaneous recycling approximation when computing energy input rates.[massLongLived](default1.0d0) — The mass below which stars are assumed to be infinitely long-lived in the instantaneous approximation for stellar evolution.[ageEffective](default13.8d0) — The effective age to use for computing SNeIa yield when using the instantaneous stellar evolution approximation.[recycledFraction](default0.0d0) — The recycled fraction to use in the instantaneous stellar evolution approximation. (If not specified it will be computed internally.)[metalYield](default0.0d0) — The metal yield to use in the instantaneous stellar evolution approximation. (If not specified it will be computed internally.)[integrationToleranceRelative](default4.0d-3) — The relative tolerance used when integrating the flux of stellar populations through filters.[integrationToleranceDegrade](default.false.) — Iftrue, automatically degrade the relative tolerance used when integrating the flux of stellar populations through filters to ensure convergence.[storeToFile](default.true.) — Specifies whether or not stellar populations luminosities (integrated under a filter) should be stored to file for rapid reuse.[storeDirectory](defaultinputPath(pathTypeDataDynamic)//'stellarPopulations') — Specifies the directory to which stellar populations luminosities (integrated under a filter) should be stored to file for rapid reuse.[maximumAgeExceededIsFatal](default.true.) — Specifies whether or not exceeding the maximum available age of the stellar population is fatal.[inactiveBoundMass](default.false.) — Specifies whether or not the bound mass variable of the standard satellite component is inactive (i.e. does not appear in any ODE being solved).[odeToleranceAbsolute](default0.01d0) — The absolute tolerance used in solving differential equations for node evolution.[odeToleranceRelative](default1.0d-2) — The relative tolerance used in solving differential equations for node evolution.[odeJacobianStepSizeRelative](default0.01d0) — The relative step size to use when perturbing properties for purposes of computing a finite difference approximation to the ODE system Jacobian.[odeAlgorithm](defaultvar_str('rungeKuttaCashKarp')) — The algorithm to use in the ODE solver.[odeAlgorithmNonJacobian](defaultvar_str('rungeKuttaCashKarp')) — The algorithm to use in the ODE solver.[odeLatentIntegratorType](defaultvar_str('trapezoidal')) — The type of integrator to use for latent variables.[odeLatentIntegratorOrder](default15) — The order of the integrator for latent variables.[odeLatentIntegratorIntervalsMaximum](default1000) — The maximum number of intervals allowed in the integrator for latent variables.[profileOdeEvolver](default.false.) — Specifies whether or not to profile the ODE evolver.[reuseODEStepSize](default.true.) — If true, re-use the previous ODE step size when resuming the evolution of a node. Otherwise, the initial step size is not specified.[enforceNonNegativity](default.false.) — If true, properties that are marked as non-negative (e.g. masses) will be evolved in such a way as to enforce that non-negativity.[allTreesExistAtFinalTime](default.true.) — Specifies whether or not all merger trees are expected to exist at the final requested output time. If set to false, then trees which finish before a given output time will be ignored.[dumpTreeStructure](default.false.) — Specifies whether merger tree structure should be dumped to a dot file.[timestepHostRelative](default0.1d0) — The maximum allowed relative timestep for node evolution relative to the time of the host halo.[timestepHostAbsolute](default1.0d0) — The maximum allowed absolute timestep (in Gyr) for node evolution relative to the time of the host halo.[fractionTimestepSatelliteMinimum](default0.0d0) — The minimum fraction of the timestep imposed by the “satellite in host” criterion to evolve over. If the timestep allowed is smaller than this fraction, the actual timestep will be reduced to zero. This avoids forcing satellites to take a large number of very small timesteps, and instead defers evolving a satellite until a large timestep can be taken.[backtrackToSatellites](default.false.) — If true, after successfully evolving a node with satellites, revisit the satellites and attempt to evolve them again.[profileSteps](default.false.) — Specifies whether or not to profile the ODE evolver.[outputsGroupName](defaultvar_str('Outputs')) — The name of the HDF5 group to which outputs will be written.[outputReferences](default.false.) — Specifies whether or not references to individual merger tree datasets should be output.[xAxisLabel](defaultvar_str('x')) — Axis label for the property (x-axis) of the output analysis.[yAxisLabel](defaultvar_str('y')) — Axis label for the function value (y-axis) of the output analysis.[targetLabel](defaultvar_str('')) — Label identifying the comparison/target dataset, if any.[xAxisIsLog](default.false.) — Whether the x-axis should be displayed on a logarithmic scale.[yAxisIsLog](default.false.) — Whether the y-axis should be displayed on a logarithmic scale.[valueTarget]— Target dataset values to compare against, one per bin of the output analysis.[covarianceTarget]— Target-dataset covariance matrix corresponding to thevalueTargetarray.[initialMassForSupernovaeTypeII](default8.0d0) — The minimum mass that a star must have in order that is result in a Type II supernova.[supernovaEnergy](default1.0d51) — The canonical energy released per supernova event (in ergs), used to compute the total mechanical energy input from the supernova population; the default value of \(10^{51}\) erg corresponds to the standard core-collapse supernova energy.[efficiency](default0.1d0) — Specifies the efficiency with which outflowing gas is stripped from the hot halo, following the prescription of Font et al. (2008; i.e. this is the parameter \(\epsilon_\mathrm{strip}\) in their eqn. 6).