From 18424ca2e1eae26f8dfba9f6a28c32dd95048523 Mon Sep 17 00:00:00 2001
From: Felix Riehn <felix@matilda>
Date: Fri, 30 Nov 2018 11:15:10 +0000
Subject: [PATCH] added step length for proton target to sibyll process

---
 Documentation/Examples/cascade_example.cc | 12 ++++++++----
 Framework/Cascade/sibyll2.3c.h            |  1 +
 2 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/Documentation/Examples/cascade_example.cc b/Documentation/Examples/cascade_example.cc
index ac8c1f89..027ecea8 100644
--- a/Documentation/Examples/cascade_example.cc
+++ b/Documentation/Examples/cascade_example.cc
@@ -54,12 +54,16 @@ public:
      */
     // target nuclei: A < 18
     // FOR NOW: assume target is oxygen
-    int kTarget = 16;
+    int kTarget = 1;
     double beamEnergy =  p.GetEnergy() / 1_GeV; 
     std::cout << "ProcessSplit: " << "MinStep: en: " << beamEnergy << " pid:" << kBeam << std::endl;
-    double prodCrossSection,dummy;
-    
-    sib_sigma_hnuc_(kBeam, kTarget, beamEnergy, prodCrossSection, dummy );
+    double prodCrossSection,dummy,dum1,dum2,dum3,dum4;
+    double dumdif[3];
+
+    if(kTarget==1)
+      sib_sigma_hp_(kBeam, beamEnergy, dum1, dum2, prodCrossSection, dumdif,dum3, dum4 );
+    else
+      sib_sigma_hnuc_(kBeam, kTarget, beamEnergy, prodCrossSection, dummy );
     
     std::cout << "ProcessSplit: " << "MinStep: sibyll return: " << prodCrossSection << std::endl;
     CrossSectionType sig = prodCrossSection * 1_mbarn;
diff --git a/Framework/Cascade/sibyll2.3c.h b/Framework/Cascade/sibyll2.3c.h
index cd70bf50..e66f1f74 100644
--- a/Framework/Cascade/sibyll2.3c.h
+++ b/Framework/Cascade/sibyll2.3c.h
@@ -85,6 +85,7 @@ extern"C"{
   //double fpni_(double&, int&);
 
   void sib_sigma_hnuc_(int&,int&,double&,double&,double&);
+  void sib_sigma_hp_(int&,double&,double&,double&,double&,double*,double&,double&);
   
   double s_rndm_(int&);
 
-- 
GitLab