SourceXtractorPlusPlus
1.0.3
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
SEImplementation
src
lib
Plugin
FlexibleModelFitting
FlexibleModelFittingPrior.cpp
Go to the documentation of this file.
1
17
/*
18
* FlexibleModelFittingPrior.cpp
19
*
20
* Created on: 2018 M11 16
21
* Author: mschefer
22
*/
23
24
#include <iostream>
25
#include <mutex>
26
27
#include "AlexandriaKernel/memory_tools.h"
28
29
#include "
ModelFitting/Parameters/ManualParameter.h
"
30
#include "
ModelFitting/Parameters/EngineParameter.h
"
31
#include "
ModelFitting/Parameters/DependentParameter.h
"
32
#include "
ModelFitting/Engine/EngineParameterManager.h
"
33
34
35
#include "
ModelFitting/Engine/WorldValueResidual.h
"
36
#include "
ModelFitting/Engine/ResidualEstimator.h
"
37
38
#include "
SEFramework/Source/SourceInterface.h
"
39
#include "
SEImplementation/Plugin/FlexibleModelFitting/FlexibleModelFittingParameter.h
"
40
#include "
SEImplementation/Plugin/FlexibleModelFitting/FlexibleModelFittingParameterManager.h
"
41
42
#include "
SEImplementation/Plugin/FlexibleModelFitting/FlexibleModelFittingPrior.h
"
43
44
namespace
SourceXtractor
{
45
46
using namespace
ModelFitting;
47
48
void
FlexibleModelFittingPrior::setupPrior
(
49
FlexibleModelFittingParameterManager
& parameter_manager,
const
SourceInterface
& source,
50
ResidualEstimator
& residual_estimator)
const
{
51
double
expected_value =
m_expected_value
(source);
52
double
weight = 1. /
m_standard_deviation
(source);
53
54
auto
prior_residual =
std::unique_ptr<WorldValueResidual>
(
55
new
WorldValueResidual
(parameter_manager.
getParameter
(source,
m_parameter
), expected_value, weight));
56
residual_estimator.
registerBlockProvider
(
std::move
(prior_residual));
57
}
58
59
}
60
DependentParameter.h
EngineParameterManager.h
EngineParameter.h
FlexibleModelFittingParameterManager.h
FlexibleModelFittingParameter.h
FlexibleModelFittingPrior.h
ManualParameter.h
ResidualEstimator.h
SourceInterface.h
WorldValueResidual.h
ModelFitting::ResidualEstimator
Provides to the LeastSquareEngine the residual values.
Definition
ResidualEstimator.h:50
ModelFitting::ResidualEstimator::registerBlockProvider
void registerBlockProvider(std::unique_ptr< ResidualBlockProvider > provider)
Registers a ResidualBlockProvider to the ResidualEstimator.
Definition
ResidualEstimator.cpp:29
ModelFitting::WorldValueResidual
ResidualBlockProvider implementation for adding a prior to a parameter world value.
Definition
WorldValueResidual.h:46
SourceXtractor::FlexibleModelFittingParameterManager
Definition
FlexibleModelFittingParameterManager.h:44
SourceXtractor::FlexibleModelFittingParameterManager::getParameter
std::shared_ptr< ModelFitting::BasicParameter > getParameter(const SourceInterface &source, std::shared_ptr< const FlexibleModelFittingParameter > parameter) const
Definition
FlexibleModelFittingParameterManager.h:52
SourceXtractor::FlexibleModelFittingPrior::m_standard_deviation
ValueFunc m_standard_deviation
Definition
FlexibleModelFittingPrior.h:54
SourceXtractor::FlexibleModelFittingPrior::m_parameter
std::shared_ptr< FlexibleModelFittingParameter > m_parameter
Definition
FlexibleModelFittingPrior.h:52
SourceXtractor::FlexibleModelFittingPrior::setupPrior
void setupPrior(FlexibleModelFittingParameterManager ¶meter_manager, const SourceInterface &source, ModelFitting::ResidualEstimator &residual_estimator) const
Definition
FlexibleModelFittingPrior.cpp:48
SourceXtractor::FlexibleModelFittingPrior::m_expected_value
ValueFunc m_expected_value
Definition
FlexibleModelFittingPrior.h:53
SourceXtractor::SourceInterface
The SourceInterface is an abstract "source" that has properties attached to it.
Definition
SourceInterface.h:46
std::move
T move(T... args)
SourceXtractor
Definition
Aperture.h:30
std::unique_ptr
Generated by
1.15.0