i Event Reconstruction Event Reconstruction in High Energy Physics Experiments in High Energy Physics Experiments
- I. Kisel
- I. Kisel
GSI/Uni GSI/Uni-
- Heidelberg, Germany
Event Reconstruction Event Reconstruction i in High Energy Physics - - PowerPoint PPT Presentation
Event Reconstruction Event Reconstruction i in High Energy Physics Experiments in High Energy Physics Experiments I. Kisel I. Kisel GSI/Uni GSI/Uni- -Heidelberg, Germany Heidelberg, Germany CERN, February 07, 2008 CERN, February 07,
Research Research Center Center Accelerator (GeV) Accelerator (GeV) Experiment Experiment Physics Physics
SLAC, USA PEP-II, e- x e+ (9 x 3.1) BaBar B-Physics F il b D0 Universal Fermilab, USA Tevatron, p x p (1000 x 1000) D0 Universal CDF Universal BNL, USA RHIC, Heavy Ions PHENIX Quark-Gluon-Plasma STAR Quark-Gluon-Plasma KEK, Japan KEK-B, e- x e+ (8 x 3.5) BELLE B-Physics CERN, Switzerland LHC, p x p (7000 x 7000) ATLAS Universal CMS Universal ALICE Quark-Gluon-Plasma ALICE Quark Gluon Plasma LHCb B-Physics DESY, HERA e+/- x p (27 5 x 920) ZEUS Proton-Physics H1 Proton-Physics Germany HERA, e x p (27.5 x 920) HERMES Spin-Physics HERA-B B-Physics GSI, Germany SIS 100/300, p, Heavy Ions PANDA Quark-Physics CBM Quark-Gluon-Plasma
Different experiments for Different experiments for different physics, but with different physics, but with common tracking problems common tracking problems
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 2/32 /32
CBM Quark Gluon Plasma
Beam Beam Target Beam
Inelastic collisions 107 – 109
Reconstructed tracks with pt > 25 GeV
Signal events
10 10
11 11
Signal events 102 – 10-2 High energy = high density + high rate High energy = high density + high rate High energy = high density + high rate High energy = high density + high rate
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 3/32 /32
ATLAS (CERN) ATLAS (CERN) CBM (FAI R/ GSI ) CBM (FAI R/ GSI )
Kalman Kalman Filter Filter
Time Time consuming!! consuming!! ! Filter Filter
Combinatorics Combinatorics + Precision + Precision S d ? S d ?
Global Methods
Kalman Kalman Filter Filter
= Speed ? = Speed ?
Global Methods
Conformal Mapping
Histogramming
Hough Transformation Hough Transformation Hough Transformation
Local Methods
Track following
Combinatorics Combinatorics
Kalman Filter
Neural Networks
Perceptron
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 4/32 /32
Perceptron
Hopfield network
Cellular Automaton
Elastic Net
Global methods are especially suitable for fast tracking in projections Triggers Triggers
Example: Collider experiment with a solenoid, where tracks are circular trajectories
Conformal Mapping: Conformal Mapping: Histogram: Histogram: Conformal Mapping: Conformal Mapping: Transform circles into straight lines u = x/(x2+ y2) v = -y/(x2+ y2) Simple Simple g Collect a histogram of azimuth angles φ Find peaks in the histogram Collect hits into tracks Fast Fast
φ
x y u v
φ
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 5/32 /32
Useful implemented in hardware and for very simple event topologies Useful implemented in hardware and for very simple event topologies
x y a b
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 6/32 /32
Useful implemented in hardware and for simple event and trigger topologies Useful implemented in hardware and for simple event and trigger topologies
One Processing Unit Consecutively hit by hit One Processing Unit Consecutively hit by hit Seeding Planes Seeding Planes
Detector Detector Detector Detector Efficiency Efficiency ??? ??? Detector Detector Efficiency Efficiency ??? ???
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 7/32 /32
Useful for final track fitting and for Monte Carlo analysis of an experiment Useful for final track fitting and for Monte Carlo analysis of an experiment
Each cell has 8 neighboring cells, 4 adjacent orthogonally, 4 adjacent diagonally. The rules are:
none dies from isolation
none dies from isolation.
It is important to understand that all births and deaths occur simultaneously.
RECO TRACK GHOST TRACK ?
TRACK RECO TRACK RECO TRACK
no convergence !
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 8/32 /32
1 2 3 4
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 9/32 /32
Useful for analysis of experiments with real data Useful for analysis of experiments with real data
Tracking quality Tracking quality Tracking efficiency Tracking efficiency
cy cy Efficienc Efficienc
Time consumption Time consumption
) Ninel
inel x 50 tracks
x 50 tracks
The reconstruction package CATS
CATS based on
the Cellular Automaton for track finding Cellular Automaton for track finding and
Time/event (sec) Time/event (sec)
g the Kalman Filter for track fitting Kalman Filter for track fitting
(SUSi, HOLMES, L2Sili, OSCAR, RANGER, SUSi, HOLMES, L2Sili, OSCAR, RANGER, TEMA TEMA) ) based on traditional methods in efficiency accuracy and speed
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 10 10/32 /32
in efficiency, accuracy and speed
Ninel
inel x 50 tracks
x 50 tracks
10 107 ev/ s ev/ s 50 50 kB kB/ / ev ev RU RURU RU RU RURU RU RU RURU RU RU RURU RU RU RURU RU RU RURU RU RU RURU RU RU RURU RU
100 100 ev ev/ / slice slice 10 107 ev/ s ev/ s
SFn Δt MAPS STS RI CH TRD ECAL SFn Δt SFn Δt SFn Δt SFn Δt
5 M 5 MB B/ / slice slice
Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm
Farm Control System
SFn available SFn Δt MAPS STS RI CH TRD ECAL
10 105 sl sl/ s / s
Sub Farm Sub Farm Sub Farm Sub Farm Sub Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm Sub-Farm ~ 1000 ~ 1000 PCs PCs
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 11 11/32 /32
PCs PCs
Farm
Control System
/AB /AB /AB /AB
Sub-Farm Sub-Farm Sub-Farm
P/AB P/AB P/AB P/AB P/AB P/AB P/AB P/AB SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP HWP HWP HWP HWP SWP SWP SWP SWP SWP SWP SWP HWP HWP HWP HWP HWP HWP HWP HWP Pnet Pnet Pnet SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP SWP
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 12 12/32 /32
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 13 13/32 /32
T ki d V t i U it T ki d V t i U it
Sub Sub-
Farm
Tracking and Vertexing Units Tracking and Vertexing Units
FPGA FPGA FPGA FPGA
PC PC PC PC PC PC PC PC PC PC
Sub Sub-
Farm Management Unit Management Unit Sub Sub-
Farm Decision/Selection Unit Decision/Selection Unit
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 14 14/32 /32
Sub-Farm
… Cell, Cell, Cell, Cell … … Cell, Cell, Cell, Cell … … Cell, Cell, Cell, Cell … … Cell, Cell, Cell, Cell … … Cell, Cell, Cell, Cell … … Cell, Cell, Cell, Cell …
Kalman Filter Kalman Filter I ntel, AMD and Cell I ntel, AMD and Cell Cellular Automaton Cellular Automaton Sub Sub-
Farm Demonstrator
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 15 15/32 /32
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 16 16/32 /32
The Kalman filter is a recursive algorithm which estimates the state
The filter was developed in papers by Swerling (1958), Kalman (1960), and Kalman and Bucy (1961).
The filter is named after Rudolf E. Kalman.
An example of an application would be to provide accurate continuously-updated information about the position and velocity of an object given only a sequence of observations about its position, each of which includes some error. It is used in a wide range of engineering applications from radar to computer vision. A wide variety of Kalman filters have now been developed from Kalman's original formulation now called
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 17 17/32 /32
A wide variety of Kalman filters have now been developed, from Kalman s original formulation, now called the simple simple Kalman filter, to extended extended filter, the information information filter and a variety of square square-
root filters.
In a radar application where one is interested in following a target information about the location speed In a radar application, where one is interested in following a target, information about the location, speed, and acceleration of the target is measured at different moments in time with corruption by noise.
State vector State vector Covariance matrix Covariance matrix
error of x
r = { x, y, z, v r = { x, y, z, vx, v , vy, v , vz } } σ2
2 x
σ2
2 y
… σ2
2 z
σ2
vx vx
σ2 C = C = … … σ2
vy vy
σ2
vz vz
position velocity
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 18 18/32 /32
December 21, 1968. The Apollo 8 spacecraft has just been sent on its way to the Moon.
003:46:31 Collins: Roger. At your convenience, would you please go P00 and Accept? We're going to update to your W-matrix.
The Kalman filter is a recursive recursive estimator – only the estimated state from the previous time step and the current measurement are needed to compute the estimate for the current state.
n mean value over n measurements previous estimation new measurement n+ 1 n+ 1 mean value over n+ 1 n+ 1 measurements mean value over n 1 n 1 measurements correction weight
Prediction Prediction
Extrapolation Extrapolation Update Update
Filter Filter
The Kalman filter exploits the dynamics of the target, which govern its time evolution, to remove the effects of the noise and get a good estimate of the location of the target
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 19 19/32 /32
filtering),
prediction), or
interpolation or smoothing smoothing).
detectors measurements
track parameters and errors
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 20 20/32 /32
arbitrary large errors non-homogeneous magnetic field as large map multiple scattering in material
> > > 256 KB > > > 256 KB
weight for update small errors
not enough accuracy not enough accuracy i i l i i i i l i i in single precision in single precision
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 21 21/32 /32
The propagation step is performed directly from measurement to measurement without intermediate steps
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 22 22/32 /32
Use headers to overload + , Use headers to overload + , -
, * , / operators --
> the source code is unchanged !
Data Types: Data Types:
SSE2 SSE2
Platform: Platform:
SSE2 SSE2 Al iV Al iV
Platform: Platform:
AltiVec AltiVec Specialized Specialized SI MD SI MD
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 23 23/32 /32
f l f l Timing profile ! Timing profile ! No need to check No need to check the assembler code ! the assembler code !
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 24 24/32 /32
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 25 25/32 /32
lxg1411 eh102 blade11bc4
2.1 2.1 1.6 1.6
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 26 26/32 /32
Cell SPE is: Cell SPE is: 1.5 1.5 times faster than I ntel Xeon times faster than I ntel Xeon and and 2 times faster than AMD Opteron times faster than AMD Opteron
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 27 27/32 /32
CBM (FAI R/ GSI ) CBM (FAI R/ GSI )
1 1 Create tracklets
Create tracklets
2 Collect tracks
Collect tracks
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 28 28/32 /32
L1Algo module
300 kB per central event
L1Geometry L1Event (L1Strips, L1Hits) L1Tracks
300 kB per central event
S i S i
I t I t
Strips: Strips: float vStripValues[NStrips]; // strip coordinates (32b) unsigned char vStripFlags [NStrips]; // strip iStation (6b) + used (1b) + used_by_dublets (1b) Hits: Hits: struct L1StsHit { unsigned short int f b; // front (16b) and back (16b) strip indices
I nput: I nput:
unsigned short int f, b; // front (16b) and back (16b) strip indices } ; L1StsHit L1StsHit vHits[NHits]; unsigned short int vRecoHits [NRecoHits]; // hit index (16b) unsigned char vRecoTracks [NRecoTracks]; // N hits on track (8b)
Output: Output:
g [ ]; // ( ) class L1Triplet{ unsigned short int w0; // left hit (16b) unsigned short int w1; // first neighbour (16b) or middle hit (16b) unsigned short int w2; // N neighbours (16b) or right hit (16b) i d h b0 // hi2 (5b) l l (3b)
I nternal: I nternal:
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 29 29/32 /32
unsigned char b0; // chi2 (5b) + level (3b) unsigned char b1; // qp (8b) unsigned char b2; // qp error (8b) }
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 30 30/32 /32
MBias events MBias events Central events Central events
MBias events MBias events Central events Central events
Efficiency, % Efficiency, % Track category Track category Efficiency, % Efficiency, %
98.0 Reference set (> 1 GeV/c) 96.6 95.4 All set (> = 4 hits, > 100 MeV/c) 93.5 89.1 Extra set (< 1 GeV/c) 85.9 0.4 Clone 0.4 1.6 Ghost 4.7 140 MC tracks/event found 633
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 31 31/32 /32
140 MC tracks/event found 633
Precise fit using the Kalman filter
Track finding algorithms that can be parallelized (CA)
Use of the SIMD architecture (4x)
Single-
precision floating point (speed and size)
Limited data manipulation
Limited data manipulation
Multi-
core CPUs
Other hardware for large combinatorics (GPU, FPGA, ?)
Tools for debugging (timing profile, …)
Portable code (Intel, AMD, Cell, …)
Efficient event reconstruction is very expensive – – thousands of CPUs ! thousands of CPUs !
Inefficient event reconstruction is even more expensive εtot
tot = (
= ( εphys
phys *
* εdet
det *
* εelctr
elctr ) *
) * εreco
reco !!!
!!! Inefficient event reconstruction is even more expensive Inefficient event reconstruction is even more expensive εtot
tot
( ( εphys
phys
εdet
det
εelctr
elctr )
) εreco
reco !!!
!!!
Reconstruction = Physics + Mathematics + Computers + Detectors + Electronics
07 February 2008, CERN 07 February 2008, CERN Ivan Kisel, GSI/Uni Ivan Kisel, GSI/Uni-
Heidelberg 32 32/32 /32