Class

NumCosmoGalaxyRedshiftFactor

Description [src]

abstract class NumCosmo.GalaxyRedshiftFactor : GObject.Object
{
  /* No available fields */
}

Abstract calculator for the galaxy joint redshift distribution.

A calculator (a plain GObject, NOT an NcmModel and NOT held in an NcmMSet) that produces the per-galaxy JOINT density $p(z_\mathrm{phot}, z \mid I)$ as a function of the true redshift $z$. The calculator never integrates $z$ itself for the likelihood: it hands out an integrand via nc_galaxy_redshift_factor_integ(), and the orchestrator (NcDataClusterWLFactor) integrates that against every other $z$-dependent factor.

Concrete schemes live as subclasses following the NcPowspecML pattern (abstract base owns the shared machinery once; each scheme owns its observed fragment, engine and sampler). The redshift schemes are NcGalaxyRedshiftFactorComposed (a NcGalaxyRedshiftPop slot convolved with a NcGalaxyRedshiftObs slot) and NcGalaxyRedshiftFactorSpline (a per-galaxy pre-tabulated $p(z)$ spline).

Ancestors

Functions

nc_galaxy_redshift_factor_clear

Decreases the reference count of gsdr by one, and sets the pointer *gsdr to NULL.

Instance methods

nc_galaxy_redshift_factor_free

Decreases the reference count of gsdr by one.

nc_galaxy_redshift_factor_gen

Generates a new galaxy redshift sample into data (draws the true redshift and the redshift observation) using the models in mset. The data object must be initialized beforehand.

nc_galaxy_redshift_factor_gen1

Attempts to generate a single redshift sample subject to the scheme’s selection/limits, storing the result in data. Used for fixed-total-count subsampling where proposals violating the constraints are discarded.

nc_galaxy_redshift_factor_get_hash
No description available.

nc_galaxy_redshift_factor_get_integ_lim

Gets the effective redshift integration support for data: the range over which the per-galaxy $p(z)$ factor is non-negligible. This is the domain used by both the fixed-node and adaptive quadratures.

nc_galaxy_redshift_factor_integ

Builds the per-galaxy joint integrand $p(z_\mathrm{phot}, z \mid I)$ as a function of the true redshift $z$, resolving the scheme’s models from mset. The calculator does not integrate $z$: the returned integrand is consumed by the orchestrator’s single $z$-integral.

nc_galaxy_redshift_factor_make_fixed_nodes

Builds the fixed integration nodes over [z_lo, z_hi] used to marginalize the true redshift.

nc_galaxy_redshift_factor_norm

Computes the normalization $\int p(z_\mathrm{phot}, z \mid I)\, \mathrm{d}z$ over the integration support (standalone/population facet, not the per-galaxy likelihood path).

nc_galaxy_redshift_factor_prepare

Factory-level prepare: validates the scheme’s models in mset and refreshes whatever it caches for efficient subsequent nc_galaxy_redshift_factor_update_data() calls.

nc_galaxy_redshift_factor_ref

Increases the reference count of gsdr by one.

nc_galaxy_redshift_factor_update_data

Unconditionally refreshes datas cached state from what the last nc_galaxy_redshift_factor_prepare() call resolved (default: no-op).

Methods inherited from GObject (43)

Please see GObject for a full list of methods.

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.

Class structure

struct NumCosmoGalaxyRedshiftFactorClass {
  void (* data_init) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset,
    NcGalaxyRedshiftFactorData* data
  );
  void (* gen) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset,
    NcGalaxyRedshiftFactorData* data,
    NcmRNG* rng
  );
  gboolean (* gen1) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset,
    NcGalaxyRedshiftFactorData* data,
    NcmRNG* rng
  );
  void (* prepare) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset
  );
  NcGalaxyRedshiftFactorIntegrand* (* integ) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset,
    gboolean use_lnp
  );
  void (* get_integ_lim) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset,
    NcGalaxyRedshiftFactorData* data,
    gdouble* z_min,
    gdouble* z_max
  );
  gdouble (* norm) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset,
    NcGalaxyRedshiftFactorData* data
  );
  NcmIntegralFixed* (* make_fixed_nodes) (
    NcGalaxyRedshiftFactor* gsdr,
    NcmMSet* mset,
    NcGalaxyRedshiftFactorData* data,
    gdouble z_lo,
    gdouble z_hi,
    guint n_nodes,
    guint rule_n
  );
  guint64 (* get_hash) (
    NcGalaxyRedshiftFactor* gsdr
  );
  void (* update_data) (
    NcGalaxyRedshiftFactor* gsdr,
    NcGalaxyRedshiftFactorData* data
  );
  
}

No description available.

Class members
data_init: void (* data_init) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset, NcGalaxyRedshiftFactorData* data )

No description available.

gen: void (* gen) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset, NcGalaxyRedshiftFactorData* data, NcmRNG* rng )

No description available.

gen1: gboolean (* gen1) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset, NcGalaxyRedshiftFactorData* data, NcmRNG* rng )

No description available.

prepare: void (* prepare) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset )

No description available.

integ: NcGalaxyRedshiftFactorIntegrand* (* integ) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset, gboolean use_lnp )

No description available.

get_integ_lim: void (* get_integ_lim) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset, NcGalaxyRedshiftFactorData* data, gdouble* z_min, gdouble* z_max )

No description available.

norm: gdouble (* norm) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset, NcGalaxyRedshiftFactorData* data )

No description available.

make_fixed_nodes: NcmIntegralFixed* (* make_fixed_nodes) ( NcGalaxyRedshiftFactor* gsdr, NcmMSet* mset, NcGalaxyRedshiftFactorData* data, gdouble z_lo, gdouble z_hi, guint n_nodes, guint rule_n )

No description available.

get_hash: guint64 (* get_hash) ( NcGalaxyRedshiftFactor* gsdr )

No description available.

update_data: void (* update_data) ( NcGalaxyRedshiftFactor* gsdr, NcGalaxyRedshiftFactorData* data )

No description available.

Virtual methods

NumCosmo.GalaxyRedshiftFactorClass.gen

Generates a new galaxy redshift sample into data (draws the true redshift and the redshift observation) using the models in mset. The data object must be initialized beforehand.

NumCosmo.GalaxyRedshiftFactorClass.gen1

Attempts to generate a single redshift sample subject to the scheme’s selection/limits, storing the result in data. Used for fixed-total-count subsampling where proposals violating the constraints are discarded.

NumCosmo.GalaxyRedshiftFactorClass.get_integ_lim

Gets the effective redshift integration support for data: the range over which the per-galaxy $p(z)$ factor is non-negligible. This is the domain used by both the fixed-node and adaptive quadratures.

NumCosmo.GalaxyRedshiftFactorClass.integ

Builds the per-galaxy joint integrand $p(z_\mathrm{phot}, z \mid I)$ as a function of the true redshift $z$, resolving the scheme’s models from mset. The calculator does not integrate $z$: the returned integrand is consumed by the orchestrator’s single $z$-integral.

NumCosmo.GalaxyRedshiftFactorClass.make_fixed_nodes

Builds the fixed integration nodes over [z_lo, z_hi] used to marginalize the true redshift.

NumCosmo.GalaxyRedshiftFactorClass.norm

Computes the normalization $\int p(z_\mathrm{phot}, z \mid I)\, \mathrm{d}z$ over the integration support (standalone/population facet, not the per-galaxy likelihood path).

NumCosmo.GalaxyRedshiftFactorClass.prepare

Factory-level prepare: validates the scheme’s models in mset and refreshes whatever it caches for efficient subsequent nc_galaxy_redshift_factor_update_data() calls.

NumCosmo.GalaxyRedshiftFactorClass.update_data

Unconditionally refreshes datas cached state from what the last nc_galaxy_redshift_factor_prepare() call resolved (default: no-op).