SourceXtractorPlusPlus
0.10
Please provide a description of the project.
ModelFitting
ModelFitting
Models
CircularlySymmetricModelComponent.h
Go to the documentation of this file.
1
23
#ifndef MODELFITTING_CIRCULARLYSYMMETRICMODELCOMPONENT_H
24
#define MODELFITTING_CIRCULARLYSYMMETRICMODELCOMPONENT_H
25
26
#include <memory>
// For std::unique_ptr
27
#include <vector>
28
#include "
ModelFitting/Models/SharpRegionManager.h
"
29
#include "
ModelFitting/Models/ModelComponent.h
"
30
#include "
ModelFitting/Models/SersicProfile.h
"
31
32
namespace
ModelFitting
{
33
38
template
<
typename
Profile>
39
class
CircularlySymmetricModelComponent
:
public
ModelComponent
{
40
41
public
:
42
52
template
<
typename
... ProfileParameters>
53
CircularlySymmetricModelComponent
(
std::unique_ptr<SharpRegionManager>
sharp_manager,
54
ProfileParameters&&... proj_parameters);
55
56
virtual
~CircularlySymmetricModelComponent
();
57
58
virtual
double
getValue
(
double
x
,
double
y
);
59
60
virtual
void
updateRasterizationInfo
(
double
scale,
double
r_max);
61
62
virtual
std::vector<ModelSample>
getSharpSampling
();
63
64
virtual
bool
insideSharpRegion
(
double
x
,
double
y
);
65
66
private
:
67
68
std::unique_ptr<SharpRegionManager>
m_sharp_manager
;
69
Profile
m_profile
;
70
71
};
// end of class CircularlySymmetricModelComponent
72
73
using
SersicModelComponent
=
CircularlySymmetricModelComponent<SersicProfile>
;
74
75
}
// end of namespace ModelFitting
76
77
#include "
_impl/CircularlySymmetricModelComponent.icpp
"
78
79
#endif
/* MODELFITTING_CIRCULARLYSYMMETRICMODELCOMPONENT_H */
80
std::vector
STL class.
CircularlySymmetricModelComponent.icpp
ModelFitting::CircularlySymmetricModelComponent::getSharpSampling
virtual std::vector< ModelSample > getSharpSampling()
ModelComponent.h
ModelFitting::ModelComponent
Definition:
ModelComponent.h:37
ModelFitting::CircularlySymmetricModelComponent::CircularlySymmetricModelComponent
CircularlySymmetricModelComponent(std::unique_ptr< SharpRegionManager > sharp_manager, ProfileParameters &&... proj_parameters)
ModelFitting::CircularlySymmetricModelComponent::getValue
virtual double getValue(double x, double y)
ModelFitting::CircularlySymmetricModelComponent::m_sharp_manager
std::unique_ptr< SharpRegionManager > m_sharp_manager
Definition:
CircularlySymmetricModelComponent.h:68
SharpRegionManager.h
ModelFitting::CircularlySymmetricModelComponent::m_profile
Profile m_profile
Definition:
CircularlySymmetricModelComponent.h:69
x
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
Definition:
MoffatModelFittingTask.cpp:93
ModelFitting::CircularlySymmetricModelComponent::insideSharpRegion
virtual bool insideSharpRegion(double x, double y)
ModelFitting::CircularlySymmetricModelComponent::~CircularlySymmetricModelComponent
virtual ~CircularlySymmetricModelComponent()
ModelFitting::CircularlySymmetricModelComponent
Definition:
CircularlySymmetricModelComponent.h:39
ModelFitting::CircularlySymmetricModelComponent::updateRasterizationInfo
virtual void updateRasterizationInfo(double scale, double r_max)
y
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
Definition:
MoffatModelFittingTask.cpp:93
SersicProfile.h
std::unique_ptr
STL class.
ModelFitting
Definition:
AsinhChiSquareComparator.h:30
Generated by
1.8.17