26 #include "CLHEP/Vector/defs.h"
27 #include "CLHEP/Vector/RotationInterfaces.h"
28 #include "CLHEP/Vector/BoostX.h"
29 #include "CLHEP/Vector/BoostY.h"
30 #include "CLHEP/Vector/BoostZ.h"
31 #include "CLHEP/Vector/LorentzVector.h"
37 inline HepBoost
inverseOf (
const HepBoost & lt );
58 HepBoost &
set (
double betaX,
double betaY,
double betaZ);
59 inline HepBoost (
double betaX,
double betaY,
double betaZ);
62 HepBoost &
set (
const HepRep4x4Symmetric &
m);
63 inline HepBoost (
const HepRep4x4Symmetric & m);
70 HepBoost &
set (
const Hep3Vector & boost);
71 inline HepBoost (
const Hep3Vector & boost);
74 inline HepBoost &
set (
const HepBoostX & boost);
75 inline HepBoost &
set (
const HepBoostY & boost);
76 inline HepBoost &
set (
const HepBoostZ & boost);
77 inline HepBoost (
const HepBoostX & boost);
78 inline HepBoost (
const HepBoostY & boost);
79 inline HepBoost (
const HepBoostZ & boost);
83 inline double beta()
const;
84 inline double gamma()
const;
89 inline double xx()
const;
90 inline double xy()
const;
91 inline double xz()
const;
92 inline double xt()
const;
93 inline double yx()
const;
94 inline double yy()
const;
95 inline double yz()
const;
96 inline double yt()
const;
97 inline double zx()
const;
98 inline double zy()
const;
99 inline double zz()
const;
100 inline double zt()
const;
101 inline double tx()
const;
102 inline double ty()
const;
103 inline double tz()
const;
104 inline double tt()
const;
107 inline HepLorentzVector
col1()
const;
108 inline HepLorentzVector
col2()
const;
109 inline HepLorentzVector
col3()
const;
110 inline HepLorentzVector
col4()
const;
113 inline HepLorentzVector
row1()
const;
114 inline HepLorentzVector
row2()
const;
115 inline HepLorentzVector
row3()
const;
116 inline HepLorentzVector
row4()
const;
119 inline HepRep4x4
rep4x4()
const;
128 void decompose (HepAxisAngle & rotation, Hep3Vector & boost)
const;
132 void decompose (Hep3Vector & boost, HepAxisAngle & rotation)
const;
153 inline double distance2(
const HepBoostX & bx )
const;
154 inline double distance2(
const HepBoostY & by )
const;
155 inline double distance2(
const HepBoostZ & bz )
const;
158 double distance2(
const HepRotation & r )
const;
159 double distance2(
const HepLorentzRotation & lt )
const;
166 double howNear(
const HepRotation & r )
const;
167 double howNear(
const HepLorentzRotation & lt )
const;
169 bool isNear(
const HepRotation & r,
171 bool isNear(
const HepLorentzRotation & lt,
176 double norm2()
const;
184 inline HepLorentzVector
operator()(
const HepLorentzVector & p )
const;
187 inline HepLorentzVector
operator* (
const HepLorentzVector & p )
const;
193 HepLorentzRotation
operator * (
const HepRotation & r)
const;
194 HepLorentzRotation
operator * (
const HepLorentzRotation & lt)
const;
209 std::ostream &
print( std::ostream & os )
const;
220 (
const HepLorentzVector & w )
const;
227 (
double xx,
double xy,
double xz,
double xt,
228 double yy,
double yz,
double yt,
229 double zz,
double zt,
234 inline void setBoost(
double bx,
double by,
double bz);
236 HepRep4x4Symmetric
rep_;
241 std::ostream &
operator <<
242 ( std::ostream & os,
const HepBoost&
b ) {
return b.print(os);}
246 #include "CLHEP/Vector/Boost.icc"
248 #ifdef ENABLE_BACKWARDS_COMPATIBILITY
250 using namespace CLHEP;