SND@LHC Software
Loading...
Searching...
No Matches
scifiSimAna Namespace Reference

Functions

 siPMPosCPP (scifi)
 
 docaLinePoint (A, B, p)
 
 docaLine (a, b, c, d)
 

Variables

 parser = ArgumentParser()
 
 dest
 
 help
 
 required
 
 False
 
 default
 
 type
 
 int
 
 options = parser.parse_args()
 
 debug = options.debug
 
dict h = {}
 
 fgeo = ROOT.TFile.Open(options.geoFile)
 
 upkl = Unpickler(fgeo)
 
 snd_geo = upkl.load('ShipGeo')
 
 run = ROOT.FairRunSim()
 
 rtdb = run.GetRuntimeDb()
 
 modules = sndDet_conf.configure(run,snd_geo)
 
 sGeo = fgeo.FAIRGeom
 
 nav = sGeo.GetCurrentNavigator()
 
 top = sGeo.GetTopVolume()
 
 scifi = modules['Scifi']
 
 A = ROOT.TVector3()
 
 B = ROOT.TVector3()
 
 tchain = ROOT.TChain("cbmsim")
 
 aFile = options.inputFile.replace("XXX",str(i))
 
 L = sTree.Digi_ScifiHits2MCPoints[0]
 
 w = sTree.MCTrack[0].GetWeight()
 
dict rc = h['nMCpoints'].Fill(sTree.ScifiPoint.GetEntries(),w)
 
bool first = True
 
 impactPoint = ROOT.TVector3(p.GetX(),p.GetY(),p.GetZ())
 
 D = docaLinePoint(A,B,impactPoint)
 
 P = ROOT.TVector3(p.GetPx(),p.GetPy(),p.GetPz())
 
dict hitDict = {}
 
 d = sTree.Digi_ScifiHits[k]
 
int NmuonHit = 0
 
bool isMuon = True
 
 meanImpact = ROOT.TVector3(0,0,0)
 
int nPoints = 0
 
 cl_size = cl.GetN()
 
 points = L.wList(c)
 
 scifiPoint = sTree.ScifiPoint[p[0]]
 
 trackKey = scifiPoint.GetTrackID()
 
int pid = -1
 
dict r = h['Edigi_muon'].Fill(d.GetEnergy())
 
int vertical = 1
 
 locCluster = scifi.GetLocalPos(first,A)
 
 locPart = scifi.GetLocalPos(first,meanImpact)
 
 delta
 
int docaMax = 0
 
 loc = scifi.GetLocalPos(aHit,A)
 
 glob = array('d',[0,0,0])
 

Function Documentation

◆ docaLine()

scifiSimAna.docaLine (   a,
  b,
  c,
  d 
)

Definition at line 86 of file scifiSimAna.py.

86def docaLine(a,b,c,d):
87 u = b-a
88 v = d-c
89 n = u.Cross(v)
90 ac = a-c
91 if n.Mag()==0:
92 dist = ROOT.TMath.Sqrt(ac.Mag2()+3*(ac.Dot(u))**2/u.Mag2())
93 else:
94 dist = n.Dot(ac)/n.Mag()
95 return dist
96
97

◆ docaLinePoint()

scifiSimAna.docaLinePoint (   A,
  B,
  p 
)

Definition at line 82 of file scifiSimAna.py.

82def docaLinePoint(A,B,p):
83 n = B-A
84 tmp = (A-p).Cross(n)
85 return tmp.Mag()/n.Mag()

◆ siPMPosCPP()

scifiSimAna.siPMPosCPP (   scifi)

Definition at line 75 of file scifiSimAna.py.

75def siPMPosCPP(scifi):
76 P=scifi.GetSiPMPos()
77 Pos = {}
78 for x in P:
79 Pos[x.first]=x.second
80 return Pos
81

Variable Documentation

◆ A

scifiSimAna.A = ROOT.TVector3()

Definition at line 98 of file scifiSimAna.py.

◆ aFile

scifiSimAna.aFile = options.inputFile.replace("XXX",str(i))

Definition at line 106 of file scifiSimAna.py.

◆ B

scifiSimAna.B = ROOT.TVector3()

Definition at line 99 of file scifiSimAna.py.

◆ cl_size

scifiSimAna.cl_size = cl.GetN()

Definition at line 158 of file scifiSimAna.py.

◆ D

scifiSimAna.D = docaLinePoint(A,B,impactPoint)

Definition at line 133 of file scifiSimAna.py.

◆ d

scifiSimAna.d = sTree.Digi_ScifiHits[k]

Definition at line 146 of file scifiSimAna.py.

◆ debug

scifiSimAna.debug = options.debug

Definition at line 16 of file scifiSimAna.py.

◆ default

scifiSimAna.default

Definition at line 8 of file scifiSimAna.py.

◆ delta

scifiSimAna.delta

Definition at line 187 of file scifiSimAna.py.

◆ dest

scifiSimAna.dest

Definition at line 8 of file scifiSimAna.py.

◆ docaMax

scifiSimAna.docaMax = 0

Definition at line 197 of file scifiSimAna.py.

◆ False

scifiSimAna.False

Definition at line 8 of file scifiSimAna.py.

◆ fgeo

scifiSimAna.fgeo = ROOT.TFile.Open(options.geoFile)

Definition at line 19 of file scifiSimAna.py.

◆ first

bool scifiSimAna.first = True

Definition at line 117 of file scifiSimAna.py.

◆ glob

scifiSimAna.glob = array('d',[0,0,0])

Definition at line 219 of file scifiSimAna.py.

◆ h

dict scifiSimAna.h = {}

Definition at line 17 of file scifiSimAna.py.

◆ help

scifiSimAna.help

Definition at line 8 of file scifiSimAna.py.

◆ hitDict

dict scifiSimAna.hitDict = {}

Definition at line 144 of file scifiSimAna.py.

◆ impactPoint

scifiSimAna.impactPoint = ROOT.TVector3(p.GetX(),p.GetY(),p.GetZ())

Definition at line 132 of file scifiSimAna.py.

◆ int

scifiSimAna.int

Definition at line 12 of file scifiSimAna.py.

◆ isMuon

scifiSimAna.isMuon = True

Definition at line 154 of file scifiSimAna.py.

◆ L

scifiSimAna.L = sTree.Digi_ScifiHits2MCPoints[0]

Definition at line 111 of file scifiSimAna.py.

◆ loc

scifiSimAna.loc = scifi.GetLocalPos(aHit,A)

Definition at line 200 of file scifiSimAna.py.

◆ locCluster

scifiSimAna.locCluster = scifi.GetLocalPos(first,A)

Definition at line 184 of file scifiSimAna.py.

◆ locPart

scifiSimAna.locPart = scifi.GetLocalPos(first,meanImpact)

Definition at line 185 of file scifiSimAna.py.

◆ meanImpact

scifiSimAna.meanImpact = ROOT.TVector3(0,0,0)

Definition at line 155 of file scifiSimAna.py.

◆ modules

scifiSimAna.modules = sndDet_conf.configure(run,snd_geo)

Definition at line 34 of file scifiSimAna.py.

◆ nav

scifiSimAna.nav = sGeo.GetCurrentNavigator()

Definition at line 36 of file scifiSimAna.py.

◆ NmuonHit

int scifiSimAna.NmuonHit = 0

Definition at line 151 of file scifiSimAna.py.

◆ nPoints

int scifiSimAna.nPoints = 0

Definition at line 156 of file scifiSimAna.py.

◆ options

scifiSimAna.options = parser.parse_args()

Definition at line 15 of file scifiSimAna.py.

◆ P

scifiSimAna.P = ROOT.TVector3(p.GetPx(),p.GetPy(),p.GetPz())

Definition at line 141 of file scifiSimAna.py.

◆ parser

scifiSimAna.parser = ArgumentParser()

Definition at line 7 of file scifiSimAna.py.

◆ pid

scifiSimAna.pid = -1

Definition at line 165 of file scifiSimAna.py.

◆ points

scifiSimAna.points = L.wList(c)

Definition at line 161 of file scifiSimAna.py.

◆ r

dict scifiSimAna.r = h['Edigi_muon'].Fill(d.GetEnergy())

Definition at line 180 of file scifiSimAna.py.

◆ rc

dict scifiSimAna.rc = h['nMCpoints'].Fill(sTree.ScifiPoint.GetEntries(),w)

Definition at line 114 of file scifiSimAna.py.

◆ required

scifiSimAna.required

Definition at line 8 of file scifiSimAna.py.

◆ rtdb

scifiSimAna.rtdb = run.GetRuntimeDb()

Definition at line 33 of file scifiSimAna.py.

◆ run

scifiSimAna.run = ROOT.FairRunSim()

Definition at line 29 of file scifiSimAna.py.

◆ scifi

scifiSimAna.scifi = modules['Scifi']

Definition at line 38 of file scifiSimAna.py.

◆ scifiPoint

scifiSimAna.scifiPoint = sTree.ScifiPoint[p[0]]

Definition at line 163 of file scifiSimAna.py.

◆ sGeo

scifiSimAna.sGeo = fgeo.FAIRGeom

Definition at line 35 of file scifiSimAna.py.

◆ snd_geo

scifiSimAna.snd_geo = upkl.load('ShipGeo')

Definition at line 24 of file scifiSimAna.py.

◆ tchain

scifiSimAna.tchain = ROOT.TChain("cbmsim")

Definition at line 101 of file scifiSimAna.py.

◆ top

scifiSimAna.top = sGeo.GetTopVolume()

Definition at line 37 of file scifiSimAna.py.

◆ trackKey

scifiSimAna.trackKey = scifiPoint.GetTrackID()

Definition at line 164 of file scifiSimAna.py.

◆ type

scifiSimAna.type

Definition at line 12 of file scifiSimAna.py.

◆ upkl

scifiSimAna.upkl = Unpickler(fgeo)

Definition at line 23 of file scifiSimAna.py.

◆ vertical

int scifiSimAna.vertical = 1

Definition at line 182 of file scifiSimAna.py.

◆ w

int scifiSimAna.w = sTree.MCTrack[0].GetWeight()

Definition at line 112 of file scifiSimAna.py.