SourceXtractorPlusPlus
0.12
Please provide a description of the project.
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SEImplementation
SEImplementation
Plugin
FlexibleModelFitting
FlexibleModelFittingTask.h
Go to the documentation of this file.
1
17
/*
18
* FlexibleModelFittingTask.h
19
*
20
* Created on: Sep 17, 2018
21
* Author: mschefer
22
*/
23
24
#ifndef _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTINGTASK_H_
25
#define _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTINGTASK_H_
26
27
#include "
ModelFitting/Models/FrameModel.h
"
28
29
#include "
SEImplementation/Image/ImagePsf.h
"
30
31
#include "
SEFramework/Image/VectorImage.h
"
32
#include "
SEFramework/Task/GroupTask.h
"
33
34
#include "
SEImplementation/Configuration/SamplingConfig.h
"
35
#include "
SEImplementation/Plugin/FlexibleModelFitting/FlexibleModelFittingParameter.h
"
36
#include "
SEImplementation/Plugin/FlexibleModelFitting/FlexibleModelFittingFrame.h
"
37
#include "
SEImplementation/Plugin/FlexibleModelFitting/FlexibleModelFittingPrior.h
"
38
39
namespace
SourceXtractor {
40
41
class
FlexibleModelFittingTask
:
public
GroupTask
{
42
43
public
:
44
FlexibleModelFittingTask
(
const
std::string
&least_squares_engine,
45
unsigned
int
max_iterations,
double
modified_chi_squared_scale,
46
std::vector
<
std::shared_ptr<FlexibleModelFittingParameter>
> parameters,
47
std::vector
<
std::shared_ptr<FlexibleModelFittingFrame>
> frames,
48
std::vector
<
std::shared_ptr<FlexibleModelFittingPrior>
> priors,
49
double
scale_factor=1.0
50
);
51
52
virtual
~FlexibleModelFittingTask
();
53
54
virtual
void
computeProperties
(
SourceGroupInterface
& group)
const override
;
55
56
private
:
57
58
bool
isFrameValid
(
SourceGroupInterface
& group,
int
frame_index)
const
;
59
60
std::shared_ptr<VectorImage<SeFloat>
>
createImageCopy
(
SourceGroupInterface
& group,
int
frame_index)
const
;
61
std::shared_ptr<VectorImage<SeFloat>
>
createWeightImage
(
SourceGroupInterface
& group,
int
frame_index)
const
;
62
63
ModelFitting::FrameModel<ImagePsf, std::shared_ptr<VectorImage<SourceXtractor::SeFloat>
>>
createFrameModel
(
64
SourceGroupInterface
& group,
65
double
pixel_scale
,
FlexibleModelFittingParameterManager
& manager,
std::shared_ptr<FlexibleModelFittingFrame>
frame)
const
;
66
67
void
createParameters
()
const
;
68
69
void
updateCheckImages
(
SourceGroupInterface
& group,
70
double
pixel_scale,
FlexibleModelFittingParameterManager
& manager)
const
;
71
72
SeFloat
computeChiSquaredForFrame
(
std::shared_ptr
<
const
Image<SeFloat>
> image,
73
std::shared_ptr
<
const
Image<SeFloat>
> model,
std::shared_ptr
<
const
Image<SeFloat>
> weights,
int
& data_points)
const
;
74
SeFloat
computeChiSquared
(
SourceGroupInterface
& group,
75
double
pixel_scale,
FlexibleModelFittingParameterManager
& manager,
int
& total_data_points)
const
;
76
77
void
setDummyProperty
(
SourceGroupInterface
& group,
FlexibleModelFittingParameterManager
& parameter_manager,
Flags
flags)
const
;
78
79
// Task configuration
80
std::string
m_least_squares_engine
;
81
unsigned
int
m_max_iterations
;
82
double
m_modified_chi_squared_scale
;
83
84
std::vector<std::shared_ptr<FlexibleModelFittingParameter>
>
m_parameters
;
85
std::vector<std::shared_ptr<FlexibleModelFittingFrame>
>
m_frames
;
86
std::vector<std::shared_ptr<FlexibleModelFittingPrior>
>
m_priors
;
87
88
double
m_scale_factor
;
89
};
90
91
}
92
93
94
95
#endif
/* _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTINGTASK_H_ */
std::shared_ptr
FlexibleModelFittingPrior.h
SourceXtractor::FlexibleModelFittingTask::updateCheckImages
void updateCheckImages(SourceGroupInterface &group, double pixel_scale, FlexibleModelFittingParameterManager &manager) const
Definition:
FlexibleModelFittingTask.cpp:363
SourceXtractor::FlexibleModelFittingTask::m_modified_chi_squared_scale
double m_modified_chi_squared_scale
Definition:
FlexibleModelFittingTask.h:82
FlexibleModelFittingFrame.h
SourceXtractor::FlexibleModelFittingTask::computeProperties
virtual void computeProperties(SourceGroupInterface &group) const override
Computes one or more properties for the SourceGroup and/or the Sources it contains.
Definition:
FlexibleModelFittingTask.cpp:209
SourceXtractor::FlexibleModelFittingTask::createWeightImage
std::shared_ptr< VectorImage< SeFloat > > createWeightImage(SourceGroupInterface &group, int frame_index) const
Definition:
FlexibleModelFittingTask.cpp:132
SourceXtractor::SeFloat
SeFloat32 SeFloat
Definition:
Types.h:32
ImagePsf.h
SourceXtractor::FlexibleModelFittingTask::m_scale_factor
double m_scale_factor
Definition:
FlexibleModelFittingTask.h:88
std::string
STL class.
SourceXtractor::FlexibleModelFittingTask::m_least_squares_engine
std::string m_least_squares_engine
Definition:
FlexibleModelFittingTask.h:80
SourceXtractor::GroupTask
A Task that acts on a SourceGroup to compute one or more properties.
Definition:
GroupTask.h:36
SourceXtractor::FlexibleModelFittingTask
Definition:
FlexibleModelFittingTask.h:41
VectorImage.h
SourceXtractor::FlexibleModelFittingParameterManager
Definition:
FlexibleModelFittingParameterManager.h:43
SourceXtractor::FlexibleModelFittingTask::computeChiSquaredForFrame
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
Definition:
FlexibleModelFittingTask.cpp:392
FlexibleModelFittingParameter.h
FrameModel.h
SourceXtractor::SourceGroupInterface
Defines the interface used to group sources.
Definition:
SourceGroupInterface.h:37
SourceXtractor::FlexibleModelFittingTask::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:
FlexibleModelFittingTask.cpp:107
SourceXtractor::FlexibleModelFittingTask::m_priors
std::vector< std::shared_ptr< FlexibleModelFittingPrior > > m_priors
Definition:
FlexibleModelFittingTask.h:86
SourceXtractor::FlexibleModelFittingTask::m_frames
std::vector< std::shared_ptr< FlexibleModelFittingFrame > > m_frames
Definition:
FlexibleModelFittingTask.h:85
SourceXtractor::FlexibleModelFittingTask::isFrameValid
bool isFrameValid(SourceGroupInterface &group, int frame_index) const
Definition:
FlexibleModelFittingTask.cpp:117
std::vector
STL class.
SourceXtractor::FlexibleModelFittingTask::computeChiSquared
SeFloat computeChiSquared(SourceGroupInterface &group, double pixel_scale, FlexibleModelFittingParameterManager &manager, int &total_data_points) const
Definition:
FlexibleModelFittingTask.cpp:408
SourceXtractor::Flags
Flags
Flagging of bad sources.
Definition:
SourceFlags.h:34
SourceXtractor::Image
Interface representing an image.
Definition:
Image.h:43
SourceXtractor::FlexibleModelFittingTask::createImageCopy
std::shared_ptr< VectorImage< SeFloat > > createImageCopy(SourceGroupInterface &group, int frame_index) const
Definition:
FlexibleModelFittingTask.cpp:122
ModelFitting::FrameModel
Definition:
FrameModel.h:125
SourceXtractor::FlexibleModelFittingTask::setDummyProperty
void setDummyProperty(SourceGroupInterface &group, FlexibleModelFittingParameterManager ¶meter_manager, Flags flags) const
Definition:
FlexibleModelFittingTask.cpp:347
SourceXtractor::FlexibleModelFittingTask::m_parameters
std::vector< std::shared_ptr< FlexibleModelFittingParameter > > m_parameters
Definition:
FlexibleModelFittingTask.h:84
SamplingConfig.h
GroupTask.h
pixel_scale
const double pixel_scale
Definition:
TestImage.cpp:75
SourceXtractor::FlexibleModelFittingTask::createParameters
void createParameters() const
SourceXtractor::FlexibleModelFittingTask::createFrameModel
ModelFitting::FrameModel< ImagePsf, std::shared_ptr< VectorImage< SourceXtractor::SeFloat > > > createFrameModel(SourceGroupInterface &group, double pixel_scale, FlexibleModelFittingParameterManager &manager, std::shared_ptr< FlexibleModelFittingFrame > frame) const
Definition:
FlexibleModelFittingTask.cpp:167
SourceXtractor::FlexibleModelFittingTask::~FlexibleModelFittingTask
virtual ~FlexibleModelFittingTask()
Definition:
FlexibleModelFittingTask.cpp:438
SourceXtractor::FlexibleModelFittingTask::m_max_iterations
unsigned int m_max_iterations
Definition:
FlexibleModelFittingTask.h:81
Generated by
1.8.5