Geant4
9.6.p02
|
#include <BasicVector3D.h>
Public Types | |
enum | { X = 0, Y = 1, Z = 2, NUM_COORDINATES = 3, SIZE = NUM_COORDINATES } |
Protected Member Functions | |
BasicVector3D () | |
Protected Attributes | |
T | v_ [3] |
Base class for Point3D<T>, Vector3D<T> and Normal3D<T>. It defines only common functionality for those classes and should not be used as separate class.
Definition at line 27 of file BasicVector3D.h.
anonymous enum |
Safe indexing of the coordinates when using with matrices, arrays, etc.
Enumerator | |
---|---|
X |
index for x-component |
Y |
index for y-component |
Z |
index for z-component |
NUM_COORDINATES |
number of components |
SIZE |
number of components |
Definition at line 41 of file BasicVector3D.h.
|
inlineprotected |
Default constructor. It is protected - this class should not be instantiated directly.
Definition at line 35 of file BasicVector3D.h.
|
inline |
Constructor from three numbers.
Definition at line 51 of file BasicVector3D.h.
|
inline |
Copy constructor. Note: BasicVector3D<double> has constructors from BasicVector3D<double> (provided by compiler) and from BasicVector3D<float> (defined in this file); BasicVector3D<float> has only the last one.
Definition at line 60 of file BasicVector3D.h.
|
inlinevirtual |
Destructor.
Definition at line 66 of file BasicVector3D.h.
float HepGeom::BasicVector3D< float >::angle | ( | const BasicVector3D< float > & | v) | const |
double HepGeom::BasicVector3D< double >::angle | ( | const BasicVector3D< double > & | v) | const |
T HepGeom::BasicVector3D< T >::angle | ( | const BasicVector3D< T > & | v) | const |
Returns angle w.r.t. another vector.
|
inline |
Gets cosine of polar angle.
Definition at line 211 of file BasicVector3D.h.
|
inline |
Vector product.
Definition at line 275 of file BasicVector3D.h.
|
inline |
Scalar product.
Definition at line 269 of file BasicVector3D.h.
|
inline |
Gets pseudo-rapidity.
Definition at line 254 of file BasicVector3D.h.
|
inline |
Gets pseudo-rapidity.
Definition at line 257 of file BasicVector3D.h.
|
inline |
Gets phi-component in spherical coordinate system
Definition at line 218 of file BasicVector3D.h.
|
inline |
Gets r-component in spherical coordinate system
Definition at line 215 of file BasicVector3D.h.
|
inline |
Gets theta-component in spherical coordinate system
Definition at line 221 of file BasicVector3D.h.
|
inline |
Gets magnitude of the vector.
Definition at line 195 of file BasicVector3D.h.
|
inline |
Gets magnitude squared of the vector.
Definition at line 192 of file BasicVector3D.h.
|
inline |
Conversion (cast) to CLHEP::Hep3Vector. This operator is needed only for backward compatibility and in principle should not exit.
Definition at line 85 of file BasicVector3D.h.
|
inline |
Conversion (cast) to ordinary const array.
Definition at line 78 of file BasicVector3D.h.
|
inline |
Conversion (cast) to ordinary array.
Definition at line 74 of file BasicVector3D.h.
|
inline |
Gets components by index.
Definition at line 123 of file BasicVector3D.h.
|
inline |
Sets components by index.
Definition at line 130 of file BasicVector3D.h.
|
inline |
Multiplication by scalar.
Definition at line 108 of file BasicVector3D.h.
|
inline |
Addition.
Definition at line 98 of file BasicVector3D.h.
|
inline |
Subtraction.
Definition at line 103 of file BasicVector3D.h.
|
inline |
Division by scalar.
Definition at line 113 of file BasicVector3D.h.
|
inline |
Assignment.
Definition at line 93 of file BasicVector3D.h.
|
inline |
Gets components by index.
Definition at line 126 of file BasicVector3D.h.
|
inline |
Sets components by index.
Definition at line 133 of file BasicVector3D.h.
|
inline |
Returns orthogonal vector.
Definition at line 312 of file BasicVector3D.h.
|
inline |
Gets transverse component.
Definition at line 172 of file BasicVector3D.h.
|
inline |
Returns transverse component w.r.t. given axis.
Definition at line 290 of file BasicVector3D.h.
|
inline |
Gets transverse component squared.
Definition at line 169 of file BasicVector3D.h.
|
inline |
Returns transverse component w.r.t. given axis squared.
Definition at line 283 of file BasicVector3D.h.
|
inline |
Gets azimuth angle.
Definition at line 201 of file BasicVector3D.h.
float HepGeom::BasicVector3D< float >::pseudoRapidity | ( | ) | const |
Definition at line 13 of file BasicVector3D.cc.
double HepGeom::BasicVector3D< double >::pseudoRapidity | ( | ) | const |
Definition at line 169 of file BasicVector3D.cc.
T HepGeom::BasicVector3D< T >::pseudoRapidity | ( | ) | const |
Gets pseudo-rapidity: -ln(tan(theta/2))
|
inline |
Gets r-component in spherical coordinate system
Definition at line 198 of file BasicVector3D.h.
|
inline |
Gets rho-component in cylindrical coordinate system
Definition at line 175 of file BasicVector3D.h.
BasicVector3D< float > & HepGeom::BasicVector3D< float >::rotate | ( | float | a, |
const BasicVector3D< float > & | v | ||
) |
BasicVector3D< double > & HepGeom::BasicVector3D< double >::rotate | ( | double | a, |
const BasicVector3D< double > & | v | ||
) |
BasicVector3D<T>& HepGeom::BasicVector3D< T >::rotate | ( | T | a, |
const BasicVector3D< T > & | v | ||
) |
Rotates around the axis specified by another vector.
BasicVector3D< float > & HepGeom::BasicVector3D< float >::rotateX | ( | float | a) |
Definition at line 49 of file BasicVector3D.cc.
BasicVector3D< double > & HepGeom::BasicVector3D< double >::rotateX | ( | double | a) |
Definition at line 205 of file BasicVector3D.cc.
BasicVector3D<T>& HepGeom::BasicVector3D< T >::rotateX | ( | T | a) |
Rotates around x-axis.
BasicVector3D< float > & HepGeom::BasicVector3D< float >::rotateY | ( | float | a) |
Definition at line 58 of file BasicVector3D.cc.
BasicVector3D< double > & HepGeom::BasicVector3D< double >::rotateY | ( | double | a) |
Definition at line 214 of file BasicVector3D.cc.
BasicVector3D<T>& HepGeom::BasicVector3D< T >::rotateY | ( | T | a) |
Rotates around y-axis.
BasicVector3D< float > & HepGeom::BasicVector3D< float >::rotateZ | ( | float | a) |
Definition at line 67 of file BasicVector3D.cc.
BasicVector3D< double > & HepGeom::BasicVector3D< double >::rotateZ | ( | double | a) |
Definition at line 223 of file BasicVector3D.cc.
BasicVector3D<T>& HepGeom::BasicVector3D< T >::rotateZ | ( | T | a) |
Rotates around z-axis.
|
inline |
Sets components in cartesian coordinate system.
Definition at line 161 of file BasicVector3D.h.
void HepGeom::BasicVector3D< float >::setEta | ( | float | a) |
Definition at line 23 of file BasicVector3D.cc.
void HepGeom::BasicVector3D< double >::setEta | ( | double | a) |
Definition at line 179 of file BasicVector3D.cc.
void HepGeom::BasicVector3D< T >::setEta | ( | T | a) |
Sets pseudo-rapidity, keeping magnitude and phi fixed.
|
inline |
Sets magnitude.
Definition at line 225 of file BasicVector3D.h.
|
inline |
Sets transverse component keeping phi and z constant.
Definition at line 179 of file BasicVector3D.h.
|
inline |
Sets phi-component in spherical coordinate system.
Definition at line 236 of file BasicVector3D.h.
|
inline |
Sets r-component in spherical coordinate system.
Definition at line 233 of file BasicVector3D.h.
|
inline |
Sets theta-component in spherical coordinate system.
Definition at line 239 of file BasicVector3D.h.
|
inline |
Sets x-component in cartesian coordinate system.
Definition at line 151 of file BasicVector3D.h.
|
inline |
Sets y-component in cartesian coordinate system.
Definition at line 154 of file BasicVector3D.h.
|
inline |
Sets z-component in cartesian coordinate system.
Definition at line 157 of file BasicVector3D.h.
|
inline |
Gets polar angle.
Definition at line 206 of file BasicVector3D.h.
|
inline |
Returns unit vector parallel to this.
Definition at line 304 of file BasicVector3D.h.
|
inline |
Gets x-component in cartesian coordinate system.
Definition at line 141 of file BasicVector3D.h.
|
inline |
Gets y-component in cartesian coordinate system.
Definition at line 144 of file BasicVector3D.h.
|
inline |
Gets z-component in cartesian coordinate system.
Definition at line 147 of file BasicVector3D.h.
|
related |
Comparison of two vectors for inequality.
Definition at line 447 of file BasicVector3D.h.
|
related |
Comparison of two vectors for inequality.
Definition at line 556 of file BasicVector3D.h.
|
related |
Multiplication vector by scalar.
Definition at line 402 of file BasicVector3D.h.
|
related |
Scalar product of two vectors.
Definition at line 411 of file BasicVector3D.h.
|
related |
Multiplication scalar by vector.
Definition at line 420 of file BasicVector3D.h.
|
related |
Multiplication vector by scalar.
Definition at line 510 of file BasicVector3D.h.
|
related |
Scalar product of two vectors.
Definition at line 519 of file BasicVector3D.h.
|
related |
Multiplication scalar by vector.
Definition at line 528 of file BasicVector3D.h.
|
related |
Unary plus.
Definition at line 368 of file BasicVector3D.h.
|
related |
Addition of two vectors.
Definition at line 375 of file BasicVector3D.h.
|
related |
Unary plus.
Definition at line 476 of file BasicVector3D.h.
|
related |
Addition of two vectors.
Definition at line 483 of file BasicVector3D.h.
|
related |
Unary minus.
Definition at line 384 of file BasicVector3D.h.
|
related |
Subtraction of two vectors.
Definition at line 393 of file BasicVector3D.h.
|
related |
Unary minus.
Definition at line 492 of file BasicVector3D.h.
|
related |
Subtraction of two vectors.
Definition at line 501 of file BasicVector3D.h.
|
related |
Division vector by scalar.
Definition at line 429 of file BasicVector3D.h.
|
related |
Division vector by scalar.
Definition at line 537 of file BasicVector3D.h.
|
related |
Output to stream.
Definition at line 107 of file BasicVector3D.cc.
|
related |
Output to stream.
Definition at line 263 of file BasicVector3D.cc.
|
related |
Comparison of two vectors for equality.
Definition at line 438 of file BasicVector3D.h.
|
related |
Comparison of two vectors for equality.
Definition at line 546 of file BasicVector3D.h.
|
related |
Input from stream.
Definition at line 114 of file BasicVector3D.cc.
|
related |
Input from stream.
Definition at line 270 of file BasicVector3D.cc.
|
protected |
Definition at line 29 of file BasicVector3D.h.