Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
RvgNuisanceSampler.h
Go to the documentation of this file.
1#ifndef RVG_NUISANCE_SAMPLER_H
2#define RVG_NUISANCE_SAMPLER_H
3
4#include <vector>
5#include <random>
6#include <stdexcept>
7#include <cmath>
8
9#include "INuisanceSampler.h"
10#include "JointDistribution.h"
11#include "MarginalType.h"
12#include "MarginalFactory.h"
13#include "CopulaFactory.h"
14#include "Indexing.h"
15
33public:
40 explicit RvgNuisanceSampler(const std::vector<ParamId>& ids, std::unique_ptr<JointDistribution> rvg);
41
45 std::map<ParamId, double> sample() const override;
46
50 std::vector<std::map<ParamId, double>> sample(std::size_t n) const override;
51
52private:
53 std::unique_ptr<JointDistribution> rvg_;
54 std::vector<ParamId> ids_;
55};
56
57#endif
Factory utilities for constructing copula objects from typed configurations.
Interface for nuisance-parameter random samplers.
Helpers for converting between indexed maps and dense containers.
Joint probability distribution built from marginals and a copula.
Factory for instantiating concrete marginal distributions.
Enumeration of supported one-dimensional marginal distribution types.
Abstract source of nuisance-parameter samples.
Draws nuisance-parameter maps from a JointDistribution.
std::map< ParamId, double > sample() const override
Draws one nuisance-parameter sample.