lsst.gauss2d.fit g199a45376c+5e234f8357
 
Loading...
Searching...
No Matches
gaussianprior.h
1#ifndef LSST_GAUSS2D_FIT_LSQPRIOR_H
2#define LSST_GAUSS2D_FIT_LSQPRIOR_H
3
4#include <memory>
5
6#include "lsst/gauss2d/object.h"
7
8#include "param_defs.h"
9#include "prior.h"
10
11namespace lsst::gauss2d::fit {
15class GaussianPrior : public Prior {
16public:
25 explicit GaussianPrior(std::shared_ptr<const ParamBase> param, double mean, double stddev,
26 bool transformed);
28
29 PriorEvaluation evaluate(bool calc_jacobians = false, bool normalize_loglike = false) const override;
30
31 const ParamBase& get_param() const;
32
33 std::vector<double> get_loglike_const_terms() const override;
34 double get_mean() const;
35 double get_stddev() const;
36 bool get_transformed() const;
37
38 void set_mean(double mean);
39 void set_stddev(double stddev);
40 void set_transformed(bool transformed);
41
42 size_t size() const override;
43
44 std::string repr(bool name_keywords = false,
45 std::string_view namespace_separator = Object::CC_NAMESPACE_SEPARATOR) const override;
46 std::string str() const override;
47
48private:
49 std::shared_ptr<const ParamBase> _param;
50 double _mean;
51 double _stddev;
52 bool _transformed;
53};
54} // namespace lsst::gauss2d::fit
55
56#endif
PriorEvaluation evaluate(bool calc_jacobians=false, bool normalize_loglike=false) const override
Definition gaussianprior.cc:48
GaussianPrior(std::shared_ptr< const ParamBase > param, double mean, double stddev, bool transformed)
Definition gaussianprior.cc:33
std::vector< double > get_loglike_const_terms() const override
Return the constant terms of the log likelihood (dependent on stddevs only)
Definition gaussianprior.cc:66
Definition prior.h:38