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;
85 inline void set(
double x,
double y,
double z);
88 inline double phi()
const;
103 inline double mag()
const;
253 inline double r ()
const;
256 inline double rho ()
const;
302 double beta ()
const;
306 double gamma()
const;
414 double phi,
double theta,
double psi);
447#include "CLHEP/Vector/ThreeVector.icc"
Hep3Vector & operator-=(const Hep3Vector &)
Hep3Vector & rotateY(double)
double azimAngle(const Hep3Vector &v2) const
Hep3Vector & rotateX(double)
Hep3Vector orthogonal() const
void setRhoPhiEta(double rho, double phi, double eta)
bool operator>=(const Hep3Vector &v) const
Hep3Vector(const Hep3Vector &)
double operator()(int) const
static DLL_API double tolerance
Hep3Vector & rotateZ(double)
double diff2(const Hep3Vector &v) const
Hep3Vector & operator/=(double)
void setRhoPhiZ(double rho, double phi, double z)
void setSpherical(double r, double theta, double phi)
Hep3Vector cross(const Hep3Vector &) const
double operator[](int) const
void setRThetaPhi(double r, double theta, double phi)
double angle(const Hep3Vector &) const
Hep3Vector & operator=(const Hep3Vector &)
double howNear(const Hep3Vector &v) const
double dot(const Hep3Vector &) const
Hep3Vector perpPart(const Hep3Vector &v2) const
double perp(const Hep3Vector &) const
bool operator>(const Hep3Vector &v) const
bool isOrthogonal(const Hep3Vector &v, double epsilon=tolerance) const
double negativeInfinity() const
Hep3Vector perpPart() const
static double setTolerance(double tol)
static double getTolerance()
bool operator!=(const Hep3Vector &) const
Hep3Vector(double x, double y, double z)
Hep3Vector & operator*=(double)
bool isNear(const Hep3Vector &, double epsilon=tolerance) const
double pseudoRapidity() const
Hep3Vector & transform(const HepRotation &)
bool operator<=(const Hep3Vector &v) const
double deltaPhi(const Hep3Vector &v2) const
double theta(const Hep3Vector &v2) const
void setCylindrical(double r, double phi, double z)
void set(double x, double y, double z)
double coLinearRapidity() const
int compare(const Hep3Vector &v) const
double howParallel(const Hep3Vector &v) const
double howOrthogonal(const Hep3Vector &v) const
Hep3Vector operator-() const
bool operator==(const Hep3Vector &) const
double deltaR(const Hep3Vector &v) const
void setREtaPhi(double r, double eta, double phi)
void setRhoPhiTheta(double rho, double phi, double theta)
Hep3Vector & rotateUz(const Hep3Vector &)
Hep3Vector & rotate(double, const Hep3Vector &)
bool operator<(const Hep3Vector &v) const
double polarAngle(const Hep3Vector &v2) const
Hep3Vector(double x, double y)
Hep3Vector & operator+=(const Hep3Vector &)
bool isParallel(const Hep3Vector &v, double epsilon=tolerance) const
Hep3Vector project() const
double perp2(const Hep3Vector &) const
HepLorentzVector rotationYOf(const HepLorentzVector &vec, double delta)
Hep3Vector operator-(const Hep3Vector &, const Hep3Vector &)
Hep3Vector operator+(const Hep3Vector &, const Hep3Vector &)
HepLorentzVector rotationXOf(const HepLorentzVector &vec, double delta)
HepLorentzRotation operator*(const HepRotation &r, const HepLorentzRotation <)
DLL_API const Hep3Vector HepZHat
std::istream & operator>>(std::istream &is, HepRandom &dist)
HepLorentzVector rotationZOf(const HepLorentzVector &vec, double delta)
HepLorentzVector rotationOf(const HepLorentzVector &vec, const Hep3Vector &axis, double delta)
DLL_API const Hep3Vector HepXHat
Hep3Vector HepThreeVectorF
Hep3Vector HepThreeVectorD
DLL_API const Hep3Vector HepYHat
std::ostream & operator<<(std::ostream &os, const HepRandom &dist)
HepLorentzVector operator/(const HepLorentzVector &, double a)