FairRoot/PandaRoot
charmonium/jul10/simfast_cmp.C
Go to the documentation of this file.
1 // *******
2 // Macro for running fast simulation
3 // *******
4 
5 
6 void simfast_cmp(TString part="psi(2S)", TString decfile="PSI2S.DEC",int nevts=1000, double mom=15., TString outfile="")
7 {
8  TStopwatch timer;
9  timer.Start();
10  gDebug=0;
11 
12  // Load basic libraries
13  gROOT->LoadMacro("$VMCWORKDIR/gconfig/rootlogon.C");
14  rootlogon();
15 
16  // Load this example libraries
17  //gSystem->Load("libRho");
18  gSystem->Load("libfastsim");
19 
20  if (outfile=="") outfile=decfile+".fast.root";
21 
22  FairRunSim *fRun = new FairRunSim();
23  fRun->SetOutputFile(outfile.Data());
24  fRun->SetName("TGeant3");
25 
26  // Create and Set Event Generator
27  //-------------------------------
28 
29  FairPrimaryGenerator* primGen = new FairPrimaryGenerator();
30  fRun->SetGenerator(primGen);
31 
33  PndEvtGenDirect *EvtGen = new PndEvtGenDirect(part,decfile,mom);
34  EvtGen->SetStoreTree();
35  primGen->AddGenerator(EvtGen);
36 // FairEvtGenGenerator* evtGen = new FairEvtGenGenerator(infile.Data());
37 // primGen->AddGenerator(evtGen);
38 
39  primGen->DoTracking(kFALSE);
40 
41 
42  //Setup the Fast Simulation Task
43  //-----------------------------
44  PndFastSim* fastSim = new PndFastSim();
45  fastSim->SetVerbosity(0);
46  fastSim->AddDetector("CmpDet");
47  fastSim->EnablePropagation();
48 
49  fRun->AddTask(fastSim);
50 
51  fRun->Init();
52  if (nevts==0) nevts=10;
53  fRun->Run(nevts);
54 
55  timer.Stop();
56  Double_t rtime = timer.RealTime();
57  Double_t ctime = timer.CpuTime();
58  printf("RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
59 }
60 
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
bool AddDetector(std::string name, std::string params="")
Definition: PndFastSim.cxx:313
Double_t mom
Definition: plot_dirc.C:14
FairPrimaryGenerator * primGen
Definition: sim_emc_apd.C:81
FairRunAna * fRun
Definition: hit_dirc.C:58
void SetStoreTree(Bool_t store=true)
Double_t
TStopwatch timer
Definition: hit_dirc.C:51
gDebug
Definition: sim_emc_apd.C:6
Double_t ctime
Definition: hit_dirc.C:114
void SetVerbosity(int vb)
Definition: PndFastSim.h:59
void simfast_cmp(TString infile="dsdsj20k.evt", int nevts=0, TString outfile="")
Double_t rtime
Definition: hit_dirc.C:113
TString outfile
void EnablePropagation(bool propagate=true, bool tostartvtx=true, bool usecovmatrix=true, double tolerance=0.0)
Definition: PndFastSim.cxx:303