diff --git a/sm/csm/structprior/MeasurementsLikelihood.cpp b/sm/csm/structprior/MeasurementsLikelihood.cpp new file mode 100644 index 0000000000000000000000000000000000000000..545dee0c5e0b8403a8ac8a971addcfda295b7974 --- /dev/null +++ b/sm/csm/structprior/MeasurementsLikelihood.cpp @@ -0,0 +1,37 @@ +#include "MeasurementsLikelihood.h" + +MeasurementsLikelihood::MeasurementsLikelihood(int likelihood_function) +{ + function_type = likelihood_function; + + +} + +MeasurementsLikelihood::~MeasurementsLikelihood() +{ + + +} + +void MeasurementsLikelihood::ComputeLikelihoods(std::vector<double> x_vector) +{ + int n = x_vector.size(); + if (function_type == L2) + { + for (int i=0;i<n;i++) + { + //double error = + + } + + + } + + if (function_type == L1) + { + + + } + + +} diff --git a/sm/csm/structprior/MeasurementsLikelihood.h b/sm/csm/structprior/MeasurementsLikelihood.h new file mode 100644 index 0000000000000000000000000000000000000000..d663ab6cf65bd4b619501f972f189467b0dad8c0 --- /dev/null +++ b/sm/csm/structprior/MeasurementsLikelihood.h @@ -0,0 +1,35 @@ +#ifndef H_MEASUREMENTSLIKELIHOOD +#define H_MEASUREMENTSLIKELIHOOD + +#define L1 1 +#define L2 2 + +#include <csm/csm_all.h> +#include <vector> + +struct LValues{ + + double error; + double grad[]; + +}; + +class MeasurementsLikelihood +{ +public: +//constructors + MeasurementsLikelihood(int likelihood_function); + virtual ~MeasurementsLikelihood(void); + //class variables +protected: + int function_type; +public: + std::vector<LValues> values_vector; + //methods +public: + void ComputeLikelihoods(std::vector<double> x_vector); + + +}; + +#endif