SourceXtractorPlusPlus  0.13
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SourceXtractor::FlexibleModelFittingTask Class Reference

#include <FlexibleModelFittingTask.h>

Inheritance diagram for SourceXtractor::FlexibleModelFittingTask:
[legend]
Collaboration diagram for SourceXtractor::FlexibleModelFittingTask:
[legend]

Public Member Functions

 FlexibleModelFittingTask (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)
 
virtual ~FlexibleModelFittingTask ()
 
virtual void computeProperties (SourceGroupInterface &group) const override
 Computes one or more properties for the SourceGroup and/or the Sources it contains. More...
 
- Public Member Functions inherited from SourceXtractor::GroupTask
virtual ~GroupTask ()=default
 Destructor. More...
 
- Public Member Functions inherited from SourceXtractor::Task
virtual ~Task ()=default
 Destructor. More...
 

Private Member Functions

bool isFrameValid (SourceGroupInterface &group, int frame_index) const
 
std::shared_ptr< VectorImage
< SeFloat > > 
createImageCopy (SourceGroupInterface &group, int frame_index) const
 
std::shared_ptr< VectorImage
< SeFloat > > 
createWeightImage (SourceGroupInterface &group, int frame_index) const
 
ModelFitting::FrameModel
< ImagePsf, std::shared_ptr
< VectorImage
< SourceXtractor::SeFloat > > > 
createFrameModel (SourceGroupInterface &group, double pixel_scale, FlexibleModelFittingParameterManager &manager, std::shared_ptr< FlexibleModelFittingFrame > frame) const
 
void createParameters () const
 
void updateCheckImages (SourceGroupInterface &group, double pixel_scale, FlexibleModelFittingParameterManager &manager) 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
 
SeFloat computeChiSquared (SourceGroupInterface &group, double pixel_scale, FlexibleModelFittingParameterManager &manager, int &total_data_points) const
 
void setDummyProperty (SourceGroupInterface &group, FlexibleModelFittingParameterManager &parameter_manager, Flags flags) const
 

Private Attributes

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

Detailed Description

Definition at line 41 of file FlexibleModelFittingTask.h.

Constructor & Destructor Documentation

SourceXtractor::FlexibleModelFittingTask::FlexibleModelFittingTask ( 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 
)

Definition at line 107 of file FlexibleModelFittingTask.cpp.

SourceXtractor::FlexibleModelFittingTask::~FlexibleModelFittingTask ( )
virtual

Definition at line 438 of file FlexibleModelFittingTask.cpp.

Member Function Documentation

SeFloat SourceXtractor::FlexibleModelFittingTask::computeChiSquared ( SourceGroupInterface group,
double  pixel_scale,
FlexibleModelFittingParameterManager manager,
int &  total_data_points 
) const
private

Definition at line 408 of file FlexibleModelFittingTask.cpp.

References computeChiSquaredForFrame(), createFrameModel(), createImageCopy(), createWeightImage(), SourceXtractor::SourceInterface::getProperty(), isFrameValid(), and m_frames.

Referenced by computeProperties().

Here is the call graph for this function:

SeFloat SourceXtractor::FlexibleModelFittingTask::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 392 of file FlexibleModelFittingTask.cpp.

References x, and y.

Referenced by computeChiSquared().

void SourceXtractor::FlexibleModelFittingTask::computeProperties ( SourceGroupInterface group) const
overridevirtual
FrameModel< ImagePsf, std::shared_ptr< VectorImage< SourceXtractor::SeFloat > > > SourceXtractor::FlexibleModelFittingTask::createFrameModel ( SourceGroupInterface group,
double  pixel_scale,
FlexibleModelFittingParameterManager manager,
std::shared_ptr< FlexibleModelFittingFrame frame 
) const
private

Definition at line 167 of file FlexibleModelFittingTask.cpp.

References SourceXtractor::SourceGroupInterface::begin(), SourceXtractor::SourceInterface::getProperty(), and std::move().

Referenced by computeChiSquared(), computeProperties(), and updateCheckImages().

Here is the call graph for this function:

std::shared_ptr< VectorImage< SeFloat > > SourceXtractor::FlexibleModelFittingTask::createImageCopy ( SourceGroupInterface group,
int  frame_index 
) const
private
void SourceXtractor::FlexibleModelFittingTask::createParameters ( ) const
private
std::shared_ptr< VectorImage< SeFloat > > SourceXtractor::FlexibleModelFittingTask::createWeightImage ( SourceGroupInterface group,
int  frame_index 
) const
private
bool SourceXtractor::FlexibleModelFittingTask::isFrameValid ( SourceGroupInterface group,
int  frame_index 
) const
private

Definition at line 117 of file FlexibleModelFittingTask.cpp.

References SourceXtractor::SourceInterface::getProperty(), and SourceXtractor::MeasurementFrameGroupRectangle::getWidth().

Referenced by computeChiSquared(), computeProperties(), and updateCheckImages().

Here is the call graph for this function:

void SourceXtractor::FlexibleModelFittingTask::setDummyProperty ( SourceGroupInterface group,
FlexibleModelFittingParameterManager parameter_manager,
Flags  flags 
) const
private

Definition at line 347 of file FlexibleModelFittingTask.cpp.

References std::dynamic_pointer_cast(), SourceXtractor::FlexibleModelFittingParameterManager::getParameter(), m_parameters, std::numeric_limits::quiet_NaN(), and ModelFitting::ManualParameter::setValue().

Referenced by computeProperties().

Here is the call graph for this function:

void SourceXtractor::FlexibleModelFittingTask::updateCheckImages ( SourceGroupInterface group,
double  pixel_scale,
FlexibleModelFittingParameterManager manager 
) const
private

Definition at line 363 of file FlexibleModelFittingTask.cpp.

References createFrameModel(), SourceXtractor::CheckImages::getInstance(), SourceXtractor::CheckImages::getModelFittingImage(), SourceXtractor::SourceInterface::getProperty(), isFrameValid(), m_frames, x, and y.

Referenced by computeProperties().

Here is the call graph for this function:

Member Data Documentation

std::vector<std::shared_ptr<FlexibleModelFittingFrame> > SourceXtractor::FlexibleModelFittingTask::m_frames
private
std::string SourceXtractor::FlexibleModelFittingTask::m_least_squares_engine
private

Definition at line 80 of file FlexibleModelFittingTask.h.

Referenced by computeProperties().

unsigned int SourceXtractor::FlexibleModelFittingTask::m_max_iterations
private

Definition at line 81 of file FlexibleModelFittingTask.h.

Referenced by computeProperties().

double SourceXtractor::FlexibleModelFittingTask::m_modified_chi_squared_scale
private

Definition at line 82 of file FlexibleModelFittingTask.h.

Referenced by computeProperties().

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

Definition at line 84 of file FlexibleModelFittingTask.h.

Referenced by computeProperties(), and setDummyProperty().

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

Definition at line 86 of file FlexibleModelFittingTask.h.

Referenced by computeProperties().

double SourceXtractor::FlexibleModelFittingTask::m_scale_factor
private

Definition at line 88 of file FlexibleModelFittingTask.h.

Referenced by computeProperties().


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