besiii analysis software and event data model kanglin he 23 feb, 2006 [email protected]

63
BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 [email protected]

Upload: donald-wilkerson

Post on 11-Jan-2016

224 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

BESIII Analysis Software and

Event Data Model

Kanglin He

23 Feb, 2006

[email protected]

Page 2: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Outline

BESIII Analysis Software Analysis Tools -- K.L He Analysis Framework -- X.B Ji Event/Physics Tag -- X.H Mo

BESIII Event Data Model MC Truth Event Data Model -- W.D Li Rec/Dst Event Data Model -- S.P Wen Analysis Event Data Model -- K.L He Physics Event Data Model -- Physics Group

Statistic Analysis Software -- Y.S Zhu Statistical Significance Toy Monte Carlo

PWA and Dalitz Analysis -- H.B Li

Page 3: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Analysis Software

Tools Project (K.L. He) Particle ID Composition Tools

BParticle Project (X. B. Ji) Charged, Neutral Track Selection Ks, Λ, π0/η Reconstruction

Event/Physics Tag Project (X. H. Mo) Event Classification Luminosity Determination Event Collection, filter

Physics Performance Check (X. B. Ji)

Page 4: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Particle ID

DedxPID: dE/dx info Ready now, correction was made

Tof1PID: inner barrel TOF Ready now, correction was made

Tof2PID: outer barrel TOF Ready now, correction was made

TofEPID: Endcap TOF Not readdy now, due to reconstruction

TofQPID: Q of Barrel TOF Not ready now, need detail study on Calibration

EmcPID: energy deposit in EMC Not ready now, Wang Liangliang is working at

ParticleID Combine the above info

MuonID Develop by PKU

ParticleIDBase For developer only

Page 5: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

ParticleIDBase class (I) common interface

public: virtual bool IsPidInfoValid() = 0; virtual double chi(int n) const = 0; virtual double prob(int n) const = 0; virtual int ndof() const = 0; DstTrkList* PidTrk() const {return m_trk;} protected:// PID calculation routines(include PID correction) virt

ual int particleIDCalculation() = 0;

Page 6: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Sub-PidSys class design

class Tof1PID : public ParticleIDBase {

public: // constructor & desconstructor Tof1PID(DstTrkList *dstTrk, double chi=4); ~Tof1PID(){;} bool IsPidInfoValid() {return (m_ndof > 0); } double chi(int n) const {return m_chi[n];} double prob(int n) const {return m_prob[n];} int ndof() const {return m_ndof;}protected: int particleIDCalculation(); double offsetTof1(int n, int cntr, double ptrk, double ztof, double ph); double sigmaTof1(int n, int cntr, double ptrk, double ztof, double ph); private: xxxxx;}

Page 7: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

How to use ParticleID

// Be careful to avoid memory leakageParticleID *pid = 0; for (int i = 0; i < ncharg; i++) { DstTrkList *dstTrk = *(dstTrkListCol->begin() + i); if(pid) delete pid; pid = new ParticleID(dstTrk); pid->usePidSys(pid->useDedx() | pid->useTof1() | pid->useTof2() )|; // pid->usePidSys(pid->useDedx()); // pid->usePidSys(pid->useTof1()); // pid->usePidSys(pid->useTof2()); pid->identify(pid->onlyPion() | pid->onlyKaon()); // pid->identify(pid->onlyPion()); // pid->identify(pid->onlyKaon()); pid->calculate(); if(!(pid->IsPidInfoValid())) continue; // user's selections } if(pid) delete pid;

Page 8: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Composition Tools

Telesis BESII Kinematic Fit package C++ implemented by SDU

BKlamsVTX BESII Ks, Λ reconstruction package C++ implemented by Dr. B.J. Liu

VertexFit New stuff, by K. L He VertexFit SecondVertexFit KinematicFit

Page 9: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Status of Telesis

Track presentation (φ,κ,λ) for charged track (φ,λ, E) for neutral track

Constraints Resonance Momentum-energy conservation Miss track

Worked smoothly in BOSS

Page 10: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

TKinematicFit

#include "Telesis/TKinematicFit.h"

TKinematicFit* kmfit = TKinematicFit::instance();DstMdcTrack *pipTrk=xxx;DstMdcTrack *pimTrk = xxx;DstEmcTrack *g1Trk = xxx;DstEmcTrack *g2Trk = xxx; kmfit->init(ecms);kmfit->AddTrack(1, pipTrk, mpi, 0); kmfit->AddTrack(2, pimTrk, mpi, 0); kmfit->AddTrack(3, g1Trk, 0.0, 0);kmfit->AddTrack(4, g2Trk, 0.0, 0);kmfit->AddResonance(1, 0.135, 3, 4); If(kmfit->fit()) { HepLorentzVector ppip = kmfit->pfit(1); HepLorentzVector ppim = kmfit->pfit(2); HepLorentzVector ppi0 = kmfit->pfit(3) + kmfit->pfit(4); // user code, fill histogram/ntuple}

// see Analysis/Physics/RhopiAlg/RhopiAlg-00-00-02 for detail

Page 11: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Status of BKlamsVTX

Get the point (s) of intersection of two helices in transverse planeCheck if the 2nd vertex candidate is loc

ated in reasonable regionWorked smoothly in BOSS

Analysis/Physics/KlamsTestAlg for detail

Page 12: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Status of Vertex Fit

Formulas (adopt from Paul Avery’s Lessons) Include: VertexFit, KinematicFit and 3-D SecondVertexFi

t Support Composed Particle

Reconstructed π0, η Reconstructed Ks, Λ

Particle and Vertex presentation

W

zyx

V

z)y,x,E,,p,p,(pW

charge

Vx

z)y,(x,

Page 13: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Formulas for Kinematic Fitting

n

2

1

α

α

α

α

n

r

2

r

1

r

n

2

2

2

1

2

n

1

2

1

1

1

α

H

α

H

α

H

α

H

α

H

α

H

α

H

α

H

D

r

2

1

H

H

H

d

0dD

0λD)α(αV

d)(Dδ2λ)α(αV)α(αχT

01

α

T0

T0

2

0

0

Page 14: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Formulas for Kinematic Fitting (continue)

d)(DδλλVλχ

DVVDVVV

)D(DVV

d)(DδVλ

λDVαα

T1D

T2αD

Tααα

1TαD

D

T1α0

000

0

0

Page 15: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Formulas for Vertex Fitting

DT

xDDD

0D0

D000D

0T

x01

xxT

x0

Tα0

VEEVVVV

d)(DδVλ

xEVλd)xE(DδVλ

λEVδxVVλEVδxδx

λDVδαδα

00

0

d)xE(Dδλχ

EVVDVx),cov(

DVVEEVVDVDVVDVVV

E)VE(VV

00T2

xDT

α

αDT

xDT

ααDT

ααα

1D

T1xx

0

00000

0

Page 16: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Vertex Constraints

Vertex constraint to a fixed position Vertex constraint to an unknown position General Vertex fit Swimming Track parameters and Error matrix to vertex position

2

1

22

hp

)hx)(h(pΔxpasin

a

hphΔx0

)hx(Δx2

ahΔx)(p0

Page 17: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Swimming after VertexFit

xx

BxAαp

)xa(xpp

V

V

00

V

V

VxVV

VVp

α V)p,cov(x

)x,cov(pVV

xx

xVV

Tx

TTTαp

VV

BVx),Acov()x,cov(p

BBV)ABcov(x,x)B,Acov(AAVV

V

V

Page 18: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

SecondVertexFit

Find decay vertex position of Ks/Λ through VertexFit

Performing a 2-C fit by applying the alignment constraints

Calculating the decay length and its error

0cτm

pzz

0cτm

pyy

0cτm

pxx

zdp

ydp

xdp

Xp: production position (beam position)Xd: decay position

Page 19: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

SecondVertexFit

1D

Tcτ

0T

T

T0

E)V(EV

λEVδcτ

0dcτEαD

0λE

0λD)δαα(V0

d)cE(Dδ2λ)α(α)Vα(αχ T0

1α0

2

0

d)(Dδλχ

cEVλλ

λDVαα

)D(DVV

d)(DδVλ

0T2

D0

Tα0

1TαD

0D0

0

0

00000 αDT

cτDT

ααDT

ααα DVVEEVVDVDVVDVVV

Page 20: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Build Virtual Particle

Virtual Particle from KinematicFit π0/η,…

Virtual Particle from VertexFit Ks/Λ , …

Can be treated as a normal particle in further kinematic/Vertex fit BuildVirtualParticle(number) in KinematicFit

/ VertexFit

Page 21: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

AddTrack Utility

// event data model dependentvoid AddTrack(const int number, const double mass,

const DstMdcTrack *trk); void AddTrack(const int number, const double mass,

const DstMdcKalTrack *trk); void AddTrack(const int number, const double mass,

const DstEmcTrack *trk);// event data model independent void AddTrack(const int number, const WTrackPara

meter wtrk);

Page 22: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Kinematic Constraints Invariant mass constraints

AddResonance(number, mass, n1, n2, ...) Total energy constraints

AddTotalEnergy(number, energy, n1, n2, …) Total Momentum constraints

AddTotalMomentum(number, ptot, n1, n2, …) Total 3-momentum constraints

AddThreeMomentum(number, Hep3Vector p3, n1, n2, …) Total 4-momentum constraints

AddFourMomentum(number, HepLorentzVector p4, n1, n2, …) AddFourMomentum(number, etot, n1, n2, …)

Equal mass constraints AddEqualMass(kmfitAddList(n1, n2, …), kmfitAddList(m1, m2, ….))

Page 23: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

How to use compose tools

TKinematicFit *kmfit=TKinematicFit::instance();

VertexFit *vtxfit=VertexFit::instance();

SecondVertexFit *vtxfit = SecondVertexFit::instance();

KinematicFit *kmfit=KinematicFit::instance();

kmfit->init();

// Track and constraints

if(kmfit->Fit()) {//extract kinematic fit information;}

vtxfit->init();

// Track and constraints

if(vtxfit->Fit()) {// extract (Second)VertexFit information;}

Page 24: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Summary of Analysis Tools

Particle ID package Hadron identification by combined TOF and dE/

dx information Muon identification by MuonID Electron identification is not completed

All Composition Tools packaged are worked smoothly and stably in BOSS

Page 25: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Analysis Event Data Flow

MdcTrackCol

MdcKalTrackCol

DedxCol

TofTrackCol

EmcTrackCol

MucTrackCol

ExtTrackCol

Track #1MdcTrack

MdcKalTrackDedx

TofTrackEmcTrackMucTrackExtTrackTrack #2

MdcTrackMdcKalTrack

DedxTofTrackEmcTrackMucTrackExtTrackTrack #...MdcTrack

MdcKalTrackDedx

TofTrackEmcTrackMucTrackExtTrackTrack #NMdcTrack

MdcKalTrackDedx

TofTrackEmcTrackMucTrackExtTrack

BParticle

BTrack

BParticleID

BVertex

BPhotonCol

BElectronCol

BMuonCol

BPionCol

BKaonCol

BProtonCol

BPi0Col

...BKShortCol

BLambaCol

Bhabha Event

Dimu Event

GammaGammaEvent

...

Hadron Event

Tau PairEvent

D0 Tags

D+ Tags

DsTags

...

J/Psi Tags

Other PhysicsTags

Dst EventData Model

Analysis EventData Model

Physics/EventTag

Page 26: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

B(es)Particle Project

Write Particle (Charged tracks, neutrals, Vertice and composed particle) information into TDS. Analysis Algorithm can access these info. May develop to a common standard platfor

m, make Analysis job easily and friendly Allow Physics groups to design Physics Dat

a model easily

Page 27: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Contents BParticle Collection

Event Analysis Event Data Model BParticleID Collection

Particle identification data BTrack Collection

Charged and Neutral Track infomation data BVertex Collection

(2nd)Vertex Reconstruction data BStableParticle Collection

Photon, Electron, Muon, Pion, Kaon, Proton BComposedParticle Collection

π0,η,Ks,Λ etc

Page 28: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

B(es)Particle Project

BParticleCol

BVertexBTrackColBParticleID

BComposedParticle

BKShortCol

BLambdaCol

BPi0Col

BEtaCol

BPhotonCol

BElectronCol

BMuonCol

BPionCol

BKaonCol

BProtonCol

Page 29: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Event/Physics Tags Project

Event Classification Bhabha/Dimu/Hadron/etc.

Luminosity Determination Bhabha/Dimu/Di-photon

Physics Tags Charm Meson Tags (D0, D+, Ds)

J.Y Zhang, Y.Z Sun, S.S Sun, M. Yang are working on J/Ψ tags (Ψ’ππJ/Ψ)

X.H Mo, Li Gang are working on Other Physics Tags

Event Collection/Filter (Y.Z Sun and Framework Team) Event Collection Filter: sub-sets of data containing selected tags

Page 30: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Statistic Analysis

Statistic Significance Up Limit determination Systematic Uncertainties Theory Toy Monte Carlo

Page 31: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Event Data Model

MC Truth information Monte Carlo Generator & Simulation

Dst Event Data Model Reconstruction

Truth Match MC track Rec/Dst track

Analysis Event Data Model BParticle project

Physics Event Data Model Defined by Physics/Working Group

Histograms, ntuples Root, paw……

Page 32: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

MC Truth Data Model

Generator McParticle So on Kinematic and vertex inf

o

Simulation MdcMcHit TofMcHit EmcMcHit MucMcHit

Please see

Event/McTruth/ subdirectoryFor detail

Page 33: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Dst Event Data Model

DstMdcTrack DstMdcKalTrack DstDedx DstTofTrack DstEmcTrack DstMucTrack DstExtTrack

Please see

Event/DstEvent subdirctoryFor detail

Page 34: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

DstMdcTrack

int trackID() int charge() Double helix(int i) Double pxy() Double px() Double py() Double pz() Double p() Double theta() Double phi()

Double x() Double y() Double z() Double r() Int stat() Double chi2() Int ndof() Double rms() Double err(int i) Int nhits() Int nster()

Page 35: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

How to use DstMdcTrack#include “Event/DstMdcTrack.h”

MsgStream log(msgSvc(), name()); SmartDataPtr<DstMdcTrackCol> mdcCol(eventSvc(), EventModel::Dst::DstMdcTrackCol);If(!mdcCol) return StatusCode::SUCCESS;DstMdcTrackCol::iterator it = mdcColbegin();for( ; it < mdcColend() ; it++) {

//px, py, pzlog<<MSG::INFO<<“px, py, pz = “ <<(*it)px() <<“ , “ // px<<(*it)py() <<“ , “ // py<<(*it)pz() << endreq; // pz// x, y, z, rlog<<MSG::INFO<<“ x0, y0, z0, rxy = “

<< (*it)x() << “ , “ // x0<<(*it)y() << “ , “ // y0<<(*it)z() << “ , “ // z0<<(*it)r() << endreq; // rxy

}

Page 36: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Global Link

MDC reconstruction dE/dx, Kalman fit track

Match to TOF and Muon counter Track Applying Track Extrapolatio

information, done in Reconstruction

Match to EMC Position difference of extTrk

and emc Track, treat as Neutral tracks if not matched

See Wang L.L ‘s talk for detail

Page 37: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Dst Track List Collection

trackID() MdcTrk() DstMdcTrack MdcKalTrk() DstMdcKalTrack Dedx() DstDedx TofTrk() DstTofTrack EmcTrk() DstEmcTrack MucTrk() DstMucTrack ExtTrk() DstExtTrack

Access sub-detector info through a set of pointers

Page 38: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

TrackList (track level)int trackID() const {return m_trackID;}

bool IsMdcTrkValid() {return (m_originMdcTrack != 0);} bool IsMdcKalTrkValid() {return (m_originMdcKalTrack != 0);} bool IsDedxValid() {return (m_originDedx != 0);} bool IsTofTrkValid() {return (m_originTofTrack != 0);}bool IsEmcTrkValid() {return (m_originEmcTrack != 0);} bool IsMucTrkValid() {return (m_originMucTrack != 0);} bool IsExtTrkValid() {return (m_originExtTrack != 0);}

DstMdcTrack* MdcTrk() {return m_originMdcTrack;} DstMdcKalTrack* MdcKalTrk() {return m_originMdcKalTrack;} DstDedx* DedxTrk() {return m_originDedx;} DstTofTrack* TofTrk() {return m_originTofTrack;} DstEmcTrack* EmcTrk() {return m_originEmcTrack;} DstMucTrack* MucTrk() {return m_originMucTrack;}

DstExtTrack* ExtTrk() {return m_originExtTrack;}

Page 39: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

How to access Dst Event Data

In analysis source code:

#include “Event/DstTrkList.h”SmartDataPtr<DstTrkListCol> dstCol ( eventSvc(), EventModel::Dst::DstTrac

kListCol)// To get Energy deposit in EmcDstTrkListCol::iterater itTrk = dstColbegin() For(; itTrk < dstColend(); itTrk++) { if((*itTrk)IsEmcTrkValid()) { DstEmcTrack *emcTrk = (*itTrk)EmcTrk();

double energy = emcTrkenergy(); // piece of analysis code, fill histogram/ntuple

} }

In analysis job option file: #include “$DSTEVENTASSEMBLYALGROOT/jobOptions_DstEventAssembly.txt”

Page 40: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

MC Truth Track Association

Match MC truth track & Reconstructed Track Dubna group is working on MDC track part is ready now

EventNavigator PackageDocumentation in BES3 Software Web Page

Page 41: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Analysis Event Data Model

BParticle Collection Event Analysis Event Data Model

BParticleID Collection Particle identification data

BTrack Collection Charged and Neutral Track infomation data

BVertex Collection (2nd)Vertex Reconstruction data

BStableParticle Collection Photon, Electron, Muon, Pion, Kaon, Proton

BComposedParticle Collection π0,η,Ks,Λ etc

Page 42: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

BParticle Collection// track List IDint m_trackID;// PDG ID int m_particleID;// reference point(0, 0, 0)HepPoint3D m_refpoint; // WTrackparameters(charge, px, py, pz, e, x, y, z)WTrackParameter m_wtrk; SmartRef<DstTrkList> m_dstTrk; // Dst TrackList SmartRef<BParticleID> m_pid; // ParticleID infoSmartRef<BVertex> m_vertex; // Vertex infoSmartRef<BComposeParticle> m_bcompart; // ComposeParticleSmartRef<BParticle> m_mother; // motherSmartRefVector<BParticle> m_daughters; //decay daughters

Page 43: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

BParticleID Collection

int m_trackID; // TrackList IDint m_type; // 1: electron 2: muon 3: pi/K/pint m_ndof;double m_chiDedx[5];double m_chiTof1[5];double m_chiTof2[5];double m_chiTofE[5];double m_chiTofQ[5];double m_chiEmc[5];double m_prob[5];double m_chisq[5];

Page 44: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

BVertex Collection

int m_vertexID;VertexType m_vertexType;VertexParameter m_vpar;double m_chisq;int m_ndof;WTrackParameter m_wtrk;double m_lxyz;double m_lxyz_err;SmartRefVector<BParticle> m_outgo;

Page 45: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

BTrack Collection

bool isNeutral(); bool isCharged(); bool isGoodTrack(); bool isPhoton(); bool isDaughter(); bool isUnknown();

bool isElectron(); bool isMuon(); bool isPion(); bool isKaon(); bool isProton();

Selection Criteria controlled by job option file

Page 46: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

BParticle in Analysis

#include “BParticle/BParticle.h”#include “BParticle/BParticleID.h”#include “BParticle/BVertex.h”#include “BParticle/StableParticle.h”#include “BParticle/BComposedParticle.h”// get pion ListsSmartDataPtr<BPionCol> pionCol(eventSvc(), EventModel::Analysis::BPionCol);// get Kaon ListsSmartDataPtr<BKaonCol> kaonCol(eventSvc(), EventModel::Analysis::BKaonCol);// get Photon ListsSmartDataPtr<BPhotonCol> photonCol(eventSvc(), EventModel::Analysis::BPhotonCol);//get KShort ListsSmartDataPtr<BKShortCol> ksCol(eventSvc(),EventModel::Analysis::BKShortCol);//get pi0 ListsSmartDataPtr<BPi0Col> pi0Col(eventSvc(), EventModel::Analysis::BPi0Col);

//DO not forget to add following line in your job option file#include “$PARTICLESELECTIONALGROOT/share/jobOPtions_ParticleSelection.txt”

Page 47: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

BParticleTestAlg

Package: Analysis/Physics/BParticleTestAlg Contents Inclusive Photon Inclusive J/Psi Inclusive phi/omega/K* Inclusive pi0/eta Inclusive Ks/Lambda

Job option file #include “BPARTICLETESTALGROOT”/share/joboption

s_BParticleTestAlg.txt

Page 48: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Physics Event Data Model

BCharmMeson Collection D0 K pi, K pi pi0, K pi pi pi, …

D+ Ks pi, K pi pi, K pi pi pi0, …

Ds Phi pi, K*K, K0K, …

BJPsi Collection J/Psimu+ mu- J/Psie+ e- Psi’ pi pi J/Psi

Designed by Physics Group

Page 49: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Histogram and Ntuples

Root data format HBOOK data format Both are supported by Gaudi

ROOTPAW

Page 50: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Analysis Environment

Versions Rec/Cal/Anal/MC/DAQ/…

DAQ/Trigger Mode Cosmic Collision Separate Beam run

Event Type Bhabha/Dimu/diphoton Calibration event Physics event …

Run Status Good/Bad/Usable

Run Parameters Beam parameters Luminosity Magnetic Field …

Data Correction Constants PID (TOF, dE/dx, Emc, Muc) Momentum correction factor …

Page 51: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Analysis Demo Analysis/Physics/RhopiAlg

RhopiAlg-00-00-02 TKinematicFit > 00-00-02 KinematicFit

Analysis/Physics/KlamsTestAlg BKlamsVTX

Analysis/Physics/BParticleTestAlg Analysis Event Data Model

Analysis/AnalysisDemoAlg Dst Event Data Model Analysis/Physics/JPsi/KstarKAlg J/Psi Physics Analysis/Physics/PsiPrime/G2MuMuAlg Psi’ Physics Analysis/Physics/CharmMeson/ Charm Physics Analysis/Physics/TauPair/ Tau Physics Analysis/Physics/RValue/ R Physics Analysis/Physics/TwoPhoton/ TwoPhoton Physics

Page 52: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Physics Performance Check

Charged Track Hadron Performance (X.B Ji’s talk) MuonID Performance (PKU)

Photon(π0/η ) performance M.S Chen’s talk

Decay Vertex Reconstruction B.J Liu’s talk

J/Ψ,Ψ’, D/Ds Analysis X.H Mo, X.B Ji, J.Y Zhang ‘s talks

Page 53: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Energy threshold at 40MeV

GeV

Eff

icie

ncie

s(10

0%)

Photon detection Efficiencies as a function of E

20MeV30MeV

40MeV50MeV

60MeV70MeV

Page 54: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

From Li H.B

ρπJ/ψ

M

M

ρπJ/ψ

No 4C fit

After 4C fit

γγπ0

γγπ0

Page 55: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

From Li H B

M

γγπ0

50 K

Inc

lusi

ve Ψ

” M

C d

ata

Page 56: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

~3MeV

~1.2MeV

ππKS

50 K

Inc

lusi

ve Ψ

” M

C d

ata

Page 57: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

KKφ

0πππω

50 K

Inc

lusi

ve Ψ

” M

C d

ata

Page 58: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

50K

Inc

lusi

ve Ψ

” M

C d

ata

KπK*0

πKK S*

Page 59: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

From Y.Z Sun

πKD0 πππKD0

π

00 ππKD ππKD S

0

Page 60: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

From J. Y Zhang

0S ππKD

πKD S

πππKD S

ππKD

Page 61: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

J/ψππψ

recM

From Li Gang

Page 62: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

50K inclusive Ψ’ MC data

Inclusive photon Energy

0cχ

1cχ2

γJ/ψχ1,2c

E

μμJ/ψ

Page 63: BESIII Analysis Software and Event Data Model Kanglin He 23 Feb, 2006 hekl@ihep.ac.cn

Cheers and Thank you !!!

Welcome to

Join Analysis Software Team