MultiProFitSourceFitter#

class lsst.meas.extensions.multiprofit.fit_coadd_multiband.MultiProFitSourceFitter(wcs: ~lsst.afw.geom.SkyWcs, errors_expected: dict[str, Exception] | None = None, add_missing_errors: bool = True, *, modeller: ~lsst.multiprofit.modeller.Modeller = <factory>, initializer: ~lsst.meas.extensions.multiprofit.fit_coadd_multiband.ModelInitializer = <factory>)#

Bases: CatalogSourceFitterABC

A MultiProFit source fitter.

Parameters#

wcs

A WCS solution that applies to all exposures.

errors_expected

A dictionary of exceptions that are expected to sometimes be raised during processing (e.g. for missing data) keyed by the name of the flag column used to record the failure.

add_missing_errors

Whether to add all of the standard MultiProFit errors with default column names to errors_expected, if not already present.

**kwargs

Keyword arguments to pass to the superclass constructor.

Attributes Summary

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Methods Summary

copy_centroid_errors(columns_cenx_err_copy, ...)

Copy centroid errors from an input catalog.

get_model_radec(source, cen_x, cen_y)

Return right ascension and declination values for a source.

initialize_model(model, source, catexps, ...)

Initialize a Model for a single source row.

make_CatalogExposurePsfs(catexp, config)

Make a CatalogExposurePsfs from a list of inputs and a fit config.

validate_fit_inputs(catalog_multi, catexps)

Validate inputs to self.fit.

Attributes Documentation

model_config: ClassVar[pydantic.ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'frozen': True}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Methods Documentation

copy_centroid_errors(columns_cenx_err_copy: tuple[str], columns_ceny_err_copy: tuple[str], results: Table, catalog_multi: Sequence, catexps: list[CatalogExposureSourcesABC], config_data: CatalogSourceFitterConfigData)#

Copy centroid errors from an input catalog.

This method exists to support fitting models with fixed centroids derived from an input catalog. Implementers can simply copy an existing column into the results catalog or use the data as needed; however, there is no reasonable default implementation.

Parameters#

columns_cenx_err_copy

X-axis result centroid columns to copy errors for.

columns_ceny_err_copy

Y-axis result centroid columns to copy errors for.

results

The table of fit results to copy errors into.

catalog_multi

The input multiband catalog.

catexps

The input data.

config_data

The fitter config and data.

Raises#

NotImplementedError

Raised if columns need to be copied but no implementation is available.

get_model_radec(source: Mapping[str, Any], cen_x: float, cen_y: float)#

Return right ascension and declination values for a source.

Implementing this method is necessary only when fitting data with accompanying WCS.

Parameters#

source

A mapping with fields expected to be populated in the corresponding source catalog.

cen_x

The x-axis centroid in pixel coordinates.

cen_y

The y-axis centroid in pixel coordinates.

Returns#

ra, dec

The right ascension and declination.

initialize_model(model: ModelD, source: Mapping[str, Any], catexps: list[CatalogExposureSourcesABC], config_data: CatalogSourceFitterConfigData, values_init: Mapping[ParameterD, float] | None = None, **kwargs)#

Initialize a Model for a single source row.

Parameters#

model

The model object to initialize.

source

A mapping with fields expected to be populated in the corresponding source catalog for initialization.

catexps

A list of (source and psf) catalog-exposure pairs.

config_data

Configuration settings and data for fitting and output.

values_init

Initial parameter values from the model configuration.

**kwargs

Additional keyword arguments that cannot be required for fitting.

make_CatalogExposurePsfs(catexp: CatalogExposureInputs, config: MultiProFitSourceConfig) CatalogExposurePsfs#

Make a CatalogExposurePsfs from a list of inputs and a fit config.

Parameters#

catexp

The input catalog-exposure pairs.

config

The MultiProFit source fitting config.

Returns#

catexp_psf

The resulting CatalogExposurePsfs.

validate_fit_inputs(catalog_multi: Sequence, catexps: list[CatalogExposurePsfs], config_data: CatalogSourceFitterConfigData = None, logger: Logger = None, **kwargs: Any) None#

Validate inputs to self.fit.

This method is called before any fitting is done. It may be used for any purpose, including checking that the inputs are a particular subclass of the base classes.

Parameters#

catalog_multi

A multi-band source catalog to fit a model to.

catexps

A list of (source and psf) catalog-exposure pairs.

config_data

Configuration settings and data for fitting and output.

logger

The logger. Defaults to calling _getlogger.

**kwargs

Additional keyword arguments to pass to self.modeller.