Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
ObsParameterMutator.h
Go to the documentation of this file.
1#ifndef OBSPARAMETERMUTATOR_H
2#define OBSPARAMETERMUTATOR_H
3
4#include "Include.h"
5#include "Math.h"
7#include "ParameterSetter.h"
8#include "ParameterShifter.h"
9
37class ObsParameterMutator: public IObsParameterMutator<ParamId, scalar_t, ParameterMode> {
38public:
44 void set(const ParamId&, scalar_t) override;
45
51 void shift(const ParamId&, scalar_t) override;
52
58 void change_mode(const ParamId&, ParameterMode) override;
59
60private:
62 ParameterSetter p_set;
63
65 ParameterShifter p_shift;
66};
67
68#endif // OBSPARAMETERMUTATOR_H
Interface for mutating parameters from the observable/business layer.
Concrete mutator that shifts parameter values.
ParameterMode
Defines the modes in which a parameter can operate.
Definition Parameter.h:45
void change_mode(const ParamId &, ParameterMode) override
Changes the “mode” of a parameter (e.g. fixed, nuisance, scan...).
void set(const ParamId &, scalar_t) override
Assigns an absolute value to a parameter.
void shift(const ParamId &, scalar_t) override
Shifts a parameter value (relative update).
Concrete mutator that directly sets the value of parameters.
Concrete mutator that shifts parameter values rather than directly setting them.
Composite identifier for a single parameter.
Definition ParamID.h:57