Belle II Software  release-05-02-19
MakeMCParticles Class Reference
Inheritance diagram for MakeMCParticles:
Collaboration diagram for MakeMCParticles:

Public Member Functions

def initialize (self)
 
def event (self)
 

Detailed Description

make MCParticles from reconstructed cosmic tracks 

Definition at line 16 of file makeMCParticlesFromGCRData.py.

Member Function Documentation

◆ event()

def event (   self)
event processing 

Definition at line 25 of file makeMCParticlesFromGCRData.py.

25  def event(self):
26  ''' event processing '''
27 
28  mcParticles = Belle2.PyStoreArray('MCParticles')
29  tracks = Belle2.PyStoreArray('Tracks')
30  absPDG = abs(Belle2.Const.muon.getPDGCode())
31  mass = Belle2.Const.muon.getMass()
32  for track in tracks:
33  extHits = track.getRelationsWith('ExtHits')
34  selExtHits = []
35  for extHit in extHits:
36  if extHit.getDetectorID() != Belle2.Const.TOP:
37  continue
38  if abs(extHit.getPdgCode()) != absPDG:
39  continue
40  if extHit.getPosition().Perp() < 123.5:
41  continue
42  if extHit.getPosition() * extHit.getMomentum() > 0:
43  continue
44  selExtHits.append(extHit)
45  if len(selExtHits) == 0:
46  continue
47  sortedExtHits = sorted(selExtHits, key=lambda x: (x.getTOF()))
48  extHit = sortedExtHits[0]
49  pos = extHit.getPosition()
50  mom = extHit.getMomentum()
51  tof = extHit.getTOF()
52  part = mcParticles.appendNew()
53  part.setPDG(extHit.getPdgCode())
54  part.setMass(mass)
55  part.setProductionVertex(pos)
56  part.setProductionTime(tof)
57  part.setMomentum(mom)
58  part.setEnergy(math.sqrt(mom.Mag2() + mass**2))
59  part.setValidVertex(True)
60  part.setStatus(Belle2.MCParticle.c_PrimaryParticle)
61  part.addStatus(Belle2.MCParticle.c_StableInGenerator)
62 
63  if mcParticles.getEntries() > 0:
64  self.return_value(1)
65  else:
66  self.return_value(0)
67 
68 
69 # Create path

◆ initialize()

def initialize (   self)
initialization 

Definition at line 19 of file makeMCParticlesFromGCRData.py.


The documentation for this class was generated from the following file:
ClusterEfficiency.ClusterEfficiency.event
def event(self)
Definition: ClusterEfficiency.py:146
Belle2::PyStoreArray
a (simplified) python wrapper for StoreArray.
Definition: PyStoreArray.h:58