#include "EVGEN/AliGenHIJINGpara.h"
#include "EVGEN/AliGenFixed.h"
#include "EVGEN/AliGenBox.h"
-#include "STEER/AliMagFMaps.h"
+#include "STEER/AliMagF.h"
+#include "STEER/AliPID.h"
#include "STRUCT/AliBODY.h"
#include "STRUCT/AliMAG.h"
#include "STRUCT/AliABSOv3.h"
#include "STRUCT/AliFRAMEv2.h"
#include "STRUCT/AliSHILv3.h"
#include "STRUCT/AliPIPEv3.h"
-#include "ITS/AliITSvPPRasymmFMD.h"
+#include "ITS/AliITSv11Hybrid.h"
#include "TPC/AliTPCv2.h"
#include "TOF/AliTOFv6T0.h"
-#include "HMPID/AliHMPIDv2.h"
+#include "HMPID/AliHMPIDv3.h"
#include "ZDC/AliZDCv3.h"
#include "TRD/AliTRDv1.h"
#include "TRD/AliTRDgeometry.h"
#include "PMD/AliPMDv1.h"
#include "T0/AliT0v1.h"
#include "EMCAL/AliEMCALv2.h"
-#include "ACORDE/AliACORDEv0.h"
+#include "ACORDE/AliACORDEv1.h"
#include "VZERO/AliVZEROv7.h"
#endif
// libraries required by geant321
#if defined(__CINT__)
+ gSystem->Load("liblhapdf");
+ gSystem->Load("libEGPythia6");
+ gSystem->Load("libpythia6");
+ gSystem->Load("libAliPythia6");
gSystem->Load("libgeant321");
#endif
gAlice->SetRunLoader(rl);
// Set the trigger configuration
- gAlice->SetTriggerDescriptor(pprTrigConfName[strig]);
+ AliSimulation::Instance()->SetTriggerConfig(pprTrigConfName[strig]);
cout<<"Trigger configuration is set to "<<pprTrigConfName[strig]<<endl;
//
// to cover specific cases
- // The cocktail iitself
+ // The cocktail itself
AliGenCocktail *gener = new AliGenCocktail();
gener->SetPhiRange(0, 360);
gtof->SetPart(kProton);
gtof->SetMomentum(2.5);
gtof->SetTheta(95);
- pG1->SetPhi(340);
+ gtof->SetPhi(340);
gener->AddGenerator(gtof,"Proton for TOF",1);
+
+ //FMD1
+ AliGenFixed *gfmd1=new AliGenFixed(1);
+ gfmd1->SetPart(kGamma);
+ gfmd1->SetMomentum(25);
+ gfmd1->SetTheta(1.8);
+ gfmd1->SetPhi(10);
+ gener->AddGenerator(gfmd1,"Gamma for FMD1",1);
+
+ //FMD2i
+ AliGenFixed *gfmd2i=new AliGenFixed(1);
+ gfmd2i->SetPart(kPiPlus);
+ gfmd2i->SetMomentum(1.5);
+ gfmd2i->SetTheta(7.3);
+ gfmd2i->SetPhi(20);
+ gener->AddGenerator(gfmd2i,"Pi+ for FMD2i",1);
+
+ //FMD2o
+ AliGenFixed *gfmd2o=new AliGenFixed(1);
+ gfmd2o->SetPart(kPiMinus);
+ gfmd2o->SetMomentum(1.5);
+ gfmd2o->SetTheta(16.1);
+ gfmd2o->SetPhi(30);
+ gener->AddGenerator(gfmd2o,"Pi- for FMD2o",1);
+
+ //FMD3o
+ AliGenFixed *gfmd3o=new AliGenFixed(1);
+ gfmd3o->SetPart(kPiPlus);
+ gfmd3o->SetMomentum(1.5);
+ gfmd3o->SetTheta(163.9);
+ gfmd3o->SetPhi(40);
+ gener->AddGenerator(gfmd3o,"Pi+ for FMD3o",1);
+ //FMD3i
+ AliGenFixed *gfmd3i=new AliGenFixed(1);
+ gfmd3i->SetPart(kPiMinus);
+ gfmd3i->SetMomentum(1.5);
+ gfmd3i->SetTheta(170.5);
+ gfmd3i->SetPhi(50);
+ gener->AddGenerator(gfmd3i,"Pi- for FMD3i",1);
+
+ //VZERO C
+ AliGenFixed *gv0c=new AliGenFixed(1);
+ gv0c->SetPart(kPiPlus);
+ gv0c->SetMomentum(1.5);
+ gv0c->SetTheta(170);
+ gv0c->SetPhi(50);
+ gener->AddGenerator(gv0c,"Pi+ for V0C",1);
+
+ //VZERO A
+ AliGenFixed *gv0a=new AliGenFixed(1);
+ gv0a->SetPart(kPiMinus);
+ gv0a->SetMomentum(1.5);
+ gv0a->SetTheta(1.5);
+ gv0a->SetPhi(70);
+ gener->AddGenerator(gv0a,"Pi- for V0A",1);
+
+
+ //PMD
+ AliGenFixed *gpmd=new AliGenFixed(1);
+ gpmd->SetPart(kGamma);
+ gpmd->SetMomentum(2);
+ gpmd->SetTheta(12.6);
+ gpmd->SetPhi(60);
+ gener->AddGenerator(gpmd,"Gamma for PMD",1);
+
+ //ZDC
+ AliGenFixed *gzdc1=new AliGenFixed(1);
+ gzdc1->SetPart(kProton);
+ gzdc1->SetMomentum(700);
+ gzdc1->SetTheta(0.6);
+ gzdc1->SetPhi(60);
+ gener->AddGenerator(gzdc1,"Proton for ZDC",1);
+
+ AliGenFixed *gzdc2=new AliGenFixed(1);
+ gzdc2->SetPart(kNeutron);
+ gzdc2->SetMomentum(500);
+ gzdc2->SetTheta(0.6);
+ gzdc2->SetPhi(60);
+ gener->AddGenerator(gzdc2,"Neutron for ZDC",1);
+
+ //T0
+ AliGenFixed *gt0=new AliGenFixed(1);
+ gt0->SetPart(kPiPlus);
+ gt0->SetMomentum(2);
+ gt0->SetTheta(5.1);
+ gt0->SetPhi(60);
+ gener->AddGenerator(gt0,"Pi+ for T0",1);
+
+ AliGenFixed *gt01=new AliGenFixed(1);
+ gt01->SetPart(kPiMinus);
+ gt01->SetMomentum(2);
+ gt01->SetTheta(5.1);
+ gt01->SetPhi(60);
+ gener->AddGenerator(gt01,"Pi- for T0",1);
+
+
+ //ACORDE
+ AliGenFixed *gacorde=new AliGenFixed(1);
+ gacorde->SetPart(kMuonPlus);
+ gacorde->SetMomentum(20);
+ gacorde->SetTheta(90.);
+ gacorde->SetPhi(90);
+ gener->AddGenerator(gacorde,"Muon+ for ACORDE",1);
+
+ AliGenFixed *gacorde1=new AliGenFixed(1);
+ gacorde1->SetPart(kMuonMinus);
+ gacorde1->SetMomentum(20);
+ gacorde1->SetTheta(90.);
+ gacorde1->SetPhi(90);
+ gener->AddGenerator(gacorde1,"Muon- for ACORDE",1);
+
gener->Init();
//
//gener->SetVertexSmear(perTrack);
// Field (L3 0.5 T)
- AliMagFMaps* field = new AliMagFMaps("Maps","Maps", 2, 1., 10., 2);
- field->SetL3ConstField(1); //Using const. field in the barrel if 0
- gAlice->SetField(field);
-
+ TGeoGlobalMagField::Instance()->SetField(new AliMagF("Maps","Maps", -1., -1., AliMagF::k5kG));
Int_t iABSO = 1;
Int_t iDIPO = 1;
Int_t iPHOS = 1;
Int_t iPIPE = 1;
Int_t iPMD = 1;
- Int_t iHMPID = 1;
+ Int_t iHMPID = 1;
Int_t iSHIL = 1;
- Int_t iT0 = 1;
+ Int_t iT0 = 1;
Int_t iTOF = 1;
Int_t iTPC = 1;
Int_t iTRD = 1;
Int_t iZDC = 1;
Int_t iEMCAL = 1;
- Int_t iACORDE = 0;
+ Int_t iACORDE= 1;
Int_t iVZERO = 1;
rl->CdGAFile();
//=================== Alice BODY parameters =============================
//=================== FRAME parameters ============================
AliFRAMEv2 *FRAME = new AliFRAMEv2("FRAME", "Space Frame");
+ FRAME->SetHoles(1);
}
if (iSHIL)
{
//=================== ITS parameters ============================
- AliITSvPPRasymmFMD *ITS = new AliITSvPPRasymmFMD("ITS","ITS PPR detailed version with asymmetric services");
+ AliITS *ITS = new AliITSv11Hybrid("ITS","ITS v11Hybrid");
}
if (iTPC)
if (iTOF) {
//=================== TOF parameters ============================
AliTOF *TOF = new AliTOFv6T0("TOF", "normal TOF");
- // Partial geometry: modules at 2,3,4,6,7,11,12,14,15,16
- // starting at 6h in positive direction
- Int_t TOFSectors[18]={-1,-1,0,0,0,-1,0,0,-1,-1,-1,0,0,-1,0,0,0,0};
- TOF->SetTOFSectors(TOFSectors);
}
if (iHMPID)
{
//=================== HMPID parameters ===========================
- AliHMPID *HMPID = new AliHMPIDv2("HMPID", "normal HMPID");
+ AliHMPID *HMPID = new AliHMPIDv3("HMPID", "normal HMPID");
}
AliTRD *TRD = new AliTRDv1("TRD", "TRD slow simulator");
AliTRDgeometry *geoTRD = TRD->GetGeometry();
- // Partial geometry: modules at 2,3,4,6,11,12,14,15
- // starting at 6h in positive direction
- geoTRD->SetSMstatus(0,0);
- geoTRD->SetSMstatus(1,0);
+ // Partial geometry: modules at 0,1,7,8,9,10,17
+ // starting at 3h in positive direction
+ geoTRD->SetSMstatus(2,0);
+ geoTRD->SetSMstatus(3,0);
+ geoTRD->SetSMstatus(4,0);
geoTRD->SetSMstatus(5,0);
- geoTRD->SetSMstatus(7,0);
- geoTRD->SetSMstatus(8,0);
- geoTRD->SetSMstatus(9,0);
- geoTRD->SetSMstatus(10,0);
+ geoTRD->SetSMstatus(6,0);
+ geoTRD->SetSMstatus(11,0);
+ geoTRD->SetSMstatus(12,0);
geoTRD->SetSMstatus(13,0);
+ geoTRD->SetSMstatus(14,0);
+ geoTRD->SetSMstatus(15,0);
geoTRD->SetSMstatus(16,0);
- geoTRD->SetSMstatus(17,0);
}
if (iFMD)
if (iEMCAL)
{
//=================== EMCAL parameters ============================
- AliEMCAL *EMCAL = new AliEMCALv2("EMCAL", "SHISH_77_TRD1_2X2_FINAL_110DEG");
+ AliEMCAL *EMCAL = new AliEMCALv2("EMCAL", "EMCAL_COMPLETEV1");
}
if (iACORDE)
{
//=================== ACORDE parameters ============================
- AliACORDE *ACORDE = new AliACORDEv0("ACORDE", "normal ACORDE");
+ AliACORDE *ACORDE = new AliACORDEv1("ACORDE", "normal ACORDE");
}
if (iVZERO)