17#ifndef ROOT_MathX_GenVectorX_Boost
18#define ROOT_MathX_GenVectorX_Boost 1
103 template <
class Avector>
139 for (
unsigned int i = 0; i < 10; ++i) {
173 template <
class Avector>
249 template <
class CoordSystem>
262 template <
class Foreign4Vector>
273 template <
class A4Vector>
294 for (
unsigned int i = 0; i < 10; ++i) {
295 if (
fM[i] !=
rhs.fM[i])
311#if !defined(ROOT_MATH_SYCL) && !defined(ROOT_MATH_CUDA)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
Class representing a Lorentz Boost along the X axis, by beta.
Class representing a Lorentz Boost along the Y axis, by beta.
Class representing a Lorentz Boost along the Z axis, by beta.
Lorentz boost class with the (4D) transformation represented internally by a 4x4 orthosymplectic matr...
LorentzVector< CoordSystem > operator()(const LorentzVector< CoordSystem > &v) const
Lorentz transformation operation on a LorentzVector in any coordinate system.
Foreign4Vector operator()(const Foreign4Vector &v) const
Lorentz transformation operation on an arbitrary 4-vector v.
bool operator!=(const Boost &rhs) const
void GetComponents(IT begin) const
Get given a pointer or an iterator defining the beginning of an array into which to place beta_x,...
Boost(Scalar beta_x, Scalar beta_y, Scalar beta_z)
Construct given a three Scalars beta_x, beta_y, and beta_z.
bool operator==(const Boost &rhs) const
Equality/inequality operators.
DisplacementVector3D< Cartesian3D< double >, DefaultCoordinateSystemTag > XYZVector
The beta vector for this boost.
Boost & operator=(Boost const &rhs)
Assignment operator.
LorentzVector< PxPyPzE4D< double > > operator()(const LorentzVector< PxPyPzE4D< double > > &v) const
Lorentz transformation operation on a Minkowski ('Cartesian') LorentzVector.
ELorentzRotationMatrixIndex
XYZVector BetaVector() const
void GetComponents(IT begin, IT end) const
Get given a pair of pointers or iterators defining the beginning and end of an array of three Scalars...
void SetComponents(IT begin, IT end)
Set given a pair of pointers or iterators defining the beginning and end of an array of three Scalars...
Boost & operator=(BoostZ const &bz)
Boost()
Default constructor (identity transformation)
void SetComponents(Scalar beta_x, Scalar beta_y, Scalar beta_z)
Set components from beta_x, beta_y, and beta_z.
Boost Inverse() const
Return inverse of a boost.
void GetLorentzRotation(Scalar r[]) const
Get elements of internal 4x4 symmetric representation, into a data array suitable for direct use as t...
void Rectify()
Re-adjust components to eliminate small deviations from a perfect orthosyplectic matrix.
Boost(IT begin, IT end)
Construct given a pair of pointers or iterators defining the beginning and end of an array of three S...
void GetComponents(Scalar &beta_x, Scalar &beta_y, Scalar &beta_z) const
Get components into beta_x, beta_y, and beta_z.
Boost(BoostX const &bx)
Construct from an axial boost.
void SetComponents(const Avector &beta)
Set components from a beta vector.
Boost(Boost const &b)
copy constructor
Boost(const Avector &beta)
Construct given a beta vector (which must have methods x(), y(), z())
void Invert()
Invert a Boost in place.
Boost & operator=(BoostY const &by)
Boost & operator=(BoostX const &bx)
Assign from an axial pure boost.
A4Vector operator*(const A4Vector &v) const
Overload operator * for boost on a vector.
DefaultCoordinateSystemTag Default tag for identifying any coordinate system.
Class describing a generic LorentzVector in the 4D space-time, using the specified coordinate system ...
std::ostream & operator<<(std::ostream &os, const AxisAngle &a)
Stream Output and Input.