#include "STEER/AliConfig.h"
#include "PYTHIA6/AliDecayerPythia.h"
#include "PYTHIA6/AliGenPythia.h"
-#include "STEER/AliMagFMaps.h"
+#include "STEER/AliMagF.h"
#include "STRUCT/AliBODY.h"
#include "STRUCT/AliMAG.h"
#include "STRUCT/AliABSOv3.h"
#include "ITS/AliITSvPPRasymmFMD.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 "FMD/AliFMDv1.h"
{
kNature, kHadr, kSemiEl, kSemiMu
};
-//--- Magnetic Field ---
-enum Mag_t
-{
- k2kG, k4kG, k5kG
-};
-
//--- Trigger config ---
enum TrigConf_t
{
// This part for configuration
static DecayHvFl_t decHvFl = kNature;
-static Mag_t mag = k5kG;
+static AliMagF::BMap_t mag = AliMagF::k5kG;
static TrigConf_t trig = kDefaultPPTrig; // default pp trigger configuration
static Int_t runNumber= 0;
static Int_t eventNumber= 0;
// Get settings from environment variables
ProcessEnvironmentVars();
+ // Random Number seed
+ if (gSystem->Getenv("CONFIG_SEED")) {
+ seed = atoi(gSystem->Getenv("CONFIG_SEED"));
+ }
+ else if(gSystem->Getenv("DC_EVENT") && gSystem->Getenv("DC_RUN")){
+ seed = runNumber * 100000 + eventNumber;
+ }
+ gRandom->SetSeed(seed);
+ cout<<"Seed for random number generation= "<<gRandom->GetSeed()<<endl;
+
// libraries required by geant321
#if defined(__CINT__)
- gSystem->Load("liblhapdf.so"); // Parton density functions
- gSystem->Load("libpythia6.so"); // Pythia
+ gSystem->Load("liblhapdf"); // Parton density functions
+ gSystem->Load("libEGPythia6"); // TGenerator interface
+ gSystem->Load("libpythia6"); // Pythia
+ gSystem->Load("libAliPythia6"); // ALICE specific implementations
gSystem->Load("libgeant321");
- gSystem->Load("libEG");
- gSystem->Load("libEGPythia6.so"); // TGenerator interface
- gSystem->Load("libAliPythia6.so"); // ALICE specific implementations
#endif
new TGeant3TGeo("C++ Interface to Geant3");
//=======================================================================
// Run loader
AliRunLoader* rl=0x0;
+
+ AliLog::Message(AliLog::kInfo, "Creating Run Loader", "", "", "Config()"," ConfigPPR.C", __LINE__);
+
rl = AliRunLoader::Open("galice.root",
AliConfig::GetDefaultEventFolderName(),
"recreate");
return;
}
rl->SetCompressionLevel(2);
- rl->SetNumberOfEventsPerFile(1000);
+ rl->SetNumberOfEventsPerFile(100);
gAlice->SetRunLoader(rl);
- // Run number
- //gAlice->SetRunNumber(runNumber);
-
// Set the trigger configuration
gAlice->SetTriggerDescriptor(TrigConfName[trig]);
cout<<"Trigger configuration is set to "<<TrigConfName[trig]<<endl;
+ //======================//
+ // Set External decayer //
+ //======================//
+ TVirtualMCDecayer* decayer = new AliDecayerPythia();
+ // DECAYS
+ //
+ switch(decHvFl) {
+ case kNature:
+ decayer->SetForceDecay(kAll);
+ break;
+ case kHadr:
+ decayer->SetForceDecay(kHadronicD);
+ break;
+ case kSemiEl:
+ decayer->SetForceDecay(kSemiElectronic);
+ break;
+ case kSemiMu:
+ decayer->SetForceDecay(kSemiMuonic);
+ break;
+ }
+ decayer->Init();
+ gMC->SetExternalDecayer(decayer);
+ if(proc == kPyJetJetPHOSv2) // in this case we decay the pi0
+ decayer->SetForceDecay(kNeutralPion);
+
//
//=======================================================================
// ************* STEERING parameters FOR ALICE SIMULATION **************
gMC->SetCut("PPCUTM", cut);
gMC->SetCut("TOFMAX", tofmax);
- //======================//
- // Set External decayer //
- //======================//
- TVirtualMCDecayer* decayer = new AliDecayerPythia();
- // DECAYS
- //
- switch(decHvFl) {
- case kNature:
- decayer->SetForceDecay(kAll);
- break;
- case kHadr:
- decayer->SetForceDecay(kHadronicD);
- break;
- case kSemiEl:
- decayer->SetForceDecay(kSemiElectronic);
- break;
- case kSemiMu:
- decayer->SetForceDecay(kSemiMuonic);
- break;
- }
- decayer->Init();
- gMC->SetExternalDecayer(decayer);
- if(proc == kPyJetJetPHOSv2) // in this case we decay the pi0
- decayer->SetForceDecay(kNeutralPion);
//=========================//
// Generator Configuration //
}
// FIELD
- if (mag == k2kG) {
+ if (mag == AliMagF::k2kG) {
comment = comment.Append(" | L3 field 0.2 T");
- } else if (mag == k4kG) {
- comment = comment.Append(" | L3 field 0.4 T");
- } else if (mag == k5kG) {
+ } else if (mag == AliMagF::k5kG) {
comment = comment.Append(" | L3 field 0.5 T");
}
printf("\n \n Comment: %s \n \n", comment.Data());
-
- AliMagFMaps* field = new AliMagFMaps("Maps","Maps", 2, 1., 10., mag);
- field->SetL3ConstField(0); //Using const. field in the barrel
+ // to use constant field in the barrel use:
+ // AliMagF* field = new AliMagF("Maps","Maps", 2, -1., -1., 10., AliMagF::k5kGUniform);
+ AliMagF* field = new AliMagF("Maps","Maps", 2, -1., -1., 10., mag);
+ TGeoGlobalMagField::Instance()->SetField(field);
rl->CdGAFile();
- gAlice->SetField(field);
-
-
Int_t iABSO = 1;
Int_t iACORDE= 1;
if (iHMPID)
{
//=================== HMPID parameters ===========================
- AliHMPID *HMPID = new AliHMPIDv2("HMPID", "normal HMPID");
+ AliHMPID *HMPID = new AliHMPIDv3("HMPID", "normal HMPID");
}
}
//cout<<"Event number "<<eventNumber<<endl;
- // Random Number seed
- if (gSystem->Getenv("CONFIG_SEED")) {
- seed = atoi(gSystem->Getenv("CONFIG_SEED"));
- }
- else if(gSystem->Getenv("DC_EVENT") && gSystem->Getenv("DC_RUN")){
- seed = runNumber * 100000 + eventNumber;
- }
- gRandom->SetSeed(seed);
cout<<"////////////////////////////////////////////////////////////////////////////////////"<<endl;
cout<<"Seed for random number generation= "<< seed<<" "<< gRandom->GetSeed()<<endl;