]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - test/QA/Config.C
- first version of PWGTRD lib
[u/mrichter/AliRoot.git] / test / QA / Config.C
index 96d53d091d0b7d4838d22a5606a33383343b7d09..0b6b84af73c56a1b1040add6ee41cb1639252779 100644 (file)
@@ -43,7 +43,7 @@
 #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"
@@ -56,8 +56,8 @@
 #include "ITS/AliITSvPPRasymmFMD.h"
 #include "TPC/AliTPCv2.h"
 #include "TOF/AliTOFv6T0.h"
-#include "HMPID/AliHMPIDv2.h"
-#include "ZDC/AliZDCv3.h"
+#include "HMPID/AliHMPIDv3.h"
+#include "ZDC/AliZDCv4.h"
 #include "TRD/AliTRDv1.h"
 #include "FMD/AliFMDv1.h"
 #include "MUON/AliMUONv1.h"
@@ -65,7 +65,7 @@
 #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
 
@@ -99,12 +99,6 @@ enum DecayHvFl_t
 {
   kNature,  kHadr, kSemiEl, kSemiMu
 };
-//--- Magnetic Field ---
-enum Mag_t
-{
-    k2kG, k4kG, k5kG
-};
-
 //--- Trigger config ---
 enum TrigConf_t
 {
@@ -134,7 +128,7 @@ void ProcessEnvironmentVars();
 
 // 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;
@@ -180,19 +174,26 @@ static TString comment;
 
 void Config()
 {
-
-
-  // Get settings from environment variables
+       // 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");
 
@@ -202,6 +203,9 @@ void Config()
   //=======================================================================
   // Run loader
   AliRunLoader* rl=0x0;
+
+  AliLog::Message(AliLog::kInfo, "Creating Run Loader", "", "", "Config()"," ConfigPPR.C", __LINE__);
+
   rl = AliRunLoader::Open("galice.root",
                          AliConfig::GetDefaultEventFolderName(),
                          "recreate");
@@ -211,16 +215,38 @@ void Config()
       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]);
+  AliSimulation::Instance()->SetTriggerConfig(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 **************
@@ -258,30 +284,6 @@ void Config()
     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 //
@@ -353,14 +355,14 @@ void Config()
     //       pythia->SetThetaRange(45,135);
 
    if(proc == kPyJetJetPHOSv2)
-        pythia->SetForceDecay(kNeutralPion);
-   else
-        pythia->SetForceDecay(kAll);
-
-    pythia->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
+                pythia->SetForceDecay(kNeutralPion);
+        else
+                pythia->SetForceDecay(kAll);
+               
+               pythia->SetPycellParameters(2., 274, 432, 0., 4., 5., 1.0);
     pythia->SetPtKick(5); // set the intrinsic kt to 5 GeV/c
     gener = pythia;
-  }
+       }
 
 
   // PRIMARY VERTEX
@@ -390,24 +392,20 @@ void Config()
     Float_t k = 6e5*(qhat/1.7) ; //qhat=1.7, k = 6e5, default  value
     AliPythia::Instance()->InitQuenching(0.,0.1,k,0,0.95,6);
 
 }
+ }
   // 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", -1., -1., AliMagF::k5kGUniform);
+  AliMagF* field = new AliMagF("Maps","Maps", -1., -1., mag);
+  TGeoGlobalMagField::Instance()->SetField(field);
   rl->CdGAFile();
-  gAlice->SetField(field);
-
-
 
   Int_t iABSO  = 1;
   Int_t iACORDE= 1;
@@ -443,8 +441,8 @@ void Config()
         // --- on the selected Magnet dimensions ---
         AliMAG *MAG = new AliMAG("MAG", "Magnet");
     }
-
-
+//
+//
     if (iABSO)
     {
         //=================== ABSO parameters ============================
@@ -495,9 +493,11 @@ void Config()
 
     //=================== ITS parameters ============================
     //
-       AliITSvPPRasymmFMD *ITS  = new AliITSvPPRasymmFMD("ITS","New ITS PPR detailed version with asymmetric services");
+
+      AliITS *ITS  = new AliITSv11("ITS","ITS v11");
     }
 
+
     if (iTPC)
     {
       //============================ TPC parameters =====================
@@ -514,7 +514,7 @@ void Config()
     if (iHMPID)
     {
         //=================== HMPID parameters ===========================
-        AliHMPID *HMPID = new AliHMPIDv2("HMPID", "normal HMPID");
+        AliHMPID *HMPID = new AliHMPIDv3("HMPID", "normal HMPID");
 
     }
 
@@ -523,21 +523,15 @@ void Config()
     {
         //=================== ZDC parameters ============================
 
-        AliZDC *ZDC = new AliZDCv3("ZDC", "normal ZDC");
+        AliZDC *ZDC = new AliZDCv4("ZDC", "normal ZDC");
     }
 
-    if (iTRD)
+   if (iTRD)
     {
         //=================== TRD parameters ============================
-
         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
-       //Hole on SM 13 and 14 for PHOS
-        geoTRD->SetSMstatus(13,0);
-        geoTRD->SetSMstatus(14,0);
-        geoTRD->SetSMstatus(15,0);
+       AliTRDgeometry *geoTRD = TRD->GetGeometry();
     }
 
     if (iFMD)
@@ -575,13 +569,13 @@ void Config()
     if (iEMCAL)
     {
         //=================== EMCAL parameters ============================
-        AliEMCAL *EMCAL = new AliEMCALv2("EMCAL", "ESHISH_77_TRD1_2X2_FINAL_110DEG scTh=0.176 pbTh=0.144");
+        AliEMCAL *EMCAL = new AliEMCALv2("EMCAL", "EMCAL_COMPLETEV1 scTh=0.176 pbTh=0.144");
     }
 
      if (iACORDE)
     {
         //=================== CRT parameters ============================
-        AliACORDE *ACORDE = new AliACORDEv0("CRT", "normal ACORDE");
+        AliACORDE *ACORDE = new AliACORDEv1("ACORDE", "normal ACORDE");
     }
 
      if (iVZERO)
@@ -924,15 +918,7 @@ void ProcessEnvironmentVars()
     }
     //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;