]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - prod/LHC09d5/Config.C
Removing obsolete macros
[u/mrichter/AliRoot.git] / prod / LHC09d5 / Config.C
diff --git a/prod/LHC09d5/Config.C b/prod/LHC09d5/Config.C
deleted file mode 100644 (file)
index ed77b06..0000000
+++ /dev/null
@@ -1,557 +0,0 @@
-//
-// Configuration for the first physics production 2008
-//
-
-// One can use the configuration macro in compiled mode by
-// root [0] gSystem->Load("libgeant321");
-// root [0] gSystem->SetIncludePath("-I$ROOTSYS/include -I$ALICE_ROOT/include\
-//                   -I$ALICE_ROOT -I$ALICE/geant3/TGeant3");
-// root [0] .x grun.C(1,"Config.C++")
-
-#if !defined(__CINT__) || defined(__MAKECINT__)
-#include <Riostream.h>
-#include <TRandom.h>
-#include <TDatime.h>
-#include <TSystem.h>
-#include <TVirtualMC.h>
-#include <TGeant3TGeo.h>
-#include "STEER/AliRunLoader.h"
-#include "STEER/AliRun.h"
-#include "STEER/AliConfig.h"
-#include "PYTHIA6/AliDecayerPythia.h"
-#include "PYTHIA6/AliGenPythia.h"
-#include "TDPMjet/AliGenDPMjet.h"
-#include "STEER/AliMagFCheb.h"
-#include "STRUCT/AliBODY.h"
-#include "STRUCT/AliMAG.h"
-#include "STRUCT/AliABSOv3.h"
-#include "STRUCT/AliDIPOv3.h"
-#include "STRUCT/AliHALLv3.h"
-#include "STRUCT/AliFRAMEv2.h"
-#include "STRUCT/AliSHILv3.h"
-#include "STRUCT/AliPIPEv3.h"
-#include "ITS/AliITSv11Hybrid.h"
-#include "TPC/AliTPCv2.h"
-#include "TOF/AliTOFv6T0.h"
-#include "HMPID/AliHMPIDv3.h"
-#include "ZDC/AliZDCv3.h"
-#include "TRD/AliTRDv1.h"
-#include "TRD/AliTRDgeometry.h"
-#include "FMD/AliFMDv1.h"
-#include "MUON/AliMUONv1.h"
-#include "PHOS/AliPHOSv1.h"
-#include "PHOS/AliPHOSSimParam.h"
-#include "PMD/AliPMDv1.h"
-#include "T0/AliT0v1.h"
-#include "EMCAL/AliEMCALv2.h"
-#include "ACORDE/AliACORDEv1.h"
-#include "VZERO/AliVZEROv7.h"
-#endif
-
-
-enum PDC06Proc_t 
-{
-  kPythia6, kPythia6D6T, kPhojet, kRunMax
-};
-
-const char * pprRunName[] = {
-    "kPythia6", "kPythia6D6T", "kPhojet" 
-};
-
-enum Mag_t
-{
-  kNoField, k5kG, kFieldMax
-};
-
-const char * pprField[] = {
-  "kNoField", "k5kG"
-};
-
-//--- Functions ---
-class AliGenPythia;
-AliGenerator *MbPythia();
-AliGenerator *MbPythiaTuneD6T();
-AliGenerator *MbPhojet();
-void ProcessEnvironmentVars();
-
-// Geterator, field, beam energy
-static PDC06Proc_t   proc     = kPhojet;
-static Mag_t         mag      = k5kG;
-static Float_t       energy   = 10000; // energy in CMS
-//========================//
-// Set Random Number seed //
-//========================//
-TDatime dt;
-static UInt_t seed    = dt.Get();
-
-// Comment line
-static TString comment;
-
-void Config()
-{
-    
-
-  // Get settings from environment variables
-  ProcessEnvironmentVars();
-
-  gRandom->SetSeed(seed);
-  cerr<<"Seed for random number generation= "<<seed<<endl; 
-
-  // Libraries required by geant321
-#if defined(__CINT__)
-  gSystem->Load("liblhapdf");      // Parton density functions
-  gSystem->Load("libEGPythia6");   // TGenerator interface
-  if (proc != kPythia6D6T) {
-      gSystem->Load("libpythia6");     // Pythia 6.2
-  } else {
-      gSystem->Load("libqpythia");     // Pythia 6.4
-  }
-  gSystem->Load("libAliPythia6");  // ALICE specific implementations
-  gSystem->Load("libgeant321");
-#endif
-
-  new TGeant3TGeo("C++ Interface to Geant3");
-
-  //=======================================================================
-  //  Create the output file
-
-   
-  AliRunLoader* rl=0x0;
-
-  cout<<"Config.C: Creating Run Loader ..."<<endl;
-  rl = AliRunLoader::Open("galice.root",
-                         AliConfig::GetDefaultEventFolderName(),
-                         "recreate");
-  if (rl == 0x0)
-    {
-      gAlice->Fatal("Config.C","Can not instatiate the Run Loader");
-      return;
-    }
-  rl->SetCompressionLevel(2);
-  rl->SetNumberOfEventsPerFile(1000);
-  gAlice->SetRunLoader(rl);
-  // gAlice->SetGeometryFromFile("geometry.root");
-  // gAlice->SetGeometryFromCDB();
-  
-  // Set the trigger configuration: proton-proton
-  AliSimulation::Instance()->SetTriggerConfig("p-p");
-
-  //
-  //=======================================================================
-  // ************* STEERING parameters FOR ALICE SIMULATION **************
-  // --- Specify event type to be tracked through the ALICE setup
-  // --- All positions are in cm, angles in degrees, and P and E in GeV
-
-
-    gMC->SetProcess("DCAY",1);
-    gMC->SetProcess("PAIR",1);
-    gMC->SetProcess("COMP",1);
-    gMC->SetProcess("PHOT",1);
-    gMC->SetProcess("PFIS",0);
-    gMC->SetProcess("DRAY",0);
-    gMC->SetProcess("ANNI",1);
-    gMC->SetProcess("BREM",1);
-    gMC->SetProcess("MUNU",1);
-    gMC->SetProcess("CKOV",1);
-    gMC->SetProcess("HADR",1);
-    gMC->SetProcess("LOSS",2);
-    gMC->SetProcess("MULS",1);
-    gMC->SetProcess("RAYL",1);
-
-    Float_t cut = 1.e-3;        // 1MeV cut by default
-    Float_t tofmax = 1.e10;
-
-    gMC->SetCut("CUTGAM", cut);
-    gMC->SetCut("CUTELE", cut);
-    gMC->SetCut("CUTNEU", cut);
-    gMC->SetCut("CUTHAD", cut);
-    gMC->SetCut("CUTMUO", cut);
-    gMC->SetCut("BCUTE",  cut); 
-    gMC->SetCut("BCUTM",  cut); 
-    gMC->SetCut("DCUTE",  cut); 
-    gMC->SetCut("DCUTM",  cut); 
-    gMC->SetCut("PPCUTM", cut);
-    gMC->SetCut("TOFMAX", tofmax); 
-
-
-
-
-  //======================//
-  // Set External decayer //
-  //======================//
-  TVirtualMCDecayer* decayer = new AliDecayerPythia();
-  decayer->SetForceDecay(kAll);
-  decayer->Init();
-  gMC->SetExternalDecayer(decayer);
-
-  //=========================//
-  // Generator Configuration //
-  //=========================//
-  AliGenerator* gener = 0x0;
-  
-  if (proc == kPythia6) {
-      gener = MbPythia();
-  } else if (proc == kPythia6D6T) {
-      gener = MbPythiaTuneD6T();
-  } else if (proc == kPhojet) {
-      gener = MbPhojet();
-  }
-  
-  
-
-  // PRIMARY VERTEX
-  //
-  gener->SetOrigin(-0.07, 0.25, -1.5);    // vertex position
-  //
-  //
-  // Size of the interaction diamond
-  // Longitudinal
-  Float_t sigmaz  = 5.4 / TMath::Sqrt(2.); // [cm]
-  if (energy == 900)
-    sigmaz  = 10.5 / TMath::Sqrt(2.); // [cm]
-
-  if (energy == 7000)
-    sigmaz  = 6.3 / TMath::Sqrt(2.); // [cm]
-
-  //
-  // Transverse
-  Float_t betast  = 10;                 // beta* [m]
-  Float_t eps     = 3.75e-6;            // emittance [m]
-  Float_t gamma   = energy / 2.0 / 0.938272;  // relativistic gamma [1]
-  Float_t sigmaxy = TMath::Sqrt(eps * betast / gamma) / TMath::Sqrt(2.) * 100.;  // [cm]
-  printf("\n \n Diamond size x-y: %10.3e z: %10.3e\n \n", sigmaxy, sigmaz);
-    
-  gener->SetSigma(sigmaxy, sigmaxy, sigmaz);      // Sigma in (X,Y,Z) (cm) on IP position
-  gener->SetCutVertexZ(3.);        // Truncate at 3 sigma
-  gener->SetVertexSmear(kPerEvent);
-
-  gener->Init();
-  if (proc == kPythia6D6T) {
-       // F I X 
-    AliPythia::Instance()->Pytune(109);        
-    AliPythia::Instance()->Initialize("CMS","p","p", energy);
-        // F I X
-  }
-  // FIELD
-  //
-  AliMagF* field = 0x0;
-  if (mag == kNoField) {
-    comment = comment.Append(" | L3 field 0.0 T");
-    field = new AliMagF("Maps","Maps", 0., 0., AliMagF::k5kGUniform,AliMagF::kBeamTypepp, energy/2.0);
-  } else if (mag == k5kG) {
-    comment = comment.Append(" | L3 field 0.5 T");
-    field = new AliMagF("Maps","Maps", -1., -1., AliMagF::k5kG,        AliMagF::kBeamTypepp, energy/2.0);
-  }
-
-  printf("\n \n Comment: %s \n \n", comment.Data());
-
-  TGeoGlobalMagField::Instance()->SetField(field);
-    
-  rl->CdGAFile();
-  
-  Int_t iABSO  = 1;
-  Int_t iACORDE= 0;
-  Int_t iDIPO  = 1;
-  Int_t iEMCAL = 1;
-  Int_t iFMD   = 1;
-  Int_t iFRAME = 1;
-  Int_t iHALL  = 1;
-  Int_t iITS   = 1;
-  Int_t iMAG   = 1;
-  Int_t iMUON  = 1;
-  Int_t iPHOS  = 1;
-  Int_t iPIPE  = 1;
-  Int_t iPMD   = 1;
-  Int_t iHMPID = 1;
-  Int_t iSHIL  = 1;
-  Int_t iT0    = 1;
-  Int_t iTOF   = 1;
-  Int_t iTPC   = 1;
-  Int_t iTRD   = 1;
-  Int_t iVZERO = 1;
-  Int_t iZDC   = 1;
-  
-
-    //=================== Alice BODY parameters =============================
-    AliBODY *BODY = new AliBODY("BODY", "Alice envelop");
-
-
-    if (iMAG)
-    {
-        //=================== MAG parameters ============================
-        // --- Start with Magnet since detector layouts may be depending ---
-        // --- on the selected Magnet dimensions ---
-        AliMAG *MAG = new AliMAG("MAG", "Magnet");
-    }
-
-
-    if (iABSO)
-    {
-        //=================== ABSO parameters ============================
-        AliABSO *ABSO = new AliABSOv3("ABSO", "Muon Absorber");
-    }
-
-    if (iDIPO)
-    {
-        //=================== DIPO parameters ============================
-
-        AliDIPO *DIPO = new AliDIPOv3("DIPO", "Dipole version 3");
-    }
-
-    if (iHALL)
-    {
-        //=================== HALL parameters ============================
-
-        AliHALL *HALL = new AliHALLv3("HALL", "Alice Hall");
-    }
-
-
-    if (iFRAME)
-    {
-        //=================== FRAME parameters ============================
-
-        AliFRAMEv2 *FRAME = new AliFRAMEv2("FRAME", "Space Frame");
-       FRAME->SetHoles(1);
-    }
-
-    if (iSHIL)
-    {
-        //=================== SHIL parameters ============================
-
-        AliSHIL *SHIL = new AliSHILv3("SHIL", "Shielding Version 3");
-    }
-
-
-    if (iPIPE)
-    {
-        //=================== PIPE parameters ============================
-
-        AliPIPE *PIPE = new AliPIPEv3("PIPE", "Beam Pipe");
-    }
-    if (iITS)
-    {
-        //=================== ITS parameters ============================
-
-       AliITS *ITS  = new AliITSv11Hybrid("ITS","ITS v11Hybrid");
-    }
-
-    if (iTPC)
-    {
-      //============================ TPC parameters =====================
-
-        AliTPC *TPC = new AliTPCv2("TPC", "Default");
-    }
-
-
-    if (iTOF) {
-        //=================== TOF parameters ============================
-
-       AliTOF *TOF = new AliTOFv6T0("TOF", "normal TOF");
-    }
-
-
-    if (iHMPID)
-    {
-        //=================== HMPID parameters ===========================
-
-        AliHMPID *HMPID = new AliHMPIDv3("HMPID", "normal HMPID");
-
-    }
-
-
-    if (iZDC)
-    {
-        //=================== ZDC parameters ============================
-
-        AliZDC *ZDC = new AliZDCv3("ZDC", "normal ZDC");
-    }
-
-    if (iTRD)
-    {
-        //=================== TRD parameters ============================
-
-        AliTRD *TRD = new AliTRDv1("TRD", "TRD slow simulator");
-        AliTRDgeometry *geoTRD = TRD->GetGeometry();
-       // Partial geometry: modules at 0,1,7,8,9,16,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(6,0);
-        geoTRD->SetSMstatus(10,0);
-        geoTRD->SetSMstatus(11,0);
-        geoTRD->SetSMstatus(12,0);
-        geoTRD->SetSMstatus(13,0);
-        geoTRD->SetSMstatus(14,0);
-        geoTRD->SetSMstatus(15,0);
-    }
-
-    if (iFMD)
-    {
-        //=================== FMD parameters ============================
-
-       AliFMD *FMD = new AliFMDv1("FMD", "normal FMD");
-   }
-
-    if (iMUON)
-    {
-        //=================== MUON parameters ===========================
-        // New MUONv1 version (geometry defined via builders)
-
-        AliMUON *MUON = new AliMUONv1("MUON", "default");
-    }
-
-    if (iPHOS)
-    {
-        //=================== PHOS parameters ===========================
-
-        AliPHOS *PHOS = new AliPHOSv1("PHOS", "IHEP");
-        //Set simulation parameters different from the default ones.
-        AliPHOSSimParam* simEmc = AliPHOSSimParam::GetInstance() ;
-  
-        // APD noise of warm (+20C) PHOS:
-        // a2 = a1*(Y1/Y2)*(M1/M2), where a1 = 0.012 is APD noise at -25C,
-        // Y1 = 4.3 photo-electrons/MeV, Y2 = 1.7 p.e/MeV - light yields at -25C and +20C,
-        // M1 = 50, M2 = 50 - APD gain factors chosen for t1 = -25C and t2 = +20C,
-        // Y = MeanLightYield*APDEfficiency.
-
-        Float_t apdNoise = 0.012*2.5; 
-        simEmc->SetAPDNoise(apdNoise);
-
-        //Raw Light Yield at +20C
-        simEmc->SetMeanLightYield(18800);
-
-        //ADC channel width at +18C.
-        simEmc->SetADCchannelW(0.0125);
-    }
-
-
-    if (iPMD)
-    {
-        //=================== PMD parameters ============================
-
-        AliPMD *PMD = new AliPMDv1("PMD", "normal PMD");
-    }
-
-    if (iT0)
-    {
-        //=================== T0 parameters ============================
-        AliT0 *T0 = new AliT0v1("T0", "T0 Detector");
-    }
-
-    if (iEMCAL)
-    {
-        //=================== EMCAL parameters ============================
-
-        AliEMCAL *EMCAL = new AliEMCALv2("EMCAL", "EMCAL_COMPLETE");
-    }
-
-     if (iACORDE)
-    {
-        //=================== ACORDE parameters ============================
-
-        AliACORDE *ACORDE = new AliACORDEv1("ACORDE", "normal ACORDE");
-    }
-
-     if (iVZERO)
-    {
-        //=================== ACORDE parameters ============================
-
-        AliVZERO *VZERO = new AliVZEROv7("VZERO", "normal VZERO");
-    }
-}
-//
-//           PYTHIA
-//
-
-AliGenerator* MbPythia()
-{
-      comment = comment.Append(" pp at 14 TeV: Pythia low-pt");
-//
-//    Pythia
-      AliGenPythia* pythia = new AliGenPythia(-1); 
-      pythia->SetMomentumRange(0, 999999.);
-      pythia->SetThetaRange(0., 180.);
-      pythia->SetYRange(-12.,12.);
-      pythia->SetPtRange(0,1000.);
-      pythia->SetProcess(kPyMb);
-      pythia->SetEnergyCMS(energy);
-      
-      return pythia;
-}
-
-AliGenerator* MbPythiaTuneD6T()
-{
-      comment = comment.Append(" pp at 14 TeV: Pythia low-pt");
-//
-//    Pythia
-      AliGenPythia* pythia = new AliGenPythia(-1); 
-      pythia->SetMomentumRange(0, 999999.);
-      pythia->SetThetaRange(0., 180.);
-      pythia->SetYRange(-12.,12.);
-      pythia->SetPtRange(0,1000.);
-      pythia->SetProcess(kPyMb);
-      pythia->SetEnergyCMS(energy);
-//    Tune
-//    109     D6T : Rick Field's CDF Tune D6T (NB: needs CTEQ6L pdfs externally)
-//      pythia->SetTune(109); // F I X 
-      pythia->SetStrucFunc(kCTEQ6l);
-//
-      return pythia;
-}
-
-AliGenerator* MbPhojet()
-{
-      comment = comment.Append(" pp at 14 TeV: Pythia low-pt");
-//
-//    DPMJET
-#if defined(__CINT__)
-  gSystem->Load("libdpmjet");      // Parton density functions
-  gSystem->Load("libTDPMjet");      // Parton density functions
-#endif
-      AliGenDPMjet* dpmjet = new AliGenDPMjet(-1); 
-      dpmjet->SetMomentumRange(0, 999999.);
-      dpmjet->SetThetaRange(0., 180.);
-      dpmjet->SetYRange(-12.,12.);
-      dpmjet->SetPtRange(0,1000.);
-      dpmjet->SetProcess(kDpmMb);
-      dpmjet->SetEnergyCMS(energy);
-
-      return dpmjet;
-}
-
-void ProcessEnvironmentVars()
-{
-    // Run type
-    if (gSystem->Getenv("CONFIG_RUN_TYPE")) {
-      for (Int_t iRun = 0; iRun < kRunMax; iRun++) {
-       if (strcmp(gSystem->Getenv("CONFIG_RUN_TYPE"), pprRunName[iRun])==0) {
-         proc = (PDC06Proc_t)iRun;
-         cout<<"Run type set to "<<pprRunName[iRun]<<endl;
-       }
-      }
-    }
-
-    // Field
-    if (gSystem->Getenv("CONFIG_FIELD")) {
-      for (Int_t iField = 0; iField < kFieldMax; iField++) {
-       if (strcmp(gSystem->Getenv("CONFIG_FIELD"), pprField[iField])==0) {
-         mag = (Mag_t)iField;
-         cout<<"Field set to "<<pprField[iField]<<endl;
-       }
-      }
-    }
-
-    // Energy
-    if (gSystem->Getenv("CONFIG_ENERGY")) {
-      energy = atoi(gSystem->Getenv("CONFIG_ENERGY"));
-      cout<<"Energy set to "<<energy<<" GeV"<<endl;
-    }
-
-    // Random Number seed
-    if (gSystem->Getenv("CONFIG_SEED")) {
-      seed = atoi(gSystem->Getenv("CONFIG_SEED"));
-    }
-}