You zhengyun, Mao yajun School of Physics , PKU 2003.12.17 BesMUC Current Status You zhengyun, Mao yajun School of Physics , PKU 2003.12.17
BesMUC Reconstruction Sketch BesMUC Geometry BesMUC Simulation BesMUC Reconstruction
BOOST BesMUC Geometry Simu Geom generated automatically same position Database or ASCII file persistent geom data store BesMUC Gdml Writer BesMUC.gdml BOOST Simu Geom generated automatically BES Framework Reco Geom same position same hierarchy
MUC Detector Construction BesMUC Simulation BesMUC.gdml BesMUC MUC Detector Construction Geometry BesMUC Simulation ~100,000 lines Time to read: ~17sec in BOOST MUC SD MUC Sensitive Detector Single particle event generator CPU 1.2G : 0.05sec / event >1000 event : crashed G4Track MUC Digit MUC Hit BesPersEvent Persistent data store Designed by myself To disk : “BesEvent.root” Event Display
A Barrel event : particle : mu+ , p = 1.2Gev/c θ = 90o , φ= 90o
A End-cap event : particle : mu+ , p = 1.2Gev/c cosθ = 0.7 , φ= 75o
BesMUCSD A G4 track BesMUCHit BesMUCDigit RPC gas chamber : Sensitive Detector A G4 track BesMUCHit a step in tracking; : fEnergy, fTime, fPosition, fDirection, …… BesMUCDigit simply project a hit to strip. BesMUCDigit::GetNearestStrip(); : fPart, fSegment, fGap, fStrip
A root class designed by myself, temporally for BOOST data store. BesPersEvent in file “BesEvent.root” Object Persistency ! TTree a Branch BesPersEvent event by event … TClonesArray : BesMUCHit members a MUC Hit : fEnergy, fPosition, fPointerToMUCDigit, …… TClonesArray : BesMUCDigit a MUC Digit : fPart, fGap, TClonesArray : BesTrack a Bes Track
BesMUC Reconstruction in Bes Framework BesMUCRec Geometry GapGeo StripGeo SoftID Initialize BesPersEvent From disk : “BesEvent.root” BesMUCRec RawHit contains BesMUCRec HitContainer :: Identifier? Road Finder
BesMUCRec RawHit BesMUCRec HitContainer : GetStripPointer( ); GetPosition( ); …… BesMUCRec HitContainer : Init( ); AddHit(BesMUCSoftID *id); GetHitPointer( ); GetGapHitCount( ); …… RawHit Test Module an example…
“BesEvent.root” Geometry ASCII files Geometry::Init( ); … … Data Flow RawHit Test Module Event Display “BesEvent.root” 3 single mu+ events new BesMUCHit Read Root file Geometry ASCII files Geometry::Init( ); GetHitPos( ) BesMUCRec HitContainer GetGapHitCount( ) Add Hit( ) Output Hits on gap 1 is 1 gap 2 is 1 gap 3 is 1 gap 4 is 2 gap 5 is 1 … … Data Flow
event 2 3 single mu+ events 10 digits part seg gap strip 0 7 0 15 0 7 0 15 0 7 1 12 0 7 2 12 0 7 3 12 0 7 4 10 0 7 4 9 0 7 5 13 0 7 6 6 0 7 7 13 0 7 8 1 event 0 event 1 event 2
Data Flow Geometry Data Store Simu Reco Simu Data Store
Next work BesMUCRec RoadFinder; Some details in procedure; Write documents;