Rivet API documentation
![]() |
Rivet 4.1.3
|
Three-dimensional specialisation of Vector. More...
#include <Vector3.hh>
Public Types | |
| using | EVector |
| Vector. | |
Public Member Functions | |
| template<typename V3TYPE> | |
| Vector3 (const V3TYPE &other) | |
| Vector3 (const Vector< 3 > &other) | |
| Vector3 (double x, double y, double z) | |
| double | x () const |
| double | x2 () const |
| Vector3 & | setX (double x) |
| double | y () const |
| double | y2 () const |
| Vector3 & | setY (double y) |
| double | z () const |
| double | z2 () const |
| Vector3 & | setZ (double z) |
| double | dot (const Vector3 &v) const |
| Dot-product with another vector. | |
| Vector3 | cross (const Vector3 &v) const |
| Cross-product with another vector. | |
| double | angle (const Vector3 &v) const |
| Angle in radians to another vector. | |
| Vector3 | unitVec () const |
| Unit-normalized version of this vector. | |
| Vector3 | unit () const |
| Synonym for unitVec. | |
| Vector3 | polarVec () const |
| Polar projection of this vector into the x-y plane. | |
| Vector3 | perpVec () const |
| Synonym for polarVec. | |
| Vector3 | rhoVec () const |
| Synonym for polarVec. | |
| double | polarRadius2 () const |
| Square of the polar radius (. | |
| double | perp2 () const |
| Synonym for polarRadius2. | |
| double | rho2 () const |
| Synonym for polarRadius2. | |
| double | polarRadius () const |
| Polar radius. | |
| double | perp () const |
| Synonym for polarRadius. | |
| double | rho () const |
| Synonym for polarRadius. | |
| double | azimuthalAngle (const PhiMapping mapping=ZERO_2PI) const |
| Angle subtended by the vector's projection in x-y and the x-axis. | |
| double | phi (const PhiMapping mapping=ZERO_2PI) const |
| Synonym for azimuthalAngle. | |
| double | tanTheta () const |
| Tangent of the polar angle. | |
| double | sinTheta () const |
| Sine of the polar angle. | |
| double | cosTheta () const |
| Cosine of the polar angle. | |
| double | polarAngle () const |
| Angle subtended by the vector and the z-axis. | |
| double | theta () const |
| Synonym for polarAngle. | |
| double | pseudorapidity () const |
| Purely geometric approximation to rapidity. | |
| double | eta () const |
| Synonym for pseudorapidity. | |
| double | abseta () const |
| Convenience shortcut for fabs(eta()). | |
| Vector3 & | operator*= (const double a) |
| In-place scalar multiplication operator. | |
| Vector3 & | operator/= (const double a) |
| In-place scalar division operator. | |
| Vector3 & | operator+= (const Vector3 &v) |
| In-place addition operator. | |
| Vector3 & | operator-= (const Vector3 &v) |
| In-place subtraction operator. | |
| Vector3 | operator- () const |
| In-place negation operator. | |
| const double & | get (const size_t index) const |
| const double & | operator[] (const size_t index) const |
| Direct access to vector elements by index. | |
| Vector< N > & | set (const size_t index, const double value) |
| Set indexed value. | |
| constexpr size_t | size () const |
| Vector dimensionality. | |
| bool | isZero (double tolerance=1E-5) const |
| Check for nullness, allowing for numerical precision. | |
| double | mod2 () const |
| Calculate the modulus-squared of a vector. \( \sum_{i=1}^N x_i^2 \). | |
| double | mod () const |
| Calculate the modulus of a vector. \( \sqrt{\sum_{i=1}^N x_i^2} \). | |
| bool | operator== (const Vector< N > &a) const |
| bool | operator!= (const Vector< N > &a) const |
Static Public Member Functions | |
| static Vector3 | mkX () |
| static Vector3 | mkY () |
| static Vector3 | mkZ () |
Detailed Description
Three-dimensional specialisation of Vector.
Member Function Documentation
◆ azimuthalAngle()
|
inline |
Angle subtended by the vector's projection in x-y and the x-axis.
- Note
- Returns zero in the case of a vector with null x and y components.
- Todo
- Would it be better to return NaN in the null-perp case? Or throw?!
References Rivet::mapAngle().
Referenced by Rivet::FourVector::azimuthalAngle(), Rivet::deltaPhi(), Rivet::deltaPhi(), Rivet::deltaPhi(), Rivet::deltaR2(), Rivet::deltaR2(), Rivet::deltaR2(), and phi().
◆ pseudorapidity()
|
inline |
Purely geometric approximation to rapidity.
eta = -ln[ tan(theta/2) ]
Also invariant under z-boosts, equal to y for massless particles.
Implemented using the tan half-angle formula tan(theta/2) = sin(theta) / [1 + cos(theta)] = pT / (p + pz)
<
- Todo
- Add [[ unlikely ]] with C++20
<
- Todo
- Add [[ unlikely ]] with C++20
References eta(), Rivet::Vector< 3 >::mod(), and perp().
Referenced by Rivet::deltaEta(), Rivet::deltaEta(), Rivet::deltaEta(), Rivet::deltaR2(), Rivet::deltaR2(), Rivet::deltaR2(), eta(), and Rivet::FourVector::pseudorapidity().
The documentation for this class was generated from the following file:
- /builds/hepcedar/rivet/include/Rivet/Math/Vector3.hh
Generated on for Rivet by
