ROOT  6.06/09
Reference Guide
Public Types | Public Member Functions | Private Attributes | List of all members
ROOT::Math::BoostY Class Reference

Class representing a Lorentz Boost along the Y axis, by beta.

For efficiency, gamma is held as well.

Definition at line 37 of file BoostY.h.

Public Types

enum  ELorentzRotationMatrixIndex {
  kLXX = 0, kLXY = 1, kLXZ = 2, kLXT = 3,
  kLYX = 4, kLYY = 5, kLYZ = 6, kLYT = 7,
  kLZX = 8, kLZY = 9, kLZZ = 10, kLZT = 11,
  kLTX = 12, kLTY = 13, kLTZ = 14, kLTT = 15
}
 
enum  EBoostMatrixIndex {
  kXX = 0, kXY = 1, kXZ = 2, kXT = 3,
  kYY = 4, kYZ = 5, kYT = 6, kZZ = 7,
  kZT = 8, kTT = 9
}
 
typedef double Scalar
 
typedef DisplacementVector3D< Cartesian3D< double >, DefaultCoordinateSystemTagXYZVector
 The beta vector for this boost. More...
 

Public Member Functions

 BoostY ()
 Default constructor (identity transformation) More...
 
 BoostY (Scalar beta_y)
 Construct given a Scalar beta_y. More...
 
void Rectify ()
 Re-adjust components to eliminate small deviations from a perfect orthosyplectic matrix. More...
 
void SetComponents (Scalar beta_y)
 Set components from a Scalar beta_y. More...
 
void GetComponents (Scalar &beta_y) const
 Get components into a Scalar beta_y. More...
 
Scalar Beta () const
 Retrieve the beta of the Boost. More...
 
Scalar Gamma () const
 Retrieve the gamma of the Boost. More...
 
void SetBeta (Scalar beta)
 Set the given beta of the Boost. More...
 
XYZVector BetaVector () const
 
void GetLorentzRotation (Scalar r[]) const
 Get elements of internal 4x4 symmetric representation, into a data array suitable for direct use as the components of a LorentzRotation Note – 16 Scalars will be written into the array; if the array is not that large, then this will lead to undefined behavior. More...
 
LorentzVector< ROOT::Math::PxPyPzE4D< double > > operator() (const LorentzVector< ROOT::Math::PxPyPzE4D< double > > &v) const
 Lorentz transformation operation on a Minkowski ('Cartesian') LorentzVector. More...
 
template<class CoordSystem >
LorentzVector< CoordSystem > operator() (const LorentzVector< CoordSystem > &v) const
 Lorentz transformation operation on a LorentzVector in any coordinate system. More...
 
template<class Foreign4Vector >
Foreign4Vector operator() (const Foreign4Vector &v) const
 Lorentz transformation operation on an arbitrary 4-vector v. More...
 
template<class A4Vector >
A4Vector operator* (const A4Vector &v) const
 Overload operator * for rotation on a vector. More...
 
void Invert ()
 Invert a BoostY in place. More...
 
BoostY Inverse () const
 Return inverse of a rotation. More...
 
bool operator== (const BoostY &rhs) const
 Equality/inequality operators. More...
 
bool operator!= (const BoostY &rhs) const
 

Private Attributes

Scalar fBeta
 
Scalar fGamma
 

#include <Math/GenVector/BoostY.h>

Member Typedef Documentation

Definition at line 41 of file BoostY.h.

The beta vector for this boost.

Definition at line 111 of file BoostY.h.

Constructor & Destructor Documentation

ROOT::Math::BoostY::BoostY ( )

Default constructor (identity transformation)

Definition at line 30 of file BoostY.cxx.

ROOT::Math::BoostY::BoostY ( Scalar  beta_y)
inlineexplicit

Construct given a Scalar beta_y.

Definition at line 67 of file BoostY.h.

Member Function Documentation

Scalar ROOT::Math::BoostY::Beta ( ) const
inline

Retrieve the beta of the Boost.

Definition at line 96 of file BoostY.h.

Referenced by ROOT::Math::operator<<().

DisplacementVector3D< Cartesian3D< BoostY::Scalar > > ROOT::Math::BoostY::BetaVector ( ) const

Definition at line 50 of file BoostY.cxx.

Referenced by ROOT::Math::Boost::Boost().

Scalar ROOT::Math::BoostY::Gamma ( ) const
inline

Retrieve the gamma of the Boost.

Definition at line 101 of file BoostY.h.

Referenced by ROOT::Math::operator<<().

void ROOT::Math::BoostY::GetComponents ( Scalar beta_y) const

Get components into a Scalar beta_y.

Definition at line 44 of file BoostY.cxx.

void ROOT::Math::BoostY::GetLorentzRotation ( Scalar  r[]) const

Get elements of internal 4x4 symmetric representation, into a data array suitable for direct use as the components of a LorentzRotation Note – 16 Scalars will be written into the array; if the array is not that large, then this will lead to undefined behavior.

Definition at line 55 of file BoostY.cxx.

Referenced by ROOT::Math::LorentzRotation::LorentzRotation().

BoostY ROOT::Math::BoostY::Inverse ( ) const

Return inverse of a rotation.

Definition at line 98 of file BoostY.cxx.

void ROOT::Math::BoostY::Invert ( )

Invert a BoostY in place.

Definition at line 93 of file BoostY.cxx.

Referenced by Inverse().

bool ROOT::Math::BoostY::operator!= ( const BoostY rhs) const
inline

Definition at line 185 of file BoostY.h.

LorentzVector< PxPyPzE4D< double > > ROOT::Math::BoostY::operator() ( const LorentzVector< ROOT::Math::PxPyPzE4D< double > > &  v) const

Lorentz transformation operation on a Minkowski ('Cartesian') LorentzVector.

Definition at line 82 of file BoostY.cxx.

Referenced by operator()(), and operator*().

template<class CoordSystem >
LorentzVector<CoordSystem> ROOT::Math::BoostY::operator() ( const LorentzVector< CoordSystem > &  v) const
inline

Lorentz transformation operation on a LorentzVector in any coordinate system.

Definition at line 138 of file BoostY.h.

template<class Foreign4Vector >
Foreign4Vector ROOT::Math::BoostY::operator() ( const Foreign4Vector &  v) const
inline

Lorentz transformation operation on an arbitrary 4-vector v.

Preconditions: v must implement methods x(), y(), z(), and t() and the arbitrary vector type must have a constructor taking (x,y,z,t)

Definition at line 151 of file BoostY.h.

template<class A4Vector >
A4Vector ROOT::Math::BoostY::operator* ( const A4Vector &  v) const
inline

Overload operator * for rotation on a vector.

Definition at line 162 of file BoostY.h.

bool ROOT::Math::BoostY::operator== ( const BoostY rhs) const
inline

Equality/inequality operators.

Definition at line 180 of file BoostY.h.

Referenced by operator!=().

void ROOT::Math::BoostY::Rectify ( )

Re-adjust components to eliminate small deviations from a perfect orthosyplectic matrix.

Definition at line 63 of file BoostY.cxx.

void ROOT::Math::BoostY::SetBeta ( Scalar  beta)
inline

Set the given beta of the Boost.

Definition at line 106 of file BoostY.h.

void ROOT::Math::BoostY::SetComponents ( Scalar  beta_y)

Set components from a Scalar beta_y.

Definition at line 32 of file BoostY.cxx.

Referenced by BoostY(), Rectify(), and SetBeta().

Member Data Documentation

Scalar ROOT::Math::BoostY::fBeta
private
Scalar ROOT::Math::BoostY::fGamma
private

Definition at line 192 of file BoostY.h.

Referenced by Gamma(), GetLorentzRotation(), operator()(), operator==(), Rectify(), and SetComponents().


The documentation for this class was generated from the following files: