1#ifndef WITHGAUSSIANCONSTRAINTS_H
2#define WITHGAUSSIANCONSTRAINTS_H
48 WithGaussianConstraints(std::shared_ptr<ILikelihood> base, std::shared_ptr<JointDistribution> constraints_dist, std::vector<std::size_t> constrained_params);
64 double nll(
const std::vector<double>& theta)
const override;
69 std::vector<fit_app::ParameterDefinition>
get_param_defs()
const override;
74 std::size_t
dim()
const override;
77 std::shared_ptr<ILikelihood> base;
78 std::shared_ptr<JointDistribution> constraints_dist;
79 std::vector<std::size_t> constrained_params;
Abstract interface for likelihood functions used by the fitting layer.
Joint probability distribution built from marginals and a copula.
Base interface for negative log-likelihood evaluators.
Decorates a likelihood with Gaussian constraints on selected parameters.
double nll(const std::vector< double > &theta) const override
Evaluates the constrained negative log-likelihood.
std::vector< fit_app::ParameterDefinition > get_param_defs() const override
Returns the metadata describing the likelihood parameters.
std::size_t dim() const override
Returns the total dimension of the parameter vector.