thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
ThePEG::SpinOneLorentzRotation Class Reference

The SpinOneLorentzRotation class is ... More...

#include <SpinOneLorentzRotation.h>

Public Member Functions

bool isIdentity () const
 Returns true if the Identity matrix.
 
SpinOneLorentzRotation inverse () const
 Return the inverse.
 
SpinOneLorentzRotationinvert ()
 Inverts the SpinOneLorentzRotation matrix.
 
std::ostream & print (std::ostream &os) const
 output operator
 
Constructors and destructor.
 SpinOneLorentzRotation ()
 Default constructor. More...
 
 SpinOneLorentzRotation (double bx, double by, double bz, double gamma=-1.)
 Constructor giving the components of a Lorentz boost. More...
 
 SpinOneLorentzRotation (const Boost &b, double gamma=-1.)
 Constructor giving the vector for a Lorentz boost. More...
 
Set methods for speical cases of simple rotations and boosts
SpinOneLorentzRotationsetBoost (double bx, double by, double bz, double gamma=-1.)
 Specify the components of a Lorentz Boost. More...
 
SpinOneLorentzRotationsetBoost (const Boost &b, double gamma=-1.)
 Specify a Lorentz Boost as a vector. More...
 
SpinOneLorentzRotationsetRotate (double delta, const Axis &axis)
 Specify a rotation about a general axis by the angle given. More...
 
SpinOneLorentzRotationsetRotateX (double angle)
 Specify a rotation by the given angle about the x-axis. More...
 
SpinOneLorentzRotationsetRotateY (double angle)
 Specify a rotation by the given angle about the y-axis. More...
 
SpinOneLorentzRotationsetRotateZ (double angle)
 Specify a rotation by the given angle about the z-axis. More...
 
Access methods for the components of the spin-1 rotation
double xx () const
 The xx component.
 
double xy () const
 The xy component.
 
double xz () const
 The xz component.
 
double xt () const
 The xt component.
 
double yx () const
 The yx component.
 
double yy () const
 The yy component.
 
double yz () const
 The yz component.
 
double yt () const
 The yt component.
 
double zx () const
 The zx component.
 
double zy () const
 The zy component.
 
double zz () const
 The zz component.
 
double zt () const
 The zt component.
 
double tx () const
 The tx component.
 
double ty () const
 The ty component.
 
double tz () const
 The tz component.
 
double tt () const
 The tt component.
 
Transformation and product members
template<typename Value >
LorentzVector< Value > operator* (const LorentzVector< Value > &v) const
 Product with a LorentzVector simply returns the rotated vector.
 
template<typename Value >
Lorentz5Vector< Value > operator* (const Lorentz5Vector< Value > &v) const
 Product with a Lorentz5Vector simply returns the rotated vector.
 
SpinOneLorentzRotation operator* (const SpinOneLorentzRotation &lt) const
 Product of two LorentzRotations (this) * lt - matrix multiplication. More...
 
SpinOneLorentzRotationoperator*= (const SpinOneLorentzRotation &lt)
 Multiply by and assign a*=b becomes a= a*b.
 
SpinOneLorentzRotationtransform (const SpinOneLorentzRotation &lt)
 Transform (similar to *= but a.transform(b) becomes a = b*a.
 
SpinOneLorentzRotationrotateX (double delta)
 Rotation around the x-axis; equivalent to LT = RotationX(delta) * LT.
 
SpinOneLorentzRotationrotateY (double delta)
 Rotation around the y-axis; equivalent to LT = RotationY(delta) * LT.
 
SpinOneLorentzRotationrotateZ (double delta)
 Rotation around the z-axis; equivalent to LT = RotationZ(delta) * LT.
 
SpinOneLorentzRotationrotate (double delta, const Axis &axis)
 Rotation around specified vector - LT = Rotation(delta,axis)*LT.
 
SpinOneLorentzRotationboostX (double beta)
 Pure boost along the x-axis; equivalent to LT = BoostX(beta) * LT.
 
SpinOneLorentzRotationboostY (double beta)
 Pure boost along the y-axis; equivalent to LT = BoostX(beta) * LT.
 
SpinOneLorentzRotationboostZ (double beta)
 Pure boost along the z-axis; equivalent to LT = BoostX(beta) * LT.
 
SpinOneLorentzRotationboost (double bx, double by, double bz, double gamma=-1.)
 boost equivalent to LT = Boost(bx,by,bz) * LT More...
 
SpinOneLorentzRotationboost (const Boost &b, double gamma=-1.)
 boost equivalent to LT = Boost(bv) * LT More...
 

Private Member Functions

 SpinOneLorentzRotation (double xx, double xy, double xz, double xt, double yx, double yy, double yz, double yt, double zx, double zy, double zz, double zt, double tx, double ty, double tz, double tt)
 Constructor from doubles.
 
double operator() (unsigned int i, unsigned int j) const
 Component access by index: x=0, t=3.
 
Component access.
double & xx_ ()
 
double & xy_ ()
 
double & xz_ ()
 
double & xt_ ()
 
double & yx_ ()
 
double & yy_ ()
 
double & yz_ ()
 
double & yt_ ()
 
double & zx_ ()
 
double & zy_ ()
 
double & zz_ ()
 
double & zt_ ()
 
double & tx_ ()
 
double & ty_ ()
 
double & tz_ ()
 
double & tt_ ()
 

Private Attributes

array< double, 16 > matrix_ = {}
 Matrix components, order: $(xx, xy, \ldots, tz, tt)$.
 

Friends

template<typename Value >
class Helicity::LorentzTensor
 
template<typename Value >
class Helicity::LorentzRSSpinor
 
template<typename Value >
class Helicity::LorentzRSSpinorBar
 

Detailed Description

The SpinOneLorentzRotation class is ...

Definition at line 24 of file SpinOneLorentzRotation.h.

Constructor & Destructor Documentation

◆ SpinOneLorentzRotation() [1/3]

ThePEG::SpinOneLorentzRotation::SpinOneLorentzRotation ( )
inline

Default constructor.

Gives a unit matrix.

Definition at line 33 of file SpinOneLorentzRotation.h.

Referenced by boost(), boostX(), boostY(), and boostZ().

◆ SpinOneLorentzRotation() [2/3]

ThePEG::SpinOneLorentzRotation::SpinOneLorentzRotation ( double  bx,
double  by,
double  bz,
double  gamma = -1. 
)
inline

Constructor giving the components of a Lorentz boost.

Parameters
bxThe x-component of the boost
byThe y-component of the boost
bzThe z-component of the boost
gammaThe $\gamma$ factor (optional)

Definition at line 44 of file SpinOneLorentzRotation.h.

References setBoost().

◆ SpinOneLorentzRotation() [3/3]

ThePEG::SpinOneLorentzRotation::SpinOneLorentzRotation ( const Boost b,
double  gamma = -1. 
)
inlineexplicit

Constructor giving the vector for a Lorentz boost.

Parameters
bThe boost vector
gammaThe $\gamma$ factor (optional)

Definition at line 54 of file SpinOneLorentzRotation.h.

References inverse(), isIdentity(), and setBoost().

Member Function Documentation

◆ boost() [1/2]

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::boost ( double  bx,
double  by,
double  bz,
double  gamma = -1. 
)
inline

boost equivalent to LT = Boost(bx,by,bz) * LT

Parameters
bxThe x-component of the boost
byThe y-component of the boost
bzThe z-component of the boost
gammaThe $\gamma$ factor (optional)

Definition at line 325 of file SpinOneLorentzRotation.h.

References SpinOneLorentzRotation().

Referenced by ThePEG::LorentzRotation::boost().

◆ boost() [2/2]

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::boost ( const Boost b,
double  gamma = -1. 
)
inline

boost equivalent to LT = Boost(bv) * LT

Parameters
bThe boost vector
gammaThe $\gamma$ factor (optional)

Definition at line 335 of file SpinOneLorentzRotation.h.

References SpinOneLorentzRotation().

◆ operator*()

SpinOneLorentzRotation ThePEG::SpinOneLorentzRotation::operator* ( const SpinOneLorentzRotation lt) const

Product of two LorentzRotations (this) * lt - matrix multiplication.

Parameters
ltThe LorentzRotation we are multiplying

◆ setBoost() [1/2]

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::setBoost ( double  bx,
double  by,
double  bz,
double  gamma = -1. 
)

Specify the components of a Lorentz Boost.

Parameters
bxThe x-component of the boost
byThe y-component of the boost
bzThe z-component of the boost
gammaThe $\gamma$ factor (optional)

Referenced by invert(), setBoost(), ThePEG::LorentzRotation::setBoost(), ThePEG::LorentzRotation::setBoostX(), ThePEG::LorentzRotation::setBoostY(), ThePEG::LorentzRotation::setBoostZ(), and SpinOneLorentzRotation().

◆ setBoost() [2/2]

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::setBoost ( const Boost b,
double  gamma = -1. 
)
inline

Specify a Lorentz Boost as a vector.

Parameters
bThe boost vector
gammaThe $\gamma$ factor (optional)

Definition at line 97 of file SpinOneLorentzRotation.h.

References setBoost(), setRotate(), setRotateX(), setRotateY(), and setRotateZ().

◆ setRotate()

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::setRotate ( double  delta,
const Axis axis 
)

Specify a rotation about a general axis by the angle given.

Parameters
deltaThe angle
axisThe axis

Referenced by rotate(), setBoost(), and ThePEG::LorentzRotation::setRotate().

◆ setRotateX()

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::setRotateX ( double  angle)

Specify a rotation by the given angle about the x-axis.

Parameters
angleThe rotation angle

Referenced by rotateX(), setBoost(), and ThePEG::LorentzRotation::setRotateX().

◆ setRotateY()

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::setRotateY ( double  angle)

Specify a rotation by the given angle about the y-axis.

Parameters
angleThe rotation angle

Referenced by rotateY(), and setBoost().

◆ setRotateZ()

SpinOneLorentzRotation& ThePEG::SpinOneLorentzRotation::setRotateZ ( double  angle)

Specify a rotation by the given angle about the z-axis.

Parameters
angleThe rotation angle

Referenced by rotateZ(), setBoost(), ThePEG::LorentzRotation::setRotateY(), and ThePEG::LorentzRotation::setRotateZ().


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