virtual

advertisement
Paul Avery
CBX 98–38
June 8, 1998
Apr. 17, 1999 (rev.)
Applied Fitting Theory VII
Building Virtual Particles
I
Statement of the problem
In many physics analyses we encounter the problem of merging a set of particles into a single
particle so that this new “virtual” particle can be used directly in the analysis. For example, the
K s parameters from the decay Ks     are commonly used, but we also need decays such as
D  K    or even complete decay chains, e.g.
B 0  D* 
D*  D0 
(1)
D 0  K  
where we want to (1) combine K   to form a D0 , (2) merge the D0 with a   to make a D*
and (3) combine the D* with a   to make a B 0 . The basic idea is that once a virtual particle
has been built, we can forget about the original particles that went into it. However, the
procedure for building the new particle is complicated by the fact that the original particles have
measured parameters with associated error (covariance) matrices. The merging process has to
take this information into account in such a way that the merged parameters and their error
matrix provide the best information possible about the reconstructed particle.
In this note1 I will show how to calculate the track parameters and covariance matrix of a
particle by applying a vertex and possibly other constraints to a set of particles and then adding
together the 4–momenta of n “daughter” particles at the vertex point. The track parameters for
particle i are denoted by  i , where
Fp I
G
p J
G
J
p J
G
Fp I E J
 GJ G
J
Hx K G
x J
G
G
y J
G
J
G
Hz JK
xi
yi
zi
i
i
i
i
i
i
i
1
This document can be found on the web on my fitting page at www.phys.ufl.edu/~avery/fitting.html
1
(2)
i.e., a 4–momentum and a position at which the momentum is evaluated. The full set of n tracks
is denoted by , e.g.,
F I
G
 J
  GJ
 J
G
G
H JK
1
2
(3)
n
The initial covariance matrix for these particles is called V 0 . This has the block diagonal form
FV
G
G
G
G
H
01
V 0
V0 2

V0 n
I
J
J
J
J
K
(4)
expressing the fact that the particles are initially independent. The track parameters for the virtual
pV
particle are called  V 
.
xV
F
IJ
G
HK
II
Building a virtual particle with vertex constraints
Equations defining the virtual particle
The motion of a charged particle in an arbitrarily oriented, fixed magnetic field was described
in Appendix II in ref. [1]. A particle starting out with momentum p0 at position x 0 will have a
momentum p at position x given by p  p0  a x  x 0  h , where a  0.299792458BQ , where
B is the magnetic field in Tesla, Q is the charge of the particle and h is a unit vector in the
b g
d
i
direction of magnetic field. The virtual particle parameters at the point x  x x , x y , xz can then
be calculated by adding the contributions from n tracks:
d
dz
dx
i d i
 x i a d
x x i
 x i a d
y x i
pV x   p0 i x  az i y0 i  x y  ayi z0 i  x z
i
pV y   p0 i y  a x i
i
pV z   p0 i z  ayi
0i
0i
z
zi
0i
x
x
xi
0i
y
i
EV   E0 i
i
xV  x
where, e.g., a xi  0.299792458 Bx Qi , Qi is the charge on the particle and Bx is the x
component of the B field.
2
(5)
Applying the vertex constraint
The following is a brief summary of the derivation in ref. [1]. We assume that the constraint
equations can be linearized by expanding about convenient points  A and x A . Since the
covariance matrix of the vertex may be known in advance (sometimes known as a “prior”
covariance matrix), we write the overall  2 condition as
b g b gb g b g a
T
f
T
 2     0 V10    0  x  x0 Vx01 x  x0  2 T D  Ex  d
(6)
where      A and x  x  x A. The terms represent, respectively, the contribution to the
 2 from the tracks, the vertex and the constraints.  is the vector of Lagrange multipliers, one
per constraint, while x 0 and Vx 0 are the initial vertex location and its covariance matrix. If the
vertex location is unknown one can set its covariance matrix to a large value.
There are two constraint equations for each track. For example, in a solenoidal field
0  px i yi  p y i xi 
az i
pz i
d
0  zi 
az i
sin
1
2
ex
2
i
 yi2
j
i
a z i px i xi  p y i yi /
(7)
p2 i
where xi  x x  xi , etc. A more complicated pair of equations can be derived for B fields
oriented along other directions [1]. Whatever the B field orientation, the E and D matrices have
the simple form
FE I
G
E J
E  GJ
 J
G
G
HE J
K
1
2
n
FD
G
DG
G
G
H
I
J
J
J
J
D K
1
D2

(8)
n
where each E i is a 2  3 matrix and each Di is a 2  7 matrix. Each row of these matrices
corresponds to a single constraint.
To cast the  2 equation into a familiar form, we write it using the “extended” matrices
Fx I
G
 J
~ G
JV

 J
G
G
H J
K
1
n
FV
G
G
G
G
H
x0
~0

I FE
J
E
~ G
J
DG

J
G
G
J
K HE
1
V01
D1
D2
2

V0 n

n
I
J
J
J
J
D K
(9)
n
giving the new equation
~ ~
~ 
~ T V~1 
~ 
~  2 T D
2  
  d
0
0
0
b g b g e
j
The minimization of this  2 with respect to all the variables has the solution [1]:
3
(10)
   0  V 0 D T 
x  x 0  Vx 0 E T 
b
V b
D
d
DV D
g
  VD~ D 0  Ex 0  d   0  VD Ex
0
D
VD~
0
T
0
d
(11)
g
 EVx 0 E T
1
i
 VD  VD EVx E T VD
with the matrix VD defined by
FV
G
G
G
G
H
D1
VD
VD 2

VD n
I
J
J
J
J
K
e
VD i  Di V0 i DTi
1
j
(12)
The  2 is given by the simplex expression
d
i
 2   T VD~1   T VD1  EVx 0 ET 
b
(13)
g
  T D 0  Ex 0  d
The covariance matrices are
d
Vx  Vx01  VE1
1
i
V  V 0  V 0 DT VDDV 0  V 0 DT VDEVx ET VDDV 0
(14)
af
cov  , x   V 0 DT VDEVx
Solution for the virtual particle parameters
We are now ready to construct the virtual particle parameters and covariance matrix. The
parameters can be written in matrix form, following eqn. (5):
pV  A  Bx  i Ai i  Bx
(15)
xV  x
where
b
A  A1 A2 
F0
G
a
A g BG
 a
G
G
H0
 az i
zi
n
and
4
yi
0
 ax i
0
 ayi I
 ax i J
J
0
0
J
J
K
(16)
F1 0
G
0 1
A G
0 0
G
G
H0 0
i
0 0
0
0 0 az i
az i
a y i
0
ax i
1 0
ayi
ax i
0
0 1
0
0
0
I
J
J
J
J
K
(17)
This part is easy since the track parameters are determined from the vertex constraint above. The
harder part is getting the covariance matrix right. It can be written as
V V 
FV
I
covb
p ,x g
G
Hcovbx , p g V J
K
pV
V
V
V
V
(18)
xV
From the definition of the virtual particle parameters in eqn. (15)
a f
a f
Vp V  AV AT  A cov  , x BT  B cov x,  AT  BVx BT
a f
b g
cov pV , x V  A cov  , x  BVx
(19)
Vx V  Vx
Using the matrices in eqn. (14), we find the covariance matrix for the virtual particle
V V 
F dA V
G
H
i
T
i 0 i Ai
i
 S1i VDiS1Ti  TVx TT
 Vx TT
 TVx
Vx
I
J
K
(20)
where S1i  Ai V0 i DTi , S3i  Ai V0 i DTi VDiEi and T  B  i S3i .
The construction of the virtual particle, including track parameters and covariance matrix, is
now complete. The particle can be used freely in subsequent fits with the understanding that
when it is used in a fit, its daughters’ track parameters will not be updated. To make it possible to
update the daughter tracks when the virtual particle participates in a later fit, one would first have
to use eqns. (11) and (14) to recalculate the daughter parameters and their covariance matrices,
including the correlations between tracks introduced by the vertex constraint. This is not possible
in the KWFIT package, which does not keep track of inter-track correlations.
III
Building virtual particles when a subset of particles is verticized
Building virtual particles is more complicated than discussed above because we want the
flexibility of merging different kinds of particles, some of which have poor or no position
information and so cannot be easily used in a vertex constraint. I divide the particles into three
classes:
1. Particles which are used to determine the vertex.
2. Particles which are forced to pass through the vertex determined by the first class, but
which are not used to find the vertex. One might use soft pions from D*  D0  in this
way.
5
3. Particles which have no position information at all (such as  0 s and photons) which only
contribute to the total 4-momentum.
It is necessary to re-derive the equations from the beginning to account for these changes. The
overall  2 condition for the vertex is, as before,
 x  x gV b
xx g
 2 a
D  Ex  df
b gV b   gb
2     0
1
0
T
T
0
0
1
x0
T
0
(21)
where this time only class 1 and class 2 particles are included. Care must be taken when taking
partial derivatives, however. Classes 1 and 2 will both be used in the  /   i partials, since both
sets of particles must pass though the vertex, but only class 1 particles will participate in  /  x
because they alone determine the vertex. Taking partials with respect to x,  and  in this manner
to minimize the  2 yields the following system of equations
b g
b   g D   0
Vx01 x  x 0  E  T   0
V10
T
(22)
0
D  Ex  d  0
where Ei  Ei for class 1 particles and Ei  0 for all others. Solving for the unknowns  and x
yields
   0  V0 DT 
x  x 0  Vx 0 E T 
b
g
d
DV D  EV E i
 V  V Ed
V  V i E V
  VD~ D 0  Ex 0  d
VD~
0
D
VE1
T
T
D
x0
1
x0
(23)
T 1
 1 1
E
T
D
T
where
 E VDE  E VDE . This final equality follows from the definition of Ei . Also
note that VD~ is no longer symmetric, a fact which greatly complicates the matrix algebra.
After an absolutely incredible amount of matrix manipulation, the covariance matrices can be
shown to reduce to the following forms
d
Vx  Vx01  VE1
1
i
V  V 0  V 0 DT VDDV 0  V 0 DT VDEVx ET VDDV 0
(24)
af
cov  , x   V 0 DT VDEVx
which can be seen by inspection to be identical to those derived in the previous section, with the
e
exception that Vx is computed only from the class 1 tracks: Vx  Vx01  VE1
6
1
j
.
The calculation of the virtual particle’s parameters and covariance matrix must include tracks
from all classes, including those from class 3, which were not used in the vertex calculation
above. We define the virtual particle parameters as before
pV  A  Bx  i Ai i  Bx
(25)
xV  x
where the sums now run over all particles and A and B are defined as before to be
F0
G a
A g BG
 a
G
G
H0
b
A  A1 A2 
 az i
0
 ax i
zi
n
yi
 ayi I
 ax i J
J
0
0
0
J
J
K
(26)
with
F1 0
G
0 1
A G
0 0
G
G
H0 0
i
0 0
0
0 0 az i
az i
a y i
0
ax i
1 0
ayi
ax i
0
0 1
0
0
0
I
J
J
J
J
K
(27)
The covariance matrix is, by definition,
V V 
FV
I
covb
p ,x g
G
Hcovbx , p g V J
K
pV
V
V
V
V
(28)
xV
where, as before,
a f
a f
Vp V  AV AT  A cov  , x BT  B cov x,  AT  BVx BT
a f
b g
cov pV , x V  A cov  , x  BVx
(29)
Vx V  Vx
Using (24) and collecting terms with the understanding that Di  0 and VD i  0 for class 3
particles, we find the covariance matrix for the virtual particle:
V V
F dA V
G
H
i
T
i 0 i Ai
i
 S1i VDiS1Ti  TVx TT
 Vx TT
 TVx
Vx
I
J
K
(30)
where S1i  Ai V0 i DTi , S3i  Ai V0 i DTi VDiEi and T  B  i S3i . This is the identical result as
before, provided we use the proper values for the matrices. This algorithm is implemented in
KWFIT.
IV Building virtual particles incorporating additional constraints
Frequently we want to build virtual particles with the vertex constraint augmented by, say, a
mass constraint. The incorporation of additional constraints is not difficult at a fundamental
7
level. However, the equations derived in the last section do not work because the extra
constraints do not have the convenient block diagonal structure. Although one can include the
extra constraints simultaneously in the fit (see Appendix), it is far easier to adopt the two step
method described in Section V in ref. [1].
The strategy is to first build a virtual particle, using the standard vertex fit, and compute the
 2 . The additional constraints are then applied to the virtual particle itself, using one of the
constraints described in ref. [3]. The track parameters and covariance matrix are updated and a
new  2 is computed, which is added to the first one to form the total  2 . If the additional
constraints are such that they apply to the virtual particle parameters as a whole, then this two
step procedure is mathematically identical to utilizing all the constraints in one simultaneous fit,
as proven in ref. [1].
Note, however, that the input tracks are not updated by the two step procedure. To update the
track parameters using the extra information, we would have to update the track covariance
matrices after the initial vertex constraint, a process that would introduce correlations between
the tracks. This is not particularly difficult to work out, but it does not seem necessary at this
time to keep track of the updated input tracks.
8
Appendix
Directly Incorporating Additional Constraints in Vertex Fitting
We frequently want to build a virtual particle where a mass constraint is imposed in addition
to the vertex conditions. I argued in Section IV that the best way to handle this case is to build
the virtual particle first with only the vertex constraint and add the additional constraint
afterwards. This method is identical to putting all the constraints together and turning the crank,
and offers the additional advantage of returning two  2 values. However, for reasons of
mathematical completeness I decided to include here an algorithm for simultaneously (as
opposed to consecutively) adding additional constraints when building a virtual particle.
There is no fundamental problem in adding m additional constraints to the vertex fitting
problem. The straightforward solution was worked out in ref. [2] using the matrix D to express
the constraints. For n tracks, we have a problem with 2n + m total constraints, thus a
2n  m  2n  m matrix must be inverted. However, I show here an alternative method which
is computationally faster and only involves the inversion of an additional m  m matrix.
Again we expand the constraint equations about convenient values  A and x A . As in the
vertex only case, the constraint conditions are denoted H , x  0 , where H is a vector of length
a fa f
a f
m  2n , and the non-vertex constraints are assumed to come first.
The  2 condition including all the constraints can be written in the standard linearized form:
 x  x gV b
xx g
 2 a
G  Fx  gf
b gV b   gb
2     0
T
1
0
T
0
0
1
x0
T
0
(31)
where      A , x  x  x A. F and G are matrices representing the partial derivatives of H
with respect to the vertex and track parameters, respectively, while g  H  A , x A is a column
b g
vector representing the values of the constraints at the expansion point. These matrices can be
written
FN I
G
E J
G
J
E J
FG
G
 J
G
HE J
K
x
1
2
n
FN
G
D
G
GG
G
G
H
1
N 2  N n
1
D2

Dn
I
J
J
J
J
J
K
(32)
The D and E matrices are the partials of H (the vertex constraint portion) with respect to the
track and vertex parameters, respectively, as described in Section II. The N matrices are the
partial derivatives of H for the non-vertex constraints. Note that I include an N x term, allowing
the extra constraints to depend on the vertex position. The dimensions of these matrices are
tabulated below.
23
Ei
Di
27
9
Nx
m3
Ni
m7
g
(m + 2n)  1
F
(m + 2n)  3
G
(m + 2n)  7n
Again we proceed by defining extended matrices to incorporate vertex and track information,
e.g.,
Fx I
G
 J
~ G

JV
 J
G
G
H J
K
1
FV
G
G
G
G
H
~0

n
N
I F
GE
J
~ G
J
E
GG
J
G

J
K G
HE
N1 N 2  N n
x
x0
D1
1
V01
D2
2

V0 n

Dn
n
I
J
J
J
J
J
K
(33)
The new  2 equation can be written in these external variables as
b gV b~  ~ g 2 eG~ ~  gj
~ 
~
2  
0
T
1
~0

T
(34)
0
~ and  yields the solution [1]:
Minimizing this with respect to 
~T
~ 
~  V~ G


0
0
~ ~
  VG~ G
0 d
e
~
~
VG~  GV~ G T
e
0
j
1
j
(35)
~
~
V~  V~ 0  V~ 0 G T VG~ GV~ 0
~ ~
 2   T VG~1   T G
0 g
e
j
Implementing this solution requires that we invert a matrix of size (2n + m)  (2n + m). For 3
tracks with a mass constraint, the matrix is 7  7, which is starting to get a bit large. However, it
is possible to simplify the problem. We compute VG~ to be
FN V N   N V N
G
E V N D V N
G
G

G
HE V N  D V N
~
F
NV N
NV D I
G
~
J
N
V
HDV
K
T
x
x x0
VG~
1 x0
T
x
n x0
T
0
~0

~0

T
T
T
i i 0i i
T
1 01  1
n 0n
~0

1
~
D
T
n
N x Vx 0 E1T  N  1V01D1T
E1Vx 0 E1T  VD11

E n Vx 0 E1T
 N x Vx 0 E Tn  N  n V0 n DTn



E1Vx 0 E Tn

1
E n Vx 0 E Tn  VDn
T 1
d
1
where VDi
 Di V0 i DTi are 2  2 matrices and N  N x
10
i
N 1 N 2  N n .
I
J
J
J
J
K(36)
1
Step aside and watch me work. To compute VG~ I use a matrix inversion technique derived in
the Appendix in ref. [2]. Consider a large matrix V which is split into a 2  2 block. Then it is
easy to prove that
V 1 
V
F
G
HV
11
T
12
V12
V22
S
IJ  F
G
K HV V
1
1
1 T 1
22 12 S
1
 S 1V12V22
1
1 T 1
1
V22
 V22
V12 S V12V22
I
J
K
(37)
1 T
where S  V11  V12V22
V12 and V22 is invertible. You can verify this solution by multiplying the
matrices together. The trick is to make the dimensions of V11 as small as possible while keeping
V22 invertible.
~ , which we inverted in eqn. (11), so we only need to
The lower block of VG~ is just VD1
calculate an additional m  m matrix inversion. This yields, using the above theorem,
~
VN
 VN NV~ 0 DT VD~
VG~ 
~
~
~
 VD~ DV~ 0 N T VN VD~  VD~ DV~ 0 N T VN NV~ 0 DT VD~
~
~
where VN1  NV~ 0 NT  NV~ 0 DT VD~ DV~ 0 NT is the new m  m matrix.
F
G
H
I
J
K
(38)
Equations (34) and (37) constitute the solution to the vertex problem plus additional
constraints. It requires only one m  m matrix inverse in addition to what is required for the
vertex constraints. However, the calculation of the covariance matrix for the new particle (see
eqns. 17 and 18) is much more complicated than before, mostly because VG~ cannot be expressed
in a simple way. For now, I see no way of easily computing the covariance matrix, even if the
form of N is simplified (say by containing no vertex component). For this reason I vastly prefer
using the two step approach outlined in Section IV.
References
1. Paul Avery, “Applied Fitting Theory VI: Formulas for Kinematic Fitting”, CBX 97–,
http://www.phys.ufl.edu/~avery/fitting.html.
2. Paul Avery, “Applied Fitting Theory I: General Least Squares Theory”, CBX 91–72,
http://www.phys.ufl.edu/~avery/fitting.html.
11
Download