SourceXtractorPlusPlus 1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
ModelFitting::CompactExponentialModel< ImageType > Class Template Reference

#include <CompactExponentialModel.h>

Inheritance diagram for ModelFitting::CompactExponentialModel< ImageType >:
Collaboration diagram for ModelFitting::CompactExponentialModel< ImageType >:

Classes

struct  ExponentialModelEvaluator

Public Member Functions

 CompactExponentialModel (double sharp_radius, std::shared_ptr< BasicParameter > i0, std::shared_ptr< BasicParameter > k, std::shared_ptr< BasicParameter > x_scale, std::shared_ptr< BasicParameter > y_scale, std::shared_ptr< BasicParameter > rotation, double width, double height, std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y, std::shared_ptr< BasicParameter > flux, std::tuple< double, double, double, double > transform)
virtual ~CompactExponentialModel ()=default
double getValue (double x, double y) const override
ImageType getRasterizedImage (double pixel_scale, std::size_t size_x, std::size_t size_y) const override
Public Member Functions inherited from ModelFitting::CompactModelBase< ImageType >
 CompactModelBase (std::shared_ptr< BasicParameter > x_scale, std::shared_ptr< BasicParameter > y_scale, std::shared_ptr< BasicParameter > rotation, double width, double height, std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y, std::tuple< double, double, double, double > transform)
virtual ~CompactModelBase ()=default
Public Member Functions inherited from ModelFitting::ExtendedModel< ImageType >
 ExtendedModel (std::vector< std::unique_ptr< ModelComponent > > &&component_list, std::shared_ptr< BasicParameter > x_scale, std::shared_ptr< BasicParameter > y_scale, std::shared_ptr< BasicParameter > rotation_angle, double width, double height, std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y)
 ExtendedModel (ExtendedModel &&)=default
virtual ~ExtendedModel ()=default
double getWidth () const
double getHeight () const
Public Member Functions inherited from ModelFitting::PositionedModel
 PositionedModel (std::shared_ptr< BasicParameter > x, std::shared_ptr< BasicParameter > y)
 PositionedModel (PositionedModel &&other)
virtual ~PositionedModel ()=default
double getX () const
double getY () const

Private Attributes

float m_sharp_radius_squared
std::shared_ptr< BasicParameterm_i0
std::shared_ptr< BasicParameterm_k
std::shared_ptr< BasicParameterm_flux

Additional Inherited Members

Protected Member Functions inherited from ModelFitting::CompactModelBase< ImageType >
Mat22 getCombinedTransform (double pixel_scale) const
template<typename ModelEvaluator>
float samplePixel (const ModelEvaluator &model_eval, int x, int y, unsigned int subsampling) const
template<typename ModelEvaluator>
float sampleStochastic (const ModelEvaluator &model_eval, int x, int y, unsigned int samples=100) const
template<typename ModelEvaluator>
float adaptiveSamplePixel (const ModelEvaluator &model_eval, int x, int y, unsigned int max_subsampling, float threshold=1.1) const
double getMaxRadiusSqr (std::size_t size_x, std::size_t size_y, const Mat22 &transform) const
void renormalize (ImageType &image, double flux) const
Protected Attributes inherited from ModelFitting::CompactModelBase< ImageType >
Mat22 m_jacobian
Mat22 m_inv_jacobian
Protected Attributes inherited from ModelFitting::ExtendedModel< ImageType >
std::vector< std::unique_ptr< ModelComponent > > m_component_list {}

Detailed Description

template<typename ImageType>
class ModelFitting::CompactExponentialModel< ImageType >

Definition at line 16 of file CompactExponentialModel.h.

Constructor & Destructor Documentation

◆ CompactExponentialModel()

template<typename ImageType>
ModelFitting::CompactExponentialModel< ImageType >::CompactExponentialModel ( double sharp_radius,
std::shared_ptr< BasicParameter > i0,
std::shared_ptr< BasicParameter > k,
std::shared_ptr< BasicParameter > x_scale,
std::shared_ptr< BasicParameter > y_scale,
std::shared_ptr< BasicParameter > rotation,
double width,
double height,
std::shared_ptr< BasicParameter > x,
std::shared_ptr< BasicParameter > y,
std::shared_ptr< BasicParameter > flux,
std::tuple< double, double, double, double > transform )

Definition at line 11 of file CompactExponentialModel.icpp.

References ModelFitting::CompactModelBase< ImageType >::CompactModelBase(), m_flux, m_i0, m_k, m_sharp_radius_squared, and std::transform().

Here is the call graph for this function:

◆ ~CompactExponentialModel()

Member Function Documentation

◆ getRasterizedImage()

◆ getValue()

Member Data Documentation

◆ m_flux

template<typename ImageType>
std::shared_ptr<BasicParameter> ModelFitting::CompactExponentialModel< ImageType >::m_flux
private

Definition at line 63 of file CompactExponentialModel.h.

Referenced by CompactExponentialModel(), and getRasterizedImage().

◆ m_i0

template<typename ImageType>
std::shared_ptr<BasicParameter> ModelFitting::CompactExponentialModel< ImageType >::m_i0
private

Definition at line 61 of file CompactExponentialModel.h.

Referenced by CompactExponentialModel(), getRasterizedImage(), and getValue().

◆ m_k

template<typename ImageType>
std::shared_ptr<BasicParameter> ModelFitting::CompactExponentialModel< ImageType >::m_k
private

Definition at line 62 of file CompactExponentialModel.h.

Referenced by CompactExponentialModel(), getRasterizedImage(), and getValue().

◆ m_sharp_radius_squared

template<typename ImageType>
float ModelFitting::CompactExponentialModel< ImageType >::m_sharp_radius_squared
private

Definition at line 58 of file CompactExponentialModel.h.

Referenced by CompactExponentialModel(), and getRasterizedImage().


The documentation for this class was generated from the following files: