6 cout <<
"--I-- Cerenkovs will be plotted." << endl;
8 cout <<
"--I-- Cerenkovs will be listed." << endl;
12 TString fRootFile =
TString(
"sim_dsk.").Append(the_RunName).Append(
".root");
15 gROOT->LoadMacro(
"$VMCWORKDIR/gconfig/rootlogon.C");
16 gROOT->LoadMacro(
"$VMCWORKDIR/gconfig/basiclibs.C");
19 gSystem->Load(
"libDsk");
22 TFile* fFile =
new TFile(fRootFile);
23 TTree* fTree = fFile->Get(
"pndsim");
25 fTree->SetBranchStatus(
"*",0);
34 fTree->SetBranchStatus(
"DskCerenkov.*",1);
35 TClonesArray* aryCerenkov = 0;
36 aryCerenkov =
new TClonesArray(
"PndDskCerenkov");
37 fTree->SetBranchAddress(
"DskCerenkov",&aryCerenkov);
40 fTree->SetBranchStatus(
"DskTrackPoints.*",1);
41 TClonesArray* aryTrackPoints = 0;
42 aryTrackPoints =
new TClonesArray(
"PndDskTrackPoint");
43 fTree->SetBranchAddress(
"DskTrackPoints",&aryTrackPoints);
46 Int_t fNofEvents = fTree->GetEntries();
49 Int_t
const maxPos = 1000;
56 TGeoManager*
geoMan = (TGeoManager*) fFile->Get(
"FAIRGeom");
58 geoMan->GetTopVolume()->Draw(
"ogl");
62 for (Int_t
ev=0;
ev<=fTree->GetEntriesFast();
ev++) {
78 for (Int_t iC=0; iC<aryCerenkov->GetEntriesFast(); iC++) {
108 printf(
"ev: %4d id: %5d time: %6.3lf det: %4d\n",
110 fCerenkov->GetTrackID(),
118 for (Int_t iT=0; iT<aryTrackPoints->GetEntriesFast(); iT++) {
121 if (fStepCnt>=maxPos) {
122 cout <<
"id = " << fCerenkov->GetTrackID()
123 <<
" omitted, cause it uses more than 10000 points!"
127 if (fTrackPoint->GetTrackID() == fCerenkov->GetTrackID()) {
128 posX[fStepCnt] = fTrackPoint->GetX();
129 posY[fStepCnt] = fTrackPoint->GetY();
130 posZ[fStepCnt] = fTrackPoint->GetZ();
137 FairVTrack *
pt =
new FairVTrack(fStepCnt);
139 pt->SetLineColor(kRed);
141 pt->SetLineColor(kBlue);
144 for (Int_t
n=0;
n<fStepCnt;
n++){
145 pt->SetPoint(
n,posX[
n],posY[n],posZ[n]);
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
Int_t GetDetNumber() const
TString pt(TString pts, TString exts="px py pz")
Double_t GetDetTime() const
Int_t GetMotherTrackID() const