19#ifndef ROOT_MathX_GenVectorX_Cartesian3D
20#define ROOT_MathX_GenVectorX_Cartesian3D 1
51template <
class T =
double>
71 template <
class CoordSystem>
178 template <
class CoordSystem>
197 T
x()
const {
return X(); }
198 T
y()
const {
return Y(); }
199 T
z()
const {
return Z(); }
206 const T rho =
v.Rho();
220 const T rho =
v.
Rho();
227#if defined(__MAKECINT__) || defined(G__DICTIONARY)
233 void SetTheta(
Scalar theta);
253#if defined(__MAKECINT__) || defined(G__DICTIONARY)
254#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 dest
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
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t src
Class describing a 3D cartesian coordinate system (x, y, z coordinates)
void Negate()
negate the vector
void GetCoordinates(Scalar &xx, Scalar &yy, Scalar &zz) const
get internal data into 3 Scalar numbers
constexpr Cartesian3D(const CoordSystem &v)
Construct from any Vector or coordinate system implementing X(), Y() and Z()
void SetY(Scalar yy)
set the y coordinate value keeping x and z constant
bool operator==(const Cartesian3D &rhs) const
Exact equality.
void GetCoordinates(Scalar dest[]) const
get internal data into an array of 3 Scalar numbers
Cartesian3D & operator=(const Polar3D< T2 > &v)
void SetXYZ(Scalar xx, Scalar yy, Scalar zz)
set all values using cartesian coordinates
void SetX(Scalar xx)
set the x coordinate value keeping y and z constant
bool operator!=(const Cartesian3D &rhs) const
Cartesian3D & operator=(const CoordSystem &v)
Assignment from any class implementing x(),y() and z() (can assign from any coordinate system)
Cartesian3D(const Polar3D< T2 > &v)
void SetCoordinates(const Scalar src[])
Set internal data based on an array of 3 Scalar numbers.
constexpr Cartesian3D() noexcept=default
Default constructor with x=y=z=0.
void SetZ(Scalar zz)
set the z coordinate value keeping x and y constant
void Scale(Scalar a)
scale the vector by a scalar quantity a
void SetCoordinates(Scalar xx, Scalar yy, Scalar zz)
Set internal data based on 3 Scalar numbers.
Scalar Eta_FromRhoZ(Scalar rho, Scalar z)
Calculate eta given rho and zeta.
Scalar math_cos(Scalar x)
Scalar math_sqrt(Scalar x)
Scalar math_atan2(Scalar x, Scalar y)
Scalar math_sin(Scalar x)