Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
ObsParameterMutator.h File Reference

High-level mutator for parameters used by the observable layer. More...

#include "Include.h"
#include "Math.h"
#include "IObsParameterMutator.h"
#include "ParameterSetter.h"
#include "ParameterShifter.h"
Include dependency graph for ObsParameterMutator.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ObsParameterMutator
 

Detailed Description

High-level mutator for parameters used by the observable layer.

This class provides a unified interface to:

  • set a parameter value absolutely (set),
  • apply a shift relative to the current value (shift),
  • switch the parameter mode (value / gaussian nuisance / flat scan, etc.) (change_mode).

It delegates the work to:

The identifier type is ParamId and the stored value type is scalar_t.

Typical usage:

mut.set(ParamId{ParameterType::SM, "MASS", 5}, 4.18);
mut.shift(ParamId{ParameterType::SM, "MASS", 5}, 0.02);
mut.change_mode(ParamId{ParameterType::SM, "MASS", 5}, ParameterMode::GAUSSIAN);
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).
Composite identifier for a single parameter.
Definition ParamID.h:57
See also
IObsParameterMutator
ParameterSetter
ParameterShifter

Definition in file ObsParameterMutator.h.