SND@LHC Software
Loading...
Searching...
No Matches
TTCluster.TTCluster Class Reference

CLASS OF TT AND HPT EVENTS ######################################################. More...

Public Member Functions

 __init__ (self, DetID, Xraw, Yraw, Edep)
 
 SetLYRange (self, ly_min, ly_max)
 
 SetSipmPosition (self, sipm_hor_pos, sipm_vert_pos)
 
 SetSipmIsReversed (self, is_sipm_hor_reversed, is_sipm_vert_reversed)
 
 ClusterGen (self)
 
 GetXYZ (self)
 

Public Attributes

 DetID
 
 Xraw
 
 Yraw
 
 Edep
 
 ly
 
 cluster
 
 station
 
 matnum
 
 Xrec
 
 Yrec
 
 is_created
 
 recovery_globalpos
 
 delta
 
 sipm_hor_pos
 
 sipm_vert_pos
 
 is_sipm_hor_reversed
 
 is_sipm_vert_reversed
 
 ly_min
 
 ly_max
 

Detailed Description

CLASS OF TT AND HPT EVENTS ######################################################.

Definition at line 527 of file TTCluster.py.

Constructor & Destructor Documentation

◆ __init__()

TTCluster.TTCluster.__init__ (   self,
  DetID,
  Xraw,
  Yraw,
  Edep 
)

Definition at line 529 of file TTCluster.py.

529 def __init__(self, DetID, Xraw, Yraw, Edep):
530 self.DetID = DetID
531 self.Xraw = Xraw
532 self.Yraw = Yraw
533 self.Edep = Edep * 1000 # to MeV
534 self.ly = 0.
535 self.cluster = []
536 self.station = 0
537 self.matnum = 0
538 self.Xrec = 0.
539 self.Yrec = 0.
540 self.is_created = False
541 # Only to check the edge events
542 self.recovery_globalpos = 0
543 self.delta = -13
544 # The default values should be set
545 self.sipm_hor_pos = +1 # +1 at X = +len_vert / 2
546 self.sipm_vert_pos = +1 #-1 at Y = -len_hor / 2
547 self.is_sipm_hor_reversed = False # Channels and axis are co-directional or not
548 self.is_sipm_vert_reversed = False
549 self.ly_min = 4.5
550 self.ly_max = 104
551

Member Function Documentation

◆ ClusterGen()

TTCluster.TTCluster.ClusterGen (   self)

Definition at line 565 of file TTCluster.py.

565 def ClusterGen(self):
566 if GetMatType(self.DetID) is False:
567 return False
568 elif GetMatType(self.DetID) == 1: # vert
569 first_coord = self.Xraw
570 second_coord = self.Yraw
571 sipm_pos = self.sipm_vert_pos
572 is_sipm_reversed = self.is_sipm_hor_reversed
573 elif GetMatType(self.DetID) == 0: # hor
574 first_coord = self.Yraw
575 second_coord = self.Xraw
576 sipm_pos = self.sipm_hor_pos
577 is_sipm_reversed = self.is_sipm_vert_reversed
578 self.matnum = GetMatNum(self.DetID)
579 nmats = GetMatQty(self.DetID)
580 matlen = GetMatLength(self.DetID)
581 self.station = GetStationNum(self.DetID)
582 localpos = global_to_local(self.DetID, first_coord)
583
584 if sipm_pos == +1:
585 distance = GetMatLength(self.DetID)/2. - second_coord
586 elif sipm_pos == -1:
587 distance = GetMatLength(self.DetID)/2. + second_coord
588
589 channelpos = cm_to_channel(localpos, reverse=is_sipm_reversed)
590 self.ly = int(round(
591 edep_to_ly(self.Edep) * ly_attenuation(distance)
592 ))
593
594 if not self.ly_min < self.ly < self.ly_max:
595 return False
596
597 cluster_width = int(round(cluster_width_random(distance, ly=self.ly)))
598 cluster = create_cluster(self.ly, cluster_width, channelpos)
599 wmp_of_cluster = weigthed_mean_pos(cluster)
600 recovery_localpos = channel_to_cm(wmp_of_cluster, reverse=is_sipm_reversed)
601
602 self.recovery_globalpos = local_to_global(self.DetID, recovery_localpos)
603 self.delta = first_coord - self.recovery_globalpos
604
605 # Some edge events may be reconstructed incorrectly
606 if abs(self.delta) > 1:
607 return False
608
609 if GetMatType(self.DetID) == 1: # vert
610 self.Xrec = self.recovery_globalpos
611 elif GetMatType(self.DetID) == 0: # hor
612 self.Yrec = self.recovery_globalpos
613 self.is_created = True
614 return cluster
615

◆ GetXYZ()

TTCluster.TTCluster.GetXYZ (   self)

Definition at line 616 of file TTCluster.py.

616 def GetXYZ(self):
617 if self.is_created:
618 return self.Xrec, self.Yrec, self.station
619 else:
620 return 0, 0, 0

◆ SetLYRange()

TTCluster.TTCluster.SetLYRange (   self,
  ly_min,
  ly_max 
)

Definition at line 552 of file TTCluster.py.

552 def SetLYRange(self, ly_min, ly_max):
553 self.ly_min = ly_min
554 self.ly_max = ly_max
555

◆ SetSipmIsReversed()

TTCluster.TTCluster.SetSipmIsReversed (   self,
  is_sipm_hor_reversed,
  is_sipm_vert_reversed 
)

Definition at line 560 of file TTCluster.py.

560 def SetSipmIsReversed(self, is_sipm_hor_reversed, is_sipm_vert_reversed):
561 self.is_sipm_hor_reversed = is_sipm_hor_reversed
562 self.is_sipm_vert_reversed = is_sipm_vert_reversed
563

◆ SetSipmPosition()

TTCluster.TTCluster.SetSipmPosition (   self,
  sipm_hor_pos,
  sipm_vert_pos 
)

Definition at line 556 of file TTCluster.py.

556 def SetSipmPosition(self, sipm_hor_pos, sipm_vert_pos):
557 self.sipm_hor_pos = sipm_hor_pos
558 self.sipm_vert_pos = sipm_vert_pos
559

Member Data Documentation

◆ cluster

TTCluster.TTCluster.cluster

Definition at line 535 of file TTCluster.py.

◆ delta

TTCluster.TTCluster.delta

Definition at line 543 of file TTCluster.py.

◆ DetID

TTCluster.TTCluster.DetID

Definition at line 530 of file TTCluster.py.

◆ Edep

TTCluster.TTCluster.Edep

Definition at line 533 of file TTCluster.py.

◆ is_created

TTCluster.TTCluster.is_created

Definition at line 540 of file TTCluster.py.

◆ is_sipm_hor_reversed

TTCluster.TTCluster.is_sipm_hor_reversed

Definition at line 547 of file TTCluster.py.

◆ is_sipm_vert_reversed

TTCluster.TTCluster.is_sipm_vert_reversed

Definition at line 548 of file TTCluster.py.

◆ ly

TTCluster.TTCluster.ly

Definition at line 534 of file TTCluster.py.

◆ ly_max

TTCluster.TTCluster.ly_max

Definition at line 550 of file TTCluster.py.

◆ ly_min

TTCluster.TTCluster.ly_min

Definition at line 549 of file TTCluster.py.

◆ matnum

TTCluster.TTCluster.matnum

Definition at line 537 of file TTCluster.py.

◆ recovery_globalpos

TTCluster.TTCluster.recovery_globalpos

Definition at line 542 of file TTCluster.py.

◆ sipm_hor_pos

TTCluster.TTCluster.sipm_hor_pos

Definition at line 545 of file TTCluster.py.

◆ sipm_vert_pos

TTCluster.TTCluster.sipm_vert_pos

Definition at line 546 of file TTCluster.py.

◆ station

TTCluster.TTCluster.station

Definition at line 536 of file TTCluster.py.

◆ Xraw

TTCluster.TTCluster.Xraw

Definition at line 531 of file TTCluster.py.

◆ Xrec

TTCluster.TTCluster.Xrec

Definition at line 538 of file TTCluster.py.

◆ Yraw

TTCluster.TTCluster.Yraw

Definition at line 532 of file TTCluster.py.

◆ Yrec

TTCluster.TTCluster.Yrec

Definition at line 539 of file TTCluster.py.


The documentation for this class was generated from the following file: