6         const int seed = 0, 
const double dP = 0, 
TString geometryFile = 
"") {
 
   11         if (geometryFile == 
"") {
 
   12                 geometryFile = 
"Luminosity-Detector.root";
 
   15         gRandom->SetSeed(
seed);
 
   21         cout << 
"We start run for beam Mom = " << 
mom << endl;
 
   34         FairRunSim *
fRun = 
new FairRunSim();
 
   35         cout << 
"All libraries succsesfully loaded!" << endl;
 
   38         fRun->SetName(
"TGeant4");
 
   41         fRun->SetOutputFile(simOutput);
 
   44         fRun->SetMaterials(
"media_pnd.geo");
 
   49         Cave->SetGeometryFileName(
"pndcave.geo");
 
   50         fRun->AddModule(Cave);
 
   54         Pipe->SetGeometryFileName(
"beampipe_201309.root");
 
   55         fRun->AddModule(Pipe);
 
   58         Magnet->SetGeometryFileName(
"FullSolenoid_V842.root");
 
   59         fRun->AddModule(Magnet);
 
   62         Dipole->SetGeometryFileName(
"dipole.geo");
 
   63         fRun->AddModule(Dipole);
 
   69         Lum->SetGeometryFileName(geometryFile);
 
   76         FairPrimaryGenerator* 
primGen = 
new FairPrimaryGenerator();
 
   78         fRun->SetGenerator(primGen);
 
   81         FairBoxGenerator *
fBox = 
new FairBoxGenerator(
particle, trkNum);
 
   86         fBox->SetThetaRange(0.13, 0.65); 
 
   94         fBox->SetPhiRange(0, 360.);
 
   99         primGen->AddGenerator(fBox);
 
  102         fRun->SetBeamMom(
mom);
 
  106         fRun->SetField(fField);
 
  109                 fRun->SetStoreTraj(kTRUE); 
 
  111                 fRun->SetStoreTraj(kFALSE);
 
  114         bool misalignedGeometry = 
false;
 
  115         if (misalignedGeometry) {
 
  117                 string misMatricesFilePath = 
"misalignMatrices-SensorsOnly.root";
 
  120                 TFile *misalignmentMatrixRootfile = 
new TFile(misMatricesFilePath.c_str(), 
"READ");
 
  121                 if (misalignmentMatrixRootfile->IsOpen()) {
 
  123                         printf(
"File opened successfully\n");
 
  124                         std::map < std::string, TGeoHMatrix > *matrices;
 
  126                         gDirectory->GetObject(
"PndLmdMisalignMatrices", matrices);
 
  127                         misalignmentMatrixRootfile->Close();
 
  129                         cout << matrices->size() << 
" matrices successfully read from file.";
 
  132                         cout << 
"matrix set!\n";
 
  136                                 for (
auto &
i : *matrices) {
 
  137                                         cout << 
"\n---\n" << 
i.first << 
"\n";
 
  146                         cerr << 
"WARNING. I was instructed to use misaligned geometry,\n";
 
  147                         cerr << 
"but no misaligned matrices could be found in " << misMatricesFilePath << 
"\n";
 
  158         FairRuntimeDb *
rtdb = fRun->GetRuntimeDb();
 
  160         FairParRootFileIo* 
output = 
new FairParRootFileIo(kParameterMerged);
 
  161         output->open(parOutput.Data(), 
"RECREATE");
 
  162         rtdb->setOutput(output);
 
  167         Par->setInputVersion(fRun->GetRunId(), 1);
 
  181         printf(
"RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime);
 
void SetMisalignmentMatrices(const std::map< std::string, TGeoHMatrix > &alignmentMatrices)
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
void SetExclusiveSensorType(const TString sens)
void SetParameters(FairField *field)
TGeoManager * gGeoManager
FairParRootFileIo * output
FairPrimaryGenerator * primGen
int runLumiPixel0SimBox(const int nEvents=10, const int startEv=0, TString storePath="tmpOutput", const int verboseLevel=0, const int particle=-2212, double mom=15, const int trkNum=1, const int seed=0, const double dP=0, TString geometryFile="")
void SetVerboseLevel(Int_t level)