Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
Physics Vectors

Vector classes (2D, 3D and 4D / Lorentz vector) and their transformations to be used in SYCL or CUDA kernels for heterogeneous computing.

These classes represent vectors and their operations and transformations, such as rotations and Lorentz transformations, in two, three and four dimensions. The 4D space-time is used for physics vectors representing relativistic particles in Minkowski-space. These vectors are different from Linear Algebra vectors or std::vector which describe generic N-dimensional vectors.

Hint: the most commonly used Lorentz vector class is ROOT::MathSYCL::PtEtaPhiMVector or ROOT::MathCUDA::PtEtaPhiMVector, respectively a typedef to ROOT::MathSYCL::LorentzVector < ROOT::MathSYCL::PtEtaPhiM4D < double > > and ROOT::MathCUDA::LorentzVector < ROOT::MathCUDA::PtEtaPhiM4D < double > >.

Additional Documentation

A more detailed description of the GenVectorX package is available in this document.

Namespaces

namespace  ROOT::ROOT_MATH_ARCH::VectorUtil
 Global Helper functions for generic Vector classes.
 

Classes

class  ROOT::ROOT_MATH_ARCH::AxisAngle
 AxisAngle class describing rotation represented with direction axis (3D Vector) and an angle of rotation around that axis. More...
 
class  ROOT::ROOT_MATH_ARCH::Boost
 Lorentz boost class with the (4D) transformation represented internally by a 4x4 orthosymplectic matrix. More...
 
class  ROOT::ROOT_MATH_ARCH::BoostX
 Class representing a Lorentz Boost along the X axis, by beta. More...
 
class  ROOT::ROOT_MATH_ARCH::BoostY
 Class representing a Lorentz Boost along the Y axis, by beta. More...
 
class  ROOT::ROOT_MATH_ARCH::BoostZ
 Class representing a Lorentz Boost along the Z axis, by beta. More...
 
class  ROOT::ROOT_MATH_ARCH::Cartesian2D< T >
 Class describing a 2D cartesian coordinate system (x, y coordinates) More...
 
class  ROOT::ROOT_MATH_ARCH::Cartesian3D< T >
 Class describing a 3D cartesian coordinate system (x, y, z coordinates) More...
 
class  ROOT::ROOT_MATH_ARCH::Cylindrical3D< T >
 Class describing a cylindrical coordinate system based on rho, z and phi. More...
 
class  ROOT::ROOT_MATH_ARCH::CylindricalEta3D< T >
 Class describing a cylindrical coordinate system based on eta (pseudorapidity) instead of z. More...
 
class  ROOT::ROOT_MATH_ARCH::DefaultCoordinateSystemTag
 DefaultCoordinateSystemTag Default tag for identifying any coordinate system. More...
 
class  ROOT::ROOT_MATH_ARCH::DisplacementVector2D< CoordSystem, Tag >
 Class describing a generic displacement vector in 2 dimensions. More...
 
class  ROOT::ROOT_MATH_ARCH::DisplacementVector3D< CoordSystem, Tag >
 Class describing a generic displacement vector in 3 dimensions. More...
 
class  ROOT::ROOT_MATH_ARCH::EulerAngles
 EulerAngles class describing rotation as three angles (Euler Angles). More...
 
class  ROOT::ROOT_MATH_ARCH::GlobalCoordinateSystemTag
 Tag for identifying vectors based on a global coordinate system. More...
 
class  ROOT::ROOT_MATH_ARCH::LocalCoordinateSystemTag
 Tag for identifying vectors based on a local coordinate system. More...
 
class  ROOT::ROOT_MATH_ARCH::LorentzRotation
 Lorentz transformation class with the (4D) transformation represented by a 4x4 orthosymplectic matrix. More...
 
class  ROOT::ROOT_MATH_ARCH::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::ROOT_MATH_ARCH::Impl::Plane3D< T >
 Class describing a geometrical plane in 3 dimensions. More...
 
class  ROOT::ROOT_MATH_ARCH::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::ROOT_MATH_ARCH::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::ROOT_MATH_ARCH::PositionVector2D< CoordSystem, Tag >
 Class describing a generic position vector (point) in 2 dimensions. More...
 
class  ROOT::ROOT_MATH_ARCH::PositionVector3D< CoordSystem, Tag >
 Class describing a generic position vector (point) in 3 dimensions. More...
 
class  ROOT::ROOT_MATH_ARCH::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::ROOT_MATH_ARCH::PtEtaPhiM4D< ScalarType >
 Class describing a 4D cylindrical coordinate system using Pt , Phi, Eta and M (mass) The metric used is (-,-,-,+). More...
 
class  ROOT::ROOT_MATH_ARCH::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::ROOT_MATH_ARCH::PxPyPzM4D< ScalarType >
 Class describing a 4D coordinate system or momentum-energy vectors stored as (Px, Py, Pz, M). More...
 
class  ROOT::ROOT_MATH_ARCH::Quaternion
 Rotation class with the (3D) rotation represented by a unit quaternion (u, i, j, k). More...
 
class  ROOT::ROOT_MATH_ARCH::Rotation3D
 Rotation class with the (3D) rotation represented by a 3x3 orthogonal matrix. More...
 
class  ROOT::ROOT_MATH_ARCH::RotationX
 Rotation class representing a 3D rotation about the X axis by the angle of rotation. More...
 
class  ROOT::ROOT_MATH_ARCH::RotationY
 Rotation class representing a 3D rotation about the Y axis by the angle of rotation. More...
 
class  ROOT::ROOT_MATH_ARCH::RotationZ
 Rotation class representing a 3D rotation about the Z axis by the angle of rotation. More...
 
class  ROOT::ROOT_MATH_ARCH::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 Y axis, followed by a third rotation of an angle psi (roll) about the X axis. More...
 
class  ROOT::ROOT_MATH_ARCH::Impl::Transform3D< T >
 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::ROOT_MATH_ARCH::Impl::Translation3D< T >
 Class describing a 3 dimensional translation. More...