PRFAdapter¶
- class photutils.psf.PRFAdapter(psfmodel, *, renormalize_psf=True, flux=1, x_0=0, y_0=0, xname=None, yname=None, fluxname=None, **kwargs)[source]¶
Bases:
Fittable2DModel
A model that adapts a supplied PSF model to act as a PRF.
It integrates the PSF model over pixel “boxes”. A critical built-in assumption is that the PSF model scale and location parameters are in pixel units.
- Parameters:
- psfmodela 2D model
The model to assume as representative of the PSF.
- renormalize_psfbool
If True, the model will be integrated from -inf to inf and re-scaled so that the total integrates to 1. Note that this renormalization only occurs once, so if the total flux of
psfmodel
depends on position, this will not be correct.- xnamestr or None
The name of the
psfmodel
parameter that corresponds to the x-axis center of the PSF. If None, the model will be assumed to be centered at x=0.- ynamestr or None
The name of the
psfmodel
parameter that corresponds to the y-axis center of the PSF. If None, the model will be assumed to be centered at y=0.- fluxnamestr or None
The name of the
psfmodel
parameter that corresponds to the total flux of the star. If None, a scaling factor will be applied by thePRFAdapter
instead of modifying thepsfmodel
.
Notes
This current implementation of this class (using numerical integration for each pixel) is extremely slow, and only suited for experimentation over relatively few small regions.
Attributes Summary
Names of the parameters that describe models of this type.
Methods Summary
evaluate
(x, y, flux, x_0, y_0)The evaluation function for PRFAdapter.
Attributes Documentation
- flux = Parameter('flux', value=1.0)¶
- param_names = ('flux', 'x_0', 'y_0')¶
Names of the parameters that describe models of this type.
The parameters in this tuple are in the same order they should be passed in when initializing a model of a specific type. Some types of models, such as polynomial models, have a different number of parameters depending on some other property of the model, such as the degree.
When defining a custom model class the value of this attribute is automatically set by the
Parameter
attributes defined in the class body.
- x_0 = Parameter('x_0', value=0.0)¶
- y_0 = Parameter('y_0', value=0.0)¶
Methods Documentation