2018 Session 5 : Exercise

Code for download: session5_start.tar.gz

Exercise 5a:

  • Complete implementation of the hit and sensitive detector classes for the Drift chamber (EDChamberHit, EDChamberSD) to account the following information when a charged track passed through the detector:
    • the chamber layer number
    • the time when a particle hits chamber
    • the hit global position (the position in the world volume frame)
  • Hints:
    • The code for the layer number is already implemented, add missing code for the other quantities
    • To check if the hits are correctly accounted, add printing of the added hit data in EDChamberHit::Print()

Exercise 5b:

  • Complete implementation of the sensitive detector class for the EM calorimeter (EDEmCalorimeterSD) to account the following information in the calorimeter hits (EDEmCalorimeterHit):
    • the layer number
    • the total energy deposit in the layer (= the accumulated deposit from all particles).
  • Hints:
    • In difference from Chamber hits, the Calorimeter hits are created in EDEmCalorimeterSD::Initialize() and updated in EDEmCalorimeterSD::ProcessHits().
      • See also example B4/B4c how to account the energy deposit in a calorimeter.
    • The class EDEmCalorimeterHit is already implemented.
    • To control your implementation, add printing of the calorimeter hit collection at the end of each event (in EDEmCalorimeterSD::EndOfEvent()), see the similar code in EDChamberSD class)

Exercise 5c:

  • Implement drawing Chamber hits:
    • Add and implement EDChamberHit::Draw() function.(See B2TrackerHit class in basic/B2/B2a example).
    • Activate drawing hits in vis.mac macro
  • Explore visualization commands

Solution: session5_solution.tar.gz