From 2a0809a22f973aecd8eafe4ce697b9ab33630b9a Mon Sep 17 00:00:00 2001
From: Anna Maria CORSI SPhN <acorsi@irfulx168.(none)>
Date: Tue, 4 Mar 2014 16:16:48 +0100
Subject: [PATCH] Fixed method to reconstruct baricenter in SiRes

---
 NPLib/SiRes/TSiResPhysics.cxx | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/NPLib/SiRes/TSiResPhysics.cxx b/NPLib/SiRes/TSiResPhysics.cxx
index 627b1b418..6fb3bf989 100644
--- a/NPLib/SiRes/TSiResPhysics.cxx
+++ b/NPLib/SiRes/TSiResPhysics.cxx
@@ -385,21 +385,20 @@ void TSiResPhysics::BuildSimplePhysicalEvent()
          {
             EnergyBack.push_back( PreTreatedData->GetEEnergyBack(i) );
          }
-     if(EventData->GetEnergyMult()==4)Treat();
+     if(PreTreatedData->GetEnergyMult()==4)Treat();
 
    }
 ///////////////////////////////////////////////////////////////////////////
 void TSiResPhysics::Treat()
    {
-      double x1=-5; double x2=5; double y1=-5; double y2=5;
       double E1=-1000; double E2=-1000; double E3=-1000; double E4=-1000; 
       for(unsigned int i = 0 ; i < EventData->GetEnergyMult() ; i++)
          {
-         	if(ChannelNumber[i]==0)E1=Energy[i];
-         	if(ChannelNumber[i]==1)E2=Energy[i];
-         	if(ChannelNumber[i]==2)E3=Energy[i];
-         	if(ChannelNumber[i]==3)E4=Energy[i];
+         	if(ChannelNumber[i]==0)E1=Energy[i];//DH
+         	if(ChannelNumber[i]==1)E2=Energy[i];//DB
+         	if(ChannelNumber[i]==2)E3=Energy[i];//GB
+         	if(ChannelNumber[i]==3)E4=Energy[i];//GH
          }
-      	x.push_back( (x1*E1+x2*E2) / (E1+E2) ) ;
-      	y.push_back( (y1*E3+y2*E4) / (E3+E4) ) ;
+      	x.push_back( 1+(E1+E2-E3-E4) / (E1+E2+E3+E4) ) ;
+      	y.push_back( 1+(E1+E4-E2-E3) / (E1+E2+E3+E4) ) ;
    }
-- 
GitLab