diff --git a/NPLib/Physics/TReactionConditions.cxx b/NPLib/Physics/TReactionConditions.cxx
index cb6e9d6deade56168fa0b74af29f8093bec42c91..bd7476763a14478031e1ad82dd5a03e3b1aab34c 100644
--- a/NPLib/Physics/TReactionConditions.cxx
+++ b/NPLib/Physics/TReactionConditions.cxx
@@ -53,6 +53,7 @@ void TReactionConditions::Clear(){
     // emmitted particles
     fRC_Particle_Name.clear();
     fRC_Theta.clear();
+    fRC_Phi.clear();
     fRC_Kinetic_Energy.clear();
     fRC_Momentum_Direction_X.clear();
     fRC_Momentum_Direction_Y.clear();
diff --git a/NPLib/Physics/TReactionConditions.h b/NPLib/Physics/TReactionConditions.h
index 2a46cb1ca32368f8a6dd2157dc0c2c752a7bba80..f7ce597e719b04702a94a894217ebe7e506c2c0c 100644
--- a/NPLib/Physics/TReactionConditions.h
+++ b/NPLib/Physics/TReactionConditions.h
@@ -62,6 +62,7 @@ private:
     // emmitted particles
     vector<string> fRC_Particle_Name;
     vector<double> fRC_Theta;
+    vector<double> fRC_Phi;
     vector<double> fRC_Kinetic_Energy;
     vector<double> fRC_Momentum_Direction_X;
     vector<double> fRC_Momentum_Direction_Y;
@@ -95,6 +96,7 @@ public:
     // emmitted particles
     void SetParticleName       (const string & Particle_Name)         {fRC_Particle_Name.push_back(Particle_Name);}//!
     void SetTheta              (const double & Angle)                 {fRC_Theta.push_back(Angle);}//!
+    void SetPhi              (const double & Angle)                 {fRC_Phi.push_back(Angle);}//!
     void SetKineticEnergy      (const double & Kinetic_Energy)        {fRC_Kinetic_Energy.push_back(Kinetic_Energy);}//!
     void SetMomentumDirectionX (const double & Momentum_Direction_X)  {fRC_Momentum_Direction_X.push_back(Momentum_Direction_X);}//!
     void SetMomentumDirectionY (const double & Momentum_Direction_Y)  {fRC_Momentum_Direction_Y.push_back(Momentum_Direction_Y);}//!
@@ -121,6 +123,7 @@ public:
     int GetParticleMultiplicity()                const {return fRC_Kinetic_Energy.size();}//!
     string GetParticleName        (const int &i) const {return fRC_Particle_Name[i];}//!
     double GetTheta               (const int &i) const {return fRC_Theta[i];}//!
+    double GetPhi               (const int &i) const {return fRC_Phi[i];}//!
     double GetKineticEnergy       (const int &i) const {return fRC_Kinetic_Energy[i];}//!
     double GetMomentumDirectionX  (const int &i) const {return fRC_Momentum_Direction_X[i];}//!
     double GetMomentumDirectionY  (const int &i) const {return fRC_Momentum_Direction_Y[i];}//!
diff --git a/NPSimulation/Process/BeamReaction.cc b/NPSimulation/Process/BeamReaction.cc
index 27158ff4ecf1c7916123d31012d9cab47c6b33b2..5f4d79daa05116898f4b60d4a5ac54a9b98ad9fa 100644
--- a/NPSimulation/Process/BeamReaction.cc
+++ b/NPSimulation/Process/BeamReaction.cc
@@ -308,6 +308,10 @@ void NPS::BeamReaction::DoIt(const G4FastTrack& fastTrack,G4FastStep& fastStep)
     // Angle 3 and 4 //
     m_ReactionConditions->SetTheta(Theta3/deg);
     m_ReactionConditions->SetTheta(Theta4/deg);
+
+    m_ReactionConditions->SetPhi(phi/deg);
+    if((phi+pi)/deg > 360 ) m_ReactionConditions->SetPhi((phi-pi)/deg);
+    else m_ReactionConditions->SetPhi((phi+pi)/deg);
     // Energy 3 and 4 //
     m_ReactionConditions->SetKineticEnergy(Energy3);
     m_ReactionConditions->SetKineticEnergy(Energy4);