From 996145289a9110f85964e0c3b63523de16f62765 Mon Sep 17 00:00:00 2001
From: Morfouace <pierre.morfouace@cea.fr>
Date: Wed, 4 Dec 2024 09:35:27 +0100
Subject: [PATCH] Updating NPReaction for GEFReader

---
 NPLib/Physics/NPReaction.cxx          |  4 +--
 NPLib/Physics/NPReaction.h            |  2 +-
 NPSimulation/Detectors/PISTA/PISTA.cc | 36 +++++++++++++--------------
 3 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/NPLib/Physics/NPReaction.cxx b/NPLib/Physics/NPReaction.cxx
index 6f890404c..70f0206a1 100644
--- a/NPLib/Physics/NPReaction.cxx
+++ b/NPLib/Physics/NPReaction.cxx
@@ -639,10 +639,10 @@ void Reaction::initializePrecomputeVariable() {
 }
 
 ////////////////////////////////////////////////////////////////////////////////////////////
-void Reaction::SetParticle3(double EnergyLab, double ThetaLab) {
+void Reaction::SetParticle3(double EnergyLab, double ThetaLab, double PhiLab) {
   double p3 = sqrt(pow(EnergyLab, 2) + 2 * m3 * EnergyLab);
 
-  fEnergyImpulsionLab_3 = TLorentzVector(p3 * sin(ThetaLab), 0, p3 * cos(ThetaLab), EnergyLab + m3);
+  fEnergyImpulsionLab_3 = TLorentzVector(p3 * sin(ThetaLab) * cos(PhiLab), p3 * sin(ThetaLab) * sin(PhiLab), p3 * cos(ThetaLab), EnergyLab + m3);
   fEnergyImpulsionLab_4 = fTotalEnergyImpulsionLab - fEnergyImpulsionLab_3;
 
   fParticle3.SetEnergyImpulsion(fEnergyImpulsionLab_3);
diff --git a/NPLib/Physics/NPReaction.h b/NPLib/Physics/NPReaction.h
index 52037c6d0..fa43b2c6a 100644
--- a/NPLib/Physics/NPReaction.h
+++ b/NPLib/Physics/NPReaction.h
@@ -262,7 +262,7 @@ namespace NPL {
     // Check whenever the reaction is allowed at the given energy
     bool IsAllowed(double Energy);
 
-    void SetParticle3(double EnergyLab, double ThetaLab);
+    void SetParticle3(double EnergyLab, double ThetaLab, double PhiLab = 0);
 
     void SetParticle1(Beam p) { fParticle1 = p; };
     void SetParticle2(Particle p) { fParticle2 = p; };
diff --git a/NPSimulation/Detectors/PISTA/PISTA.cc b/NPSimulation/Detectors/PISTA/PISTA.cc
index 462352433..53a7faef6 100644
--- a/NPSimulation/Detectors/PISTA/PISTA.cc
+++ b/NPSimulation/Detectors/PISTA/PISTA.cc
@@ -64,26 +64,26 @@ namespace PISTA_NS{
   const double E_ResoEnergy  = 0.018*MeV ;
 
   // Trapezoid dimension PISTA1
-  //const double TrapezoidBaseLarge = 72.3*mm;
-  //const double TrapezoidBaseSmall = 41.0*mm;
-  //const double TrapezoidHeight = 57.7*mm;
-  //const double TrapezoidLength = 1*cm;
-  //const double FirstStageThickness = 300*um;
-  //const double SecondStageThickness = 1.5*mm;
-  //const double DistanceBetweenSi = 4*mm;
-  //const double FirstStageNbrOfStrips = 91;
-  //const double SecondStageNbrOfStrips = 57;
-
-  // Trapezoid dimension PISTA2
-  const double TrapezoidBaseLarge = 53*mm;
-  const double TrapezoidBaseSmall = 34.0*mm;
-  const double TrapezoidHeight = 27*mm;
+  const double TrapezoidBaseLarge = 72.3*mm;
+  const double TrapezoidBaseSmall = 41.0*mm;
+  const double TrapezoidHeight = 57.7*mm;
   const double TrapezoidLength = 1*cm;
-  const double FirstStageThickness = 0.3*mm;
+  const double FirstStageThickness = 300*um;
   const double SecondStageThickness = 1.5*mm;
-  const double DistanceBetweenSi = 3*mm;
-  const double FirstStageNbrOfStrips = 49;
-  const double SecondStageNbrOfStrips = 45;
+  const double DistanceBetweenSi = 4*mm;
+  const double FirstStageNbrOfStrips = 91;
+  const double SecondStageNbrOfStrips = 57;
+
+  // Trapezoid dimension PISTA2
+  //const double TrapezoidBaseLarge = 53*mm;
+  //const double TrapezoidBaseSmall = 34.0*mm;
+  //const double TrapezoidHeight = 27*mm;
+  //const double TrapezoidLength = 1*cm;
+  //const double FirstStageThickness = 0.3*mm;
+  //const double SecondStageThickness = 1.5*mm;
+  //const double DistanceBetweenSi = 3*mm;
+  //const double FirstStageNbrOfStrips = 49;
+  //const double SecondStageNbrOfStrips = 45;
 }
 using namespace PISTA_NS;
 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
-- 
GitLab