SourceXtractorPlusPlus
0.21
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
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
CircularlySymmetricModelComponent.icpp
ModelComponent.h
x
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > x
Definition
MoffatModelFittingTask.cpp:94
y
std::shared_ptr< DependentParameter< std::shared_ptr< EngineParameter > > > y
Definition
MoffatModelFittingTask.cpp:94
SersicProfile.h
SharpRegionManager.h
ModelFitting::CircularlySymmetricModelComponent
Definition
CircularlySymmetricModelComponent.h:39
ModelFitting::CircularlySymmetricModelComponent::m_sharp_manager
std::unique_ptr< SharpRegionManager > m_sharp_manager
Definition
CircularlySymmetricModelComponent.h:68
ModelFitting::CircularlySymmetricModelComponent::updateRasterizationInfo
virtual void updateRasterizationInfo(double scale, double r_max)
ModelFitting::CircularlySymmetricModelComponent::insideSharpRegion
virtual bool insideSharpRegion(double x, double y)
ModelFitting::CircularlySymmetricModelComponent::~CircularlySymmetricModelComponent
virtual ~CircularlySymmetricModelComponent()
ModelFitting::CircularlySymmetricModelComponent::getSharpSampling
virtual std::vector< ModelSample > getSharpSampling()
ModelFitting::CircularlySymmetricModelComponent::getValue
virtual double getValue(double x, double y)
ModelFitting::CircularlySymmetricModelComponent::CircularlySymmetricModelComponent
CircularlySymmetricModelComponent(std::unique_ptr< SharpRegionManager > sharp_manager, ProfileParameters &&... proj_parameters)
ModelFitting::CircularlySymmetricModelComponent::m_profile
Profile m_profile
Definition
CircularlySymmetricModelComponent.h:69
ModelFitting::ModelComponent
Definition
ModelComponent.h:37
std::function
ModelFitting
Definition
AsinhChiSquareComparator.h:30
Generated by
1.10.0