10 #if !defined(__CINT__) || defined(__MAKECINT__) 11 #include <Riostream.h> 14 #include <TVirtualMC.h> 15 #include <TGeant3TGeo.h> 22 #include "STEER/AliLog.h" 23 #include "PYTHIA6/AliDecayerPythia.h" 24 #include "EVGEN/AliGenHIJINGpara.h" 25 #include "THijing/AliGenHijing.h" 26 #include "EVGEN/AliGenCocktail.h" 27 #include "EVGEN/AliGenSlowNucleons.h" 28 #include "EVGEN/AliSlowNucleonModelExp.h" 29 #include "EVGEN/AliGenParam.h" 30 #include "EVGEN/AliGenMUONlib.h" 31 #include "EVGEN/AliGenSTRANGElib.h" 32 #include "EVGEN/AliGenMUONCocktail.h" 33 #include "EVGEN/AliGenCocktail.h" 34 #include "EVGEN/AliGenGeVSim.h" 35 #include "EVGEN/AliGeVSimParticle.h" 36 #include "PYTHIA6/AliGenPythia.h" 37 #include "STEER/AliMagF.h" 38 #include "STRUCT/AliBODY.h" 39 #include "STRUCT/AliMAG.h" 40 #include "STRUCT/AliABSOv3.h" 41 #include "STRUCT/AliDIPOv3.h" 42 #include "STRUCT/AliHALLv3.h" 43 #include "STRUCT/AliFRAMEv2.h" 44 #include "STRUCT/AliSHILv3.h" 45 #include "STRUCT/AliPIPEv3.h" 46 #include "ITS/AliITSv11.h" 47 #include "TPC/AliTPCv2.h" 48 #include "TOF/AliTOFv6T0.h" 49 #include "HMPID/AliHMPIDv3.h" 50 #include "ZDC/AliZDCv3.h" 51 #include "TRD/AliTRDv1.h" 52 #include "FMD/AliFMDv1.h" 53 #include "MUON/AliMUONv1.h" 54 #include "PHOS/AliPHOSv1.h" 55 #include "PMD/AliPMDv1.h" 56 #include "T0/AliT0v1.h" 57 #include "EMCAL/AliEMCALv2.h" 58 #include "ACORDE/AliACORDEv1.h" 59 #include "VZERO/AliVZEROv7.h" 86 "kParam_8000",
"kParam_4000",
"kParam_2000",
87 "kHijing_cent1",
"kHijing_cent2",
88 "kHijing_per1",
"kHijing_per2",
"kHijing_per3",
"kHijing_per4",
90 "kHijing_jj25",
"kHijing_jj50",
"kHijing_jj75",
"kHijing_jj100",
92 "kHijing_gj25",
"kHijing_gj50",
"kHijing_gj75",
"kHijing_gj100",
93 "kHijing_gj200",
"kHijing_pA",
"kPythia6",
94 "kPythia6Jets20_24",
"kPythia6Jets24_29",
"kPythia6Jets29_35",
95 "kPythia6Jets35_42",
"kPythia6Jets42_50",
"kPythia6Jets50_60",
96 "kPythia6Jets60_72",
"kPythia6Jets72_86",
"kPythia6Jets86_104",
97 "kPythia6Jets104_125",
"kPythia6Jets125_150",
"kPythia6Jets150_180",
98 "kD0PbPb5500",
"kCharmSemiElPbPb5500",
"kBeautySemiElPbPb5500",
99 "kCocktailTRD",
"kPyJJ",
"kPyGJ",
100 "kMuonCocktailCent1",
"kMuonCocktailPer1",
"kMuonCocktailPer4",
101 "kMuonCocktailCent1HighPt",
"kMuonCocktailPer1HighPt",
"kMuonCocktailPer4HighPt",
102 "kMuonCocktailCent1Single",
"kMuonCocktailPer1Single",
"kMuonCocktailPer4Single",
103 "kFlow_2_2000",
"kFlow_10_2000",
"kFlow_6_2000",
"kFlow_6_5000",
"kHIJINGplus" 152 gRandom->SetSeed(
sseed);
153 cout<<
"Seed for random number generation= "<<gRandom->GetSeed()<<endl;
157 #if defined(__CINT__) 158 gSystem->Load(
"liblhapdf");
159 gSystem->Load(
"libEGPythia6");
160 gSystem->Load(
"libpythia6");
161 gSystem->Load(
"libAliPythia6");
162 gSystem->Load(
"libgeant321");
165 new TGeant3TGeo(
"C++ Interface to Geant3");
168 ((TGeant3*)gMC)->SetSWIT(4,100);
179 gAlice->Fatal(
"Config.C",
"Can not instatiate the Run Loader");
192 AliDecayer *decayer =
new AliDecayerPythia();
197 decayer->SetForceDecay(kHadronicD);
200 decayer->SetForceDecay(kSemiElectronic);
203 decayer->SetForceDecay(kSemiElectronic);
206 decayer->SetForceDecay(kAll);
210 gMC->SetExternalDecayer(decayer);
220 gMC->SetProcess(
"DCAY",1);
221 gMC->SetProcess(
"PAIR",1);
222 gMC->SetProcess(
"COMP",1);
223 gMC->SetProcess(
"PHOT",1);
224 gMC->SetProcess(
"PFIS",0);
225 gMC->SetProcess(
"DRAY",0);
226 gMC->SetProcess(
"ANNI",1);
227 gMC->SetProcess(
"BREM",1);
228 gMC->SetProcess(
"MUNU",1);
229 gMC->SetProcess(
"CKOV",1);
230 gMC->SetProcess(
"HADR",1);
231 gMC->SetProcess(
"LOSS",2);
232 gMC->SetProcess(
"MULS",1);
233 gMC->SetProcess(
"RAYL",1);
236 Float_t tofmax = 1.e10;
238 gMC->SetCut(
"CUTGAM", cut);
239 gMC->SetCut(
"CUTELE", cut);
240 gMC->SetCut(
"CUTNEU", cut);
241 gMC->SetCut(
"CUTHAD", cut);
242 gMC->SetCut(
"CUTMUO", cut);
243 gMC->SetCut(
"BCUTE", cut);
244 gMC->SetCut(
"BCUTM", cut);
245 gMC->SetCut(
"DCUTE", cut);
246 gMC->SetCut(
"DCUTM", cut);
247 gMC->SetCut(
"PPCUTM", cut);
248 gMC->SetCut(
"TOFMAX", tofmax);
307 AliBODY *BODY =
new AliBODY(
"BODY",
"Alice envelop");
315 AliMAG *MAG =
new AliMAG(
"MAG",
"Magnet");
322 AliABSO *ABSO =
new AliABSOv3(
"ABSO",
"Muon Absorber");
329 AliDIPO *DIPO =
new AliDIPOv3(
"DIPO",
"Dipole version 3");
336 AliHALL *HALL =
new AliHALLv3(
"HALL",
"Alice Hall");
344 AliFRAMEv2 *
FRAME =
new AliFRAMEv2(
"FRAME",
"Space Frame");
352 AliSHIL *SHIL =
new AliSHILv3(
"SHIL",
"Shielding Version 3");
360 AliPIPE *PIPE =
new AliPIPEv3(
"PIPE",
"Beam Pipe");
367 AliITS *ITS =
new AliITSv11(
"ITS",
"ITS v11");
373 AliTPC *TPC =
new AliTPCv2(
"TPC",
"Default");
379 AliTOF *TOF =
new AliTOFv6T0(
"TOF",
"normal TOF");
386 AliHMPID *HMPID =
new AliHMPIDv3(
"HMPID",
"normal HMPID");
395 AliZDC *ZDC =
new AliZDCv3(
"ZDC",
"normal ZDC");
402 AliTRD *TRD =
new AliTRDv1(
"TRD",
"TRD slow simulator");
421 AliPHOS *
PHOS =
new AliPHOSv1(
"PHOS",
"IHEP");
428 AliPMD *PMD =
new AliPMDv1(
"PMD",
"normal PMD");
434 AliT0 *T0 =
new AliT0v1(
"T0",
"T0 Detector");
446 AliACORDE *ACORDE =
new AliACORDEv1(
"ACORDE",
"normal ACORDE");
452 AliVZERO *VZERO =
new AliVZEROv7(
"VZERO",
"normal VZERO");
459 return (180./TMath::Pi())*2.*atan(exp(-arg));
482 Int_t nParticles = 100;
483 AliGenCocktail *gener =
new AliGenCocktail();
484 gener->SetPhiRange(0, 360);
488 gener->SetThetaRange(thmin,thmax);
489 gener->SetOrigin(0, 0, 0);
490 gener->SetSigma(0, 0, 3);
492 AliGenHIJINGpara *hijingparam =
new AliGenHIJINGpara(nParticles);
493 hijingparam->SetMomentumRange(0.2, 999);
494 gener->AddGenerator(hijingparam,
"HIJING PARAM",1);
496 for (Float_t imom=0;imom<5;imom+=5){
497 Float_t pmom = imom*20;
498 Int_t nParticles2 =(imom+1);
501 AliGenBox *genboxPIP =
new AliGenBox(nParticles2);
502 genboxPIP->SetPart(211);
503 genboxPIP->SetPtRange(0.2, pmom);
504 AliGenBox *genboxPIM =
new AliGenBox(nParticles2);
505 genboxPIM->SetPart(-211);
506 genboxPIM->SetPtRange(0.2, pmom);
508 AliGenBox *genboxEP =
new AliGenBox(nParticles2);
509 genboxEP->SetPart(11);
510 genboxEP->SetPtRange(0.1, pmom);
511 AliGenBox *genboxEM =
new AliGenBox(nParticles2);
512 genboxEM->SetPart(-11);
513 genboxEM->SetPtRange(0.1, pmom);
515 AliGenBox *genboxKP =
new AliGenBox(nParticles2);
516 genboxKP->SetPart(321);
517 genboxKP->SetPtRange(0.2, pmom);
518 AliGenBox *genboxKM =
new AliGenBox(nParticles2);
519 genboxKM->SetPart(-321);
520 genboxKM->SetPtRange(0.2, pmom);
522 AliGenBox *genboxMP =
new AliGenBox(nParticles2);
523 genboxMP->SetPart(13);
524 genboxMP->SetPtRange(0.2, pmom);
525 AliGenBox *genboxMM =
new AliGenBox(nParticles2);
526 genboxMM->SetPart(-13);
527 genboxMM->SetPtRange(0.2, pmom);
529 AliGenBox *genboxPP =
new AliGenBox(nParticles2);
530 genboxPP->SetPart(2212);
531 genboxPP->SetPtRange(0.2, pmom);
532 AliGenBox *genboxPM =
new AliGenBox(nParticles2);
533 genboxPM->SetPart(-2212);
534 genboxPM->SetPtRange(0.2, pmom);
535 gener->AddGenerator(genboxPIP,
"GENBOX",1);
536 gener->AddGenerator(genboxPIM,
"GENBOX",1);
537 gener->AddGenerator(genboxEM,
"GENBOX",1);
538 gener->AddGenerator(genboxEP,
"GENBOX",1);
539 gener->AddGenerator(genboxKM,
"GENBOX",1);
540 gener->AddGenerator(genboxKP,
"GENBOX",1);
541 gener->AddGenerator(genboxMM,
"GENBOX",1);
542 gener->AddGenerator(genboxMP,
"GENBOX",1);
543 gener->AddGenerator(genboxPM,
"GENBOX",1);
544 gener->AddGenerator(genboxPP,
"GENBOX",1);
555 AliGenHIJINGpara *gener =
new AliGenHIJINGpara(86030);
556 gener->SetMomentumRange(0, 999999.);
557 gener->SetPhiRange(0., 360.);
561 gener->SetThetaRange(thmin,thmax);
568 AliGenHIJINGpara *gener =
new AliGenHIJINGpara(43015);
569 gener->SetMomentumRange(0, 999999.);
570 gener->SetPhiRange(0., 360.);
574 gener->SetThetaRange(thmin,thmax);
581 AliGenHIJINGpara *gener =
new AliGenHIJINGpara(21507);
582 gener->SetMomentumRange(0, 999999.);
583 gener->SetPhiRange(0., 360.);
587 gener->SetThetaRange(thmin,thmax);
599 gener->SetImpactParameterRange(0., 5.);
608 gener->SetImpactParameterRange(0., 2.);
620 gener->SetImpactParameterRange(5., 8.6);
629 gener->SetImpactParameterRange(8.6, 11.2);
638 gener->SetImpactParameterRange(11.2, 13.2);
647 gener->SetImpactParameterRange(13.2, 15.);
656 gener->SetImpactParameterRange(15., 100.);
668 gener->SetImpactParameterRange(0., 5.);
670 gener->SetTrigger(1);
671 gener->SetPtJet(25.);
672 gener->SetRadiation(isw);
673 gener->SetSimpleJets(!isw);
674 gener->SetJetEtaRange(-0.3,0.3);
675 gener->SetJetPhiRange(75., 165.);
685 gener->SetImpactParameterRange(0., 5.);
687 gener->SetTrigger(1);
688 gener->SetPtJet(50.);
689 gener->SetRadiation(isw);
690 gener->SetSimpleJets(!isw);
691 gener->SetJetEtaRange(-0.3,0.3);
692 gener->SetJetPhiRange(75., 165.);
702 gener->SetImpactParameterRange(0., 5.);
704 gener->SetTrigger(1);
705 gener->SetPtJet(75.);
706 gener->SetRadiation(isw);
707 gener->SetSimpleJets(!isw);
708 gener->SetJetEtaRange(-0.3,0.3);
709 gener->SetJetPhiRange(75., 165.);
719 gener->SetImpactParameterRange(0., 5.);
721 gener->SetTrigger(1);
722 gener->SetPtJet(100.);
723 gener->SetRadiation(isw);
724 gener->SetSimpleJets(!isw);
725 gener->SetJetEtaRange(-0.3,0.3);
726 gener->SetJetPhiRange(75., 165.);
736 gener->SetImpactParameterRange(0., 5.);
738 gener->SetTrigger(1);
739 gener->SetPtJet(200.);
740 gener->SetRadiation(isw);
741 gener->SetSimpleJets(!isw);
742 gener->SetJetEtaRange(-0.3,0.3);
743 gener->SetJetPhiRange(75., 165.);
755 gener->SetImpactParameterRange(0., 5.);
757 gener->SetTrigger(2);
758 gener->SetPtJet(25.);
759 gener->SetRadiation(isw);
760 gener->SetSimpleJets(!isw);
761 gener->SetJetEtaRange(-0.12, 0.12);
762 gener->SetJetPhiRange(220., 320.);
772 gener->SetImpactParameterRange(0., 5.);
774 gener->SetTrigger(2);
775 gener->SetPtJet(50.);
776 gener->SetRadiation(isw);
777 gener->SetSimpleJets(!isw);
778 gener->SetJetEtaRange(-0.12, 0.12);
779 gener->SetJetPhiRange(220., 320.);
789 gener->SetImpactParameterRange(0., 5.);
791 gener->SetTrigger(2);
792 gener->SetPtJet(75.);
793 gener->SetRadiation(isw);
794 gener->SetSimpleJets(!isw);
795 gener->SetJetEtaRange(-0.12, 0.12);
796 gener->SetJetPhiRange(220., 320.);
806 gener->SetImpactParameterRange(0., 5.);
808 gener->SetTrigger(2);
809 gener->SetPtJet(100.);
810 gener->SetRadiation(isw);
811 gener->SetSimpleJets(!isw);
812 gener->SetJetEtaRange(-0.12, 0.12);
813 gener->SetJetPhiRange(220., 320.);
823 gener->SetImpactParameterRange(0., 5.);
825 gener->SetTrigger(2);
826 gener->SetPtJet(200.);
827 gener->SetRadiation(isw);
828 gener->SetSimpleJets(!isw);
829 gener->SetJetEtaRange(-0.12, 0.12);
830 gener->SetJetPhiRange(220., 320.);
838 AliGenCocktail *gener =
new AliGenCocktail();
840 AliGenHijing *hijing =
new AliGenHijing(-1);
842 hijing->SetEnergyCMS(TMath::Sqrt(82./208.) * 14000.);
844 hijing->SetImpactParameterRange(0., 15.);
846 hijing->SetReferenceFrame(
"CMS");
847 hijing->SetBoostLHC(1);
849 hijing->SetProjectile(
"P", 1, 1);
850 hijing->SetTarget (
"A", 208, 82);
852 hijing->KeepFullEvent();
854 hijing->SetJetQuenching(0);
856 hijing->SetShadowing(1);
858 hijing->SetSpectators(0);
860 hijing->SetSelectAll(0);
862 AliGenSlowNucleons* gray =
new AliGenSlowNucleons(1);
863 AliSlowNucleonModel* model =
new AliSlowNucleonModelExp();
864 gray->SetSlowNucleonModel(model);
866 gener->AddGenerator(hijing,
"Hijing pPb", 1);
867 gener->AddGenerator(gray,
"Gray Particles",1);
874 AliGenPythia *gener =
new AliGenPythia(-1);
875 gener->SetMomentumRange(0,999999);
876 gener->SetThetaRange(0., 180.);
877 gener->SetYRange(-12,12);
878 gener->SetPtRange(0,1000);
879 gener->SetProcess(kPyMb);
880 gener->SetEnergyCMS(14000.);
887 AliGenPythia * gener =
new AliGenPythia(-1);
888 gener->SetEnergyCMS(5500.);
889 gener->SetProcess(kPyJets);
890 gener->SetJetEtaRange(-0.5, 0.5);
891 gener->SetJetPhiRange(0., 360.);
892 gener->SetJetEtRange(10., 1000.);
893 gener->SetGluonRadiation(1,1);
896 gener->SetStrucFunc(kCTEQ4L);
897 gener->SetPtHard(20., 24.);
898 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
899 gener->SetForceDecay(kAll);
906 AliGenPythia * gener =
new AliGenPythia(-1);
907 gener->SetEnergyCMS(5500.);
908 gener->SetProcess(kPyJets);
909 gener->SetJetEtaRange(-0.5, 0.5);
910 gener->SetJetPhiRange(0., 360.);
911 gener->SetJetEtRange(10., 1000.);
912 gener->SetGluonRadiation(1,1);
915 gener->SetStrucFunc(kCTEQ4L);
916 gener->SetPtHard(24., 29.);
917 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
918 gener->SetForceDecay(kAll);
925 AliGenPythia * gener =
new AliGenPythia(-1);
926 gener->SetEnergyCMS(5500.);
927 gener->SetProcess(kPyJets);
928 gener->SetJetEtaRange(-0.5, 0.5);
929 gener->SetJetPhiRange(0., 360.);
930 gener->SetJetEtRange(10., 1000.);
931 gener->SetGluonRadiation(1,1);
934 gener->SetStrucFunc(kCTEQ4L);
935 gener->SetPtHard(29., 35.);
936 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
937 gener->SetForceDecay(kAll);
944 AliGenPythia * gener =
new AliGenPythia(-1);
945 gener->SetEnergyCMS(5500.);
946 gener->SetProcess(kPyJets);
947 gener->SetJetEtaRange(-0.5, 0.5);
948 gener->SetJetPhiRange(0., 360.);
949 gener->SetJetEtRange(10., 1000.);
950 gener->SetGluonRadiation(1,1);
953 gener->SetStrucFunc(kCTEQ4L);
954 gener->SetPtHard(35., 42.);
955 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
956 gener->SetForceDecay(kAll);
963 AliGenPythia * gener =
new AliGenPythia(-1);
964 gener->SetEnergyCMS(5500.);
965 gener->SetProcess(kPyJets);
966 gener->SetJetEtaRange(-0.5, 0.5);
967 gener->SetJetPhiRange(0., 360.);
968 gener->SetJetEtRange(10., 1000.);
969 gener->SetGluonRadiation(1,1);
972 gener->SetStrucFunc(kCTEQ4L);
973 gener->SetPtHard(42., 50.);
974 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
975 gener->SetForceDecay(kAll);
982 AliGenPythia * gener =
new AliGenPythia(-1);
983 gener->SetEnergyCMS(5500.);
984 gener->SetProcess(kPyJets);
985 gener->SetJetEtaRange(-0.5, 0.5);
986 gener->SetJetPhiRange(0., 360.);
987 gener->SetJetEtRange(10., 1000.);
988 gener->SetGluonRadiation(1,1);
991 gener->SetStrucFunc(kCTEQ4L);
992 gener->SetPtHard(50., 60.);
993 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
994 gener->SetForceDecay(kAll);
1001 AliGenPythia * gener =
new AliGenPythia(-1);
1002 gener->SetEnergyCMS(5500.);
1003 gener->SetProcess(kPyJets);
1004 gener->SetJetEtaRange(-0.5, 0.5);
1005 gener->SetJetPhiRange(0., 360.);
1006 gener->SetJetEtRange(10., 1000.);
1007 gener->SetGluonRadiation(1,1);
1010 gener->SetStrucFunc(kCTEQ4L);
1011 gener->SetPtHard(60., 72.);
1012 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
1013 gener->SetForceDecay(kAll);
1020 AliGenPythia * gener =
new AliGenPythia(-1);
1021 gener->SetEnergyCMS(5500.);
1022 gener->SetProcess(kPyJets);
1023 gener->SetJetEtaRange(-0.5, 0.5);
1024 gener->SetJetPhiRange(0., 360.);
1025 gener->SetJetEtRange(10., 1000.);
1026 gener->SetGluonRadiation(1,1);
1029 gener->SetStrucFunc(kCTEQ4L);
1030 gener->SetPtHard(72., 86.);
1031 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
1032 gener->SetForceDecay(kAll);
1039 AliGenPythia * gener =
new AliGenPythia(-1);
1040 gener->SetEnergyCMS(5500.);
1041 gener->SetProcess(kPyJets);
1042 gener->SetJetEtaRange(-0.5, 0.5);
1043 gener->SetJetPhiRange(0., 360.);
1044 gener->SetJetEtRange(10., 1000.);
1045 gener->SetGluonRadiation(1,1);
1048 gener->SetStrucFunc(kCTEQ4L);
1049 gener->SetPtHard(86., 104.);
1050 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
1051 gener->SetForceDecay(kAll);
1058 AliGenPythia * gener =
new AliGenPythia(-1);
1059 gener->SetEnergyCMS(5500.);
1060 gener->SetProcess(kPyJets);
1061 gener->SetJetEtaRange(-0.5, 0.5);
1062 gener->SetJetPhiRange(0., 360.);
1063 gener->SetJetEtRange(10., 1000.);
1064 gener->SetGluonRadiation(1,1);
1067 gener->SetStrucFunc(kCTEQ4L);
1068 gener->SetPtHard(104., 125.);
1069 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
1070 gener->SetForceDecay(kAll);
1077 AliGenPythia * gener =
new AliGenPythia(-1);
1078 gener->SetEnergyCMS(5500.);
1079 gener->SetProcess(kPyJets);
1080 gener->SetJetEtaRange(-0.5, 0.5);
1081 gener->SetJetPhiRange(0., 360.);
1082 gener->SetJetEtRange(10., 1000.);
1083 gener->SetGluonRadiation(1,1);
1086 gener->SetStrucFunc(kCTEQ4L);
1087 gener->SetPtHard(125., 150.);
1088 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
1089 gener->SetForceDecay(kAll);
1096 AliGenPythia * gener =
new AliGenPythia(-1);
1097 gener->SetEnergyCMS(5500.);
1098 gener->SetProcess(kPyJets);
1099 gener->SetJetEtaRange(-0.5, 0.5);
1100 gener->SetJetPhiRange(0., 360.);
1101 gener->SetJetEtRange(10., 1000.);
1102 gener->SetGluonRadiation(1,1);
1105 gener->SetStrucFunc(kCTEQ4L);
1106 gener->SetPtHard(150., 180.);
1107 gener->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
1108 gener->SetForceDecay(kAll);
1115 AliGenPythia * gener =
new AliGenPythia(10);
1116 gener->SetProcess(kPyD0PbPbMNR);
1117 gener->SetStrucFunc(kCTEQ4L);
1118 gener->SetPtHard(2.1,-1.0);
1119 gener->SetEnergyCMS(5500.);
1120 gener->SetNuclei(208,208);
1121 gener->SetForceDecay(kHadronicD);
1122 gener->SetYRange(-2,2);
1123 gener->SetFeedDownHigherFamily(kFALSE);
1124 gener->SetStackFillOpt(AliGenPythia::kParentSelection);
1125 gener->SetCountMode(AliGenPythia::kCountParents);
1132 AliGenPythia * gener =
new AliGenPythia(10);
1133 gener->SetProcess(kPyCharmPbPbMNR);
1134 gener->SetStrucFunc(kCTEQ4L);
1135 gener->SetPtHard(2.1,-1.0);
1136 gener->SetEnergyCMS(5500.);
1137 gener->SetNuclei(208,208);
1138 gener->SetForceDecay(kSemiElectronic);
1139 gener->SetYRange(-2,2);
1140 gener->SetFeedDownHigherFamily(kFALSE);
1141 gener->SetCountMode(AliGenPythia::kCountParents);
1148 AliGenPythia *gener =
new AliGenPythia(10);
1149 gener->SetProcess(kPyBeautyPbPbMNR);
1150 gener->SetStrucFunc(kCTEQ4L);
1151 gener->SetPtHard(2.75,-1.0);
1152 gener->SetEnergyCMS(5500.);
1153 gener->SetNuclei(208,208);
1154 gener->SetForceDecay(kSemiElectronic);
1155 gener->SetYRange(-2,2);
1156 gener->SetFeedDownHigherFamily(kFALSE);
1157 gener->SetCountMode(AliGenPythia::kCountParents);
1164 AliGenCocktail *gener =
new AliGenCocktail();
1166 AliGenParam *phi =
new AliGenParam(10,
1167 new AliGenMUONlib(),
1168 AliGenMUONlib::kPhi,
1171 phi->SetPtRange(0, 100);
1172 phi->SetYRange(-1., +1.);
1173 phi->SetForceDecay(kDiElectron);
1175 AliGenParam *omega =
new AliGenParam(10,
1176 new AliGenMUONlib(),
1177 AliGenMUONlib::kOmega,
1180 omega->SetPtRange(0, 100);
1181 omega->SetYRange(-1., +1.);
1182 omega->SetForceDecay(kDiElectron);
1184 AliGenParam *jpsi =
new AliGenParam(10,
1185 new AliGenMUONlib(),
1186 AliGenMUONlib::kJpsiFamily,
1189 jpsi->SetPtRange(0, 100);
1190 jpsi->SetYRange(-1., +1.);
1191 jpsi->SetForceDecay(kDiElectron);
1193 AliGenParam *ups =
new AliGenParam(10,
1194 new AliGenMUONlib(),
1195 AliGenMUONlib::kUpsilonFamily,
1197 ups->SetPtRange(0, 100);
1198 ups->SetYRange(-1., +1.);
1199 ups->SetForceDecay(kDiElectron);
1201 AliGenParam *charm =
new AliGenParam(10,
1202 new AliGenMUONlib(),
1203 AliGenMUONlib::kCharm,
1205 charm->SetPtRange(0, 100);
1206 charm->SetYRange(-1.5, +1.5);
1207 charm->SetForceDecay(kSemiElectronic);
1210 AliGenParam *beauty =
new AliGenParam(10,
1211 new AliGenMUONlib(),
1212 AliGenMUONlib::kBeauty,
1214 beauty->SetPtRange(0, 100);
1215 beauty->SetYRange(-1.5, +1.5);
1216 beauty->SetForceDecay(kSemiElectronic);
1218 AliGenParam *beautyJ =
new AliGenParam(10,
1219 new AliGenMUONlib(),
1220 AliGenMUONlib::kBeauty,
1222 beautyJ->SetPtRange(0, 100);
1223 beautyJ->SetYRange(-1.5, +1.5);
1224 beautyJ->SetForceDecay(kBJpsiDiElectron);
1226 gener->AddGenerator(phi,
"Phi",1);
1227 gener->AddGenerator(omega,
"Omega",1);
1228 gener->AddGenerator(jpsi,
"J/psi",1);
1229 gener->AddGenerator(ups,
"Upsilon",1);
1230 gener->AddGenerator(charm,
"Charm",1);
1231 gener->AddGenerator(beauty,
"Beauty",1);
1232 gener->AddGenerator(beautyJ,
"J/Psi from Beauty",1);
1239 AliGenPythia *gener =
new AliGenPythia(-1);
1240 gener->SetEnergyCMS(5500.);
1241 gener->SetProcess(kPyJets);
1244 gener->SetYHard(-0.7,0.7);
1245 gener->SetJetEtaRange(-0.2,0.2);
1246 gener->SetEventListRange(0,1);
1253 AliGenPythia *gener =
new AliGenPythia(-1);
1254 gener->SetEnergyCMS(5500.);
1255 gener->SetProcess(kPyDirectGamma);
1258 gener->SetYHard(-1.0,1.0);
1259 gener->SetGammaEtaRange(-0.13,0.13);
1260 gener->SetGammaPhiRange(210.,330.);
1261 gener->SetEventListRange(0,1);
1268 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1269 gener->SetPtRange(0.4,100.);
1270 gener->SetPhiRange(0.,360.);
1271 gener->SetYRange(-4.0,-2.4);
1272 gener->SetMuonPtCut(0.8);
1273 gener->SetMuonThetaCut(171.,178.);
1274 gener->SetMuonMultiplicity(2);
1275 gener->SetImpactParameterRange(0.,5.);
1282 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1283 gener->SetPtRange(0.0,100.);
1284 gener->SetPhiRange(0.,360.);
1285 gener->SetYRange(-4.0,-2.4);
1286 gener->SetMuonPtCut(0.8);
1287 gener->SetMuonThetaCut(171.,178.);
1288 gener->SetMuonMultiplicity(2);
1289 gener->SetImpactParameterRange(5.,8.6);
1296 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1297 gener->SetPtRange(0.0,100.);
1298 gener->SetPhiRange(0.,360.);
1299 gener->SetYRange(-4.0,-2.4);
1300 gener->SetMuonPtCut(0.8);
1301 gener->SetMuonThetaCut(171.,178.);
1302 gener->SetMuonMultiplicity(2);
1303 gener->SetImpactParameterRange(13.2,15.0);
1310 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1311 gener->SetPtRange(0.0,100.);
1312 gener->SetPhiRange(0.,360.);
1313 gener->SetYRange(-4.0,-2.4);
1314 gener->SetMuonPtCut(2.5);
1315 gener->SetMuonThetaCut(171.,178.);
1316 gener->SetMuonMultiplicity(2);
1317 gener->SetImpactParameterRange(0.,5.);
1324 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1325 gener->SetPtRange(0.0,100.);
1326 gener->SetPhiRange(0.,360.);
1327 gener->SetYRange(-4.0,-2.4);
1328 gener->SetMuonPtCut(2.5);
1329 gener->SetMuonThetaCut(171.,178.);
1330 gener->SetMuonMultiplicity(2);
1331 gener->SetImpactParameterRange(5.,8.6);
1338 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1339 gener->SetPtRange(0.0,100.);
1340 gener->SetPhiRange(0.,360.);
1341 gener->SetYRange(-4.0,-2.4);
1342 gener->SetMuonPtCut(2.5);
1343 gener->SetMuonThetaCut(171.,178.);
1344 gener->SetMuonMultiplicity(2);
1345 gener->SetImpactParameterRange(13.2,15.0);
1352 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1353 gener->SetPtRange(0.0,100.);
1354 gener->SetPhiRange(0.,360.);
1355 gener->SetYRange(-4.0,-2.4);
1356 gener->SetMuonPtCut(0.8);
1357 gener->SetMuonThetaCut(171.,178.);
1358 gener->SetMuonMultiplicity(1);
1359 gener->SetImpactParameterRange(0.,5.);
1366 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1367 gener->SetPtRange(0.0,100.);
1368 gener->SetPhiRange(0.,360.);
1369 gener->SetYRange(-4.0,-2.4);
1370 gener->SetMuonPtCut(0.8);
1371 gener->SetMuonThetaCut(171.,178.);
1372 gener->SetMuonMultiplicity(1);
1373 gener->SetImpactParameterRange(5.,8.6);
1374 gener->SetNumberOfParticipants(229.3);
1381 AliGenMUONCocktail * gener =
new AliGenMUONCocktail();
1382 gener->SetPtRange(0.0,100.);
1383 gener->SetPhiRange(0.,360.);
1384 gener->SetYRange(-4.0,-2.4);
1385 gener->SetMuonPtCut(0.8);
1386 gener->SetMuonThetaCut(171.,178.);
1387 gener->SetMuonMultiplicity(1);
1388 gener->SetImpactParameterRange(13.2,15.0);
1423 AliGenCocktail *gener =
new AliGenCocktail();
1427 AliGenPythia * genpyc =
new AliGenPythia(230);
1428 genpyc->SetProcess(kPyCharmPbPbMNR);
1429 genpyc->SetStrucFunc(kCTEQ4L);
1430 genpyc->SetPtHard(2.1,-1.0);
1431 genpyc->SetEnergyCMS(5500.);
1432 genpyc->SetNuclei(208,208);
1433 genpyc->SetYRange(-999,999);
1434 genpyc->SetForceDecay(kAll);
1435 genpyc->SetFeedDownHigherFamily(kFALSE);
1436 genpyc->SetCountMode(AliGenPythia::kCountParents);
1439 AliGenPythia * genpyb =
new AliGenPythia(9);
1440 genpyb->SetProcess(kPyBeautyPbPbMNR);
1441 genpyb->SetStrucFunc(kCTEQ4L);
1442 genpyb->SetPtHard(2.75,-1.0);
1443 genpyb->SetEnergyCMS(5500.);
1444 genpyb->SetNuclei(208,208);
1445 genpyb->SetYRange(-999,999);
1446 genpyb->SetForceDecay(kAll);
1447 genpyb->SetFeedDownHigherFamily(kFALSE);
1448 genpyb->SetCountMode(AliGenPythia::kCountParents);
1452 AliGenSTRANGElib *lib =
new AliGenSTRANGElib();
1455 particle = kXiMinus;
1456 AliGenParam *genXi =
new AliGenParam(16,particle,lib->GetPt(particle),lib->GetY(particle),lib->GetIp(particle));
1457 genXi->SetPtRange(0., 12.);
1458 genXi->SetYRange(-1.1, 1.1);
1459 genXi->SetForceDecay(kNoDecay);
1463 particle = kOmegaMinus;
1464 AliGenParam *genOmega =
new AliGenParam(10,particle,lib->GetPt(particle),lib->GetY(particle),lib->GetIp(particle));
1465 genOmega->SetPtRange(0, 12.);
1466 genOmega->SetYRange(-1.1, 1.1);
1467 genOmega->SetForceDecay(kNoDecay);
1472 genHi->SwitchOffHeavyQuarks(kTRUE);
1473 genHi->SetImpactParameterRange(0.,5.);
1476 gener->AddGenerator(genHi,
"Hijing cent1", 1);
1477 gener->AddGenerator(genpyc,
"Extra charm", 1);
1478 gener->AddGenerator(genpyb,
"Extra beauty", 1);
1479 gener->AddGenerator(genXi,
"Xi" , 1);
1480 gener->AddGenerator(genOmega,
"Omega", 1);
1492 AliGenHijing *gener =
new AliGenHijing(-1);
1494 gener->SetEnergyCMS(5500.);
1496 gener->SetReferenceFrame(
"CMS");
1498 gener->SetProjectile(
"A", 208, 82);
1499 gener->SetTarget (
"A", 208, 82);
1501 gener->KeepFullEvent();
1503 gener->SetJetQuenching(1);
1505 gener->SetShadowing(1);
1507 gener->SetDecaysOff(1);
1509 gener->SetSpectators(0);
1511 gener->SetSelectAll(0);
1517 AliGenGeVSim* gener =
new AliGenGeVSim(0);
1523 Float_t sigma_eta = 2.75;
1526 Float_t etamax = 7.00;
1530 Float_t mm = mult * (TMath::Erf(etamax/sigma_eta/sqrt(2.)) / TMath::Erf(0.5/sigma_eta/sqrt(2.)));
1543 AliGeVSimParticle *pp =
new AliGeVSimParticle(kPiPlus, 1, 0.26 * mm, 0.25, sigma_eta) ;
1544 AliGeVSimParticle *pm =
new AliGeVSimParticle(kPiMinus, 1, 0.26 * mm, 0.25, sigma_eta) ;
1545 AliGeVSimParticle *p0 =
new AliGeVSimParticle(kPi0, 1, 0.26 * mm, 0.25, sigma_eta) ;
1548 AliGeVSimParticle *ks =
new AliGeVSimParticle(kK0Short, 1, 0.03 * mm, 0.30, sigma_eta) ;
1549 AliGeVSimParticle *kl =
new AliGeVSimParticle(kK0Long, 1, 0.03 * mm, 0.30, sigma_eta) ;
1550 AliGeVSimParticle *kp =
new AliGeVSimParticle(kKPlus, 1, 0.03 * mm, 0.30, sigma_eta) ;
1551 AliGeVSimParticle *km =
new AliGeVSimParticle(kKMinus, 1, 0.03 * mm, 0.30, sigma_eta) ;
1554 AliGeVSimParticle *pr =
new AliGeVSimParticle(kProton, 1, 0.05 * mm, 0.25, sigma_eta) ;
1555 AliGeVSimParticle *ne =
new AliGeVSimParticle(kNeutron, 1, 0.05 * mm, 0.25, sigma_eta) ;
1559 Float_t pTsaturation = 2. ;
1561 pp->SetEllipticParam(vn,pTsaturation,0.) ;
1562 pm->SetEllipticParam(vn,pTsaturation,0.) ;
1563 p0->SetEllipticParam(vn,pTsaturation,0.) ;
1564 pr->SetEllipticParam(vn,pTsaturation,0.) ;
1565 ne->SetEllipticParam(vn,pTsaturation,0.) ;
1566 ks->SetEllipticParam(vn,pTsaturation,0.) ;
1567 kl->SetEllipticParam(vn,pTsaturation,0.) ;
1568 kp->SetEllipticParam(vn,pTsaturation,0.) ;
1569 km->SetEllipticParam(vn,pTsaturation,0.) ;
1572 pp->SetDirectedParam(vn,1.0,0.) ;
1573 pm->SetDirectedParam(vn,1.0,0.) ;
1574 p0->SetDirectedParam(vn,1.0,0.) ;
1575 pr->SetDirectedParam(vn,1.0,0.) ;
1576 ne->SetDirectedParam(vn,1.0,0.) ;
1577 ks->SetDirectedParam(vn,1.0,0.) ;
1578 kl->SetDirectedParam(vn,1.0,0.) ;
1579 kp->SetDirectedParam(vn,1.0,0.) ;
1580 km->SetDirectedParam(vn,1.0,0.) ;
1583 gener->AddParticleType(pp) ;
1584 gener->AddParticleType(pm) ;
1585 gener->AddParticleType(p0) ;
1586 gener->AddParticleType(pr) ;
1587 gener->AddParticleType(ne) ;
1588 gener->AddParticleType(ks) ;
1589 gener->AddParticleType(kl) ;
1590 gener->AddParticleType(kp) ;
1591 gener->AddParticleType(km) ;
1594 TF1 *rpa =
new TF1(
"gevsimPsiRndm",
"1", 0, 360);
1596 gener->SetPtRange(0., 9.) ;
1597 gener->SetPhiRange(0, 360);
1602 gener->SetThetaRange(thmin,thmax);
1612 if (gSystem->Getenv(
"CONFIG_RUN_TYPE")) {
1613 for (Int_t iRun = 0; iRun <
kRunMax; iRun++) {
1614 if (strcmp(gSystem->Getenv(
"CONFIG_RUN_TYPE"),
pprRunName[iRun])==0) {
1616 cout<<
"Run type set to "<<
pprRunName[iRun]<<endl;
1622 if (gSystem->Getenv(
"CONFIG_SEED")) {
1623 sseed = atoi(gSystem->Getenv(
"CONFIG_SEED"));
printf("Chi2/npoints = %f\n", TMath::Sqrt(chi2/npoints))
void SetRunLoader(AliRunLoader *rloader)
static const TString & GetDefaultEventFolderName()
const char * pprRunName[]
Float_t EtaToTheta(Float_t arg)
const char * pprTrigConfName[]
AliGenHijing * HijingStandard()
static void Message(UInt_t level, const char *message, const char *module, const char *className, const char *function, const char *file, Int_t line)
AliDetector class for MUON subsystem providing simulation data management.
Forward Multiplicity Detector based on Silicon wafers. This class is the driver for especially simula...
Forward Multiplicity Detector based on Silicon wafers.
static AliRunLoader * Open(const char *filename="galice.root", const char *eventfoldername=AliConfig::GetDefaultEventFolderName(), Option_t *option="READ")
AliGenerator * GeneratorFactory(PprRun_t srun)
virtual void SetCutVertexZ(Float_t cut=999999.)
static PprTrigConf_t strig
void SetTriggerConfig(TString conf)
AliDetector class for MUON subsystem which implements functions for simulation.
void SetCompressionLevel(Int_t cl)
virtual void SetOrigin(Float_t ox, Float_t oy, Float_t oz)
static AliSimulation * Instance()
Base Class for EMCAL description.
virtual void SetVertexSmear(VertexSmear_t smear)
virtual void SetTrackingFlag(Int_t flag=1)
void SetNumberOfEventsPerFile(Int_t nevpf)
virtual void SetSigma(Float_t sx, Float_t sy, Float_t sz)
AliGenGeVSim * GeVSimStandard(Float_t, Float_t)
void ProcessEnvironmentVars()
EMCal simulation manager class v2.