From 2e9e906b0c90dcc62229a4f20918f84c401aa8a8 Mon Sep 17 00:00:00 2001
From: Bertram Kopf <bertram@ep1.rub.de>
Date: Mon, 24 Mar 2025 15:29:45 +0100
Subject: [PATCH] some changes needed for PhaseSpaceIsobarLUT

---
 PwaDynamics/PhaseSpaceIsobarLUT.cc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/PwaDynamics/PhaseSpaceIsobarLUT.cc b/PwaDynamics/PhaseSpaceIsobarLUT.cc
index a4fe761c..77b45fa5 100644
--- a/PwaDynamics/PhaseSpaceIsobarLUT.cc
+++ b/PwaDynamics/PhaseSpaceIsobarLUT.cc
@@ -111,8 +111,8 @@ complex<double> PhaseSpaceIsobarLUT::ChewM(const double mass, int orbMom){
 	       << "\t cach it now!!!" << endmsg;
     //    exit(1);
     cacheFactors(mass);
-    result=_CMCache.at(massInt100keV);
-    result=conj(result); //sign must be changed on the real axis to be in agreement with the first quadrant
+    result=_CMCache.at(massInt100keV);   
+    //result=conj(result); //sign must be changed on the real axis to be in agreement with the first quadrant
   }
   return result;
 }
@@ -168,6 +168,10 @@ LUTLine PhaseSpaceIsobarLUT::readLine(int _lineOffset){
 complex<double> PhaseSpaceIsobarLUT::interpolateCM(LUTLine _P11, LUTLine _P21, LUTLine _P12, LUTLine _P22, complex<double> _s){
   double resultRe = ((_P22.requested.imag()-_s.imag())/(_P22.requested.imag()-_P11.requested.imag()))*(((_P22.requested.real()-_s.real())/(_P22.requested.real()-_P11.requested.real()))*_P11.cm.real()+((_s.real()-_P11.requested.real())/(_P22.requested.real()-_P11.requested.real()))*_P21.cm.real())+((_s.imag()-_P11.requested.imag())/(_P22.requested.imag()-_P11.requested.imag()))*(((_P22.requested.real()-_s.real())/(_P22.requested.real()-_P11.requested.real()))*_P12.cm.real()+((_s.real()-_P11.requested.real())/(_P22.requested.real()-_P11.requested.real()))*_P22.cm.real());
   double resultIm = ((_P22.requested.imag()-_s.imag())/(_P22.requested.imag()-_P11.requested.imag()))*(((_P22.requested.real()-_s.real())/(_P22.requested.real()-_P11.requested.real()))*_P11.cm.imag()+((_s.real()-_P11.requested.real())/(_P22.requested.real()-_P11.requested.real()))*_P21.cm.imag())+((_s.imag()-_P11.requested.imag())/(_P22.requested.imag()-_P11.requested.imag()))*(((_P22.requested.real()-_s.real())/(_P22.requested.real()-_P11.requested.real()))*_P12.cm.imag()+((_s.real()-_P11.requested.real())/(_P22.requested.real()-_P11.requested.real()))*_P22.cm.imag());
+
+  if(std::abs(resultRe)<1.e-12) resultRe=0.;
+  if(std::abs(resultIm)<1.e-12) resultIm=0.;
+
   complex<double> result = complex<double>(resultRe, resultIm);
   return result;
 }
-- 
GitLab