Transferred Primordial Power Spectrum¶
Class providing the transferred primordial power spectrum \(T^2(k)P_\mathrm{prim}(k,t)\)—the product of the primordial power spectrum \(P_\mathrm{prim}(k) \propto k^{n_s}\) with the linear transfer function squared \(T^2(k)\), which encodes the suppression of power on small scales by radiation pressure before matter-radiation equality. The transferred spectrum is the starting point for computing the late-time matter power spectrum \(P(k,t) = D^2(t) T^2(k) P_\mathrm{prim}(k)\) used in the mass variance, halo mass function, and clustering predictions.
Default implementation: powerSpectrumPrimordialTransferredSimple
Methods¶
power→double precisionReturn the (unnormalized) power in the transferred primordial power spectrum at the given
wavenumber(specified in units of Mpc\(^{-1}\)).double precision, intent(in ) :: wavenumber, time
logarithmicDerivative→double precisionReturn the logarithmic derivative with respect to wavenumber of the transferred primordial power spectrum at the given
wavenumber(specified in units of Mpc\(^{-1}\)).double precision, intent(in ) :: wavenumber, time
growthIsWavenumberDependent→logicalReturn true if the growth of the power spectrum is wavenumber-dependent.
powerSpectrumPrimordialTransferredFile¶
A transferred primordial spectrum class which reads the power spectrum from file and interpolates in it. The HDF5 file containing the data should have the following structure:
HDF5 "powerSpectrum.hdf5" {
GROUP "/" {
ATTRIBUTE "description" {
DATATYPE H5T_STRING {
STRSIZE 71;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SCALAR
}
ATTRIBUTE "fileFormat" {
DATATYPE H5T_STD_I32LE
DATASPACE SCALAR
}
ATTRIBUTE "extrapolationWavenumber" {
DATATYPE H5T_STRING {
STRSIZE 11;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SCALAR
}
ATTRIBUTE "extrapolationRedshift" {
DATATYPE H5T_STRING {
STRSIZE 11;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SCALAR
}
GROUP "parameters" {
ATTRIBUTE "HubbleConstant" {
DATATYPE H5T_STRING {
STRSIZE 4;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SCALAR
}
ATTRIBUTE "OmegaBaryon" {
DATATYPE H5T_STRING {
STRSIZE 6;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SCALAR
}
ATTRIBUTE "OmegaDarkEnergy" {
DATATYPE H5T_STRING {
STRSIZE 5;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SCALAR
}
ATTRIBUTE "OmegaMatter" {
DATATYPE H5T_STRING {
STRSIZE 5;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
DATASPACE SCALAR
}
}
DATASET "wavenumber" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 1000 ) / ( 1000 ) }
}
DATASET "redshift" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ) }
}
DATASET "power" {
DATATYPE H5T_IEEE_F64LE
DATASPACE SIMPLE { ( 10 ) / ( 10 ), ( 1000 ) / ( 1000 ) }
}
}
}
The power dataset should tabulate the transferred power spectrum as a function of \((z,k)\) where \(z\) is redshift and \(k\) is wavenumber.
Methods
readFile— Read the named power spectrum file.
Parameters
[fileName](string) — The name of the file from which to read a tabulated transfer function.
powerSpectrumPrimordialTransferredSimple¶
Implements a simple transferred primordial power spectrum.
(Default implementation)
Methods
calculationReset— Reset memoized calculations.