8         gRandom->SetSeed(
seed);
 
   15         else if (emcModule==
"barrel")
 
   19         else if (emcModule==
"fwd")
 
   23         else if (emcModule==
"bwd")
 
   27         else if (emcModule==
"shashlyk")
 
   30         } 
else if (emcModule==
"all")
 
   36                 std::cout<<
"Incorrect emcModule parameter: "<<emcModule<<std::endl;
 
   41         if (energyRange==
"low")
 
   44         } 
else if (energyRange==
"high")
 
   47         } 
else if (energyRange==
"all")
 
   50         } 
else if (energyRange==
"1GeV")
 
   55                 std::cout<<
"Incorrect parameter energyRange: "<<energyRange<<std::endl;
 
   61         TString OutputSimFile = 
"emc_complete";
 
   62         OutputSimFile = OutputSimFile+
"_"+part+
"_"+energyRange+
"_"+TransportModel+
 
   63         "_"+emcModule+
"_"+s1+
"_QA.root";
 
   64         TString OutputDatabaseFile = 
"simparams";
 
   65         OutputDatabaseFile = OutputDatabaseFile+
"_"+part+
"_"energyRange+
"_"+TransportModel+
 
   66         "_"+emcModule+
"_"+s1+
"_QA.root";
 
   72         FairLogger::GetLogger()->SetLogToFile(kFALSE);
 
   73   FairRunSim *
fRun = 
new FairRunSim();
 
   80    fRun->SetName(TransportModel);
 
   83   fRun->SetOutputFile(OutputSimFile);
 
   89   emcDigiFile += 
"/macro/params/";
 
   93   FairRuntimeDb* 
rtdb = fRun->GetRuntimeDb();
 
   94   FairParAsciiFileIo* 
parIo1 = 
new FairParAsciiFileIo();
 
   95   parIo1->open(emcDigiFile.Data(),
"in");
 
   96   rtdb->setFirstInput(parIo1);        
 
  100   FairParRootFileIo* 
output=
new FairParRootFileIo(kParameterMerged);
 
  101   output->open(OutputDatabaseFile);
 
  102   rtdb->setOutput(output);
 
  108   fRun->SetMaterials(
"media_pnd.geo");
 
  113   Cave->SetGeometryFileName(
"pndcave.geo");
 
  114   fRun->AddModule(Cave); 
 
  119   fRun->AddModule(Emc);
 
  122         Magnet->SetGeometryFileName(
"FullSuperconductingSolenoid_v831.root");
 
  123         fRun->AddModule(Magnet);
 
  126         Dipole->SetGeometryFileName(
"dipole.geo");
 
  127         fRun->AddModule(Dipole);
 
  130   Pipe->SetGeometryFileName(
"beampipe_201309.root");
 
  131   fRun->AddModule(Pipe);
 
  133         FairDetector *
Stt= 
new PndStt(
"STT", kTRUE);
 
  134         Stt->SetGeometryFileName(
"straws_skewed_blocks_35cm_pipe.geo");
 
  135         fRun->AddModule(Stt);
 
  138         Mvd->SetGeometryFileName(
"Mvd-2.1_FullVersion.root");
 
  139         fRun->AddModule(Mvd);
 
  148         fRun->AddModule(Muo);
 
  151         Gem->SetGeometryFileName(
"gem_3Stations.root");
 
  152         fRun->AddModule(Gem);
 
  154   FairDetector *SciT = 
new PndSciT(
"SCIT",kTRUE);
 
  155   SciT->SetGeometryFileName(
"barrel-SciTil_07022013.root");
 
  156   fRun->AddModule(SciT);
 
  159         Dsk->SetGeometryFileName(
"dsk.root");
 
  162         fRun->AddModule(Dsk);
 
  166   Drc->SetGeometryFileName(
"dirc_l0_p0_updated.root"); 
 
  168   fRun->AddModule(Drc); 
 
  170         FairDetector *
Fts= 
new PndFts(
"FTS", kTRUE);
 
  171         Fts->SetGeometryFileName(
"fts.geo");
 
  172         fRun->AddModule(Fts);
 
  177   FairPrimaryGenerator* 
primGen = 
new FairPrimaryGenerator();
 
  178   fRun->SetGenerator(primGen);
 
  180   TDatabasePDG *pdg = 
new TDatabasePDG();
 
  181   Int_t part_pid = pdg->GetParticle(part)->PdgCode();
 
  184   FairBoxGenerator* 
boxGen = 
new FairBoxGenerator(part_pid, 1); 
 
  187   boxGen->SetPRange(momentum_min,momentum_max); 
 
  189   boxGen->SetPhiRange(phi_min, phi_max); 
 
  190   boxGen->SetThetaRange(theta_min, theta_max); 
 
  191   boxGen->SetXYZ(0., 0., 0.); 
 
  192   primGen->AddGenerator(boxGen);  
 
  195   fRun->SetBeamMom(15); 
 
  198   fRun->SetField(fField);
 
  205   fRun->AddTask(emcHitProd);
 
  211   fRun->AddTask(emcHitsToWaveform);  
 
  212   fRun->AddTask(emcWaveformToDigi);  
 
  216   fRun->AddTask(emcMakeCluster);
 
  219   fRun->AddTask(emcHdrFiller); 
 
  223   fRun->AddTask(emcMakeBump);
 
  230   Par->setInputVersion(fRun->GetRunId(),1);
 
  242   printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
 
void SetForward(TString name)
void SetStorageOfData(Bool_t val)
Method to specify whether clusters are stored or not. 
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
PndEmcHitsToWaveform * emcHitsToWaveform
void SetParameters(FairField *field)
creates PndEmcHits from PndEmcPoints 
void SetMdtMFIron(bool opt=false)
void SetStorageOfData(Bool_t val)
PndEmcMakeBump * emcMakeBump
FairParRootFileIo * output
FairPrimaryGenerator * primGen
PndEmcHdrFiller * emcHdrFiller
void SetMdtMagnet(bool opt=false)
void SetStorageOfData(Bool_t val)
void SetStoreTrackPoints(Bool_t storeTrackPoints)
void SetStoreCerenkovs(Bool_t storeCerenkovs)
PndEmcMakeCluster * emcMakeCluster
virtual void SetGeometryVersion(const Int_t GeoNumber)
void SetBarrel(TString name)
void SetStorageOfData(Bool_t val)
Method to specify whether bumps are stored or not. 
Takes clusters and slits them up into bumps. 
PndEmcWaveformToDigi * emcWaveformToDigi
FairParAsciiFileIo * parIo1
FairBoxGenerator * boxGen
Task to cluster PndEmcDigis. 
void SetEndcap(TString name)
void SetMuonFilter(TString name)
void SetRunCherenkov(Bool_t ch)
Task to create Emc header.