KFParticle for primary vertex finder
idea : as KFparticle takes 1,2 ... N daughters, we can try to use it as primaty vertex finder
First try over real data by comparing the position from KFParticle with the position from MuDst branch : here
- Changes to KFParticle code :
- the primary vertex is set to (0,0,0) in the macro, when defining pVertex
MVertex vert;
vert.SetXYZ(0,0,0);
....
particle[0] = KFParticle(vert);
2. when adding tracks, we need to assume the mass of the particle : i've chosen pion
3. in KFParticleBase.cxc:Construct()
--> remove the line if( Parent ) SetProductionVertex( *Parent );
note for me : it would be equivalent to call the method : DP.Construct(vDaughters,NDaughters,0,-1,0);
The .pdf file shows a good agreement, for the real data ,between the position found by KFParticle and MuDst values
step 2 : use simulation files amd compare :
- GEANT vs MuDst
- GEANT vs KFParticle
==>issue with the vertex from GEANT
When running over a single file, I found a different number of vertices : here
some tests
1. adding the reconstructed particle to the Primary vertex
const KFParticle pVertex = particle[0]; // index_track is the real number of track used in the loop int NDaughters = index_track; KFParticle DP; // gBenchmark->Start("KFParticle"); DP.Construct(vDaughters,NDaughters,&pVertex,-1,0); particle[0].AddDaughter(DP);
Adding the line (it adds to the primary vertex the mother particle :www.physi.uni-heidelberg.de/~minjung/.../GorbunovKFParticle.08.11.25.pdf)
particle[0].AddDaughter(DP);
does not change the results (comparison btw KFParticle and MuDst)
- bouchet's blog
- Login or register to post comments