68void Dinv1(
int *n,
double *
a,
int *idim,
double *ir,
int *ifail);
115 unsigned short int ndf()
const;
117 unsigned short int ntracks()
const;
119#if defined USE_ROOT && !defined __CINT__
162 double mass(
const bool use =
false)
const;
164 double massCC(
const bool use =
false)
const;
166 double mass(
double m1)
const;
168 double mass(
double m1,
double m2)
const;
170 double mass(
double m1,
double m2,
double m3)
const;
172 double mass(
double m1,
double m2,
double m3,
double m4)
const;
174 double mass(
const Vector_d& m02,
bool use =
false,
bool CC =
false)
const;
220 double distance(
double x,
double y,
double z)
const;
246 std::ostream&
print(std::ostream& os)
const;
248 double chi2n()
const;
250 double chi2l()
const;
322#include "VtVertex.icc"
void Dinv1(int *n, double *a, int *idim, double *ir, int *ifail)
Definition: VtSqMatrix.C:321
void a()
Definition: check_aligned.C:59
Definition: VtSymMatrix.hh:49
Definition: VtVector.hh:45
Definition: VtMassC.hh:50
Definition: VtRelationList.hh:67
Definition: VtRelation.hh:51
Definition: VtTrack.hh:64
float x() const
x at z=0 (in Vt: p(3,..))
Definition: VtTrack.C:148
float z() const
z = 0 in Vt
Definition: VtTrack.C:150
float y() const
y at z=0 (in Vt: p(4,..))
Definition: VtTrack.C:149
Definition: VtVertex.hh:88
void use_kalman(const bool use)
use refitted track parameters or not
double pmaxfrac() const
$\max|p_i/p_j|$ max. momentum fraction
Definition: VtVertex.C:1570
const bool remove_last()
remove last track from vertex, do inverse Kalman filter
Definition: VtVertex.C:725
const bool VtEstimateVertex()
weighted 2-D min. dist.
Definition: VtVertex.C:1241
double massCC(const bool use=false) const
rest-mass 0 or conjugated track rest mass
Definition: VtVertex.C:925
const MATRIX::VtSymMatrix & bigcov()
compute general $(3\cdot n+3) \times (3\cdot n+3)$ covariance matrix
Definition: VtVertex.C:341
double vyerr() const
$\sqrt{\sigma_{vy}^2}$ vertex $y$-error
bool v_mother
Definition: VtVertex.hh:287
const bool operator==(const Vertex &rhs) const
Definition: VtVertex.C:1555
const MATRIX::VtVector & xv() const
MATRIX::VtSymMatrix * v_covn
Definition: VtVertex.hh:300
double track_chi2(int i)
get track $\chi^2$ contribution
Definition: VtVertex.C:783
void clearMassConstr()
delete the mass constraints
Definition: VtVertex.C:328
unsigned short int ndf() const
degrees of freedom of vertex fit
Definition: VtVertex.C:238
unsigned int nMassConstr() const
number of mass constraints
float chi2() const
$\chi^2$ of vertex fit
Definition: VtVertex.C:236
const bool findVertex3D(void)
unweighted 3-D min. dist.
Definition: VtVertex.C:1011
void add_track(Track &t)
Definition: VtVertex.C:261
const bool VtEstimateVertexMath(double &x, double &y, double &z)
estimate Vertex without changing Vertex object
Definition: VtVertex.C:1305
MATRIX::VtVector kal_xvs
Definition: VtVertex.hh:295
const bool VtInverseFilter() const
Definition: VtVertex.C:1419
const double operator-(const Vertex &rhs) const
Definition: VtVertex.C:1563
bool v_angdist
Definition: VtVertex.hh:288
bool v_Mvalid
Definition: VtVertex.hh:286
double v_angle
Definition: VtVertex.hh:289
bool v_valid
Definition: VtVertex.hh:285
MassC_v xmass
Definition: VtVertex.hh:302
double distance(double x, double y, double z) const
$\chi^2$ distance to space point, $ndf = 3$
Definition: VtVertex.C:803
int track_worst()
get track with biggest $\chi^2$ contribution
Definition: VtVertex.C:758
double vzerr() const
$\sqrt{\sigma_{vz}^2}$ vertex $z$-error
const MATRIX::VtVector & xvs() const
vector of vertex-positions
MassC & addMassConstr(double m=0.)
add a mass constraint
Definition: VtVertex.C:320
float vtx_cov_z() const
$\sigma_z^2$ of vertex
Definition: VtVertex.C:256
float vz() const
$z$ of vertex
Definition: VtVertex.C:235
double chi2l() const
$\chi^2$ contribution of last filter step
Definition: VtVertex.C:865
float vy() const
$y$ of vertex
Definition: VtVertex.C:234
MATRIX::VtVector kal_xv
Definition: VtVertex.hh:294
const bool findVertex2D(void)
unweighted 2-D min. dist.
Definition: VtVertex.C:1111
const bool VtFit()
Kalman filter + smoother.
Definition: VtVertex.C:1162
void use_momentum(const bool use)
set for all tracks whether momentum should be used or not
Definition: VtVertex.C:279
void push_back(Track &track)
Definition: VtVertex.C:271
const bool VtFilter()
Definition: VtVertex.C:1378
double mass(const bool use=false) const
rest-mass 0 or track rest mass
Definition: VtVertex.C:929
unsigned short int ntracks() const
no of tracks in vertex $n$
Definition: VtVertex.C:240
float vtx_cov_x() const
$\sigma_x^2$ of vertex
Definition: VtVertex.C:254
const bool VtMass()
Kalman filter with mass constraints.
Definition: VtVertex.C:535
double chi2n() const
$\chi^2$ after last filter step
Definition: VtVertex.C:858
double v_bk13
Definition: VtVertex.hh:291
void MassConstr(double m)
add a mass constraint for all tracks, $m$ = mass of mother particle
Definition: VtVertex.C:306
float vtx_cov_y() const
$\sigma_y^2$ of vertex
Definition: VtVertex.C:255
const unsigned int bigdim() const
const Track * get_track(int i) const
Definition: VtVertex.C:266
std::ostream & print(std::ostream &os) const
called by operator<<()
Definition: VtVertex.C:875
float vx() const
$x$ of vertex
Definition: VtVertex.C:233
Vertex()
Definition: VtVertex.C:88
bool calc_mother(bool use_kalman=true)
calc track params of mother particle
Definition: VtVertex.C:392
double rmsDistAngle() const
calc rms dist and rms angle
Definition: VtVertex.C:1073
const MATRIX::VtSymMatrix & CS() const
$3\times3$ Vertex covariance matrix
double dist() const
available after call to rmsDistAngle()
const bool VtEstimateVertexMathTA(double &x, double &y, double &z)
estimate Vertex without changing Vertex object
Definition: VtVertex.C:1249
void remove_worst()
remove track with biggest $\chi^2$ contribution, do inverse Kalman filter
Definition: VtVertex.C:732
bool valid() const
is vertex valid?
Track_v tracks
Definition: VtVertex.hh:301
bool calc_mother_cov()
calc cov. matrix of mother particle
Definition: VtVertex.C:458
float prob() const
upper tail $\chi^2$ probability
Definition: VtVertex.C:237
const Vertex & operator=(const Vertex &rhs)
Definition: VtVertex.C:1525
MATRIX::VtSymMatrix v_CINV
Definition: VtVertex.hh:299
void clear()
clear all track-vertex relations, makes vertex invalid
Definition: VtVertex.C:196
~Vertex()
Definition: VtVertex.C:178
double vxerr() const
$\sqrt{\sigma_{vx}^2}$ vertex $x$-error
void VtSmoothQ()
smooth momenta
Definition: VtVertex.C:1506
const MATRIX::VtSymMatrix & covn() const
$(3\cdot n+3)\times(3\cdot n+3)$ general covariance matrix
virtual void remove(Relation *r)
unbook relation
Definition: VtVertex.C:290
void set_invalid()
mark vertex as invalid
void VtSmoothX()
smooth vertex position
Definition: VtVertex.C:1474
double v_dist
Definition: VtVertex.hh:290
bool v_use_kalman
Definition: VtVertex.hh:284
const bool VtRemoveTrack(Relation &track)
remove track using inverse Kalman filter
Definition: VtVertex.C:1443
MATRIX::VtSymMatrix v_CS
Definition: VtVertex.hh:297
void invalid()
Definition: VtVertex.C:218
virtual const iterator erase(const iterator &pos)
erase a relation without refit
Definition: VtVertex.C:298
const bool findVertexVt()
Vt Kalman-filter.
Definition: VtVertex.C:1174
double v_chi2
Definition: VtVertex.hh:293
TTree * t
Definition: check_shower.C:4
s
Definition: check_shower.C:55
Definition: VtDistance.hh:30
std::vector< Track * >::iterator Track_it
Definition: VtVertex.hh:80
std::vector< Track * > Track_v
Definition: VtVertex.hh:79
std::ostream & operator<<(std::ostream &os, const VtIni &t)
Definition: VtIni.hh:83
ConstRelationIterator const_iterator
Definition: VtRelationList.hh:54
std::list< MassC * > MassC_v
Definition: VtMassC_list.hh:28
RelationIterator iterator
Definition: VtRelationList.hh:53
std::vector< Track * >::const_iterator Track_cit
Definition: VtVertex.hh:81
std::vector< double > Vector_d
Definition: VtVertex.hh:75
void r(int rid=2)
Definition: test.C:201