7#include "CLHEP/Geometry/Point3D.h"
8#include "TrkBase/NeutParams.h"
9#include "TrkBase/TrkSimpTraj.h"
10#ifndef ENABLE_BACKWARDS_COMPATIBILITY
14#include "CLHEP/Matrix/Matrix.h"
15#include "CLHEP/Matrix/SymMatrix.h"
16#include "CLHEP/Matrix/Vector.h"
18using CLHEP::Hep3Vector;
19using CLHEP::HepMatrix;
20using CLHEP::HepSymMatrix;
39 virtual Hep3Vector
direction(
double fltLen )
const;
59 double curvature(
double fltLen )
const {
return 0.; }
81 double x(
const double& )
const;
82 double y(
const double& )
const;
83 double z(
const double& )
const;
85 inline double d0()
const {
return _np()->
d0(); }
87 inline double p()
const {
return _np()->p(); }
88 inline double z0()
const {
return _np()->z0(); }
89 inline double s0()
const {
return _np()->s0(); }
90 inline double tanDip()
const {
return _np()->tanDip(); }
91 inline double dip()
const {
return atan( tanDip() ); }
92 inline double cosDip()
const {
return 1. / sqrt( 1. + tanDip() * tanDip() ); }
93 inline double sinDip()
const {
return tanDip() * cosDip(); }
94 inline double translen(
const double&
f )
const {
return cosDip() *
f; }
97 const HepVector& oldpar,
const HepSymMatrix& oldcov,
98 HepVector& newpar, HepSymMatrix& newcov,
double fltlen );
HepGeom::Point3D< double > HepPoint3D
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
void(* TranslateParams)(const HepPoint3D &oldpoint, const HepPoint3D &newpoint, const HepVector &oldpar, const HepSymMatrix &oldcov, HepVector &newpar, HepSymMatrix &newcov, double fltlen)
HepGeom::Point3D< double > HepPoint3D
NeutTraj(const NeutTraj &)
virtual Hep3Vector direction(double fltLen) const
virtual double distTo2ndError(double s, double tol, int pathDir) const
HepMatrix derivDeflect(double fltlen, deflectDirection) const
virtual Hep3Vector delDirect(double) const
const NeutParams & params() const
virtual HepPoint3D position(double fltLen) const
double curvature(double fltLen) const
HepMatrix derivDisplace(double fltlen, deflectDirection idir) const
void getDFInfo(double fltLen, DifPoint &, DifVector &dir, DifVector &delDir) const
HepMatrix derivPFract(double fltlen) const
NeutTraj & operator=(const NeutTraj &)
TranslateParams paramFunction() const
void getInfo(double fltLen, HepPoint3D &, Hep3Vector &dir, Hep3Vector &delDir) const
virtual void visitAccept(TrkVisitor *vis) const
void invertParams(TrkParams *newparams, std::vector< bool > &flags) const
virtual double distTo1stError(double s, double tol, int pathDir) const
NeutTraj(const NeutParams &, double lowlim=-99999., double hilim=99999., const HepPoint3D &refpoint=_theOrigin)
void getInfo(double fltLen, HepPoint3D &pos, Hep3Vector &dir) const
TrkSimpTraj(const HepVector ¶ms, const HepSymMatrix &cov, const double startRange=-99999., const double endRange=99999., const HepPoint3D &refpoint=_theOrigin)
static HepPoint3D _theOrigin