Skip to content

Commit

Permalink
Update to IDEA_o1_v03 vertex (#206)
Browse files Browse the repository at this point in the history
* removing outer barrel collection, use one resolution variable per detection layer. Need to change k4RecTracker accordingly

* Final fixes

* Adding silicon wrapper digitisation
  • Loading branch information
armin-ilg authored Sep 24, 2024
1 parent 070b663 commit 0ff8eaf
Showing 1 changed file with 48 additions and 29 deletions.
77 changes: 48 additions & 29 deletions FCCee/FullSim/IDEA/IDEA_o1_v03/run_digi_reco.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,48 +33,66 @@
# digitize vertex hits
from Configurables import VTXdigitizer
import math
innerVertexResolution_x = 0.003 # [mm], assume 5 µm resolution for ARCADIA sensor
innerVertexResolution_y = 0.003 # [mm], assume 5 µm resolution for ARCADIA sensor
innerVertexResolution_x = 0.003 # [mm], assume 3 µm resolution for ARCADIA sensor
innerVertexResolution_y = 0.003 # [mm], assume 3 µm resolution for ARCADIA sensor
innerVertexResolution_t = 1000 # [ns]
outerVertexResolution_x = 0.050/math.sqrt(12) # [mm], assume ATLASPix3 sensor with 50 µm pitch
outerVertexResolution_y = 0.150/math.sqrt(12) # [mm], assume ATLASPix3 sensor with 150 µm pitch
outerVertexResolution_t = 1000 # [ns]

vtxib_digitizer = VTXdigitizer("VTXIBdigitizer",
inputSimHits = "VTXIBCollection",
outputDigiHits = "VTXIBDigis",
outputSimDigiAssociation = "VTXIBSimDigiLinks",
vtxb_digitizer = VTXdigitizer("VTXBdigitizer",
inputSimHits = "VertexBarrelCollection",
outputDigiHits = "VTXBDigis",
outputSimDigiAssociation = "VTXBSimDigiLinks",
detectorName = "Vertex",
readoutName = "VTXIBCollection",
xResolution = innerVertexResolution_x, # mm, r-phi direction
yResolution = innerVertexResolution_y, # mm, z direction
tResolution = innerVertexResolution_t,
readoutName = "VertexBarrelCollection",
xResolution = [innerVertexResolution_x, innerVertexResolution_x, innerVertexResolution_x, outerVertexResolution_x, outerVertexResolution_x], # mm, r-phi direction
yResolution = [innerVertexResolution_y, innerVertexResolution_y, innerVertexResolution_y, outerVertexResolution_y, outerVertexResolution_y], # mm, z direction
tResolution = [innerVertexResolution_t, innerVertexResolution_t, innerVertexResolution_t, outerVertexResolution_t, outerVertexResolution_t],
forceHitsOntoSurface = False,
OutputLevel = INFO
)

vtxob_digitizer = VTXdigitizer("VTXOBdigitizer",
inputSimHits = "VTXOBCollection",
outputDigiHits = "VTXOBDigis",
outputSimDigiAssociation = "VTXOBSimDigiLinks",
vtxd_digitizer = VTXdigitizer("VTXDdigitizer",
inputSimHits = "VertexEndcapCollection",
outputDigiHits = "VTXDDigis",
outputSimDigiAssociation = "VTXDSimDigiLinks",
detectorName = "Vertex",
readoutName = "VTXOBCollection",
xResolution = outerVertexResolution_x, # mm, r-phi direction
yResolution = outerVertexResolution_y, # mm, z direction
tResolution = outerVertexResolution_t, # ns
readoutName = "VertexEndcapCollection",
xResolution = [outerVertexResolution_x, outerVertexResolution_x, outerVertexResolution_x], # mm, r direction
yResolution = [outerVertexResolution_y, outerVertexResolution_y, outerVertexResolution_y], # mm, phi direction
tResolution = [outerVertexResolution_t, outerVertexResolution_t, outerVertexResolution_t], # ns
forceHitsOntoSurface = False,
OutputLevel = INFO
)

vtxd_digitizer = VTXdigitizer("VTXDdigitizer",
inputSimHits = "VTXDCollection",
outputDigiHits = "VTXDDigis",
outputSimDigiAssociation = "VTXDSimDigiLinks",
detectorName = "Vertex",
readoutName = "VTXDCollection",
xResolution = outerVertexResolution_x, # mm, r direction
yResolution = outerVertexResolution_y, # mm, phi direction
tResolution = outerVertexResolution_t, # ns
# digitise silicon wrapper hits
siWrapperResolution_x = 0.050/math.sqrt(12) # [mm]
siWrapperResolution_y = 1.0/math.sqrt(12) # [mm]
siWrapperResolution_t = 0.040 # [ns], assume 40 ps timing resolution for a single layer -> Should lead to <30 ps resolution when >1 hit

siwrb_digitizer = VTXdigitizer("SiWrBdigitizer",
inputSimHits = "SiWrBCollection",
outputDigiHits = "SiWrBDigis",
outputSimDigiAssociation = "SiWrBSimDigiLinks",
detectorName = "SiWrB",
readoutName = "SiWrBCollection",
xResolution = [siWrapperResolution_x, siWrapperResolution_x], # mm, r-phi direction
yResolution = [siWrapperResolution_y, siWrapperResolution_y], # mm, z direction
tResolution = [siWrapperResolution_t, siWrapperResolution_t],
forceHitsOntoSurface = False,
OutputLevel = INFO
)

siwrd_digitizer = VTXdigitizer("SiWrDdigitizer",
inputSimHits = "SiWrDCollection",
outputDigiHits = "SiWrDDigis",
outputSimDigiAssociation = "SiWrDSimDigiLinks",
detectorName = "SiWrD",
readoutName = "SiWrDCollection",
xResolution = [siWrapperResolution_x, siWrapperResolution_x], # mm, r-phi direction
yResolution = [siWrapperResolution_y, siWrapperResolution_y], # mm, z direction
tResolution = [siWrapperResolution_t, siWrapperResolution_t],
forceHitsOntoSurface = False,
OutputLevel = INFO
)
Expand Down Expand Up @@ -130,9 +148,10 @@
application_mgr = ApplicationMgr(
TopAlg = [
inp,
vtxib_digitizer,
vtxob_digitizer,
vtxb_digitizer,
vtxd_digitizer,
siwrb_digitizer,
siwrd_digitizer,
#dch_digitizer,
tracksFromGenParticles,
plotTrackDCHHitDistances,
Expand Down

0 comments on commit 0ff8eaf

Please sign in to comment.