From 1dafc37fef7d806fcf81f0e7dcd26c580edc00d8 Mon Sep 17 00:00:00 2001 From: Boris Martin <boris.martin.be@gmail.com> Date: Tue, 28 Mar 2023 16:50:49 +0200 Subject: [PATCH] L2 distance can now compute best model fit --- specific/data/objective/l2distance.cpp | 16 +++++++++++++++- specific/data/objective/l2distance.h | 2 ++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/specific/data/objective/l2distance.cpp b/specific/data/objective/l2distance.cpp index e4f7a88..b100dca 100644 --- a/specific/data/objective/l2distance.cpp +++ b/specific/data/objective/l2distance.cpp @@ -45,7 +45,21 @@ namespace l2distance } return _v; } + + template <Physic T_Physic> + std::vector < std::vector < std::complex<double>>> Objective<T_Physic>::improvedShotIntensity(const Data<T_Physic> &d1) const + { + throw Exception("Shot fitting only works in Physic::acoustic so far"); + //return leastSquareShotIntensity(d1, d0); + } + + template <> + std::vector<std::vector<std::complex<double>>> Objective<Physic::acoustic>::improvedShotIntensity(const Data<Physic::acoustic> &d1) const + { + return leastSquareShotIntensity(d1, d0); + } + template class Objective<Physic::acoustic>; template class Objective<Physic::electromagnetic>; template class Objective<Physic::elastodynamic>; -} +} \ No newline at end of file diff --git a/specific/data/objective/l2distance.h b/specific/data/objective/l2distance.h index 5015743..d066f0e 100644 --- a/specific/data/objective/l2distance.h +++ b/specific/data/objective/l2distance.h @@ -32,6 +32,8 @@ namespace l2distance virtual double performance(const Data<T_Physic>& d); virtual const Data<T_Physic>& update(Type type, const DataStateEvaluator<T_Physic>& ds); + + std::vector<std::vector<std::complex<double>>> improvedShotIntensity(const Data<T_Physic>& d) const; }; }; -- GitLab