TWiki
>
CMSPublic Web
>
SWGuide
>
SWGuideFastSimulation
>
SWGuideFastSimSimHitsAndTracks
(2015-04-27,
LukasVanelderen
)
(raw view)
E
dit
A
ttach
P
DF
---+!! !SimHits, !SimTracks, and !SimVertices in !FastSim %TOC% ---+ !SimTrack and !SimVertex collections The !SimTrack and !SimVertex collections summarise the trajectories of particles through the detector. One part of the !SimTrack and !SimVertex collection comes from the particles provided by the generator. For each generator particle, the origin vertex is stored as a !SimVertex, and the properties of the particle at the origin vertex are stored as !SimTrack. * These !SimVertices and !SimTracks are produced in the function =FBaseSimEvent::fill(const std::vector<SimTrack>& simTracks,const std::vector<SimVertex>& simVertices)= ([[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/Event/src/FBaseSimEvent.cc#L121][link to code]]) * which is caled inside =FamosManager::reconstruct= ([[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/EventProducer/src/FamosManager.cc#L170][link to code]]) The remaining part of the !SimTrack and !SimVertex collections represent decays of particles and interactions between particles and detector material. The following interactions lead to creation of !SimVertices and !SimTracks: * *bremsstrahlung:* the interaction vertex is stored as !SimVertex, the photons are stored as !SimTracks, the new state of the electron is *not* stored as !SimTrack see [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/MaterialEffects/src/MaterialEffects.cc#L342][MaterialEffects::interact]] and [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/MaterialEffects/src/BremsstrahlungSimulator.cc#L16][BremsstrahlungSimulator::compute]] * *photon conversion:* (pair production): the interaction vertex is stored as !SimVertex, the electron positron pair is stored as two Simtracks</br> see [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/MaterialEffects/src/MaterialEffects.cc#L244][MaterialEffects::interact]] and [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/MaterialEffects/src/PairProductionSimulator.cc#L13][PairProductionSimulator::compute]] * *nuclear interactions:* two kinds of nuclear interactions are stored, elastic and inelastic ones * see [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/MaterialEffects/src/MaterialEffects.cc#L281][MaterialEffects::interact]] and [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/MaterialEffects/src/MaterialEffects.cc#L281][NuclearInteractionSimulator::compute]] * elastic nuclear interactions: only if the angle between the intial and the final state particle is large enough, the interaction vertex is stored as !SimVertex and the final state particle as !SimTrack ([[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/MaterialEffects/src/NuclearInteractionSimulator.cc#L279][link to code]]) * inelastic nuclear interactions: interaction vertex is stored as !SimVertex final state particles are stored as !SimTracks * if the particle is stopped, the end vertex is stored * *decays:* the decay vertex is stored as !SimVertex and the decay products as !SimTracks</br> see [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/TrajectoryManager/src/TrajectoryManager.cc#L460][PythiaDecays::particleDaughters]] *Filtering:* only those particles for which [[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/FastSimulation/Event/src/KineParticleFilter.cc#L9][KineParticleFilter::isOKForMe]] is true (tested at the origin vertex) are considered for simulation and may be stored as !SimTracks. ---+ !SimHits in tracker * objects of class =PSimHit= ([[https://github.com/cms-sw/cmssw/blob/CMSSW_7_4_0/SimDataFormats/TrackingHit/interface/PSimHit.h][link to code]]) ---++ Useful variables * =int !PSimHit::trackId()= returns index of =SimTrack= in =SimTrackCollection= that produced the =SimHit= * =int !PSimHit::particleType()= returns the Pdg id number of the =SimTrack= that produced the =SimHit= * =float !PSimHit::energyLoss()= returns the energy lost by the =SimTrack= through ionisation in the silicon module at which the hit resides. This variable is used, during digitization, to determine the strength of the signal in the silicon sensors. -- Main.LukasVanelderen - 2015-04-21
E
dit
|
A
ttach
|
Watch
|
P
rint version
|
H
istory
: r4
<
r3
<
r2
<
r1
|
B
acklinks
|
V
iew topic
|
WYSIWYG
|
M
ore topic actions
Topic revision: r4 - 2015-04-27
-
LukasVanelderen
Log In
CMSPublic
CMSPublic Web
CMSPrivate Web
Create New Topic
Index
Search
Changes
Notifications
Statistics
Preferences
Create
a LeftBar
Public webs
Public webs
ABATBEA
ACPP
ADCgroup
AEGIS
AfricaMap
AgileInfrastructure
ALICE
AliceEbyE
AliceSPD
AliceSSD
AliceTOF
AliFemto
ALPHA
ArdaGrid
ASACUSA
AthenaFCalTBAna
Atlas
AtlasLBNL
AXIALPET
CAE
CALICE
CDS
CENF
CERNSearch
CLIC
Cloud
CloudServices
CMS
Controls
CTA
CvmFS
DB
DefaultWeb
DESgroup
DPHEP
DM-LHC
DSSGroup
EGEE
EgeePtf
ELFms
EMI
ETICS
FIOgroup
FlukaTeam
Frontier
Gaudi
GeneratorServices
GuidesInfo
HardwareLabs
HCC
HEPIX
ILCBDSColl
ILCTPC
IMWG
Inspire
IPv6
IT
ItCommTeam
ITCoord
ITdeptTechForum
ITDRP
ITGT
ITSDC
LAr
LCG
LCGAAWorkbook
Leade
LHCAccess
LHCAtHome
LHCb
LHCgas
LHCONE
LHCOPN
LinuxSupport
Main
Medipix
Messaging
MPGD
NA49
NA61
NA62
NTOF
Openlab
PDBService
Persistency
PESgroup
Plugins
PSAccess
PSBUpgrade
R2Eproject
RCTF
RD42
RFCond12
RFLowLevel
ROXIE
Sandbox
SocialActivities
SPI
SRMDev
SSM
Student
SuperComputing
Support
SwfCatalogue
TMVA
TOTEM
TWiki
UNOSAT
Virtualization
VOBox
WITCH
XTCA
Cern Search
TWiki Search
Google Search
CMSPublic
All webs
Copyright &© 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback