]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PYTHIA8/AliPythia8.cxx
In fall-back ,try to ignore field query
[u/mrichter/AliRoot.git] / PYTHIA8 / AliPythia8.cxx
index 2bfe0d94183ca9cc9cc1d202450e367d1dae3ba5..9477b3e89b34874f79a024820afd3fb0b1fb38df 100644 (file)
@@ -58,9 +58,11 @@ AliPythia8::AliPythia8():
     fProcess(kPyMb),
     fEcms(0.),
     fStrucFunc(kCTEQ5L),
+    fCellJet(),
     fEtSeed(0.),
     fMinEtJet(0.),
     fRJet(0.),
+    fClusterJet(),
     fYScale(0.),
     fPtScale(0.),
     fNJetMin(0),
@@ -79,9 +81,11 @@ AliPythia8::AliPythia8(const AliPythia8& pythia):
     fProcess(kPyMb),
     fEcms(0.),
     fStrucFunc(kCTEQ5L),
+    fCellJet(),
     fEtSeed(0.),
     fMinEtJet(0.),
     fRJet(0.),
+    fClusterJet(),
     fYScale(0.),
     fPtScale(0.),
     fNJetMin(0),
@@ -91,7 +95,7 @@ AliPythia8::AliPythia8(const AliPythia8& pythia):
     pythia.Copy(*this);
 }
 
-void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfunc)
+void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfunc, Int_t tune)
 {
 // Initialise the process to generate 
     if (!AliPythiaRndm::GetPythiaRandom()) 
@@ -100,8 +104,8 @@ void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
     fProcess   = process;
     fEcms      = energy;
     fStrucFunc = strucfunc;
-//...Switch off decay of pi0, K0S, Lambda, Sigma+-, Xi0-, Omega-.
-    ReadString("111:mayDecay  = off");
+    ReadString("111:mayDecay  = on");
+//...Switch off decay of K0L, Lambda, Sigma+-, Xi0-, Omega-.
     ReadString("310:mayDecay  = off");
     ReadString("3122:mayDecay = off");
     ReadString("3112:mayDecay = off");
@@ -111,11 +115,9 @@ void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
     ReadString("3322:mayDecay = off");
     ReadString("3334:mayDecay = off");
     // Select structure function 
-
-    ReadString("PDF:useLHAPDF = on");
-    ReadString(Form("PDF:LHAPDFset = %s", AliStructFuncType::PDFsetName(fStrucFunc).Data()));
-
-    // Particles produced in string fragmentation point directly to either of the two endpoints
+          ReadString("PDF:useLHAPDF = on");
+         ReadString(Form("PDF:LHAPDFset = %s", AliStructFuncType::PDFsetName(fStrucFunc).Data()));
+      // Particles produced in string fragmentation point directly to either of the two endpoints
     // of the string (depending in the side they were generated from).
 
 //    SetMSTU(16,2); // ????
@@ -129,14 +131,14 @@ void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
 //        Multiple interactions on.
        ReadString("PartonLevel:MI = on");
 // Double Gaussian matter distribution.
-       ReadString("MultipleInteractions:bProfile = 2");
-       ReadString("MultipleInteractions:coreFraction = 0.5");
-       ReadString("MultipleInteractions:coreRadius = 0.4");
+       ReadString("MultipartonInteractions:bProfile = 2");
+       ReadString("MultipartonInteractions:coreFraction = 0.5");
+       ReadString("MultipartonInteractions:coreRadius = 0.4");
 //  pT0.
-       ReadString("MultipleInteractions:pTmin = 2.0");
+       ReadString("MultipartonInteractions:pTmin = 2.0");
 //  Reference energy for pT0 and energy rescaling pace.
-       ReadString("MultipleInteractions:ecmRef = 1800.");
-       ReadString("MultipleInteractions:ecmPow = 0.25");
+       ReadString("MultipartonInteractions:ecmRef = 1800.");
+       ReadString("MultipartonInteractions:ecmPow = 0.25");
 //  String drawing almost completely minimizes string length.
 //     SetPARP(85,0.9);
 //     SetPARP(86,0.95);
@@ -227,7 +229,7 @@ void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
        ReadString("SoftQCD:minBias = on");
        ReadString("SoftQCD:singleDiffractive = on");
        ReadString("SoftQCD:doubleDiffractive = on");
-       AtlasTuning();
+       if (tune == -1) AtlasTuning();
        break;
     case kPyMbDefault:
 // Minimum Bias pp-Collisions
@@ -237,6 +239,9 @@ void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
        ReadString("SoftQCD:minBias = on");
        ReadString("SoftQCD:singleDiffractive = on");
        ReadString("SoftQCD:doubleDiffractive = on");
+       ReadString("SoftQCD:doubleDiffractive = on");
+       if (tune > -1) ReadString(Form("Tune:pp = %3d", tune));
+       ReadString("PDF:useLHAPDF = off");
        break;
     case kPyLhwgMb:
 // Les Houches Working Group 05 Minimum Bias pp-Collisions: hep-ph/0604120
@@ -505,7 +510,32 @@ void AliPythia8::ProcInit(Process_t process, Float_t energy, StrucFunc_t strucfu
        // With parton showers on we are generating "Z inclusive process"
        ReadString("PartonLevel:ISR = on");
        ReadString("PartonLevel:FSR = on");
-       break;  
+       break;
+    case kPyZgamma:
+        //Inclusive production of Z/gamma*
+        //f fbar -> Z/gamma
+        ReadString("WeakSingleBoson:ffbar2gmZ = on");
+        // Initial/final parton shower on (Pythia default)
+        // With parton showers on we are generating "Z inclusive process"
+        ReadString("PartonLevel:ISR = on");
+        ReadString("PartonLevel:FSR = on");
+        break;
+    case kPyMBRSingleDiffraction:
+      ReadString("Diffraction:PomFlux = 5");
+      ReadString("SoftQCD:singleDiffractive = on");
+      break;
+    case kPyMBRDoubleDiffraction:
+      ReadString("Diffraction:PomFlux = 5");
+      ReadString("SoftQCD:doubleDiffractive = on");
+      break;
+    case kPyMBRCentralDiffraction: 
+      ReadString("Diffraction:PomFlux = 5");
+      ReadString("SoftQCD:centralDiffractive = on");
+      break;
+    case kPyMbWithDirectPhoton:
+    case kPyBeautyJets:
+    case kPyMbAtlasTuneMC09: 
+      break;
     }
 //
 //  Initialize PYTHIA
@@ -664,6 +694,7 @@ void AliPythia8::AtlasTuning()
 //     SetPARP(85,0.33);          // Regulates gluon prod. mechanism
 //     SetPARP(86,0.66);          // Regulates gluon prod. mechanism
     ReadString("SigmaProcess:factorMultFac = 1.");
+    
 }
 
 void AliPythia8::SetPtHardRange(Float_t ptmin, Float_t ptmax)
@@ -709,6 +740,7 @@ void AliPythia8::SetInitialAndFinalStateRadiation(Int_t flag1, Int_t flag2)
 
 void AliPythia8::SetIntrinsicKt(Float_t kt)
 {
+// Set the intrinsic kt
        ReadString("BeamRemnants:primordialKT = on");
        ReadString("BeamRemnants:primordialKTsoft = 0.");
        ReadString(Form("BeamRemnants:primordialKThard = %13.3f", kt));