Class
NumCosmoDataClusterWLFactor
Description [src]
final class NumCosmo.DataClusterWLFactor : NumCosmoMath.Data
{
/* No available fields */
}
Cluster weak-lensing likelihood built on the per-galaxy Factor
calculators (NcGalaxyPositionFactor / NcGalaxyRedshiftFactor /
NcGalaxyShapeFactor).
The likelihood factor per galaxy is
$$P(\epsilon_\mathrm{obs} \mid g) = \int_{|\chi_I|<1} \mathrm{d}^2\chi_I\,
P_\mathrm{pop}(\chi_I)\, N_2\big(\epsilon_\mathrm{obs} - f_g(\chi_I);
\sigma_\mathrm{noise}^2\big),$$
combined multiplicatively with the position and joint-redshift factors and
integrated once over the source redshift $z$ — exactly
NcGalaxyRedshiftFactor‘s documented contract (“the calculator never
integrates $z$ itself; the orchestrator integrates this against every
other $z$-dependent factor”).
Supports three redshift-integral methods: LNINT (default, adaptive
log-domain 1D), FIXED_NODES (fixed Gauss-Legendre, with an optional
per-galaxy auto-nodes calibration — see
nc_data_cluster_wl_factor_set_auto_nodes()) and CUBATURE (adaptive
NcmIntegralND over the linear-domain product). All three are
mathematically exact, differing only in numerical strategy/cost, and all
three support bootstrap resampling. No OpenMP parallelism yet (including
for auto-nodes calibration, which stays serial): deferred, since it
needs per-thread duplication of the (currently prepare()-shared, mutable)
integrator/integrand state before it can be added safely — see the
class’s own git history for the planning notes. No fit-time
r_min/r_max weighting: applying it biases the mass estimate.
Design principle followed throughout: all preparation work happens in
prepare() — resolving models, refreshing each Factor’s own caches,
re-preparing the z-integrands — so m2lnL_val() and resample() only use
already-prepared state. The three Factor objects are held as direct,
construct-only references (confirmed the intended pattern: calculators
are designed to be held and shared across likelihoods); this orchestrator
never computes a Factor’s change-detection hash itself, never calls
ncm_model_state_get_pkey(), and never knows which NcmModels a given
Factor depends on — it only compares the opaque guint64 values each
Factor’s own prepare() call produces. See the three Factor classes’ own
documentation for the get_hash()/update_data() contract this relies on.
Constructors
nc_data_cluster_wl_factor_new
Creates a new NcDataClusterWLFactor holding position_factor,
redshift_factor and shape_factor (construct-only: these three
cannot be replaced after construction).
Functions
nc_data_cluster_wl_factor_clear
Decreases the reference count of dcwlf by one, and sets the pointer
dcwlf to NULL.
Instance methods
nc_data_cluster_wl_factor_eval_m2lnP_gal
Computes the per-galaxy $-2\ln P_i$ and stores them in m2lnP_gal — the
per-galaxy breakdown of the total $-2\ln L$ returned by
ncm_data_m2lnL_val(), primarily a parity-debugging diagnostic (see the
class documentation). Galaxies whose likelihood is not finite (and are
therefore skipped in the total) are left as NAN.
nc_data_cluster_wl_factor_set_auto_nodes
Sets whether to automatically select, per galaxy, the minimal fixed
Gauss-Legendre configuration reaching NcDataClusterWLFactor:node-reltol
(FIXED_NODES only).
nc_data_cluster_wl_factor_set_cut
Sets the radial cut enforced by resample()’s position rejection-sampling loop (see the class documentation: there is no fit-time weighting).
nc_data_cluster_wl_factor_set_max_total_nodes
Sets the safety ceiling on the total background node count explored by
the auto-nodes selection (see NcDataClusterWLFactor:auto-nodes).
nc_data_cluster_wl_factor_set_n_nodes
Sets the number of fixed-quadrature panels per galaxy (FIXED_NODES
only).
nc_data_cluster_wl_factor_set_node_reltol
Sets the target relative tolerance for the per-galaxy fixed-node
selection (see NcDataClusterWLFactor:auto-nodes).
nc_data_cluster_wl_factor_set_obs
Sets the observables catalog obs, triggering a structural rebuild of the
per-galaxy data cache on the next prepare() call.
nc_data_cluster_wl_factor_set_resample_flag
Sets which per-galaxy quantities resample() regenerates.
nc_data_cluster_wl_factor_set_rule_n
Sets the Gauss-Legendre rule order per fixed-quadrature panel
(FIXED_NODES only).
Properties
NumCosmo.DataClusterWLFactor:auto-nodes
Whether to automatically select, per galaxy, the minimal fixed
Gauss-Legendre configuration reaching NcDataClusterWLFactor:node-reltol
(FIXED_NODES only, ignored otherwise). When disabled (the default),
every galaxy uses the global NcDataClusterWLFactor:n-nodes /
NcDataClusterWLFactor:rule-n.
NumCosmo.DataClusterWLFactor:integ-method
Integration method for the redshift integral: LNINT, FIXED_NODES or
CUBATURE.
NumCosmo.DataClusterWLFactor:max-total-nodes
Safety ceiling on the total background node count $(n_\mathrm{nodes}-1)\,
\mathrm{rule}_n$ explored by the NcDataClusterWLFactor:auto-nodes
selection. If the tolerance is not met within this budget the best
configuration found is used and a warning is emitted.
NumCosmo.DataClusterWLFactor:n-nodes
Number of fixed-quadrature panels per galaxy under FIXED_NODES
(ignored otherwise).
NumCosmo.DataClusterWLFactor:node-reltol
Target relative tolerance for the per-galaxy fixed-node selection (see
NcDataClusterWLFactor:auto-nodes).
NumCosmo.DataClusterWLFactor:position-factor
The NcGalaxyPositionFactor calculator, held and shared across
likelihoods — construct-only, since this class tracks its identity as
fixed for the lifetime of the instance (see the class documentation).
NumCosmo.DataClusterWLFactor:r-min
Minimum radius of the weak lensing observables, enforced only in resample()’s position rejection-sampling loop — there is no fit-time weighting.
NumCosmo.DataClusterWLFactor:redshift-factor
The NcGalaxyRedshiftFactor calculator, held and shared across
likelihoods — construct-only (see :position-factor).
NumCosmo.DataClusterWLFactor:resample-flag
Flags selecting which per-galaxy quantities resample() regenerates.
NumCosmo.DataClusterWLFactor:rule-n
Gauss-Legendre rule order per fixed-quadrature panel under
FIXED_NODES (ignored otherwise).
NumCosmo.DataClusterWLFactor:shape-factor
The NcGalaxyShapeFactor calculator, held and shared across
likelihoods — construct-only (see :position-factor).
Properties inherited from NcmData (5)
NumCosmoMath.Data:bootstrap
The NcmData bootstrap object if any.
NumCosmoMath.Data:desc
Description of the data object.
NumCosmoMath.Data:init
NumCosmoMath.Data:long-desc
Description of the data object.
NumCosmoMath.Data:name
Name of the data object.
Signals
Signals inherited from GObject (1)
GObject::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.