10 #if !defined(__CINT__) || defined(__MAKECINT__) 11 #include <Riostream.h> 14 #include <TVirtualMC.h> 15 #include <TGeant3TGeo.h> 19 #include "PYTHIA6/AliDecayerPythia.h" 20 #include "EVGEN/AliGenCocktail.h" 21 #include "EVGEN/AliGenCosmicsParam.h" 22 #include "EVGEN/AliGenHIJINGpara.h" 23 #include "STEER/AliMagF.h" 24 #include "STRUCT/AliBODY.h" 25 #include "STRUCT/AliMAG.h" 26 #include "STRUCT/AliABSOv0.h" 27 #include "STRUCT/AliDIPOv2.h" 28 #include "STRUCT/AliHALL.h" 29 #include "STRUCT/AliFRAMEv2.h" 30 #include "STRUCT/AliSHILv2.h" 31 #include "STRUCT/AliPIPEv0.h" 32 #include "ITS/AliITSvPPRasymmFMD.h" 33 #include "TPC/AliTPCv2.h" 34 #include "TOF/AliTOFv5T0.h" 35 #include "RICH/AliRICHv1.h" 36 #include "ZDC/AliZDCv2.h" 37 #include "TRD/AliTRDv1.h" 38 #include "FMD/AliFMDv1.h" 39 #include "MUON/AliMUONv1.h" 40 #include "PHOS/AliPHOSv1.h" 41 #include "PMD/AliPMDv1.h" 42 #include "START/AliSTARTv1.h" 43 #include "EMCAL/AliEMCALv2.h" 44 #include "ACORDE/AliACORDEv0.h" 45 #include "VZERO/AliVZEROv7.h" 67 UInt_t curtime=dt.Get();
68 UInt_t procid=gSystem->GetPid();
69 UInt_t
seed=curtime-procid;
70 if (gSystem->Getenv(
"envevno")) {
71 seed=atoi(gSystem->Getenv(
"envevno"));
73 printf(
"...taking seed as event number + 1000...\n");
75 printf(
"...setting seed as %d...\n",seed);
76 gRandom->SetSeed(seed);
77 printf(
"Seed for random number generation = %d \n",gRandom->GetSeed());
85 gSystem->Load(
"libgeant321");
88 new TGeant3TGeo(
"C++ Interface to Geant3");
104 gAlice->Fatal(
"Config.C",
"Can not instatiate the Run Loader");
116 cout<<
"Trigger configuration is set to ACORDE"<<endl;
120 TVirtualMCDecayer *decayer =
new AliDecayerPythia();
122 decayer->SetForceDecay(kAll);
124 gMC->SetExternalDecayer(decayer);
131 gMC->SetProcess(
"DCAY",1);
132 gMC->SetProcess(
"PAIR",1);
133 gMC->SetProcess(
"COMP",1);
134 gMC->SetProcess(
"PHOT",1);
135 gMC->SetProcess(
"PFIS",0);
136 gMC->SetProcess(
"DRAY",0);
137 gMC->SetProcess(
"ANNI",1);
138 gMC->SetProcess(
"BREM",1);
139 gMC->SetProcess(
"MUNU",1);
140 gMC->SetProcess(
"CKOV",1);
141 gMC->SetProcess(
"HADR",1);
142 gMC->SetProcess(
"LOSS",2);
143 gMC->SetProcess(
"MULS",1);
144 gMC->SetProcess(
"RAYL",1);
147 Float_t tofmax = 1.e10;
149 gMC->SetCut(
"CUTGAM", cut);
150 gMC->SetCut(
"CUTELE", cut);
151 gMC->SetCut(
"CUTNEU", cut);
152 gMC->SetCut(
"CUTHAD", cut);
153 gMC->SetCut(
"CUTMUO", cut);
154 gMC->SetCut(
"BCUTE", cut);
155 gMC->SetCut(
"BCUTM", cut);
156 gMC->SetCut(
"DCUTE", cut);
157 gMC->SetCut(
"DCUTM", cut);
158 gMC->SetCut(
"PPCUTM", cut);
159 gMC->SetCut(
"TOFMAX", tofmax);
163 AliGenCosmicsParam *gener =
new AliGenCosmicsParam();
164 gener->SetNumberParticles(100);
165 gener->SetParamACORDE();
166 gener->SetYOrigin(260.);
167 gener->SetMomentumRange(8.,1000.);
168 gener->SetMaxAngleWRTVertical(3.1415/4.);
187 TGeoGlobalMagField::Instance()->SetField(
new AliMagF(
"Maps",
"Maps", 1., 1.,
mag));
215 AliBODY *BODY =
new AliBODY(
"BODY",
"Alice envelop");
222 AliMAG *MAG =
new AliMAG(
"MAG",
"Magnet");
229 AliABSO *ABSO =
new AliABSOv0(
"ABSO",
"Muon Absorber");
236 AliDIPO *DIPO =
new AliDIPOv2(
"DIPO",
"Dipole version 2");
243 AliHALL *HALL =
new AliHALL(
"HALL",
"Alice Hall");
251 AliFRAMEv2 *
FRAME =
new AliFRAMEv2(
"FRAME",
"Space Frame");
258 AliSHIL *SHIL =
new AliSHILv2(
"SHIL",
"Shielding Version 2");
266 AliPIPE *PIPE =
new AliPIPEv0(
"PIPE",
"Beam Pipe");
273 AliITSvPPRasymmFMD *ITS =
new AliITSvPPRasymmFMD(
"ITS",
"ITS PPR detailed version with asymmetric services");
279 AliTPC *TPC =
new AliTPCv2(
"TPC",
"Default");
285 AliTOF *TOF =
new AliTOFv5T0(
"TOF",
"normal TOF");
292 AliRICH *RICH =
new AliRICHv1(
"RICH",
"normal RICH");
301 AliZDC *ZDC =
new AliZDCv2(
"ZDC",
"normal ZDC");
308 AliTRD *TRD =
new AliTRDv1(
"TRD",
"TRD slow simulator");
327 AliPHOS *
PHOS =
new AliPHOSv1(
"PHOS",
"IHEP");
334 AliPMD *PMD =
new AliPMDv1(
"PMD",
"normal PMD");
340 AliSTART *START =
new AliSTARTv1(
"START",
"START Detector");
352 AliACORDE *ACORDE =
new AliACORDEv0(
"ACORDE",
"normal ACORDE");
358 AliVZERO *VZERO =
new AliVZEROv7(
"VZERO",
"normal VZERO");
366 return (180./TMath::Pi())*2.*atan(exp(-arg));
printf("Chi2/npoints = %f\n", TMath::Sqrt(chi2/npoints))
void SetRunLoader(AliRunLoader *rloader)
static const TString & GetDefaultEventFolderName()
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")
void SetTriggerConfig(TString conf)
AliDetector class for MUON subsystem which implements functions for simulation.
void SetCompressionLevel(Int_t cl)
static AliSimulation * Instance()
Base Class for EMCAL description.
void SetDefaultStorage(const char *dbString)
void SetNumberOfEventsPerFile(Int_t nevpf)
static AliMagF::BMap_t mag
Float_t EtaToTheta(Float_t arg)
static AliCDBManager * Instance(TMap *entryCache=NULL, Int_t run=-1)
EMCal simulation manager class v2.