LSST Applications g0d97872fb5+4fd969bb9d,g1653933729+34a971ddd9,g28da252d5a+072f89fe25,g2bbee38e9b+a99b0ab4cd,g2bc492864f+a99b0ab4cd,g2ca4be77d2+c0e3b27cd8,g2cdde0e794+704103fe75,g3156d2b45e+6e87dc994a,g347aa1857d+a99b0ab4cd,g35bb328faa+34a971ddd9,g3a166c0a6a+a99b0ab4cd,g3e281a1b8c+8ec26ec694,g4005a62e65+ba0306790b,g414038480c+9ed5ed841a,g569e0e2b34+cb4faa46ad,g5a97de2502+520531a62c,g717e5f8c0f+29153700a5,g7ede599f99+367733290c,g80478fca09+17051a22cc,g82479be7b0+f2f1ea0a87,g858d7b2824+29153700a5,g8b782ad322+29153700a5,g8cd86fa7b1+05420e7f7d,g9125e01d80+34a971ddd9,ga5288a1d22+e7f674aaf3,gae0086650b+34a971ddd9,gae74b0b5c6+45ef5cdc51,gb58c049af0+ace264a4f2,gc28159a63d+a99b0ab4cd,gcf0d15dbbd+8051a81198,gda6a2b7d83+8051a81198,gdaeeff99f8+7774323b41,gdf4d240d4a+34a971ddd9,ge2409df99d+cb167bac99,ge33fd446bb+29153700a5,ge79ae78c31+a99b0ab4cd,gf0baf85859+890af219f9,gf5289d68f6+9faa5c5784,w.2024.36
LSST Data Management Base Package
|
A Parametric model for the integral of a 2D distribution. More...
#include <integralmodel.h>
Public Member Functions | |
virtual double | get_integral (const Channel &channel) const =0 |
Get the value of the integral in a single Channel. | |
virtual std::vector< std::pair< ParamBaseCRef, ExtraParamFactorValues > > | get_integral_derivative_factors (const Channel &channel) const =0 |
Return the partial derivative of the model w.r.t. | |
virtual std::vector< std::reference_wrapper< const Channel > > | get_channels () const =0 |
Get the set of channels this instance is applicable for. | |
virtual ParamRefs & | get_parameters (ParamRefs ¶ms, ParamFilter *filter=nullptr) const =0 |
Add Parameter refs matching the filter to a vector, in order. | |
virtual ParamCRefs & | get_parameters_const (ParamCRefs ¶ms, ParamFilter *filter=nullptr) const =0 |
Same as get_parameters(), but for const refs. | |
ParamRefs | get_parameters_new (ParamFilter *filter=nullptr) const |
Same as get_parameters(), but returning a new vector. | |
ParamCRefs | get_parameters_const_new (ParamFilter *filter=nullptr) const |
Same as get_parameters_const(), but returning a new vector. | |
virtual std::string | repr (bool name_keywords=false, std::string_view namespace_separator=CC_NAMESPACE_SEPARATOR) const =0 |
Return a full, callable string representation of this. | |
virtual std::string | str () const =0 |
Return a brief, human-readable string representation of this. | |
Static Public Member Functions | |
static std::string_view | null_str (const std::string_view &namespace_separator) |
Static Public Attributes | |
static constexpr std::string_view | CC_NAMESPACE_SEPARATOR = "::" |
The C++ namespace separator. | |
static constexpr std::string_view | NULL_STR_GENERAL = "None" |
static constexpr std::string_view | PY_NAMESPACE_SEPARATOR = "." |
A Parametric model for the integral of a 2D distribution.
IntegralModel implementations can use as many Parameter classes as needed. The model should be efficiently differentiable in the first order, via finite differencing if analytical evaluation is not possible.
IntegralModels may have meaningful ordering of channels but must enforce uniqueness constraints where relevant.
Definition at line 23 of file integralmodel.h.
|
pure virtualinherited |
Get the set of channels this instance is applicable for.
Implemented in lsst::gauss2d::fit::Data< T, I, M >, lsst::gauss2d::fit::FractionalIntegralModel, lsst::gauss2d::fit::LinearIntegralModel, and lsst::gauss2d::fit::SersicModelIntegral.
|
pure virtual |
Get the value of the integral in a single Channel.
Implemented in lsst::gauss2d::fit::FractionalIntegralModel, lsst::gauss2d::fit::LinearIntegralModel, and lsst::gauss2d::fit::SersicModelIntegral.
|
pure virtual |
Return the partial derivative of the model w.r.t.
each metaparameter.
This is generally needed only for nonlinear Parameter instances.
channel | The Channel to return derivatives for. |
Implemented in lsst::gauss2d::fit::FractionalIntegralModel, lsst::gauss2d::fit::LinearIntegralModel, and lsst::gauss2d::fit::SersicModelIntegral.
|
pure virtualinherited |
Add Parameter refs matching the filter to a vector, in order.
params | The vector to add to. |
filter | The filter to apply to this Object's parameters. |
Implemented in lsst::gauss2d::fit::CentroidParameters, lsst::gauss2d::fit::Data< T, I, M >, lsst::gauss2d::fit::EllipticalComponent, lsst::gauss2d::fit::FractionalIntegralModel, lsst::gauss2d::fit::GaussianComponent, lsst::gauss2d::fit::GaussianParametricEllipse, lsst::gauss2d::fit::LinearIntegralModel, lsst::gauss2d::fit::Model< T, Image, Indices, Mask >, lsst::gauss2d::fit::Observation< T, I, M >, lsst::gauss2d::fit::PsfModel, lsst::gauss2d::fit::SersicMixComponent, lsst::gauss2d::fit::SersicParametricEllipse, lsst::gauss2d::fit::Source, and lsst::gauss2d::fit::SersicModelIntegral.
|
pure virtualinherited |
Same as get_parameters(), but for const refs.
Implemented in lsst::gauss2d::fit::CentroidParameters, lsst::gauss2d::fit::Data< T, I, M >, lsst::gauss2d::fit::EllipticalComponent, lsst::gauss2d::fit::FractionalIntegralModel, lsst::gauss2d::fit::GaussianComponent, lsst::gauss2d::fit::GaussianParametricEllipse, lsst::gauss2d::fit::LinearIntegralModel, lsst::gauss2d::fit::Model< T, Image, Indices, Mask >, lsst::gauss2d::fit::Observation< T, I, M >, lsst::gauss2d::fit::PsfModel, lsst::gauss2d::fit::SersicMixComponent, lsst::gauss2d::fit::SersicParametricEllipse, lsst::gauss2d::fit::Source, and lsst::gauss2d::fit::SersicModelIntegral.
|
inlineinherited |
Same as get_parameters_const(), but returning a new vector.
Definition at line 33 of file parametric.h.
|
inlineinherited |
Same as get_parameters(), but returning a new vector.
Definition at line 27 of file parametric.h.
|
inlinestaticinherited |
Definition at line 49 of file object.h.
|
pure virtualinherited |
Return a full, callable string representation of this.
name_keywords | Whether to prefix arguments with "{name}=", where name is the arg name in the header (as with keyword arguments in Python). |
namespace_separator | The string to use to delimit namespaces, i.e. :: in C++ and . in Python. |
Implemented in lsst::gauss2d::CentroidValues, lsst::gauss2d::Image< idx_type, Indices >, lsst::gauss2d::Image< t, Data >, lsst::gauss2d::Image< T, Image< T > >, lsst::gauss2d::Image< T, VectorImage< T > >, lsst::gauss2d::Image< T, C >, lsst::gauss2d::ImageArray< T, Data >, lsst::gauss2d::ImageArray< t, Data >, lsst::gauss2d::ImageArray< T, C >, lsst::gauss2d::fit::SersicEllipseData, lsst::gauss2d::fit::SersicModelIntegral, lsst::gauss2d::Centroid, lsst::gauss2d::CoordinateSystem, lsst::gauss2d::Covariance, lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::EllipseMajor, lsst::gauss2d::detail::GradientsExtra< t, Data, Indices >, lsst::gauss2d::GaussianEvaluator< T, Data, Indices >, lsst::gauss2d::GaussianIntegralValue, lsst::gauss2d::Gaussian, lsst::gauss2d::Gaussians, lsst::gauss2d::ConvolvedGaussian, lsst::gauss2d::ConvolvedGaussians, lsst::gauss2d::fit::CentroidParameters, lsst::gauss2d::fit::Channel, lsst::gauss2d::fit::Data< T, I, M >, lsst::gauss2d::fit::EllipticalComponent, lsst::gauss2d::fit::FractionalIntegralModel, lsst::gauss2d::fit::GaussianComponent, lsst::gauss2d::fit::GaussianModelIntegral, lsst::gauss2d::fit::GaussianParametricEllipse, lsst::gauss2d::fit::GaussianPrior, lsst::gauss2d::fit::LinearIntegralModel, lsst::gauss2d::fit::LinearSersicMixInterpolator, lsst::gauss2d::fit::Model< T, Image, Indices, Mask >, lsst::gauss2d::fit::Observation< T, I, M >, lsst::gauss2d::fit::ParametricGaussian1D, lsst::gauss2d::fit::PriorEvaluation, lsst::gauss2d::fit::PsfModel, lsst::gauss2d::fit::IntegralSize, lsst::gauss2d::fit::SersicMixValues, lsst::gauss2d::fit::SersicMixComponent, lsst::gauss2d::fit::SersicParametricEllipse, lsst::gauss2d::fit::ShapePriorOptions, lsst::gauss2d::fit::ShapePrior, lsst::gauss2d::fit::Source, lsst::gauss2d::CentroidData, lsst::gauss2d::EllipseData, and lsst::gauss2d::GaussianIntegral.
|
pure virtualinherited |
Return a brief, human-readable string representation of this.
Implemented in lsst::gauss2d::CentroidValues, lsst::gauss2d::Centroid, lsst::gauss2d::CoordinateSystem, lsst::gauss2d::Covariance, lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::EllipseMajor, lsst::gauss2d::detail::GradientsExtra< t, Data, Indices >, lsst::gauss2d::GaussianEvaluator< T, Data, Indices >, lsst::gauss2d::GaussianIntegralValue, lsst::gauss2d::Gaussian, lsst::gauss2d::Gaussians, lsst::gauss2d::ConvolvedGaussian, lsst::gauss2d::ConvolvedGaussians, lsst::gauss2d::Image< idx_type, Indices >, lsst::gauss2d::Image< t, Data >, lsst::gauss2d::Image< T, Image< T > >, lsst::gauss2d::Image< T, VectorImage< T > >, lsst::gauss2d::Image< T, C >, lsst::gauss2d::ImageArray< T, Data >, lsst::gauss2d::ImageArray< t, Data >, lsst::gauss2d::ImageArray< T, C >, lsst::gauss2d::fit::CentroidParameters, lsst::gauss2d::fit::Channel, lsst::gauss2d::fit::Data< T, I, M >, lsst::gauss2d::fit::EllipticalComponent, lsst::gauss2d::fit::FractionalIntegralModel, lsst::gauss2d::fit::GaussianComponent, lsst::gauss2d::fit::GaussianModelIntegral, lsst::gauss2d::fit::GaussianParametricEllipse, lsst::gauss2d::fit::GaussianPrior, lsst::gauss2d::fit::LinearIntegralModel, lsst::gauss2d::fit::LinearSersicMixInterpolator, lsst::gauss2d::fit::Model< T, Image, Indices, Mask >, lsst::gauss2d::fit::Observation< T, I, M >, lsst::gauss2d::fit::ParametricGaussian1D, lsst::gauss2d::fit::PriorEvaluation, lsst::gauss2d::fit::PsfModel, lsst::gauss2d::fit::IntegralSize, lsst::gauss2d::fit::SersicMixValues, lsst::gauss2d::fit::SersicMixComponent, lsst::gauss2d::fit::SersicParametricEllipse, lsst::gauss2d::fit::ShapePriorOptions, lsst::gauss2d::fit::ShapePrior, lsst::gauss2d::fit::Source, lsst::gauss2d::fit::SersicEllipseData, lsst::gauss2d::fit::SersicModelIntegral, lsst::gauss2d::CentroidData, lsst::gauss2d::EllipseData, and lsst::gauss2d::GaussianIntegral.
|
staticconstexprinherited |
|
staticconstexprinherited |
|
staticconstexprinherited |