7#include "TrkBase/TrkSimpTraj.h"
8#include "TrkBase/NeutParams.h"
9#include "CLHEP/Geometry/Point3D.h"
10#ifndef ENABLE_BACKWARDS_COMPATIBILITY
14#include "CLHEP/Matrix/Vector.h"
15#include "CLHEP/Matrix/Matrix.h"
16#include "CLHEP/Matrix/SymMatrix.h"
18using CLHEP::Hep3Vector;
19using CLHEP::HepMatrix;
20using CLHEP::HepSymMatrix;
44 Hep3Vector& delDir )
const;
87 double x(
const double& )
const;
88 double y(
const double& )
const;
89 double z(
const double& )
const;
91 inline double d0()
const {
return _np()->
d0(); }
93 inline double p()
const {
return _np()->
p(); }
94 inline double z0()
const {
return _np()->
z0(); }
95 inline double s0()
const {
return _np()->
s0(); }
96 inline double tanDip()
const {
return _np()->
tanDip(); }
97 inline double dip()
const {
return atan(tanDip());}
98 inline double cosDip()
const {
return 1./sqrt(1.+tanDip()*tanDip()); }
99 inline double sinDip()
const {
return tanDip()*cosDip(); }
100 inline double translen(
const double& f)
const {
return cosDip()*f;}
103 const HepVector& oldpar,
const HepSymMatrix& oldcov,
104 HepVector& newpar,HepSymMatrix& newcov,
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
static HepPoint3D _theOrigin