34
Energy Flow Energy Flow Reconstruction Reconstruction Norman Graf Norman Graf (SLAC) (SLAC) October 28, 2002 October 28, 2002

Energy Flow Reconstructionngraf/20021028.pdf ·  · 2002-10-28In order to implement the energy flow . algorithm as a part of the event ... EventHeader methods ... 150 200 250 300

Embed Size (px)

Citation preview

Energy FlowEnergy FlowReconstructionReconstruction

Norman GrafNorman Graf(SLAC)(SLAC)

October 28, 2002October 28, 2002

2

Problem StatementProblem StatementIn order to implement the energy flow In order to implement the energy flow algorithm as a part of the event algorithm as a part of the event reconstruction, we need a framework within reconstruction, we need a framework within which we can communicate between which we can communicate between packages.packages.Need common definitions (interfaces) for Need common definitions (interfaces) for constituents of final reconstructed particles.constituents of final reconstructed particles.Need canonical samples on which to develop Need canonical samples on which to develop and test reconstruction algorithms.and test reconstruction algorithms.

3

LCDEventLCDEvent “Hit” Constituents“Hit” ConstituentsMCParticlesMCParticles

getMCParticlesgetMCParticles()()

TrackerHitsTrackerHitsgetTrackerHitsgetTrackerHits()()getVXDHitsgetVXDHits()()

CalorimeterHitsCalorimeterHitsgetEMCalorimeterHitsgetEMCalorimeterHits()()getHADCalorimeterHitsgetHADCalorimeterHits()()getMuonCalorimeterHitsgetMuonCalorimeterHits()()getLUMCalorimeterHitsgetLUMCalorimeterHits()()

4

LCDEventLCDEvent ““RecoReco” Constituents” ConstituentsClusterListClusterList

getEMClustersgetEMClusters()()getHADClustersgetHADClusters()()getRefinedClustersgetRefinedClusters()()

TrackListTrackListgetTrackListgetTrackList()()

5

EventHeaderEventHeader ““RecoReco” Constituents” ConstituentsAlso have the ability to add arbitrary Objects Also have the ability to add arbitrary Objects to the event using to the event using EventHeaderEventHeader methodsmethods

void void put(Stringput(String key, Object key, Object objectobject))Object Object get(Stringget(String key)key)

Will use this functionality to prototype the Will use this functionality to prototype the EFlowEFlow development.development.

6

ReconstructedParticleReconstructedParticle IIA class which encapsulates the behavior of an A class which encapsulates the behavior of an object which can be used for physics analysis.object which can be used for physics analysis.

mirrors mirrors MCParticleMCParticle

Kinematics determined by track momentum or Kinematics determined by track momentum or calorimeter cluster energy at time of creation.calorimeter cluster energy at time of creation.ID determined later by particle ID algorithms, ID determined later by particle ID algorithms, e.g. track e.g. track dE/dxdE/dx, cluster shape, or , cluster shape, or combination of detector element variables.combination of detector element variables.

could entertain multiple hypotheses.could entertain multiple hypotheses.

7

ReconstructedParticleReconstructedParticle IIIICan also be created from combinations of Can also be created from combinations of other other ReconstructedParticlesReconstructedParticles..e.g. Photon can be single EM cluster without e.g. Photon can be single EM cluster without associated track, or combination of eassociated track, or combination of e++ and eand e--, , each composed of an EM cluster and a each composed of an EM cluster and a matching track.matching track.Resonances, when identifiable.Resonances, when identifiable.Jets will also be Jets will also be ReconstructedParticlesReconstructedParticles..

8

ParticleTypeParticleTypeEncapsulates information about known types Encapsulates information about known types of particles, e.g.of particles, e.g.

namenamemassmasschargechargepdgpdg codecode

9

ParticleIdParticleIdCombines a Combines a ParticleTypeParticleType and the probability and the probability for the id given by a for the id given by a ParticleTypeIdentifierParticleTypeIdentifier..Also contains a GUID to allow the Also contains a GUID to allow the identification to be reviewed at a later time.identification to be reviewed at a later time.ReconstructedParticleReconstructedParticle should contain all the should contain all the information needed by a information needed by a ParticleTypeIdentifierParticleTypeIdentifierto return a to return a ParticleIdParticleId..

10

ReconstructedParticleReconstructedParticle attributesattributesCollection of calorimeter Cells and/or ClustersCollection of calorimeter Cells and/or ClustersCollection of TracksCollection of TracksCollection of Collection of ParticleIdsParticleIds (sorted by probability)(sorted by probability)MassMassChargeChargeKinematicsKinematicsCollection of Collection of ReconstructedParticlesReconstructedParticles of which this is of which this is composedcomposedReconstructedParticleReconstructedParticle of which this is a constituentof which this is a constituentFlag to indicate whether this is a final stateFlag to indicate whether this is a final state

11

TrackingTrackingCentral tracking algorithms working fairly well.Central tracking algorithms working fairly well.Pattern recognition for forward regions Pattern recognition for forward regions developed recently, working on fitting.developed recently, working on fitting.Remaining issues are those of hit merging and Remaining issues are those of hit merging and ghosting in high track density environments.ghosting in high track density environments.Need to revisit and quantify efficiencies, fake Need to revisit and quantify efficiencies, fake rates and resolutions.rates and resolutions.Improve where necessary!Improve where necessary!

12

CalorimetryCalorimetryNew functionality added to New functionality added to CalorimeterCellCalorimeterCell to to allow neighbors in userallow neighbors in user--defined domains to be defined domains to be returned.returned.Will be able to create Will be able to create TowerIdTowerId index given index given theta, phi and layer indices.theta, phi and layer indices.CalorimeterHitMapCalorimeterHitMap contains contains CalorimeterHitsCalorimeterHitskeyed on primitive integer cell id.keyed on primitive integer cell id.

Can access specific hit cells without looping Can access specific hit cells without looping through complete list of hits.through complete list of hits.

13

Photon IdPhoton IdDeveloped simple cone algorithm for finding Developed simple cone algorithm for finding EM clusters.EM clusters.Implemented Implemented HMatrixHMatrix for longitudinal shower for longitudinal shower shape analysis.shape analysis.

Use shower width for Use shower width for γγ--ππ0 0 discrimination.discrimination.Use trackUse track--match and E/p for electron id.match and E/p for electron id.

14

Energy Energy vsvs Cone Radius (50GeV Cone Radius (50GeV γγ))

Cluster Energy0.01 0.02 0.03 0.04 0.05

25

30

35

40

45

50

55 energy vs radius

15

Number of Clusters Number of Clusters vsvs R (50GeV R (50GeV γγ))

0 2 4 6 8050100150200250300350

radius: 0.01

2 4 6 8050100150200250300350400

radius: 0.02

2 4 6 80

200

400

600

800

1,000radius: 0.03

2 4 6 80

100200300400500600700800

radius: 0.04

16

Cone Algorithm (50GeV Cone Algorithm (50GeV γγ))

Cluster Energy10 20 30 40 50

0.20.40.60.81.01.21.41.61.82.0 Hottest Cell Energy vs Energy

17

Cone AlgorithmCone AlgorithmCurrently using fixed cone radius of 0.3Currently using fixed cone radius of 0.3

Based on energy contained within coneBased on energy contained within coneBased on number of clustersBased on number of clusters

Could use a cone radius based on energy of Could use a cone radius based on energy of seed cell.seed cell.Currently split clusters whose cones overlap Currently split clusters whose cones overlap by associating cells to nearest cone axis.by associating cells to nearest cone axis.Could also search for NN clusters within cone.Could also search for NN clusters within cone.

1810 20 30 40 50

0

200

400

600

800

1,000

1,200

1,400

1,600

1,800

2,000

2,200

2,400

2,600

2,800 Gaussianmean : 0.94867±0.00321 sigma : 0.21186±0.00265 χ² : 102.90

Gaussianmean : 4.8816±0.0060 sigma : 0.42077±0.00447 χ² : 104.55

Gaussianmean : 9.7371±0.0082 sigma : 0.57841±0.00619 χ² : 104.75

Gaussianmean : 19.449±0.012 sigma : 0.82377±0.00870 χ² : 104.96

Gaussianmean : 48.419±0.019 sigma : 1.3366±0.0137 χ² : 105.37

Cluster EnergyCluster Energy

1,5,10,20,50 GeV

19

Longitudinal Energy DistributionLongitudinal Energy Distribution

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 300.00

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.10

0.11

0.12

0.13

0.14

0.15Fractional Energy vs Layer

20

Longitudinal Longitudinal HMatrixHMatrixUse longitudinal energy depositions and their Use longitudinal energy depositions and their correlations to create a cluster correlations to create a cluster χχ22..

=

=

= − −

ζ ≡ − −

N(n) (n)i jij i j

n 1

1

N(m) (m)i jm i ij j

i, j 1

1M (E E )(E E )N

H M

(E E )H (E E )

21

Cluster Cluster χχ22

Cluster Energy0 10 20 30 40 50

0

50

100

150

200

250

300 Chisq vs energy

22

MuonMuon IdIdUsing Rich Using Rich Markeloff’sMarkeloff’s package to identify package to identify muonsmuons..Works well in central (barrel) region for high Works well in central (barrel) region for high pTpT muonsmuons..Needs to be extended into Needs to be extended into endcapsendcapsNeeds to be augmented to find Needs to be augmented to find muonsmuons which which range out before making it to the range out before making it to the muonmuonsystem.system.Need to characterize efficiencies, fakes, etc.Need to characterize efficiencies, fakes, etc.

23

Charged Charged HadronHadron IdIdContinuing to characterize Continuing to characterize pionpion shower shapes shower shapes in calorimeters as function of momentum and in calorimeters as function of momentum and direction.direction.PionShowerPionShower class being developed to class being developed to encapsulate the association of hit calorimeter encapsulate the association of hit calorimeter cells with extrapolated tracks.cells with extrapolated tracks.

Will allow association to proceed until a limit is Will allow association to proceed until a limit is reached on either match reached on either match χχ22 or E/p.or E/p.

24

Prototype ReconstructionPrototype Reconstructionpublic public ReconstructedParticleJob(doubleReconstructedParticleJob(double radius, double radius, double

seedEminseedEmin, double , double clusEminclusEmin, String , String hmxNamehmxName, double , double clusEminclusEmin, double , double chisqminchisqmin, double , double trackdistmintrackdistmin)){{

// // Smear Tracker hits with resolutionSmear Tracker hits with resolutionadd(newadd(new SmearDriverSmearDriver());());// // Find tracksFind tracksadd(newadd(new TrackRecoTrackReco());());// // build up the build up the efloweflow eventevent// sets up and populates the // sets up and populates the CalorimeterHitMapCalorimeterHitMapadd(newadd(new EflowEventBuilderEflowEventBuilder()); ());

25

Prototype ReconstructionPrototype Reconstruction// // Find Find muonsmuonsadd(newadd(new MuonFinderMuonFinder());());// // Find EM clusters using a simple cone algorithmFind EM clusters using a simple cone algorithmadd(newadd(new EMConeClusterBuilder(radiusEMConeClusterBuilder(radius, , seedEminseedEmin, ,

clusEminclusEmin));));// // Construct and identify the Construct and identify the ReconstructedParticlesReconstructedParticles// // Photons, electrons, pi0Photons, electrons, pi0add(newadd(new

EMParticleFinder(hmxName,clusEmin,chisqmin,trackdistminEMParticleFinder(hmxName,clusEmin,chisqmin,trackdistmin));));// // charged hadronscharged hadronsadd(newadd(new ChargedParticleFinderChargedParticleFinder());());// // Analyze the Analyze the ReconstructedParticleReconstructedParticleadd(newadd(new ReconstructedParticleAnalyzeReconstructedParticleAnalyze());());

}}

26

Canonical Samples (intermediate)Canonical Samples (intermediate)Test reconstruction on simple events. Study Test reconstruction on simple events. Study finding efficiency, fake rates and finding efficiency, fake rates and measurement resolutions (E, p, mass) using:measurement resolutions (E, p, mass) using:Single Fundamental ParticlesSingle Fundamental Particles

ee+/+/--, , γγ, , ππ+/+/--, , µµ+/+/--

Simple Composite Single ParticlesSimple Composite Single Particlesππ00, , ρρ, , ττ, , ψψ

Complex Composite Single particlesComplex Composite Single particlesZ, WZ, W

27

Preliminary StudiesPreliminary Studiesρρ+/+/--→π→π+/+/--γγ

Should find two particles, one charged, one Should find two particles, one charged, one neutral.neutral.Inefficiencies due to track Inefficiencies due to track pTpT too low or too low or overlapping overlapping pionpion and photon.and photon.

ρρ+/+/-- →π→π+/+/--ππ00

Should find 2 or 3 particles, depending on whether Should find 2 or 3 particles, depending on whether ππ0 0 is resolved or not.is resolved or not.If If ππ0 0 is not resolved, should id as is not resolved, should id as ππ0 0 not photon.not photon.

28

ρρ+/+/--→π→π+/+/--γγ

Number of Particles0 1 2 3 4 5 6

0

200

400

600

800

1,000

1,200

1,400

1,600

1,800

2,000

2,200

2,400

2,600

2,800

3,000

3,200

3,400

3,600

3,800

4,000

4,200

4,400 entries : 5001.0 mean : 1.8714 rms : 0.39247

29

ρρ+/+/-- →π→π+/+/-- γγ

Photon Pi- Pi+ Pi0 Muon Electron0

500

1,000

1,500

2,000

2,500

3,000

3,500

4,000

4,500

type

30

ρρ+/+/-- →π→π+/+/-- γγ

0.0 0.5 1.0 1.5 2.00

50

100

150

200

250

300

350

400

450

500

550

600

650

700

750 mass entries : 5001.0 mean : 0.67657 rms : 0.29722

Gaussian amplitude : 528.57±11.2 mean : 0.75595±0.0019 sigma : 0.11913±0.00165 ?² : 20.989

mass

31

ρρ+/+/-- →π→π+/+/--ππ00

Number of Particles0 1 2 3 4 5 6

0

200

400

600

800

1,000

1,200

1,400

1,600

1,800

2,000

2,200

2,400 entries : 5001.0 mean : 2.3037 rms : 0.68748

32

ρρ+/+/-- →π→π+/+/--ππ00

Photon Pi- Pi+ Pi0 Muon Electron0

500

1,000

1,500

2,000

2,500

3,000

3,500

4,000

4,500

5,000

5,500

6,000 entries : 11521

33

ρρ+/+/-- →π→π+/+/--ππ00

0.0 0.5 1.0 1.5 2.00

50

100

150

200

250

300

350

400

450

500

550

600

650 mass entries : 5001.0 mean : 0.64815 rms : 0.29624

Gaussian amplitude : 439.65±8.87 mean : 0.70698±0.00234 sigma : 0.14753±0.00191 ?² : 19.227

mass

34

Canonical Samples (Physics)Canonical Samples (Physics)WWWWνννν and and ZZZZνννν at 800GeV cmsat 800GeV cms

Stresses jet mass resolution.Stresses jet mass resolution.VVVVνννν removes temptation to include beam removes temptation to include beam constraint.constraint.800GeV tests energy extensibility without 800GeV tests energy extensibility without excluding any one technology.excluding any one technology.

tttt at threshold, at threshold, tthtth at 800GeVat 800GeVStresses pattern recognition and flavor tagging in Stresses pattern recognition and flavor tagging in busy environment. busy environment.