SourceXtractorPlusPlus
0.21
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
ModelFitting
src
lib
Engine
EngineValueResidual.cpp
Go to the documentation of this file.
1
23
#include "
ModelFitting/Engine/EngineValueResidual.h
"
24
25
namespace
ModelFitting
{
26
27
EngineValueResidual::~EngineValueResidual
() =
default
;
28
29
static
double
computeResidual
(
double
current
,
double
expected
,
double
weight) {
30
return
weight * (
expected
-
current
);
31
}
32
33
EngineValueResidual::EngineValueResidual
(
EngineParameter
&
parameter
,
34
double
expected_value
,
double
weight)
35
: m_residual{
computeResidual
(
parameter
.getEngineValue(),
expected_value
, weight)} {
36
parameter
.addObserver(
37
[
this
, &
parameter
,
expected_value
, weight](
double
){
38
m_residual
=
computeResidual
(
parameter
.getEngineValue(),
expected_value
, weight);
39
}
40
);
41
}
42
43
std::size_t
EngineValueResidual::numberOfResiduals
()
const
{
44
return
1;
45
}
46
47
void
EngineValueResidual::populateResidualBlock
(
IterType
output_iter
) {
48
*
output_iter
=
m_residual
;
49
}
50
51
}
// end of namespace ModelFitting
EngineValueResidual.h
ModelFitting::EngineParameter
EngineParameter are those derived from the minimization process.
Definition
EngineParameter.h:47
ModelFitting::EngineValueResidual::numberOfResiduals
std::size_t numberOfResiduals() const override
Always returns 1, as this class creates a single residual.
Definition
EngineValueResidual.cpp:43
ModelFitting::EngineValueResidual::~EngineValueResidual
virtual ~EngineValueResidual()
Destructor.
ModelFitting::EngineValueResidual::populateResidualBlock
void populateResidualBlock(IterType output_iter) override
Definition
EngineValueResidual.cpp:47
ModelFitting::EngineValueResidual::EngineValueResidual
EngineValueResidual(EngineParameter ¶meter, double expected_value, double weight=1.)
Constructs a new instance of EngineValueResidual.
Definition
EngineValueResidual.cpp:33
ModelFitting::EngineValueResidual::m_residual
double m_residual
Definition
EngineValueResidual.h:80
ModelFitting::ResidualBlockProvider::IterType
double * IterType
Definition
ResidualBlockProvider.h:45
std::function
ModelFitting
Definition
AsinhChiSquareComparator.h:30
ModelFitting::computeResidual
static double computeResidual(double current, double expected, double weight)
Definition
EngineValueResidual.cpp:29
std::size_t
Generated by
1.10.0