#include <TrackHelixVertexFitter.h>
Public Types | |
enum | ExtraPar { BField0 =0, MassOffSet =1, NExtraPar =1 } |
enum | FreeTrackPar { kappa0 =3, lambda0, phi0, NFreeTrackPar } |
enum | FreeVertexPar { x0 =0, y0, z0, NFreeVertexPar } |
Public Member Functions | |
virtual double | chiSquare () |
virtual bool | fit ()=0 |
LorentzVectorParticle | getMother (int pdgid) |
std::vector < LorentzVectorParticle > | getRefitLorentzVectorParticles () |
virtual std::vector < TrackParticle > | getRefitTracks () |
virtual TVector3 | getVertex () |
virtual TMatrixTSym< double > | getVertexError () |
virtual double | ndf () |
TrackHelixVertexFitter (const std::vector< TrackParticle > &particles, const TVector3 &vguess) | |
virtual double | updateChisquare (const TVectorT< double > &inpar) |
virtual | ~TrackHelixVertexFitter () |
Static Public Member Functions | |
static void | computedxydz (const TVectorT< double > &inpar, int particle, double &kappa, double &lam, double &phi, double &x, double &y, double &z, double &s, double &dxy, double &dz) |
static TVectorT< double > | computeLorentzVectorPar (const TVectorT< double > &inpar) |
Protected Member Functions | |
virtual TString | freeParName (int Par) |
Protected Attributes | |
double | chi2_ |
bool | isConfigured_ |
bool | isFit_ |
double | ndf_ |
TVectorT< double > | par_ |
TMatrixTSym< double > | parcov_ |
Static Private Member Functions | |
static TVectorT< double > | computeMotherLorentzVectorPar (const TVectorT< double > &inpar) |
static TVectorT< double > | computePar (const TVectorT< double > &inpar) |
static TVectorT< double > | computeTrackPar (const TVectorT< double > &inpar, int p=0) |
static int | freeParIndex (int Par, int Particle) |
static int | measuredValueIndex (int TrackPar, int Particle) |
static void | parSizeInfo (const TVectorT< double > &inpar, int &np, int &parsize, bool hasextras=0) |
Private Attributes | |
TMatrixTSym< double > | cov_ |
TMatrixTSym< double > | cov_inv_ |
int | nPar_ |
int | nParticles_ |
int | nVal_ |
std::vector< TrackParticle > | particles_ |
TVectorT< double > | val_ |
Definition at line 24 of file TrackHelixVertexFitter.h.
TrackHelixVertexFitter::TrackHelixVertexFitter | ( | const std::vector< TrackParticle > & | particles, |
const TVector3 & | vguess | ||
) |
Definition at line 13 of file TrackHelixVertexFitter.cc.
References cov_, cov_inv_, freeParIndex(), isConfigured_, j, gen::k, tauImpactParameter::TrackParticle::kappa, kappa0, tauImpactParameter::TrackParticle::lambda, lambda0, measuredValueIndex(), ndf_, tauImpactParameter::TrackParticle::NHelixPar, nPar_, nVal_, AlCaHLTBitMon_ParallelJobs::p, par_, parcov_, particles_, tauImpactParameter::TrackParticle::phi, phi0, val_, x0, y0, and z0.
|
virtual |
Definition at line 59 of file TrackHelixVertexFitter.cc.
|
inlinevirtual |
Definition at line 35 of file TrackHelixVertexFitter.h.
References chi2_.
|
static |
Definition at line 137 of file TrackHelixVertexFitter.cc.
References funct::cos(), freeParIndex(), kappa, kappa0, lambda0, phi0, Pi, funct::sin(), funct::tan(), findQualityFiles::v, x0, y0, and z0.
Referenced by computeLorentzVectorPar(), computeTrackPar(), and tauImpactParameter::ParticleBuilder::createTrackParticle().
|
static |
Definition at line 177 of file TrackHelixVertexFitter.cc.
References BField0, computedxydz(), funct::cos(), kappa, tauImpactParameter::LorentzVectorParticle::m, MassOffSet, tauImpactParameter::LorentzVectorParticle::NLorentzandVertexPar, np, AlCaHLTBitMon_ParallelJobs::p, parSizeInfo(), phi, tauImpactParameter::LorentzVectorParticle::px, tauImpactParameter::LorentzVectorParticle::py, tauImpactParameter::LorentzVectorParticle::pz, alignCSCRings::s, funct::sin(), funct::tan(), tauImpactParameter::LorentzVectorParticle::vx, tauImpactParameter::LorentzVectorParticle::vy, tauImpactParameter::LorentzVectorParticle::vz, x, detailsBasic3DVector::y, and detailsBasic3DVector::z.
Referenced by computeMotherLorentzVectorPar(), tauImpactParameter::ParticleBuilder::createLorentzVectorParticle(), getRefitLorentzVectorParticles(), and tauImpactParameter::TrackTools::lorentzParticleAtPosition().
|
staticprivate |
Definition at line 197 of file TrackHelixVertexFitter.cc.
References BField0, computeLorentzVectorPar(), freeParIndex(), i, tauImpactParameter::LorentzVectorParticle::m, MassOffSet, NExtraPar, NFreeTrackPar, tauImpactParameter::LorentzVectorParticle::NLorentzandVertexPar, np, AlCaHLTBitMon_ParallelJobs::p, parSizeInfo(), tauImpactParameter::LorentzVectorParticle::px, tauImpactParameter::LorentzVectorParticle::py, tauImpactParameter::LorentzVectorParticle::pz, mathSSE::sqrt(), tauImpactParameter::LorentzVectorParticle::vx, tauImpactParameter::LorentzVectorParticle::vy, and tauImpactParameter::LorentzVectorParticle::vz.
Referenced by getMother().
|
staticprivate |
Definition at line 154 of file TrackHelixVertexFitter.cc.
References computeTrackPar(), i, measuredValueIndex(), NFreeTrackPar, NFreeVertexPar, tauImpactParameter::TrackParticle::NHelixPar, and AlCaHLTBitMon_ParallelJobs::p.
Referenced by getRefitTracks(), and updateChisquare().
|
staticprivate |
Definition at line 164 of file TrackHelixVertexFitter.cc.
References computedxydz(), tauImpactParameter::TrackParticle::dxy, tauImpactParameter::TrackParticle::dz, tauImpactParameter::TrackParticle::kappa, kappa, tauImpactParameter::TrackParticle::lambda, tauImpactParameter::TrackParticle::NHelixPar, phi, tauImpactParameter::TrackParticle::phi, alignCSCRings::s, x, detailsBasic3DVector::y, and detailsBasic3DVector::z.
Referenced by computePar().
|
pure virtual |
Implemented in tauImpactParameter::Chi2VertexFitter.
|
inlinestaticprivate |
Definition at line 59 of file TrackHelixVertexFitter.h.
References NFreeTrackPar, NFreeVertexPar, x0, y0, and z0.
Referenced by computedxydz(), computeMotherLorentzVectorPar(), getRefitLorentzVectorParticles(), getRefitTracks(), getVertex(), getVertexError(), and TrackHelixVertexFitter().
|
protectedvirtual |
Definition at line 225 of file TrackHelixVertexFitter.cc.
References cmsHarvester::index, kappa0, lambda0, n, NFreeTrackPar, NFreeVertexPar, nParticles_, AlCaHLTBitMon_ParallelJobs::p, phi0, x0, y0, and z0.
Referenced by tauImpactParameter::Chi2VertexFitter::fit().
LorentzVectorParticle TrackHelixVertexFitter::getMother | ( | int | pdgid | ) |
Definition at line 106 of file TrackHelixVertexFitter.cc.
References b, BField0, trackerHits::c, computeMotherLorentzVectorPar(), i, j, MassOffSet, NExtraPar, AlCaHLTBitMon_ParallelJobs::p, par_, parcov_, particles_, and tauImpactParameter::ErrorMatrixPropagator::propagateError().
std::vector< LorentzVectorParticle > TrackHelixVertexFitter::getRefitLorentzVectorParticles | ( | ) |
Definition at line 86 of file TrackHelixVertexFitter.cc.
References ecalTB2006H4_GenSimDigiReco_cfg::bField, BField0, DeDxDiscriminatorTools::charge(), computeLorentzVectorPar(), freeParIndex(), i, j, MassOffSet, NExtraPar, NFreeTrackPar, AlCaHLTBitMon_ParallelJobs::p, par_, parcov_, particles_, benchmark_cfg::pdgId, and tauImpactParameter::ErrorMatrixPropagator::propagateError().
|
virtual |
Definition at line 68 of file TrackHelixVertexFitter.cc.
References ecalTB2006H4_GenSimDigiReco_cfg::bField, DeDxDiscriminatorTools::charge(), computePar(), freeParIndex(), i, j, NFreeTrackPar, AlCaHLTBitMon_ParallelJobs::p, par_, parcov_, particles_, benchmark_cfg::pdgId, and tauImpactParameter::ErrorMatrixPropagator::propagateError().
|
virtual |
Definition at line 125 of file TrackHelixVertexFitter.cc.
References freeParIndex(), par_, x0, y0, and z0.
|
virtual |
Definition at line 129 of file TrackHelixVertexFitter.cc.
References trackerHits::c, freeParIndex(), i, j, NFreeVertexPar, and parcov_.
|
inlinestaticprivate |
Definition at line 56 of file TrackHelixVertexFitter.h.
References tauImpactParameter::TrackParticle::NHelixPar.
Referenced by computePar(), and TrackHelixVertexFitter().
|
inlinevirtual |
|
staticprivate |
Definition at line 242 of file TrackHelixVertexFitter.cc.
References MassOffSet, NExtraPar, NFreeTrackPar, and NFreeVertexPar.
Referenced by computeLorentzVectorPar(), and computeMotherLorentzVectorPar().
|
virtual |
Definition at line 61 of file TrackHelixVertexFitter.cc.
References computePar(), cov_inv_, and val_.
Referenced by tauImpactParameter::ChiSquareFunctionUpdator::operator()().
|
protected |
Definition at line 50 of file TrackHelixVertexFitter.h.
Referenced by chiSquare(), and tauImpactParameter::Chi2VertexFitter::fit().
|
private |
Definition at line 67 of file TrackHelixVertexFitter.h.
Referenced by TrackHelixVertexFitter().
|
private |
Definition at line 68 of file TrackHelixVertexFitter.h.
Referenced by TrackHelixVertexFitter(), and updateChisquare().
|
protected |
Definition at line 46 of file TrackHelixVertexFitter.h.
Referenced by tauImpactParameter::Chi2VertexFitter::fit(), and TrackHelixVertexFitter().
|
protected |
Definition at line 46 of file TrackHelixVertexFitter.h.
Referenced by tauImpactParameter::Chi2VertexFitter::fit().
|
protected |
Definition at line 50 of file TrackHelixVertexFitter.h.
Referenced by ndf(), and TrackHelixVertexFitter().
|
private |
Definition at line 69 of file TrackHelixVertexFitter.h.
Referenced by TrackHelixVertexFitter().
|
private |
Definition at line 69 of file TrackHelixVertexFitter.h.
Referenced by freeParName().
|
private |
Definition at line 69 of file TrackHelixVertexFitter.h.
Referenced by TrackHelixVertexFitter().
|
protected |
Definition at line 47 of file TrackHelixVertexFitter.h.
Referenced by tauImpactParameter::Chi2VertexFitter::fit(), getMother(), getRefitLorentzVectorParticles(), getRefitTracks(), getVertex(), and TrackHelixVertexFitter().
|
protected |
Definition at line 48 of file TrackHelixVertexFitter.h.
Referenced by tauImpactParameter::Chi2VertexFitter::fit(), getMother(), getRefitLorentzVectorParticles(), getRefitTracks(), getVertexError(), and TrackHelixVertexFitter().
|
private |
Definition at line 65 of file TrackHelixVertexFitter.h.
Referenced by getMother(), getRefitLorentzVectorParticles(), getRefitTracks(), and TrackHelixVertexFitter().
|
private |
Definition at line 66 of file TrackHelixVertexFitter.h.
Referenced by TrackHelixVertexFitter(), and updateChisquare().