21 #ifndef HEP_THREEVECTOR_H
22 #define HEP_THREEVECTOR_H
75 inline double x()
const;
76 inline double y()
const;
77 inline double z()
const;
80 inline void setX(
double);
81 inline void setY(
double);
82 inline void setZ(
double);
85 inline void set(
double x,
double y,
double z);
88 inline double phi()
const;
91 inline double theta()
const;
100 inline double mag2()
const;
103 inline double mag()
const;
106 inline void setPhi(
double);
115 inline double perp2()
const;
118 inline double perp()
const;
243 inline double getX()
const;
244 inline double getY()
const;
245 inline double getZ()
const;
248 inline double getR ()
const;
250 inline double getPhi ()
const;
253 inline double r ()
const;
256 inline double rho ()
const;
257 inline double getRho ()
const;
264 inline void setR (
double s );
267 inline void setRho (
double s );
302 double beta ()
const;
306 double gamma()
const;
317 inline double angle()
const;
414 double phi,
double theta,
double psi);
447 #include "CLHEP/Vector/ThreeVector.icc"
Hep3Vector & transform(const HepRotation &)
void set(double x, double y, double z)
std::ostream & operator<<(std::ostream &os, const HepRandom &dist)
static DLL_API double tolerance
double operator[](int) const
double azimAngle(const Hep3Vector &v2) const
Hep3Vector operator+(const Hep3Vector &, const Hep3Vector &)
double pseudoRapidity() const
bool operator>(const Hep3Vector &v) const
std::vector< ExP01TrackerHit * > a
Hep3Vector perpPart() const
bool operator>=(const Hep3Vector &v) const
double polarAngle(const Hep3Vector &v2) const
double negativeInfinity() const
void setCylindrical(double r, double phi, double z)
HepLorentzVector operator/(const HepLorentzVector &, double a)
int compare(const Hep3Vector &v) const
double deltaPhi(const Hep3Vector &v2) const
Hep3Vector & rotateX(double)
double diff2(const Hep3Vector &v) const
double dot(const Hep3Vector &) const
bool operator<(const Hep3Vector &v) const
Hep3Vector & rotateUz(const Hep3Vector &)
bool operator!=(const Hep3Vector &) const
bool isOrthogonal(const Hep3Vector &v, double epsilon=tolerance) const
Hep3Vector project() const
std::istream & operator>>(std::istream &is, HepRandom &dist)
bool operator<=(const Hep3Vector &v) const
HepLorentzRotation operator*(const HepRotation &r, const HepLorentzRotation <)
HepLorentzVector rotationXOf(const HepLorentzVector &vec, double delta)
HepLorentzVector rotationYOf(const HepLorentzVector &vec, double delta)
void setRhoPhiEta(double rho, double phi, double eta)
double howNear(const Hep3Vector &v) const
HepLorentzVector rotationZOf(const HepLorentzVector &vec, double delta)
static double getTolerance()
double howOrthogonal(const Hep3Vector &v) const
double coLinearRapidity() const
void setRhoPhiTheta(double rho, double phi, double theta)
Hep3Vector & rotate(double, const Hep3Vector &)
void setSpherical(double r, double theta, double phi)
Hep3Vector & operator-=(const Hep3Vector &)
bool isParallel(const Hep3Vector &v, double epsilon=tolerance) const
Hep3Vector & operator*=(double)
HepLorentzVector rotationOf(const HepLorentzVector &vec, const Hep3Vector &axis, double delta)
Hep3Vector cross(const Hep3Vector &) const
double operator()(int) const
Hep3Vector & rotateZ(double)
bool isNear(const Hep3Vector &, double epsilon=tolerance) const
double epsilon(double density, double temperature)
static double setTolerance(double tol)
Hep3Vector HepThreeVectorF
Hep3Vector & operator+=(const Hep3Vector &)
DLL_API const Hep3Vector HepXHat
void setRThetaPhi(double r, double theta, double phi)
Hep3Vector & operator=(const Hep3Vector &)
DLL_API const Hep3Vector HepYHat
double howParallel(const Hep3Vector &v) const
DLL_API const Hep3Vector HepZHat
Hep3Vector operator-(const Hep3Vector &, const Hep3Vector &)
Hep3Vector orthogonal() const
void setRhoPhiZ(double rho, double phi, double z)
Hep3Vector operator-() const
double deltaR(const Hep3Vector &v) const
Hep3Vector HepThreeVectorD
Hep3Vector & rotateY(double)
void setREtaPhi(double r, double eta, double phi)
bool operator==(const Hep3Vector &) const
Hep3Vector & operator/=(double)