X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=macros%2FConfig_gener.C;h=8820a33bbd3ba49d08835badd20d6cc95cdfff0c;hb=508dc9c1c423b6d5a1d019049d021752d053aa03;hp=352f788678dc7fd374beb6d59f447238c5668744;hpb=de78d77f32907bfd9cdcd7f594b636bc55168f5a;p=u%2Fmrichter%2FAliRoot.git diff --git a/macros/Config_gener.C b/macros/Config_gener.C index 352f788678d..8820a33bbd3 100644 --- a/macros/Config_gener.C +++ b/macros/Config_gener.C @@ -15,6 +15,7 @@ #include "EVGEN/AliGenHIJINGpara.h" #include "THijing/AliGenHijing.h" #include "PYTHIA6/AliGenPythia.h" +#include "THerwig/AliGenHerwig.h" #include "EVGEN/AliGenParam.h" #include "EVGEN/AliGenMUONlib.h" #include "EVGEN/AliGenPHOSlib.h" @@ -27,11 +28,11 @@ #include "STRUCT/AliMAG.h" #endif -enum gentype_t {hijing, hijingParam, gun, box, pythia, +enum gentype_t {hijing, hijingParam, gun, box, pythia, herwig, mcatnlo, param1, param2, param3, param4, - cocktail, fluka, halo, ntuple, scan, doublescan}; + cocktail, fluka, halo, ntuple, scan}; -gentype_t gentype=param4; +gentype_t gentype = mcatnlo; Int_t ntracks=1; @@ -48,7 +49,7 @@ void Config() gSystem->Load("libgeant321"); #endif - new TGeant3("C++ Interface to Geant3"); + new TGeant3TGeo("C++ Interface to Geant3"); //======================================================================= // Create the output file @@ -57,7 +58,7 @@ void Config() cout<<"Config.C: Creating Run Loader ..."<SetPhi(180.); gener->SetTheta(5.); gener->SetOrigin(0,0,0); //vertex position - gener->SetPart(13); //GEANT particle type + gener->SetPart(kNeutron); gGener = gener; } break; @@ -143,7 +144,7 @@ void Config() gener->SetOrigin(0,0,0); //vertex position gener->SetSigma(0,0,0); //Sigma in (X,Y,Z) (cm) on IP position - gener->SetPart(5); //GEANT particle type + gener->SetPart(kMuonPlus); gGener = gener; } break; @@ -158,7 +159,7 @@ void Config() gener->SetThetaRange(9,9); //vertex position gener->SetSigma(6,6,0); //Sigma in (X,Y,Z) (cm) on IP position - gener->SetPart(5); + gener->SetPart(kMuonPlus); gener->SetRange(20, -100, 100, 20, -100, 100, 1, 500, 500); gGener = gener; } @@ -188,7 +189,7 @@ void Config() // impact parameter range gener->SetImpactParameterRange(0, 3.); // evaluate cross section before run - gener->SetEvaluate(1); + gener->SetEvaluate(0); // tell hijing to keep the full parent child chain gener->KeepFullEvent(); // enable jet quenching @@ -204,11 +205,11 @@ void Config() // momentum range gener->SetMomentumRange(0,999); // phi range - gener->SetPhiRange(-180,180); + gener->SetPhiRange(0.,360.); // theta range gener->SetThetaRange(0,180.); // select flavor (0: no, 4: charm+beauty, 5:beauty) - gener->SetFlavor(4); + gener->SetFlavor(0); // gener->SetOrigin(0., 0.0 ,0); gener->SetSigma(0,0,5.3); @@ -227,7 +228,7 @@ void Config() AliGenPythia *gener = new AliGenPythia(-1); // final state kinematic cuts gener->SetMomentumRange(0,999); - gener->SetPhiRange(-180,180); + gener->SetPhiRange(0. ,360.); gener->SetThetaRange(0., 180.); gener->SetYRange(-10,10); gener->SetPtRange(0,100); @@ -255,6 +256,63 @@ void Config() } break; + case herwig: +//******************************************** +// Example for Charm Production with Pythia * +//******************************************** + { + AliGenHerwig *gener = new AliGenHerwig(-1); +// final state kinematic cuts + gener->SetMomentumRange(0,7000); + gener->SetPhiRange(0. ,360.); + gener->SetThetaRange(0., 180.); + gener->SetYRange(-10,10); + gener->SetPtRange(0,7000); +// vertex position and smearing + gener->SetOrigin(0,0,0); // vertex position + gener->SetVertexSmear(kPerEvent); + gener->SetSigma(0,0,5.6); // Sigma in (X,Y,Z) (cm) on IP position +// Beam momenta + gener->SetBeamMomenta(7000,7000); +// Beams + gener->SetProjectile("P"); + gener->SetTarget("P"); +// Structure function + gener->SetStrucFunc(kGRVHO); +// Hard scatering + gener->SetPtHardMin(200); + gener->SetPtRMS(20); +// Min bias + gener->SetProcess(8000); +// No Tracking + gener->SetTrackingFlag(0); + gGener = gener; + } + break; + + case mcatnlo: + { + AliGenHerwig *gener = new AliGenHerwig(-1); + gener->SetMomentumRange(0,7000); + gener->SetPhiRange(0. ,360.); + gener->SetThetaRange(0., 180.); + gener->SetYRange(-10,10); + gener->SetPtRange(0,7000); + gener->SetOrigin(0,0,0); // vertex position + gener->SetVertexSmear(kPerEvent); + gener->SetSigma(0,0,5.6); // Sigma in (X,Y,Z) (cm) on IP position + gener->SetBeamMomenta(7000,7000); + gener->SetProjectile("P"); + gener->SetTarget("P"); + gener->SetStrucFunc(kCTEQ5M); + gener->SetProcess(-1705); + gener->SetHardProcessFile("sb.events"); + gener->SetEventListRange(0,1); + gener->SetTrackingFlag(0); + gGener = gener; + } + break; + case param1: //******************************************************* // Example for J/psi Production from Parameterisation @@ -265,7 +323,7 @@ void Config() new AliGenParam(ntracks, AliGenMUONlib::kUpsilon); gener->SetMomentumRange(0,999); gener->SetPtRange(0,999); - gener->SetPhiRange(-180, 180); + gener->SetPhiRange(0. , 360.); gener->SetYRange(2.5,4); gener->SetCutOnChild(1); gener->SetChildThetaRange(2,9); @@ -305,7 +363,7 @@ void Config() AliGenGSIlib::kUpsilon, "MUON"); gener->SetMomentumRange(0,999); gener->SetPtRange(0,999); - gener->SetPhiRange(-180, 180); + gener->SetPhiRange(0., 360.); gener->SetYRange(2.5,4); gener->SetCutOnChild(1); gener->SetChildThetaRange(2,9); @@ -353,7 +411,7 @@ void Config() rl->CdGAFile(); // gener->SetPartFlag(10); gener->SetMomentumRange(0,999); - gener->SetPhiRange(0,360); + gener->SetPhiRange(0.,360.); gener->SetThetaRange(0., 180.); gener->SetAgeMax(1.e-5);