pysersic.multiband

Classes

BaseMultiBandFitter

Base class for multi-band fitter, for new classes only need to add a sample_param_at_bands function specifying the linking of parameters between bands.

FitMultiBandPoly

Base class for multi-band fitter, for new classes only need to add a sample_param_at_bands function specifying the linking of parameters between bands.

FitMultiBandBSpline

Base class for multi-band fitter, for new classes only need to add a sample_param_at_bands function specifying the linking of parameters between bands.

Module Contents

class pysersic.multiband.BaseMultiBandFitter(fitter_list: List[pysersic.pysersic.FitSingle] | List[pysersic.pysersic.FitMulti], wavelengths: jax.Array, linked_params: List[str], const_params: List[str] | None = [], band_names: List[str] | None = None, linked_params_range: dict | None = {}, wv_to_save: jax.Array | None = None, rescale_unlinked_priors: bool | None = False)

Bases: pysersic.pysersic.BaseFitter

Base class for multi-band fitter, for new classes only need to add a sample_param_at_bands function specifying the linking of parameters between bands.

fitter_list
n_bands
wavelengths
param_names
wv_av
wv_range
wv_normed
wv_to_save = None
linked_params
const_params = []
unlinked_params
reparam_dict
linked_params_mean
linked_params_scale
linked_params_range
const_prior_dict
data
rms
psf
mask
loss_func
renderer
prior
abstract sample_param_at_bands(name: str) jax.Array

Function used to sample linked parameters at each band

Parameters:

name (str) – parameter name

Returns:

params_at_bands – parameter values sampled at bands

Return type:

jax.Array

build_model(return_model: bool = False) callable

build numpyro model for multi-band inference

Parameters:

return_model (bool, optional) – wether or not to save and return observed images, by default False

Returns:

numpyro model

Return type:

callable

class pysersic.multiband.FitMultiBandPoly(fitter_list: List[pysersic.pysersic.FitSingle], wavelengths: jax.Array, linked_params: List[str], const_params: List[str] | None = [], band_names: List[str] | None = None, linked_params_range: dict | None = {}, wv_to_save: jax.Array | None = None, rescale_unlinked_priors: bool | None = False, poly_order: int | None = 2)

Bases: BaseMultiBandFitter

Base class for multi-band fitter, for new classes only need to add a sample_param_at_bands function specifying the linking of parameters between bands.

poly_order = 3
restrict_func(x, hi, low)
sample_param_at_bands(name)

Function used to sample linked parameters at each band

Parameters:

name (str) – parameter name

Returns:

params_at_bands – parameter values sampled at bands

Return type:

jax.Array

class pysersic.multiband.FitMultiBandBSpline(fitter_list: List[pysersic.pysersic.FitSingle], wavelengths: jax.Array, linked_params: List[str], const_params: List[str] | None = [], band_names: List[str] | None = None, linked_params_range: dict | None = {}, wv_to_save: jax.Array | None = None, rescale_unlinked_priors: bool | None = False, N_knots: int | None = 4, spline_k: int | None = 2, pad_knots: bool | None = True)

Bases: BaseMultiBandFitter

Base class for multi-band fitter, for new classes only need to add a sample_param_at_bands function specifying the linking of parameters between bands.

N_knots = 4
spline_k = 2
dmat_bands
dmat_save
sample_param_at_bands(name)

Function used to sample linked parameters at each band

Parameters:

name (str) – parameter name

Returns:

params_at_bands – parameter values sampled at bands

Return type:

jax.Array