SourceXtractorPlusPlus 0.21
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
SourceXtractor::FlexibleModelFittingIterativeTask Class Reference

#include <FlexibleModelFittingIterativeTask.h>

Inheritance diagram for SourceXtractor::FlexibleModelFittingIterativeTask:
Inheritance graph
[legend]
Collaboration diagram for SourceXtractor::FlexibleModelFittingIterativeTask:
Collaboration graph
[legend]

Classes

struct  FittingState
 
struct  SourceState
 

Public Member Functions

 FlexibleModelFittingIterativeTask (const std::string &least_squares_engine, unsigned int max_iterations, double modified_chi_squared_scale, std::vector< std::shared_ptr< FlexibleModelFittingParameter > > parameters, std::vector< std::shared_ptr< FlexibleModelFittingFrame > > frames, std::vector< std::shared_ptr< FlexibleModelFittingPrior > > priors, double scale_factor=1.0, int meta_iterations=3, double deblend_factor=1.0, double meta_iteration_stop=0.0001, size_t max_fit_size=100)
 
virtual ~FlexibleModelFittingIterativeTask ()
 
void computeProperties (SourceGroupInterface &group) const override
 Computes one or more properties for the SourceGroup and/or the Sources it contains.
 
- Public Member Functions inherited from SourceXtractor::GroupTask
virtual ~GroupTask ()=default
 Destructor.
 
- Public Member Functions inherited from SourceXtractor::Task
virtual ~Task ()=default
 Destructor.
 

Private Member Functions

std::shared_ptr< VectorImage< SeFloat > > createDeblendImage (SourceGroupInterface &group, SourceInterface &source, int source_index, std::shared_ptr< FlexibleModelFittingFrame > frame, FittingState &state) const
 
void fitSource (SourceGroupInterface &group, SourceInterface &source, int index, FittingState &state) const
 
void updateCheckImages (SourceGroupInterface &group, double pixel_scale, FittingState &state) const
 
SeFloat computeChiSquared (SourceGroupInterface &group, SourceInterface &source, int index, double pixel_scale, FlexibleModelFittingParameterManager &manager, int &total_data_points, FittingState &state) const
 
SeFloat computeChiSquaredForFrame (std::shared_ptr< const Image< SeFloat > > image, std::shared_ptr< const Image< SeFloat > > model, std::shared_ptr< const Image< SeFloat > > weights, int &data_points) const
 
int fitSourcePrepareParameters (FlexibleModelFittingParameterManager &parameter_manager, ModelFitting::EngineParameterManager &engine_parameter_manager, SourceInterface &source, int index, FittingState &state) const
 
int fitSourcePrepareModels (FlexibleModelFittingParameterManager &parameter_manager, ModelFitting::ResidualEstimator &res_estimator, int &good_pixels, SourceGroupInterface &group, SourceInterface &source, int index, FittingState &state, double downscaling) const
 
SeFloat fitSourceComputeChiSquared (FlexibleModelFittingParameterManager &parameter_manager, SourceGroupInterface &group, SourceInterface &source, int index, FittingState &state) const
 
void fitSourceUpdateState (FlexibleModelFittingParameterManager &parameter_manager, SourceInterface &source, SeFloat avg_reduced_chi_squared, SeFloat duration, unsigned int iterations, unsigned int stop_reason, Flags flags, ModelFitting::LeastSquareSummary solution, int index, FittingState &state) const
 

Private Attributes

std::string m_least_squares_engine
 
unsigned int m_max_iterations
 
double m_modified_chi_squared_scale
 
double m_scale_factor
 
int m_meta_iterations
 
double m_deblend_factor
 
double m_meta_iteration_stop
 
size_t m_max_fit_size
 
std::vector< std::shared_ptr< FlexibleModelFittingParameter > > m_parameters
 
std::vector< std::shared_ptr< FlexibleModelFittingFrame > > m_frames
 
std::vector< std::shared_ptr< FlexibleModelFittingPrior > > m_priors
 

Detailed Description

Definition at line 38 of file FlexibleModelFittingIterativeTask.h.

Constructor & Destructor Documentation

◆ FlexibleModelFittingIterativeTask()

SourceXtractor::FlexibleModelFittingIterativeTask::FlexibleModelFittingIterativeTask ( const std::string & least_squares_engine,
unsigned int max_iterations,
double modified_chi_squared_scale,
std::vector< std::shared_ptr< FlexibleModelFittingParameter > > parameters,
std::vector< std::shared_ptr< FlexibleModelFittingFrame > > frames,
std::vector< std::shared_ptr< FlexibleModelFittingPrior > > priors,
double scale_factor = 1.0,
int meta_iterations = 3,
double deblend_factor = 1.0,
double meta_iteration_stop = 0.0001,
size_t max_fit_size = 100 )

Definition at line 49 of file FlexibleModelFittingIterativeTask.cpp.

◆ ~FlexibleModelFittingIterativeTask()

SourceXtractor::FlexibleModelFittingIterativeTask::~FlexibleModelFittingIterativeTask ( )
virtual

Definition at line 65 of file FlexibleModelFittingIterativeTask.cpp.

Member Function Documentation

◆ computeChiSquared()

SeFloat SourceXtractor::FlexibleModelFittingIterativeTask::computeChiSquared ( SourceGroupInterface & group,
SourceInterface & source,
int index,
double pixel_scale,
FlexibleModelFittingParameterManager & manager,
int & total_data_points,
FittingState & state ) const
private

Definition at line 638 of file FlexibleModelFittingIterativeTask.cpp.

References computeChiSquaredForFrame(), createDeblendImage(), m_frames, pixel_scale, x, and y.

Referenced by fitSourceComputeChiSquared().

Here is the call graph for this function:

◆ computeChiSquaredForFrame()

SeFloat SourceXtractor::FlexibleModelFittingIterativeTask::computeChiSquaredForFrame ( std::shared_ptr< const Image< SeFloat > > image,
std::shared_ptr< const Image< SeFloat > > model,
std::shared_ptr< const Image< SeFloat > > weights,
int & data_points ) const
private

Definition at line 618 of file FlexibleModelFittingIterativeTask.cpp.

References x, and y.

Referenced by computeChiSquared().

◆ computeProperties()

void SourceXtractor::FlexibleModelFittingIterativeTask::computeProperties ( SourceGroupInterface & group) const
overridevirtual

Computes one or more properties for the SourceGroup and/or the Sources it contains.

Implements SourceXtractor::GroupTask.

Definition at line 184 of file FlexibleModelFittingIterativeTask.cpp.

References std::fabs(), fitSource(), m_meta_iteration_stop, m_meta_iterations, m_parameters, std::move(), SourceXtractor::NONE, std::numeric_limits::quiet_NaN(), and updateCheckImages().

Here is the call graph for this function:

◆ createDeblendImage()

std::shared_ptr< VectorImage< SeFloat > > SourceXtractor::FlexibleModelFittingIterativeTask::createDeblendImage ( SourceGroupInterface & group,
SourceInterface & source,
int source_index,
std::shared_ptr< FlexibleModelFittingFrame > frame,
FittingState & state ) const
private

◆ fitSource()

void SourceXtractor::FlexibleModelFittingIterativeTask::fitSource ( SourceGroupInterface & group,
SourceInterface & source,
int index,
FittingState & state ) const
private

◆ fitSourceComputeChiSquared()

SeFloat SourceXtractor::FlexibleModelFittingIterativeTask::fitSourceComputeChiSquared ( FlexibleModelFittingParameterManager & parameter_manager,
SourceGroupInterface & group,
SourceInterface & source,
int index,
FittingState & state ) const
private

Definition at line 404 of file FlexibleModelFittingIterativeTask.cpp.

References computeChiSquared(), m_parameters, and pixel_scale.

Referenced by fitSource().

Here is the call graph for this function:

◆ fitSourcePrepareModels()

int SourceXtractor::FlexibleModelFittingIterativeTask::fitSourcePrepareModels ( FlexibleModelFittingParameterManager & parameter_manager,
ModelFitting::ResidualEstimator & res_estimator,
int & good_pixels,
SourceGroupInterface & group,
SourceInterface & source,
int index,
FittingState & state,
double downscaling ) const
private

◆ fitSourcePrepareParameters()

int SourceXtractor::FlexibleModelFittingIterativeTask::fitSourcePrepareParameters ( FlexibleModelFittingParameterManager & parameter_manager,
ModelFitting::EngineParameterManager & engine_parameter_manager,
SourceInterface & source,
int index,
FittingState & state ) const
private

◆ fitSourceUpdateState()

void SourceXtractor::FlexibleModelFittingIterativeTask::fitSourceUpdateState ( FlexibleModelFittingParameterManager & parameter_manager,
SourceInterface & source,
SeFloat avg_reduced_chi_squared,
SeFloat duration,
unsigned int iterations,
unsigned int stop_reason,
Flags flags,
ModelFitting::LeastSquareSummary solution,
int index,
FittingState & state ) const
private

◆ updateCheckImages()

void SourceXtractor::FlexibleModelFittingIterativeTask::updateCheckImages ( SourceGroupInterface & group,
double pixel_scale,
FittingState & state ) const
private

Member Data Documentation

◆ m_deblend_factor

double SourceXtractor::FlexibleModelFittingIterativeTask::m_deblend_factor
private

Definition at line 105 of file FlexibleModelFittingIterativeTask.h.

Referenced by fitSourcePrepareModels().

◆ m_frames

std::vector<std::shared_ptr<FlexibleModelFittingFrame> > SourceXtractor::FlexibleModelFittingIterativeTask::m_frames
private

◆ m_least_squares_engine

std::string SourceXtractor::FlexibleModelFittingIterativeTask::m_least_squares_engine
private

Definition at line 100 of file FlexibleModelFittingIterativeTask.h.

Referenced by fitSource().

◆ m_max_fit_size

size_t SourceXtractor::FlexibleModelFittingIterativeTask::m_max_fit_size
private

Definition at line 107 of file FlexibleModelFittingIterativeTask.h.

Referenced by fitSource().

◆ m_max_iterations

unsigned int SourceXtractor::FlexibleModelFittingIterativeTask::m_max_iterations
private

Definition at line 101 of file FlexibleModelFittingIterativeTask.h.

Referenced by fitSource().

◆ m_meta_iteration_stop

double SourceXtractor::FlexibleModelFittingIterativeTask::m_meta_iteration_stop
private

Definition at line 106 of file FlexibleModelFittingIterativeTask.h.

Referenced by computeProperties().

◆ m_meta_iterations

int SourceXtractor::FlexibleModelFittingIterativeTask::m_meta_iterations
private

Definition at line 104 of file FlexibleModelFittingIterativeTask.h.

Referenced by computeProperties().

◆ m_modified_chi_squared_scale

double SourceXtractor::FlexibleModelFittingIterativeTask::m_modified_chi_squared_scale
private

Definition at line 102 of file FlexibleModelFittingIterativeTask.h.

Referenced by fitSourcePrepareModels().

◆ m_parameters

std::vector<std::shared_ptr<FlexibleModelFittingParameter> > SourceXtractor::FlexibleModelFittingIterativeTask::m_parameters
private

◆ m_priors

std::vector<std::shared_ptr<FlexibleModelFittingPrior> > SourceXtractor::FlexibleModelFittingIterativeTask::m_priors
private

Definition at line 111 of file FlexibleModelFittingIterativeTask.h.

Referenced by fitSource().

◆ m_scale_factor

double SourceXtractor::FlexibleModelFittingIterativeTask::m_scale_factor
private

Definition at line 103 of file FlexibleModelFittingIterativeTask.h.

Referenced by fitSource().


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