enum PDC06Proc_t
{
- kPythia6, kPhojet, kRunMax
+ kPythia6, kPythia6D6T, kPhojet, kRunMax
};
const char * pprRunName[] = {
- "kPythia6", "kPhojet"
+ "kPythia6", "kPythia6D6T", "kPhojet"
};
enum Mag_t
//--- Functions ---
class AliGenPythia;
AliGenerator *MbPythia();
+AliGenerator *MbPythiaTuneD6T();
AliGenerator *MbPhojet();
void ProcessEnvironmentVars();
#if defined(__CINT__)
gSystem->Load("liblhapdf"); // Parton density functions
gSystem->Load("libEGPythia6"); // TGenerator interface
- gSystem->Load("libpythia6"); // Pythia
+ if (proc != kPythia6D6T) {
+ gSystem->Load("libpythia6"); // Pythia 6.2
+ } else {
+ gSystem->Load("libqpythia"); // Pythia 6.4
+ }
gSystem->Load("libAliPythia6"); // ALICE specific implementations
gSystem->Load("libgeant321");
#endif
if (proc == kPythia6) {
gener = MbPythia();
+ } else if (proc == kPythia6D6T) {
+ gener = MbPythiaTuneD6T();
} else if (proc == kPhojet) {
gener = MbPhojet();
}
return pythia;
}
+AliGenerator* MbPythiaTuneD6T()
+{
+ comment = comment.Append(" pp at 14 TeV: Pythia low-pt");
+//
+// Pythia
+ AliGenPythia* pythia = new AliGenPythia(-1);
+ pythia->SetMomentumRange(0, 999999.);
+ pythia->SetThetaRange(0., 180.);
+ pythia->SetYRange(-12.,12.);
+ pythia->SetPtRange(0,1000.);
+ pythia->SetProcess(kPyMb);
+ pythia->SetEnergyCMS(energy);
+// Tune
+// 109 D6T : Rick Field's CDF Tune D6T (NB: needs CTEQ6L pdfs externally)
+ pythia->SetTune(109);
+ pythia->SetStrucFunc(kCTEQ6l);
+//
+ return pythia;
+}
+
AliGenerator* MbPhojet()
{
comment = comment.Append(" pp at 14 TeV: Pythia low-pt");