SourceXtractorPlusPlus
0.16
Please provide a description of the project.
SEImplementation
SEImplementation
Plugin
FlexibleModelFitting
FlexibleModelFitting.h
Go to the documentation of this file.
1
17
/*
18
* FlexibleModelFitting.h
19
*
20
* Created on: Sep 17, 2018
21
* Author: mschefer
22
*/
23
24
#ifndef _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTING_H_
25
#define _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTING_H_
26
27
#include <unordered_map>
28
#include <
ElementsKernel/Logging.h
>
29
30
#include "
SEUtils/Types.h
"
31
#include "
SEFramework/Property/Property.h
"
32
#include "
SEFramework/Source/SourceFlags.h
"
33
34
namespace
SourceXtractor
{
35
36
extern
Elements::Logging
model_fitting_logger
;
37
38
// FlexibleModelFitting property class to contain the results from the model fitting
39
40
class
FlexibleModelFitting
:
public
Property
{
41
public
:
42
virtual
~FlexibleModelFitting
() =
default
;
43
44
FlexibleModelFitting
(
unsigned
int
iterations,
unsigned
int
stop_reason,
45
SeFloat
chi_squared,
SeFloat
duration,
Flags
flags,
46
std::unordered_map<int, double>
parameter_values,
47
std::unordered_map<int, double>
parameter_sigmas,
48
std::vector<SeFloat>
chi_squared_per_meta,
49
std::vector<int>
iterations_per_meta,
50
int
meta_iterations) :
51
m_iterations
(iterations),
52
m_stop_reason
(stop_reason),
53
m_chi_squared
(chi_squared),
54
m_duration
(duration),
55
m_flags
(flags),
56
m_parameter_values
(parameter_values),
57
m_parameter_sigmas
(parameter_sigmas),
58
m_chi_squared_per_meta
(chi_squared_per_meta),
59
m_iterations_per_meta
(iterations_per_meta),
60
m_meta_iterations
(meta_iterations)
61
{}
62
63
unsigned
int
getIterations
()
const
{
64
return
m_iterations
;
65
}
66
67
unsigned
int
getStopReason
()
const
{
68
return
m_stop_reason
;
69
}
70
71
SeFloat
getReducedChiSquared
()
const
{
72
return
m_chi_squared
;
73
}
74
75
Flags
getFlags
()
const
{
76
return
m_flags
;
77
}
78
79
SeFloat
getParameterValue
(
int
index)
const
{
80
return
m_parameter_values
.
at
(index);
81
}
82
83
SeFloat
getParameterSigma
(
int
index)
const
{
84
return
m_parameter_sigmas
.
at
(index);
85
}
86
87
SeFloat
getDuration
()
const
{
88
return
m_duration
;
89
}
90
91
std::vector<SeFloat>
getChiSquaredPerMetaIteration
()
const
{
92
return
m_chi_squared_per_meta
;
93
}
94
95
std::vector<int>
getIterationsPerMetaIteration
()
const
{
96
return
m_iterations_per_meta
;
97
}
98
99
int
getMetaIterations
()
const
{
100
return
m_meta_iterations
;
101
}
102
103
private
:
104
unsigned
int
m_iterations
,
m_stop_reason
;
105
SeFloat
m_chi_squared
,
m_duration
;
106
Flags
m_flags
;
107
std::unordered_map<int, double>
m_parameter_values
;
108
std::unordered_map<int, double>
m_parameter_sigmas
;
109
110
std::vector<SeFloat>
m_chi_squared_per_meta
;
111
std::vector<int>
m_iterations_per_meta
;
112
int
m_meta_iterations
;
113
};
114
115
}
116
117
#endif
/* _SEIMPLEMENTATION_PLUGIN_FLEXIBLEMODELFITTING_FLEXIBLEMODELFITTING_H_ */
Logging.h
Property.h
SourceFlags.h
Types.h
std::unordered_map::at
T at(T... args)
Elements::Logging
SourceXtractor::FlexibleModelFitting
Definition:
FlexibleModelFitting.h:40
SourceXtractor::FlexibleModelFitting::m_duration
SeFloat m_duration
Definition:
FlexibleModelFitting.h:105
SourceXtractor::FlexibleModelFitting::m_iterations_per_meta
std::vector< int > m_iterations_per_meta
Definition:
FlexibleModelFitting.h:111
SourceXtractor::FlexibleModelFitting::FlexibleModelFitting
FlexibleModelFitting(unsigned int iterations, unsigned int stop_reason, SeFloat chi_squared, SeFloat duration, Flags flags, std::unordered_map< int, double > parameter_values, std::unordered_map< int, double > parameter_sigmas, std::vector< SeFloat > chi_squared_per_meta, std::vector< int > iterations_per_meta, int meta_iterations)
Definition:
FlexibleModelFitting.h:44
SourceXtractor::FlexibleModelFitting::~FlexibleModelFitting
virtual ~FlexibleModelFitting()=default
SourceXtractor::FlexibleModelFitting::m_meta_iterations
int m_meta_iterations
Definition:
FlexibleModelFitting.h:112
SourceXtractor::FlexibleModelFitting::m_stop_reason
unsigned int m_stop_reason
Definition:
FlexibleModelFitting.h:104
SourceXtractor::FlexibleModelFitting::getMetaIterations
int getMetaIterations() const
Definition:
FlexibleModelFitting.h:99
SourceXtractor::FlexibleModelFitting::m_parameter_sigmas
std::unordered_map< int, double > m_parameter_sigmas
Definition:
FlexibleModelFitting.h:108
SourceXtractor::FlexibleModelFitting::m_chi_squared
SeFloat m_chi_squared
Definition:
FlexibleModelFitting.h:105
SourceXtractor::FlexibleModelFitting::getReducedChiSquared
SeFloat getReducedChiSquared() const
Definition:
FlexibleModelFitting.h:71
SourceXtractor::FlexibleModelFitting::getDuration
SeFloat getDuration() const
Definition:
FlexibleModelFitting.h:87
SourceXtractor::FlexibleModelFitting::getIterationsPerMetaIteration
std::vector< int > getIterationsPerMetaIteration() const
Definition:
FlexibleModelFitting.h:95
SourceXtractor::FlexibleModelFitting::getChiSquaredPerMetaIteration
std::vector< SeFloat > getChiSquaredPerMetaIteration() const
Definition:
FlexibleModelFitting.h:91
SourceXtractor::FlexibleModelFitting::m_iterations
unsigned int m_iterations
Definition:
FlexibleModelFitting.h:104
SourceXtractor::FlexibleModelFitting::getParameterValue
SeFloat getParameterValue(int index) const
Definition:
FlexibleModelFitting.h:79
SourceXtractor::FlexibleModelFitting::getStopReason
unsigned int getStopReason() const
Definition:
FlexibleModelFitting.h:67
SourceXtractor::FlexibleModelFitting::m_chi_squared_per_meta
std::vector< SeFloat > m_chi_squared_per_meta
Definition:
FlexibleModelFitting.h:110
SourceXtractor::FlexibleModelFitting::getFlags
Flags getFlags() const
Definition:
FlexibleModelFitting.h:75
SourceXtractor::FlexibleModelFitting::getIterations
unsigned int getIterations() const
Definition:
FlexibleModelFitting.h:63
SourceXtractor::FlexibleModelFitting::m_flags
Flags m_flags
Definition:
FlexibleModelFitting.h:106
SourceXtractor::FlexibleModelFitting::getParameterSigma
SeFloat getParameterSigma(int index) const
Definition:
FlexibleModelFitting.h:83
SourceXtractor::FlexibleModelFitting::m_parameter_values
std::unordered_map< int, double > m_parameter_values
Definition:
FlexibleModelFitting.h:107
SourceXtractor::Property
Base class for all Properties. (has no actual content)
Definition:
Property.h:33
SourceXtractor
Definition:
Aperture.h:30
SourceXtractor::Flags
Flags
Flagging of bad sources.
Definition:
SourceFlags.h:37
SourceXtractor::SeFloat
SeFloat32 SeFloat
Definition:
Types.h:32
SourceXtractor::model_fitting_logger
Elements::Logging model_fitting_logger
Definition:
FlexibleModelFittingPlugin.cpp:33
std::unordered_map< int, double >
std::vector< SeFloat >
Generated by
1.9.1