]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PYTHIA6/AliPythia6.cxx
should have been committed with prev rev.62228
[u/mrichter/AliRoot.git] / PYTHIA6 / AliPythia6.cxx
index fd2691245fe0d232f9dabdf72d394c15219144f5..998a203a952c58d5b49b916dd96c0fc1a5f1d931 100644 (file)
@@ -31,18 +31,23 @@ ClassImp(AliPythia6)
 # define pyclus pyclus_
 # define pycell pycell_
 # define pyshow pyshow_
+# define pyshowq pyshowq_
 # define pyrobo pyrobo_
 # define pyquen pyquen_
 # define pyevnw pyevnw_
 # define pyjoin pyjoin_
+# define qpygin0 qpygin0_
 # define type_of_call
 #else
 # define pyclus PYCLUS
 # define pycell PYCELL
+# define pyshow PYSHOW
+# define pyshowq PYSHOWQ
 # define pyrobo PYROBO
 # define pyquen PYQUEN
 # define pyevnw PYEVNW
 # define pyjoin PYJOIN
+# define qpygin0 QPYGIN0
 # define type_of_call _stdcall
 #endif
 
@@ -50,6 +55,8 @@ extern "C" void type_of_call pyjoin(Int_t &, Int_t * );
 extern "C" void type_of_call pyclus(Int_t & );
 extern "C" void type_of_call pycell(Int_t & );
 extern "C" void type_of_call pyshow(Int_t &, Int_t &, Double_t &);
+extern "C" void type_of_call pyshowq(Int_t &, Int_t &, Double_t &);
+extern "C" void type_of_call qpygin0();
 extern "C" void type_of_call pyrobo(Int_t &, Int_t &, Double_t &, Double_t &, Double_t &, Double_t &, Double_t &);
 extern "C" void type_of_call pyquen(Double_t &, Int_t &, Double_t &);
 extern "C" void type_of_call pyevnw();
@@ -107,7 +114,7 @@ AliPythia6::AliPythia6(const AliPythia6& pythia):
     pythia.Copy(*this);
 }
 
-void AliPythia6::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfunc)
+void AliPythia6::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfunc, Int_t /*tune*/)
 {
 // Initialise the process to generate 
     if (!AliPythiaRndm::GetPythiaRandom()) 
@@ -271,7 +278,7 @@ void AliPythia6::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
        SetMSUB(94,1);             // double diffraction
        SetMSUB(95,1);             // low pt production
 
-       AtlasTuning_MC09();
+       AtlasTuningMC09();
        break;
 
     case kPyMbWithDirectPhoton:
@@ -597,7 +604,10 @@ void AliPythia6::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
       // With parton showers on we are generating "Z inclusive process"
       SetMSTP(61,1); //Initial QCD & QED showers on
       SetMSTP(71,1); //Final QCD & QED showers on
-      
+      break;
+      case kPyMBRSingleDiffraction:
+      case kPyMBRDoubleDiffraction:
+      case kPyMBRCentralDiffraction:
       break;  
 
     }
@@ -693,6 +703,20 @@ void  AliPythia6::Pyjoin(Int_t& npart, Int_t *ipart)
     pyjoin(npart, ipart);
 }
 
+void  AliPythia6::Pyshowq(Int_t ip1, Int_t ip2, Double_t qmax)
+{
+//  Call qPythia showering
+//
+    pyshowq(ip1, ip2, qmax);
+}
+
+void AliPythia6::Qpygin0()
+{
+    //position of the hard scattering in the nuclear overlapping area.
+    //just for qpythia.
+    qpygin0();
+}
+
 void  AliPythia6::Pyclus(Int_t& njet)
 {
 //  Call Pythia clustering algorithm
@@ -847,7 +871,8 @@ void  AliPythia6::Quench()
 
 
        Int_t itype = (qPdg[j] == 21) ? 2 : 1;
-       Double_t eloss = fQuenchingWeights->GetELossRandomKFast(itype, int0[j], int1[j], eq[j]);
+       //      Double_t eloss = fQuenchingWeights->GetELossRandomKFast(itype, int0[j], int1[j], eq[j]);
+       Double_t eloss = fQuenchingWeights->GetELossRandomK(itype, int0[j], int1[j], eq[j]);
 
        if (TMath::Abs(yq[j]) > 2.5 || eq[j] < 10.) {
            fZQuench[j] = 0.;
@@ -1416,7 +1441,7 @@ void AliPythia6::AtlasTuning()
        SetPARP(67,1);             // Regulates Initial State Radiation
 }
 
-void AliPythia6::AtlasTuning_MC09()
+void AliPythia6::AtlasTuningMC09()
 {
     //
     // Configuration for the ATLAS tuning