Output Analysis Distribution Operator

Class providing operators on distributions for on-the-fly output analysis—transformations applied to the binned histogram of galaxy properties to convert it from an ideal theoretical distribution to the distribution that would be observed. Typical operations include convolution with a Gaussian measurement error kernel (to model photometric scatter), projection effects, or survey selection functions. Implementations can operate on a scalar property value (mapping it to a smeared distribution) or on an existing distribution (convolving it with a response function).

Default implementation: outputAnalysisDistributionOperatorIdentity

Methods

operateScalardouble precision, dimension(size(propertyValueMinimum))

Map a single scalar galaxy property value to a smeared distribution across bins, applying the operator’s response function (e.g.a Gaussian measurement error kernel) to produce a probability-weighted contribution to each bin.

  • double precision , intent(in ) :: propertyValue

  • type (enumerationOutputAnalysisPropertyTypeType), intent(in ) :: propertyType

  • double precision , intent(in ), dimension(:) :: propertyValueMinimum, propertyValueMaximum

  • integer (c_size_t ), intent(in ) :: outputIndex

  • type (treeNode ), intent(inout) :: node

operateDistributiondouble precision, dimension(size(propertyValueMinimum))

Transform an existing binned distribution by applying the operator’s response function (e.g.convolution with a measurement error kernel or survey selection function), returning the modified distribution.

  • double precision , intent(in ), dimension(:) :: distribution

  • type (enumerationOutputAnalysisPropertyTypeType), intent(in ) :: propertyType

  • double precision , intent(in ), dimension(:) :: propertyValueMinimum, propertyValueMaximum

  • integer (c_size_t ), intent(in ) :: outputIndex

  • type (treeNode ), intent(inout) :: node

outputAnalysisDistributionOperatorDiskSizeInclntn

Models the effect of random disk inclination on apparent disk size measurements, smearing the intrinsic size distribution by the projection factor \(\cos(i)\) to enable comparison with observations of randomly oriented galaxies.

outputAnalysisDistributionOperatorGrvtnlLnsng

Applies gravitational lensing magnification to a specified galaxy property (luminosity or size) during output analysis, convolving with the lensing magnification distribution computed for a characteristic source size set by sizeSource.

Parameters

  • [lensedProperty] (string; one of luminosity, size; default luminosity) — The property (luminosity, or size) to be affected by gravitational lensing.

  • [sizeSource] (real; default 0.001d0) — The source size to assume for gravitational lensing calculations.

outputAnalysisDistributionOperatorIdentity

An identity (no-op) output analysis distribution operator class that returns the input scalar property as a delta-function distribution with all weight placed in the single bin containing the value, with no smearing applied.

(Default implementation)

outputAnalysisDistributionOperatorMassIncompleteness

An output analysis distribution operator class which implements the effects of incompleteness as a function of mass on the distribution.

outputAnalysisDistributionOperatorMassRatioNBody

An output analysis distribution operator that convolves a property with random errors derived from the N-body halo mass ratio distribution, integrating over parent halo masses between massParentMinimum and massParentMaximum at time timeParent.

Parameters

  • [massParentMinimum] (real) — Minimum mass of the parent halo over which to integrate.

  • [massParentMaximum] (real) — Maximum mass of the parent halo over which to integrate.

  • [timeParent] (real) — The time at which the parent halo is defined.

outputAnalysisDistributionOperatorRandomError

A random error output analysis distribution operator class. The weight of each galaxy is integrated over every bin of the histogram using a Gaussian kernel. This is an abstract class—the width of the Gaussian kernel must be provided by a concrete class.

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.

outputAnalysisDistributionOperatorRandomErrorALFLF

A random error output analysis distribution operator class providing errors in HI mass for the ALFALFA survey. To account for both observational errors and scatter in \(R_\mathrm{mol}\), the HI mass of each galaxy is modeled as a Gaussian in \(\log_{10}M_\mathrm{HI}\) when constructing the mass function. Observational random errors on HI mass, including those arising from flux density uncertainties and errors in the assumed distance to each source, are taken from Fig. 19 of Haynes et al. (2011). The magnitude of the error as a function of HI mass is fit using a functional form:

\[\sigma_\mathrm{obs} = a + \exp\left(-{\log_{10}(M_\mathrm{HI}/\mathrm{M}_\odot)-b\over c}\right),\]

where \(\sigma_\mathrm{obs}\) is the error on \(\log_{10}(M_\mathrm{HI}/\mathrm{M}_\odot)\). We find a reasonable fit using valuesfootnoteThis should not be regarded as a formal good fit. Error estimates are approximate—we have simply found a functional form that roughly describes them, along with conservative errors on the parameters of this function which are included in the priors. of \(a=\)a\(=0.100 \pm 0.010\), \(b=\)b\(=5.885 \pm 0.100\), and \(c=\)c\(=0.505 \pm 0.020\) as shown in Fig. 6. The total random error on the logarithm of each galaxy mass is given by \(\sigma^2 = \sigma_{R_\mathrm{mol}}^2+\sigma_\mathrm{obs}^2\), and is used as the width of the Gaussian kernel when applying each galaxy to the mass function histogram (as described above).

../_images/alfalfaHIMassErrorModel.png

Fig. 6 The observational random error in galaxy HI mass as a function of HI mass for the ALFALFA survey. Points show the errors reported by Haynes et al. (2011), while the line shows a simple functional form fit to these errors.

Parameters

  • [a] (real; default 0.1d0) — Parameter \(a\) in the ALFALFA HI mass error model.

  • [b] (real; default 5.885d0) — Parameter \(b\) in the ALFALFA HI mass error model.

  • [c] (real; default 0.505d0) — Parameter \(c\) in the ALFALFA HI mass error model.

outputAnalysisDistributionOperatorRandomErrorFixed

An output analysis distribution operator that convolves a property distribution with a fixed-width Gaussian random error of root variance rootVariance, modeling constant measurement scatter across all property values.

Parameters

  • [rootVariance] (real) — The root variance of the random error distribution.

outputAnalysisDistributionOperatorRandomErrorPlynml

An output analysis distribution operator that convolves a property distribution with a Gaussian random error whose width is a polynomial function of the property value, with configurable polynomial coefficients, zero-point, and minimum/maximum error clamps.

Parameters

  • [zeroPoint] (real) — The zero-point of the property value used in the polynomial random error distribution class.

  • [coefficient] (real) — The coefficients in the polynomial random error distribution class.

  • [errorMinimum] (real) — The minimum error in the polynomial random error distribution class.

  • [errorMaximum] (real) — The maximum error in the polynomial random error distribution class.

outputAnalysisDistributionOperatorRndmErrNbdyCnc

An output analysis distribution operator that applies N-body measurement errors in \(\log_{10}\) halo concentration, modeling the error as a polynomial in concentration (coefficients a) with particle-number scaling exponent b and particle mass massParticle.

Parameters

  • [a] (real) — Coefficients of the polynomial in concentration in the concentration error model.

  • [b] (real) — The exponent of particle number in the concentration error model.

  • [massParticle] (real) — The mass of the particle in the N-body simulation.

outputAnalysisDistributionOperatorRndmErrNbodyMass

Applies random measurement errors to \(\log_{10}\) N-body halo masses, modeling the scatter introduced by halo mass estimation from N-body simulations to enable fair comparison between model and observed mass functions.

outputAnalysisDistributionOperatorSequence

An output analysis distribution operator class that applies a linked list of child outputAnalysisDistributionOperatorClass objects sequentially, enabling composite transformations such as convolution with a measurement error kernel followed by a survey selection function.

Methods

  • prepend — Prepend an operator to a sequence of weight operators.

outputAnalysisDistributionOperatorSpinNBodyErrors

An output analysis distribution operator that convolves a halo spin distribution with the measurement errors arising from finite N-body particle sampling, modeling the scatter in spin parameter estimates from N-body simulations; errorTolerant controls behavior when integration tolerance failures occur.

Parameters

  • [errorTolerant] (boolean; default .false.) — If true, integration tolerance failures are tolerated (a warning is issued but calculations will continue).