Go to the documentation of this file.
23 #ifndef HEP_LORENTZROTATION_H
24 #define HEP_LORENTZROTATION_H
30 #include "CLHEP/Vector/defs.h"
31 #include "CLHEP/Vector/RotationInterfaces.h"
32 #include "CLHEP/Vector/Rotation.h"
33 #include "CLHEP/Vector/Boost.h"
34 #include "CLHEP/Vector/LorentzVector.h"
40 inline HepLorentzRotation
inverseOf (
const HepLorentzRotation & lt );
41 HepLorentzRotation
operator * (
const HepRotation & r,
42 const HepLorentzRotation & lt);
43 HepLorentzRotation
operator * (
const HepRotationX & r,
44 const HepLorentzRotation & lt);
45 HepLorentzRotation
operator * (
const HepRotationY & r,
46 const HepLorentzRotation & lt);
47 HepLorentzRotation
operator * (
const HepRotationZ & r,
48 const HepLorentzRotation & lt);
145 inline double xx()
const;
146 inline double xy()
const;
147 inline double xz()
const;
148 inline double xt()
const;
149 inline double yx()
const;
150 inline double yy()
const;
151 inline double yz()
const;
152 inline double yt()
const;
153 inline double zx()
const;
154 inline double zy()
const;
155 inline double zz()
const;
156 inline double zt()
const;
157 inline double tx()
const;
158 inline double ty()
const;
159 inline double tz()
const;
160 inline double tt()
const;
240 double norm2()
const;
317 std::ostream &
print( std::ostream & os )
const;
337 inline void setBoost(
double,
double,
double);
348 inline std::ostream &
operator<<
350 {
return lt.print(os);}
380 #include "CLHEP/Vector/LorentzRotation.icc"
382 #ifdef ENABLE_BACKWARDS_COMPATIBILITY
384 using namespace CLHEP;
HepLorentzVector operator*(const HepLorentzVector &p) const
HepRotation delta() setPhi()
bool operator>=(const HepLorentzRotation &) const
HepLorentzRotation_row(const HepLorentzRotation &, int)
bool operator>(const HepRotation &r, const HepLorentzRotation <)
HepLorentzRotation & rotateZ(double delta)
HepLorentzVector col3() const
static double setTolerance(double tol)
HepLorentzVector row2() const
int compare(const HepLorentzRotation &m) const
double operator[](int) const
We have the boost methods returning HepLorentzVector &rather than so things can be chained we feel the boost methods along an axis
bool operator>(const HepLorentzRotation &) const
bool operator>=(const HepRotation &r, const HepLorentzRotation <)
bool operator<=(const HepRotation &r, const HepLorentzRotation <)
bool operator<(const HepRotation &r, const HepLorentzRotation <)
bool operator!=(const HepRotation &r, const HepLorentzRotation <)
bool isNear(const HepBoost &b, double epsilon=Hep4RotationInterface::tolerance) const
HepLorentzRotation & boost(double, double, double)
double operator()(int, int) const
bool operator<=(const HepLorentzRotation &) const
double distance2(const HepBoost &b) const
bool operator<(const HepLorentzRotation &) const
HepLorentzVector col4() const
HepLorentzRotation inverse() const
double howNear(const HepBoost &b) const
bool operator==(const HepRotation &r, const HepLorentzRotation <)
friend HepLorentzRotation inverseOf(const HepLorentzRotation <)
bool operator!=(const HepLorentzRotation &) const
HepLorentzRotation & boostY(double beta)
HepLorentzVector col1() const
HepLorentzVector row1() const
HepLorentzRotation & operator=(const HepLorentzRotation &m)
HepLorentzRotation & operator*=(const HepBoost &b)
HepLorentzVector vectorMultiplication(const HepLorentzVector &) const
std::ostream & print(std::ostream &os) const
HepLorentzRotation & invert()
HepBoost inverseOf(const HepBoost <)
HepLorentzRotation & boostX(double beta)
static const HepLorentzRotation IDENTITY
bool operator==(const HepLorentzRotation &) const
HepLorentzRotation & rotateY(double delta)
HepLorentzVector row3() const
static double getTolerance()
HepLorentzVector row4() const
HepLorentzRotation & rotateX(double delta)
Application of Rotations and LorentzTransformations to containers of and as in Rotation R
HepLorentzRotation & setRows(const HepLorentzVector &row1, const HepLorentzVector &row2, const HepLorentzVector &row3, const HepLorentzVector &row4)
void setBoost(double, double, double)
void decompose(Hep3Vector &boost, HepAxisAngle &rotation) const
HepLorentzRotation operator*(const HepRotation &r, const HepLorentzRotation <)
const HepLorentzRotation_row operator[](int) const
HepLorentzVector col2() const
HepLorentzRotation & rotate(double delta, const Hep3Vector &axis)
HepLorentzRotation & set(double bx, double by, double bz)
HepLorentzRotation & transform(const HepBoost &b)
HepLorentzRotation & boostZ(double beta)
HepLorentzRotation matrixMultiplication(const HepRep4x4 &m) const