ROOT  6.06/09
Reference Guide
Namespaces | Classes | Enumerations
GenVector

Generic 2D, 3D and 4D vectors classes and their transformations (rotations). More...

+ Collaboration diagram for GenVector:

Namespaces

 ROOT::Math::VectorUtil
 Global Helper functions for generic Vector classes.
 

Classes

class  ROOT::Math::AxisAngle
 AxisAngle class describing rotation represented with direction axis (3D Vector) and an angle of rotation around that axis. More...
 
class  ROOT::Math::Boost
 Lorentz boost class with the (4D) transformation represented internally by a 4x4 orthosymplectic matrix. More...
 
class  ROOT::Math::BoostX
 Class representing a Lorentz Boost along the X axis, by beta. More...
 
class  ROOT::Math::BoostY
 Class representing a Lorentz Boost along the Y axis, by beta. More...
 
class  ROOT::Math::BoostZ
 Class representing a Lorentz Boost along the Z axis, by beta. More...
 
class  ROOT::Math::Cartesian2D< T >
 Class describing a 2D cartesian coordinate system (x, y coordinates) More...
 
class  ROOT::Math::Cartesian3D< T >
 Class describing a 3D cartesian coordinate system (x, y, z coordinates) More...
 
class  ROOT::Math::DefaultCoordinateSystemTag
 DefaultCoordinateSystemTag Default tag for identifying any coordinate system. More...
 
class  ROOT::Math::GlobalCoordinateSystemTag
 Tag for identifying vectors based on a global coordinate system. More...
 
class  ROOT::Math::LocalCoordinateSystemTag
 Tag for identifying vectors based on a local coordinate system. More...
 
class  ROOT::Math::Cylindrical3D< T >
 Class describing a cylindrical coordinate system based on rho, z and phi. More...
 
class  ROOT::Math::CylindricalEta3D< T >
 Class describing a cylindrical coordinate system based on eta (pseudorapidity) instead of z. More...
 
class  ROOT::Math::DisplacementVector2D< CoordSystem, Tag >
 Class describing a generic displacement vector in 2 dimensions. More...
 
class  ROOT::Math::DisplacementVector3D< CoordSystem, Tag >
 Class describing a generic displacement vector in 3 dimensions. More...
 
class  ROOT::Math::EulerAngles
 EulerAngles class describing rotation as three angles (Euler Angles). More...
 
class  ROOT::Math::LorentzRotation
 Lorentz transformation class with the (4D) transformation represented by a 4x4 orthosymplectic matrix. More...
 
class  ROOT::Math::LorentzVector< CoordSystem >
 Class describing a generic LorentzVector in the 4D space-time, using the specified coordinate system for the spatial vector part. More...
 
class  ROOT::Math::Plane3D
 Class describing a geometrical plane in 3 dimensions. More...
 
class  ROOT::Math::Polar2D< T >
 Class describing a polar 2D coordinate system based on r and phi Phi is restricted to be in the range [-PI,PI) More...
 
class  ROOT::Math::Polar3D< T >
 Class describing a polar coordinate system based on r, theta and phi Phi is restricted to be in the range [-PI,PI) More...
 
class  ROOT::Math::PositionVector2D< CoordSystem, Tag >
 Class describing a generic position vector (point) in 2 dimensions. More...
 
class  ROOT::Math::PositionVector3D< CoordSystem, Tag >
 Class describing a generic position vector (point) in 3 dimensions. More...
 
class  ROOT::Math::PtEtaPhiE4D< ScalarType >
 Class describing a 4D cylindrical coordinate system using Pt , Phi, Eta and E (or rho, phi, eta , T) The metric used is (-,-,-,+). More...
 
class  ROOT::Math::PtEtaPhiM4D< ScalarType >
 Class describing a 4D cylindrical coordinate system using Pt , Phi, Eta and M (mass) The metric used is (-,-,-,+). More...
 
class  ROOT::Math::PxPyPzE4D< ScalarType >
 Class describing a 4D cartesian coordinate system (x, y, z, t coordinates) or momentum-energy vectors stored as (Px, Py, Pz, E). More...
 
class  ROOT::Math::PxPyPzM4D< ScalarType >
 Class describing a 4D coordinate system or momentum-energy vectors stored as (Px, Py, Pz, M). More...
 
class  ROOT::Math::Quaternion
 Rotation class with the (3D) rotation represented by a unit quaternion (u, i, j, k). More...
 
class  ROOT::Math::Rotation3D
 Rotation class with the (3D) rotation represented by a 3x3 orthogonal matrix. More...
 
class  ROOT::Math::RotationX
 Rotation class representing a 3D rotation about the X axis by the angle of rotation. More...
 
class  ROOT::Math::RotationY
 Rotation class representing a 3D rotation about the Y axis by the angle of rotation. More...
 
class  ROOT::Math::RotationZ
 Rotation class representing a 3D rotation about the Z axis by the angle of rotation. More...
 
class  ROOT::Math::RotationZYX
 Rotation class with the (3D) rotation represented by angles describing first a rotation of an angle phi (yaw) about the Z axis, followed by a rotation of an angle theta (pitch) about the new Y' axis, followed by a third rotation of an angle psi (roll) about the final X'' axis. More...
 
class  ROOT::Math::Transform3D
 Basic 3D Transformation class describing a rotation and then a translation The internal data are a 3D rotation data (represented as a 3x3 matrix) and a 3D vector data. More...
 
class  ROOT::Math::Translation3D
 Class describing a 3 dimensional translation. More...
 

Enumerations

enum  ROOT::Math::Boost::ELorentzRotationMatrixIndex {
  ROOT::Math::Boost::kLXX = 0, ROOT::Math::Boost::kLXY = 1, ROOT::Math::Boost::kLXZ = 2, ROOT::Math::Boost::kLXT = 3,
  ROOT::Math::Boost::kLYX = 4, ROOT::Math::Boost::kLYY = 5, ROOT::Math::Boost::kLYZ = 6, ROOT::Math::Boost::kLYT = 7,
  ROOT::Math::Boost::kLZX = 8, ROOT::Math::Boost::kLZY = 9, ROOT::Math::Boost::kLZZ = 10, ROOT::Math::Boost::kLZT = 11,
  ROOT::Math::Boost::kLTX = 12, ROOT::Math::Boost::kLTY = 13, ROOT::Math::Boost::kLTZ = 14, ROOT::Math::Boost::kLTT = 15
}
 
enum  ROOT::Math::Boost::EBoostMatrixIndex {
  ROOT::Math::Boost::kXX = 0, ROOT::Math::Boost::kXY = 1, ROOT::Math::Boost::kXZ = 2, ROOT::Math::Boost::kXT = 3,
  ROOT::Math::Boost::kYY = 4, ROOT::Math::Boost::kYZ = 5, ROOT::Math::Boost::kYT = 6, ROOT::Math::Boost::kZZ = 7,
  ROOT::Math::Boost::kZT = 8, ROOT::Math::Boost::kTT = 9
}
 
enum  ROOT::Math::BoostX::ELorentzRotationMatrixIndex {
  ROOT::Math::BoostX::kLXX = 0, ROOT::Math::BoostX::kLXY = 1, ROOT::Math::BoostX::kLXZ = 2, ROOT::Math::BoostX::kLXT = 3,
  ROOT::Math::BoostX::kLYX = 4, ROOT::Math::BoostX::kLYY = 5, ROOT::Math::BoostX::kLYZ = 6, ROOT::Math::BoostX::kLYT = 7,
  ROOT::Math::BoostX::kLZX = 8, ROOT::Math::BoostX::kLZY = 9, ROOT::Math::BoostX::kLZZ = 10, ROOT::Math::BoostX::kLZT = 11,
  ROOT::Math::BoostX::kLTX = 12, ROOT::Math::BoostX::kLTY = 13, ROOT::Math::BoostX::kLTZ = 14, ROOT::Math::BoostX::kLTT = 15
}
 
enum  ROOT::Math::BoostX::EBoostMatrixIndex {
  ROOT::Math::BoostX::kXX = 0, ROOT::Math::BoostX::kXY = 1, ROOT::Math::BoostX::kXZ = 2, ROOT::Math::BoostX::kXT = 3,
  ROOT::Math::BoostX::kYY = 4, ROOT::Math::BoostX::kYZ = 5, ROOT::Math::BoostX::kYT = 6, ROOT::Math::BoostX::kZZ = 7,
  ROOT::Math::BoostX::kZT = 8, ROOT::Math::BoostX::kTT = 9
}
 
enum  ROOT::Math::BoostY::ELorentzRotationMatrixIndex {
  ROOT::Math::BoostY::kLXX = 0, ROOT::Math::BoostY::kLXY = 1, ROOT::Math::BoostY::kLXZ = 2, ROOT::Math::BoostY::kLXT = 3,
  ROOT::Math::BoostY::kLYX = 4, ROOT::Math::BoostY::kLYY = 5, ROOT::Math::BoostY::kLYZ = 6, ROOT::Math::BoostY::kLYT = 7,
  ROOT::Math::BoostY::kLZX = 8, ROOT::Math::BoostY::kLZY = 9, ROOT::Math::BoostY::kLZZ = 10, ROOT::Math::BoostY::kLZT = 11,
  ROOT::Math::BoostY::kLTX = 12, ROOT::Math::BoostY::kLTY = 13, ROOT::Math::BoostY::kLTZ = 14, ROOT::Math::BoostY::kLTT = 15
}
 
enum  ROOT::Math::BoostY::EBoostMatrixIndex {
  ROOT::Math::BoostY::kXX = 0, ROOT::Math::BoostY::kXY = 1, ROOT::Math::BoostY::kXZ = 2, ROOT::Math::BoostY::kXT = 3,
  ROOT::Math::BoostY::kYY = 4, ROOT::Math::BoostY::kYZ = 5, ROOT::Math::BoostY::kYT = 6, ROOT::Math::BoostY::kZZ = 7,
  ROOT::Math::BoostY::kZT = 8, ROOT::Math::BoostY::kTT = 9
}
 
enum  ROOT::Math::BoostZ::ELorentzRotationMatrixIndex {
  ROOT::Math::BoostZ::kLXX = 0, ROOT::Math::BoostZ::kLXY = 1, ROOT::Math::BoostZ::kLXZ = 2, ROOT::Math::BoostZ::kLXT = 3,
  ROOT::Math::BoostZ::kLYX = 4, ROOT::Math::BoostZ::kLYY = 5, ROOT::Math::BoostZ::kLYZ = 6, ROOT::Math::BoostZ::kLYT = 7,
  ROOT::Math::BoostZ::kLZX = 8, ROOT::Math::BoostZ::kLZY = 9, ROOT::Math::BoostZ::kLZZ = 10, ROOT::Math::BoostZ::kLZT = 11,
  ROOT::Math::BoostZ::kLTX = 12, ROOT::Math::BoostZ::kLTY = 13, ROOT::Math::BoostZ::kLTZ = 14, ROOT::Math::BoostZ::kLTT = 15
}
 
enum  ROOT::Math::BoostZ::EBoostMatrixIndex {
  ROOT::Math::BoostZ::kXX = 0, ROOT::Math::BoostZ::kXY = 1, ROOT::Math::BoostZ::kXZ = 2, ROOT::Math::BoostZ::kXT = 3,
  ROOT::Math::BoostZ::kYY = 4, ROOT::Math::BoostZ::kYZ = 5, ROOT::Math::BoostZ::kYT = 6, ROOT::Math::BoostZ::kZZ = 7,
  ROOT::Math::BoostZ::kZT = 8, ROOT::Math::BoostZ::kTT = 9
}
 
enum  ROOT::Math::LorentzRotation::ELorentzRotationMatrixIndex {
  ROOT::Math::LorentzRotation::kXX = 0, ROOT::Math::LorentzRotation::kXY = 1, ROOT::Math::LorentzRotation::kXZ = 2, ROOT::Math::LorentzRotation::kXT = 3,
  ROOT::Math::LorentzRotation::kYX = 4, ROOT::Math::LorentzRotation::kYY = 5, ROOT::Math::LorentzRotation::kYZ = 6, ROOT::Math::LorentzRotation::kYT = 7,
  ROOT::Math::LorentzRotation::kZX = 8, ROOT::Math::LorentzRotation::kZY = 9, ROOT::Math::LorentzRotation::kZZ = 10, ROOT::Math::LorentzRotation::kZT = 11,
  ROOT::Math::LorentzRotation::kTX = 12, ROOT::Math::LorentzRotation::kTY = 13, ROOT::Math::LorentzRotation::kTZ = 14, ROOT::Math::LorentzRotation::kTT = 15
}
 
enum  ROOT::Math::Rotation3D::ERotation3DMatrixIndex {
  ROOT::Math::Rotation3D::kXX = 0, ROOT::Math::Rotation3D::kXY = 1, ROOT::Math::Rotation3D::kXZ = 2, ROOT::Math::Rotation3D::kYX = 3,
  ROOT::Math::Rotation3D::kYY = 4, ROOT::Math::Rotation3D::kYZ = 5, ROOT::Math::Rotation3D::kZX = 6, ROOT::Math::Rotation3D::kZY = 7,
  ROOT::Math::Rotation3D::kZZ = 8
}
 
enum  ROOT::Math::Transform3D::ETransform3DMatrixIndex {
  ROOT::Math::Transform3D::kXX = 0, ROOT::Math::Transform3D::kXY = 1, ROOT::Math::Transform3D::kXZ = 2, ROOT::Math::Transform3D::kDX = 3,
  ROOT::Math::Transform3D::kYX = 4, ROOT::Math::Transform3D::kYY = 5, ROOT::Math::Transform3D::kYZ = 6, ROOT::Math::Transform3D::kDY = 7,
  ROOT::Math::Transform3D::kZX = 8, ROOT::Math::Transform3D::kZY = 9, ROOT::Math::Transform3D::kZZ =10, ROOT::Math::Transform3D::kDZ = 11
}
 

Detailed Description

Generic 2D, 3D and 4D vectors classes and their transformations (rotations).

More information is available at the home page for Generic Vector for 2, 3 and 4 Dimensions

Enumeration Type Documentation

Enumerator
kXX 
kXY 
kXZ 
kXT 
kYY 
kYZ 
kYT 
kZZ 
kZT 
kTT 

Definition at line 50 of file BoostX.h.

Enumerator
kXX 
kXY 
kXZ 
kXT 
kYY 
kYZ 
kYT 
kZZ 
kZT 
kTT 

Definition at line 50 of file BoostZ.h.

Enumerator
kXX 
kXY 
kXZ 
kXT 
kYY 
kYZ 
kYT 
kZZ 
kZT 
kTT 

Definition at line 50 of file BoostY.h.

Enumerator
kXX 
kXY 
kXZ 
kXT 
kYY 
kYZ 
kYT 
kZZ 
kZT 
kTT 

Definition at line 59 of file Boost.h.

Enumerator
kLXX 
kLXY 
kLXZ 
kLXT 
kLYX 
kLYY 
kLYZ 
kLYT 
kLZX 
kLZY 
kLZZ 
kLZT 
kLTX 
kLTY 
kLTZ 
kLTT 

Definition at line 43 of file BoostY.h.

Enumerator
kLXX 
kLXY 
kLXZ 
kLXT 
kLYX 
kLYY 
kLYZ 
kLYT 
kLZX 
kLZY 
kLZZ 
kLZT 
kLTX 
kLTY 
kLTZ 
kLTT 

Definition at line 43 of file BoostZ.h.

Enumerator
kLXX 
kLXY 
kLXZ 
kLXT 
kLYX 
kLYY 
kLYZ 
kLYT 
kLZX 
kLZY 
kLZZ 
kLZT 
kLTX 
kLTY 
kLTZ 
kLTT 

Definition at line 43 of file BoostX.h.

Enumerator
kLXX 
kLXY 
kLXZ 
kLXT 
kLYX 
kLYY 
kLYZ 
kLYT 
kLZX 
kLZY 
kLZZ 
kLZT 
kLTX 
kLTY 
kLTZ 
kLTT 

Definition at line 52 of file Boost.h.

Enumerator
kXX 
kXY 
kXZ 
kXT 
kYX 
kYY 
kYZ 
kYT 
kZX 
kZY 
kZZ 
kZT 
kTX 
kTY 
kTZ 
kTT 

Definition at line 60 of file LorentzRotation.h.

Enumerator
kXX 
kXY 
kXZ 
kYX 
kYY 
kYZ 
kZX 
kZY 
kZZ 

Definition at line 71 of file Rotation3D.h.

Enumerator
kXX 
kXY 
kXZ 
kDX 
kYX 
kYY 
kYZ 
kDY 
kZX 
kZY 
kZZ 
kDZ 

Definition at line 94 of file Transform3D.h.