23 (
double bx,
double by,
double bz) {
24 double bp2 = bx*bx + by*by + bz*bz;
30 double gamma = 1.0 / std::sqrt(1.0 - bp2);
31 double bgamma = gamma * gamma / (1.0 + gamma);
32 mxx = 1.0 + bgamma * bx * bx;
33 myy = 1.0 + bgamma * by * by;
34 mzz = 1.0 + bgamma * bz * bz;
35 mxy =
myx = bgamma * bx * by;
36 mxz =
mzx = bgamma * bx * bz;
37 myz =
mzy = bgamma * by * bz;
65 if (j == 0) {
return xx(); }
66 if (j == 1) {
return xy(); }
67 if (j == 2) {
return xz(); }
68 if (j == 3) {
return xt(); }
70 if (j == 0) {
return yx(); }
71 if (j == 1) {
return yy(); }
72 if (j == 2) {
return yz(); }
73 if (j == 3) {
return yt(); }
75 if (j == 0) {
return zx(); }
76 if (j == 1) {
return zy(); }
77 if (j == 2) {
return zz(); }
78 if (j == 3) {
return zt(); }
80 if (j == 0) {
return tx(); }
81 if (j == 1) {
return ty(); }
82 if (j == 2) {
return tz(); }
83 if (j == 3) {
return tt(); }
85 std::cerr <<
"HepLorentzRotation subscripting: bad indices "
86 <<
"(" << i <<
"," << j <<
")\n";
96 if (
mtt<m1.
mtt)
return -1;
else if (
mtt>m1.
mtt)
return 1;
97 else if (
mtz<m1.
mtz)
return -1;
else if (
mtz>m1.
mtz)
return 1;
98 else if (
mty<m1.
mty)
return -1;
else if (
mty>m1.
mty)
return 1;
99 else if (
mtx<m1.
mtx)
return -1;
else if (
mtx>m1.
mtx)
return 1;
101 else if (
mzt<m1.
mzt)
return -1;
else if (
mzt>m1.
mzt)
return 1;
102 else if (
mzz<m1.
mzz)
return -1;
else if (
mzz>m1.
mzz)
return 1;
103 else if (
mzy<m1.
mzy)
return -1;
else if (
mzy>m1.
mzy)
return 1;
104 else if (
mzx<m1.
mzx)
return -1;
else if (
mzx>m1.
mzx)
return 1;
106 else if (
myt<m1.
myt)
return -1;
else if (
myt>m1.
myt)
return 1;
107 else if (
myz<m1.
myz)
return -1;
else if (
myz>m1.
myz)
return 1;
108 else if (
myy<m1.
myy)
return -1;
else if (
myy>m1.
myy)
return 1;
109 else if (
myx<m1.
myx)
return -1;
else if (
myx>m1.
myx)
return 1;
111 else if (
mxt<m1.
mxt)
return -1;
else if (
mxt>m1.
mxt)
return 1;
112 else if (
mxz<m1.
mxz)
return -1;
else if (
mxz>m1.
mxz)
return 1;
113 else if (
mxy<m1.
mxy)
return -1;
else if (
mxy>m1.
mxy)
return 1;
114 else if (
mxx<m1.
mxx)
return -1;
else if (
mxx>m1.
mxx)
return 1;
147 double c1 = std::cos (delta);
148 double s1 = std::sin (delta);
159 double c1 = std::cos (delta);
160 double s1 = std::sin (delta);
171 double c1 = std::cos (delta);
172 double s1 = std::sin (delta);
183 double b2 = beta*beta;
189 double g1 = 1.0/std::sqrt(1.0-b2);
201 double b2 = beta*beta;
207 double g1 = 1.0/std::sqrt(1.0-b2);
219 double b2 = beta*beta;
225 double g1 = 1.0/std::sqrt(1.0-b2);
238 std::setw(11) << std::setprecision(6) <<
xx() <<
" " <<
239 std::setw(11) << std::setprecision(6) <<
xy() <<
" " <<
240 std::setw(11) << std::setprecision(6) <<
xz() <<
" " <<
241 std::setw(11) << std::setprecision(6) <<
xt() <<
")\n"
243 std::setw(11) << std::setprecision(6) <<
yx() <<
" " <<
244 std::setw(11) << std::setprecision(6) <<
yy() <<
" " <<
245 std::setw(11) << std::setprecision(6) <<
yz() <<
" " <<
246 std::setw(11) << std::setprecision(6) <<
yt() <<
")\n"
248 std::setw(11) << std::setprecision(6) <<
zx() <<
" " <<
249 std::setw(11) << std::setprecision(6) <<
zy() <<
" " <<
250 std::setw(11) << std::setprecision(6) <<
zz() <<
" " <<
251 std::setw(11) << std::setprecision(6) <<
zt() <<
")\n"
253 std::setw(11) << std::setprecision(6) <<
tx() <<
" " <<
254 std::setw(11) << std::setprecision(6) <<
ty() <<
" " <<
255 std::setw(11) << std::setprecision(6) <<
tz() <<
" " <<
256 std::setw(11) << std::setprecision(6) <<
tt() <<
") ]\n";
G4double B(G4double temperature)
double operator()(int, int) const
static DLL_API const HepLorentzRotation IDENTITY
int compare(const HepLorentzRotation &m) const
HepLorentzRotation & boostZ(double beta)
HepLorentzVector row3() const
HepLorentzRotation & rotateY(double delta)
HepLorentzRotation matrixMultiplication(const HepRep4x4 &m) const
HepLorentzVector row1() const
HepLorentzRotation & boostY(double beta)
HepLorentzRotation & boostX(double beta)
HepLorentzRotation & rotateZ(double delta)
HepLorentzVector row2() const
std::ostream & print(std::ostream &os) const
HepLorentzVector row4() const
HepLorentzRotation & rotateX(double delta)
HepLorentzRotation & set(double bx, double by, double bz)
HepLorentzRotation operator*(const HepRotation &r, const HepLorentzRotation <)