Output Analysis Weight Operator¶
Class providing operators on statistical weights for on-the-fly output analysis—transformations applied to the per-galaxy weight (e.g.\(1/V_\mathrm{max}\) or merger tree weight) before accumulating it into binned statistics such as mass functions or luminosity functions. Weight operators can implement survey completeness corrections, volume corrections for non-representative samples, or reweighting by derived galaxy properties. The operator receives the current weight, the property value, its intrinsic value, the property type and quantity, and the output index.
Default implementation: outputAnalysisWeightOperatorIdentity
Methods¶
operate→double precisionOperate on the given weight.
double precision , intent(in ) :: weightValuetype (treeNode ), intent(inout) :: nodedouble precision , intent(in ) :: propertyValue , propertyValueIntrinsictype (enumerationOutputAnalysisPropertyTypeType ), intent(in ) :: propertyTypetype (enumerationOutputAnalysisPropertyQuantityType), intent(in ) :: propertyQuantityinteger (c_size_t ), intent(in ) :: outputIndex
outputAnalysisWeightOperatorCsmlgyVolume¶
An output analysis weight operator class which corrects weights for the difference in cosmological volume between true and assumed (i.e. in the observational analysis) cosmologies. Typically the observational data will have been analyzed assuming some specific set of cosmological parameters which will differ from that in the current model. Therefore, the comoving volume occupied by a population of galaxies must be adjusted to match what would be inferred if they were assessed using the same cosmological parameters as were used for the observational data. Typically, this will mean that weights are scaled in proportion to \(V_\mathrm{max} / V^\prime_\mathrm{max}\), where \(V_\mathrm{max}\) and \(V^\prime_\mathrm{max}\) are the maximum volumes within which the galaxy would have been detected in the true and assumed cosmologies respectively.
outputAnalysisWeightOperatorFilterHighPass¶
An output analysis weight operator that multiplies galaxy weights by a high-pass filter function, suppressing contributions from galaxies with properties below filterThreshold (with transition sharpness controlled by filterWidth) during statistical comparisons.
Parameters
[filterThreshold](real) — Threshold for the high-pass filter distribution operator.[filterWidth](real; default0.0d0) — The width of the filter (0 for a sharp transition; \(>0\) for a smoothed transition).
outputAnalysisWeightOperatorIdentity¶
Returns a weight of unity for every node without modification, serving as a no-op weight operator in output analysis pipelines where uniform weighting is desired.
(Default implementation)
outputAnalysisWeightOperatorNbodyMass¶
An output analysis weight operator that multiplies the galaxy weight by an integral over the N-body halo mass distribution between rangeLower and rangeUpper, accounting for the dispersion in N-body halo masses when comparing model predictions to simulation data.
Parameters
[rangeLower](real) — Lower integration limit for the nbodyMass distribution weight operator.[rangeUpper](real) — Upper integration limit for the nbodyMass distribution weight operator.[rootVariance](real) — Root variance for the normal distribution weight operator. (inherited fromoutputAnalysisWeightOperatorNormal)
outputAnalysisWeightOperatorNormal¶
An output analysis weight operator that multiplies galaxy weights by the integral of a normal distribution (with specified rootVariance) over the range [rangeLower, rangeUpper], for incorporating Gaussian selection uncertainties in statistical comparisons.
Methods
calculationReset— Reset memoized calculations.
Parameters
[rangeLower](real) — Lower integration limit for the normal distribution weight operator.[rangeUpper](real) — Upper integration limit for the normal distribution weight operator.[rootVariance](real) — Root variance for the normal distribution weight operator.
outputAnalysisWeightOperatorProperty¶
Weights each node’s contribution to an output analysis by the value of a specified node property, enabling property-weighted statistics such as mass-weighted quantities or luminosity-weighted distributions.
outputAnalysisWeightOperatorSequence¶
Applies a sequence of outputAnalysisWeightOperatorClass objects in order to a weight value, enabling construction of complex multi-step weighting schemes from composable weight operators.
Methods
prepend— Prepend an operator to a sequence of weight operators.
outputAnalysisWeightOperatorSubsampling¶
Applies a subsampling weight to each node, upweighting the nodes to preserve correct number statistics after merger tree branches have been subsampled.
Methods
samplingRate— Compute the sampling rate.