FEDRA emulsion software from the OPERA Collaboration
|
#include <SVertex.hh>
Public Member Functions | |
— Constructors — | |
SVertex () | |
SVertex (const SVertex< NTR > &rhs) | |
SVertex (const Track &t) | |
create Vertex object & set mother track by $t$ More... | |
SVertex (const Track &t1, const Track &t2) | |
SVertex (const Track &t1, const Track &t2, const Track &t3) | |
SVertex (const Track &t1, const Track &t2, const Track &t3, const Track &t4) | |
SVertex (const SVertex< NTR-1 > &vtx, const Track &t) | |
add a track More... | |
SVertex< NTR > & | operator= (const SVertex< NTR > &rhs) |
— Vertex Access methods — | |
float | vx () const |
vertex $x$ position $v_x$ More... | |
float | vy () const |
vertex $y$ position $v_y$ More... | |
float | vz () const |
vertex $z$ position $v_z$ More... | |
float | chi2 () const |
vertex $\chi^2$ More... | |
unsigned short int | ndf () const |
degrees of freedom of vertex fit More... | |
float | prob () const |
upper tail $\chi^2$ probability More... | |
unsigned short int | ntracks () const |
no of tracks in vertex More... | |
const Track * | track (unsigned int i) const |
read only track access More... | |
const Track *& | track (unsigned int i) |
read/write track access More... | |
SVector< double, 3 > | vpos () const |
vertex position $\vec{v} = (v_x,v_y,v_z)$ More... | |
const SMatrix< double, 3 > & | VCOV () const |
vertex cov. matrix More... | |
float | vtx_cov_x () const |
$\sigma_x^2$ of vertex More... | |
float | vtx_cov_y () const |
$\sigma_y^2$ of vertex More... | |
float | vtx_cov_z () const |
$\sigma_z^2$ of vertex More... | |
— SVertex members — | |
const SVector< double, 3 > & | vposR () const |
vertex position $\vec{v} = (v_x,v_y,v_z)$ (fast readonly access) More... | |
SVector< double, 3 > & | vposR () |
vertex position $\vec{v} = (v_x,v_y,v_z)$ (fast read/write access) More... | |
void | set_vpos (const SVector< double, 3 > &pos) |
set vertex position manually More... | |
void | set_track (unsigned int i, const Track &t) |
set track list More... | |
const SKalman< NTR > & | kalman (unsigned int i) const |
read only access to Kalman objects More... | |
SKalman< NTR > & | kalman (unsigned int i) |
read/write access to Kalman objects More... | |
const SMatrix< double, 3 > & | VCINV () const |
inverse vertex cov. matrix More... | |
const SVector< double, 6 > & | mother () const |
mother track parameters $\vec{m}=(x,y,z,t_x,t_y,p)$ More... | |
const SMatrix< double, 3 *NTR+3 > & | covn () const |
for internal use only More... | |
— Vertex computations — | |
SVector< double, 3 > | findVertex2D () const |
return vertex computed with 2D analytical method More... | |
bool | calcVertex2D () |
compute vertex with a 2D analytical method More... | |
bool | findVertex3D (SVector< double, 3 > &pos) const |
return vertex computed with 3D analytical method More... | |
bool | findVertexVt () |
Vt based Kalman filter vertex fit. More... | |
bool | findVertexNe () |
Vt based Kalman filter vertex fit, without first estimation. More... | |
SVector< double, 2 > | rmsDistAngle () const |
return rms distance and rms opening angle of tracks in vertex More... | |
SVector< double, 3 > | EstimateVertex () const |
compute vertex with error weighted 2D analytical method More... | |
double | mass (const SVector< double, NTR > &rm) const |
compute invariant mass using refitted track momenta More... | |
double | massError (const SVector< double, NTR > &rm) const |
compute invariant mass error caused by momentum error More... | |
double | mass_tr (const SVector< double, NTR > &rm) const |
compute invariant mass using measured track momenta More... | |
— Track Access methods —\ The following functions apply only to the mother track and give only | |
useful results in case you reconstructed the mother track (see section of expert methods). | |
float | x () const |
$x$ of reconstructed track More... | |
float | y () const |
$y$ of reconstructed track More... | |
float | x (float z) const |
linear extrapolation of $x$ to z More... | |
float | y (float z) const |
linear extrapolation of $y$ to z More... | |
float | z () const |
$z$ of reconstructed track More... | |
float | tx () const |
mother track rack slope $t_x$ More... | |
float | ty () const |
mother track slope $t_y$ More... | |
float | p () const |
mother track momentum $p$ More... | |
float | pt () const |
transverse mother track momentum $p_t$ More... | |
float | pz () const |
mother track momentum along More... | |
float | phi () const |
azimuthal angle $\phi$ [deg] More... | |
float | theta () const |
polar angle $\theta = \cos^{-1}(e_z)$ [deg] More... | |
float | eta () const |
rapidity $\eta = -\log\tan(\theta/2.)$ More... | |
int | charge () const |
track charge (=sum of track charges in vertex) More... | |
float | energy (double mass=0.) const |
$E = \sqrt{m^2 + p^2}$ More... | |
float | xf (double mass=0.) const |
float | rap (double mass=0.) const |
Rapidity $y = \frac{1}{2}\ln(\frac{E+p_z}{E-p_z})$. More... | |
float | cov_x (double dz=0.) const |
get $\sigma_x^2|_{z+dz}$ More... | |
float | cov_y (double dz=0.) const |
get $\sigma_y^2|_{z+dz}$ More... | |
float | cov_tx () const |
get $\sigma_{t_x}^2$ More... | |
float | cov_ty () const |
get $\sigma_{t_y}^2$ More... | |
float | cov_p () const |
get $\sigma_p^2$ More... | |
bool | isValid () const |
void | valid () |
mark mother track as valid More... | |
void | invalid () |
mark mother track as invalid More... | |
SVector< double, 3 > | xvec () const |
position $\vec{x} = (x,y,z)$ of mother track More... | |
SVector< double, 3 > | tvec () const |
slope $\vec{t} = (t_x,t_y,1)$ of mother track More... | |
SVector< double, 3 > | evec () const |
$\vec{e} = (e_x,e_y,ez)$ unit vector along $\vec{p}$ of mother track More... | |
SVector< double, 3 > | pvec () const |
mother track momentum vector $\vec{p} = (p_x,p_y,p_z)$ More... | |
const SMatrix< double, 5 > & | COV () const |
covariance matrix of mother track More... | |
const SMatrix< double, 5 > & | CINV () const |
inverse cov. matrix of mother track More... | |
void | collect (vector< Track * > &c) const |
collect pointers More... | |
bool | propagate (const double z) |
propagate reconsructed track to $z$ More... | |
std::ostream & | print (std::ostream &) const |
used by operator<<() More... | |
— Operators — | |
bool | operator== (const Track &rhs) const |
compare Track pointers More... | |
![]() | |
void | addGrain (Grain gr) |
bool | evaluateEstimators () |
unsigned int | getAreaSum () const |
double | getBottomZ () const |
unsigned short | getCount () const |
double | getErrX () const |
double | getErrY () const |
double | getErrZ () const |
std::vector< Grain > | getGrains () const |
double | getSigma () const |
double | getSX () const |
double | getSY () const |
double | getSZ () const |
double | getTopZ () const |
double | getX () const |
double | getY () const |
double | getZ () const |
void | setAreaSum (unsigned int areaSum) |
void | setBottomZ (double z) |
void | setCount (unsigned short count) |
void | setErrX (double errx) |
void | setErrY (double erry) |
void | setErrZ (double errz) |
void | setSigma (double sigma) |
void | setSX (double sx) |
void | setSY (double sy) |
void | setSZ (double sz) |
void | setTopZ (double z) |
void | setX (double x) |
void | setY (double y) |
void | setZ (double z) |
Track () | |
~Track () | |
Static Public Attributes | |
— static variables — | |
static const unsigned int | size = NTR |
— SVertex methods — | |
SVector< double, 3 > | vpos_ |
double | v_bk13 |
const Track * | tracks [NTR] |
SKalman< NTR > | kalman_ [NTR] |
SMatrix< double, 3 > | v_CS |
SMatrix< double, 3 > | v_CINV |
double | v_chi2 |
unsigned int | v_ndf |
SVector< double, 6 > | t_p |
SMatrix< double, 3 *NTR+3 > | v_covn |
SMatrix< double, 5 > | cov_ |
SMatrix< double, 5 > | cinv_ |
bool | validKalmanFit |
bool | valid_ |
bool | moth_tr |
bool | moth_cov |
bool | validity |
bool | isMotherTr () const |
is mother track calculated? More... | |
bool | isMotherCov () const |
is mother cov. matrix calculated? More... | |
bool | isKalmanFit () const |
has Kalman fit succeeded? More... | |
bool | filter () |
do a filter step More... | |
bool | smooth () |
smooth vertex parameters More... | |
bool | smoothC () |
needed for bigcov() More... | |
double | bk13 () const |
bool | calc_mother () |
calculate mother track + cov. matrix More... | |
bool | calc_mother_tr () |
calculate mother track using kalman info More... | |
bool | calc_mother_trtr () |
calculate mother track using track info More... | |
bool | calc_mother_cov () |
calculate covariance matrix of mother track More... | |
bool | bigcov () |
construct $(3\cdot n+3)\times(3\cdot n+3)$ cov. matrix More... | |
Additional Inherited Members | |
![]() | |
double | dz |
int | Field |
float | FirstZ |
TVector | Intercept |
TVector | InterceptErrors |
float | LastZ |
double | meanDeltaTheta3D |
double | meanDeltaThetaXZ |
double | meanDeltaThetaYZ |
double | meanDistanceClustersTo3DLine |
double | meanGapClusterToCluster |
double | mx |
double | mxSigma |
double | my |
double | mySigma |
BYTE * | pCorrection |
char * | pCorrection |
unsigned | PointsN |
TVector * | pPoints |
double | qx |
double | qy |
double | rx |
double | ry |
float | Sigma |
double | sigmaDeltaTheta3D |
double | sigmaDeltaThetaXZ |
double | sigmaDeltaThetaYZ |
TVector | Slope |
TVector | SlopeErrors |
boolean | Valid |
bool | Valid |
double | xChi2 |
double | yChi2 |
Fixed size Vertex class.
create Vertex object & set mother track by $t$
SVertex< NTR >::SVertex | ( | const Track & | t1, |
const Track & | t2, | ||
const Track & | t3 | ||
) |
SVertex< NTR >::SVertex | ( | const Track & | t1, |
const Track & | t2, | ||
const Track & | t3, | ||
const Track & | t4 | ||
) |
SVertex< NTR >::SVertex | ( | const SVertex< NTR-1 > & | vtx, |
const Track & | t | ||
) |
add a track
bool SVertex< NTR >::bigcov | ( | ) |
construct $(3\cdot n+3)\times(3\cdot n+3)$ cov. matrix
|
inline |
bool SVertex< NTR >::calc_mother | ( | ) |
calculate mother track + cov. matrix
bool SVertex< NTR >::calc_mother_cov | ( | ) |
calculate covariance matrix of mother track
bool SVertex< NTR >::calc_mother_tr | ( | ) |
calculate mother track using kalman info
bool SVertex< NTR >::calc_mother_trtr | ( | ) |
calculate mother track using track info
bool SVertex< NTR >::calcVertex2D | ( | ) |
compute vertex with a 2D analytical method
int SVertex< NTR >::charge | ( | ) | const |
track charge (=sum of track charges in vertex)
float SVertex< NTR >::chi2 | ( | ) | const |
vertex $\chi^2$
inverse cov. matrix of mother track
collect pointers
covariance matrix of mother track
float SVertex< NTR >::cov_p | ( | ) | const |
get $\sigma_p^2$
float SVertex< NTR >::cov_tx | ( | ) | const |
get $\sigma_{t_x}^2$
float SVertex< NTR >::cov_ty | ( | ) | const |
get $\sigma_{t_y}^2$
float SVertex< NTR >::cov_x | ( | double | dz = 0. | ) | const |
get $\sigma_x^2|_{z+dz}$
float SVertex< NTR >::cov_y | ( | double | dz = 0. | ) | const |
get $\sigma_y^2|_{z+dz}$
for internal use only
float SVertex< NTR >::energy | ( | double | mass = 0. | ) | const |
$E = \sqrt{m^2 + p^2}$
compute vertex with error weighted 2D analytical method
float SVertex< NTR >::eta | ( | ) | const |
rapidity $\eta = -\log\tan(\theta/2.)$
$\vec{e} = (e_x,e_y,ez)$ unit vector along $\vec{p}$ of mother track
bool SVertex< NTR >::filter | ( | ) |
do a filter step
return vertex computed with 2D analytical method
return vertex computed with 3D analytical method
bool SVertex< NTR >::findVertexNe | ( | ) |
Vt based Kalman filter vertex fit, without first estimation.
bool SVertex< NTR >::findVertexVt | ( | ) |
Vt based Kalman filter vertex fit.
bool SVertex< NTR >::isKalmanFit | ( | ) | const |
has Kalman fit succeeded?
bool SVertex< NTR >::isMotherCov | ( | ) | const |
is mother cov. matrix calculated?
bool SVertex< NTR >::isMotherTr | ( | ) | const |
is mother track calculated?
bool SVertex< NTR >::isValid | ( | ) | const |
Kalman fit: reconstructed track and covariance matrix are computed and propagated to $z=0$?\ else: is reconstructed track computed?
read/write access to Kalman objects
read only access to Kalman objects
compute invariant mass using refitted track momenta
double SVertex< NTR >::mass_tr | ( | const SVector< double, NTR > & | rm | ) | const |
compute invariant mass using measured track momenta
double SVertex< NTR >::massError | ( | const SVector< double, NTR > & | rm | ) | const |
compute invariant mass error caused by momentum error
mother track parameters $\vec{m}=(x,y,z,t_x,t_y,p)$
unsigned short int SVertex< NTR >::ndf | ( | ) | const |
degrees of freedom of vertex fit
unsigned short int SVertex< NTR >::ntracks | ( | ) | const |
no of tracks in vertex
compare Track pointers
float SVertex< NTR >::p | ( | ) | const |
mother track momentum $p$
float SVertex< NTR >::phi | ( | ) | const |
azimuthal angle $\phi$ [deg]
std::ostream & SVertex< NTR >::print | ( | std::ostream & | ) | const |
used by operator<<()
float SVertex< NTR >::prob | ( | ) | const |
upper tail $\chi^2$ probability
bool SVertex< NTR >::propagate | ( | const double | z | ) |
propagate reconsructed track to $z$
float SVertex< NTR >::pt | ( | ) | const |
transverse mother track momentum $p_t$
mother track momentum vector $\vec{p} = (p_x,p_y,p_z)$
float SVertex< NTR >::pz | ( | ) | const |
mother track momentum along
$z$: $p / \sqrt{t_x^2+t_y^2+1}$
float SVertex< NTR >::rap | ( | double | mass = 0. | ) | const |
Rapidity $y = \frac{1}{2}\ln(\frac{E+p_z}{E-p_z})$.
return rms distance and rms opening angle of tracks in vertex
set track list
set vertex position manually
bool SVertex< NTR >::smooth | ( | ) |
smooth vertex parameters
float SVertex< NTR >::theta | ( | ) | const |
polar angle $\theta = \cos^{-1}(e_z)$ [deg]
read/write track access
read only track access
slope $\vec{t} = (t_x,t_y,1)$ of mother track
float SVertex< NTR >::tx | ( | ) | const |
mother track rack slope $t_x$
float SVertex< NTR >::ty | ( | ) | const |
mother track slope $t_y$
inverse vertex cov. matrix
vertex cov. matrix
vertex position $\vec{v} = (v_x,v_y,v_z)$
vertex position $\vec{v} = (v_x,v_y,v_z)$ (fast read/write access)
vertex position $\vec{v} = (v_x,v_y,v_z)$ (fast readonly access)
float SVertex< NTR >::vtx_cov_x | ( | ) | const |
$\sigma_x^2$ of vertex
float SVertex< NTR >::vtx_cov_y | ( | ) | const |
$\sigma_y^2$ of vertex
float SVertex< NTR >::vtx_cov_z | ( | ) | const |
$\sigma_z^2$ of vertex
float SVertex< NTR >::vx | ( | ) | const |
vertex $x$ position $v_x$
float SVertex< NTR >::vy | ( | ) | const |
vertex $y$ position $v_y$
float SVertex< NTR >::vz | ( | ) | const |
vertex $z$ position $v_z$
float SVertex< NTR >::x | ( | ) | const |
$x$ of reconstructed track
float SVertex< NTR >::x | ( | float | z | ) | const |
linear extrapolation of $x$ to z
float SVertex< NTR >::xf | ( | double | mass = 0. | ) | const |
$x_f = (p_z - E(m)\cdot\sqrt{1 - \frac{2m_p}{920 GeV/c + m_p}})/m_p$, $m_p$ = Proton mass, $m$ = Particle mass
position $\vec{x} = (x,y,z)$ of mother track
float SVertex< NTR >::y | ( | ) | const |
$y$ of reconstructed track
float SVertex< NTR >::y | ( | float | z | ) | const |
linear extrapolation of $y$ to z
float SVertex< NTR >::z | ( | ) | const |
$z$ of reconstructed track
|
private |
|
private |
|
static |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |