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

Factory for building marginal-distribution configuration objects. More...

#include <memory>
#include <variant>
#include "Include.h"
#include "MarginalType.h"
#include "IStatParameterProxy.h"
#include "GaussianMarginal.h"
#include "FlatMarginal.h"
#include "SplitGaussianMarginal.h"
#include "LikelihoodMarginal.h"
#include "ExperimentObs.h"
#include "NuisanceSpec.h"
Include dependency graph for MarginalConfigFactory.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  MarginalConfigFactory
 Builds distribution-configuration objects from parameters or observables. More...
 

Typedefs

using MarginalConfig = std::variant< FlatMarginalCfg, GaussianMarginalCfg, SplitGaussianMarginalCfg, LikelihoodMarginalCfg >
 Variant holding any supported marginal configuration object.
 

Detailed Description

Factory for building marginal-distribution configuration objects.

This header defines:

The goal of this factory is to separate:

  • extraction of numerical inputs (central values, uncertainties, etc.),
  • from actual construction of concrete distributions (handled later by DistributionFactory).

Typical workflow:

auto parameter_proxy = std::make_shared<MyStatParameterProxy>();
MarginalConfigFactory cfg_factory(parameter_proxy);
MarginalConfig cfg = cfg_factory.create(pid, MarginalType::GAUSSIAN);
@ GAUSSIAN
Symmetric Gaussian marginal.
Builds distribution-configuration objects from parameters or observables.
See also
DistributionFactory
StatParameterProxy

Definition in file MarginalConfigFactory.h.

Typedef Documentation

◆ MarginalConfig

Variant holding any supported marginal configuration object.

Variant of all supported marginal configuration objects.

The active alternative depends on the requested MarginalType and on the information available for the targeted parameter / observable.

The contained type must be compatible with the requested MarginalType.

Definition at line 51 of file MarginalConfigFactory.h.