Loading [MathJax]/extensions/tex2jax.js
Iguana 0.0.0
Implementation Guardian of Analysis Algorithms
All Classes Namespaces Files Functions Variables Typedefs Enumerations Macros Modules Pages
Tools.h
Go to the documentation of this file.
1
2
3#include <optional>
4#include <Math/Vector3D.h>
5#include <Math/Vector4D.h>
6
7namespace iguana::physics::tools {
8
10 double const UNDEF{-10000};
11
20 std::optional<double> PlaneAngle(
21 ROOT::Math::XYZVector const v_a,
22 ROOT::Math::XYZVector const v_b,
23 ROOT::Math::XYZVector const v_c,
24 ROOT::Math::XYZVector const v_d);
25
30 std::optional<ROOT::Math::XYZVector> ProjectVector(
31 ROOT::Math::XYZVector const v_a,
32 ROOT::Math::XYZVector const v_b);
33
38 std::optional<ROOT::Math::XYZVector> RejectVector(
39 ROOT::Math::XYZVector const v_a,
40 ROOT::Math::XYZVector const v_b);
41
46 std::optional<double> VectorAngle(
47 ROOT::Math::XYZVector const v_a,
48 ROOT::Math::XYZVector const v_b);
49
58 template <typename MOMENTUM_TYPE, typename AXIS_TYPE>
59 std::optional<double> ParticleRapidity(
60 MOMENTUM_TYPE const& momentum_vec,
61 AXIS_TYPE const& axis_vec);
62}
std::optional< ROOT::Math::XYZVector > RejectVector(ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b)
projection of one vector onto the plane transverse to another vector
std::optional< double > VectorAngle(ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b)
calculate the angle between two vectors
std::optional< double > PlaneAngle(ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b, ROOT::Math::XYZVector const v_c, ROOT::Math::XYZVector const v_d)
calculate the angle between two planes
std::optional< ROOT::Math::XYZVector > ProjectVector(ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b)
projection of one vector onto another
double const UNDEF
a value used when some calculation fails
Definition Tools.h:10
std::optional< double > ParticleRapidity(MOMENTUM_TYPE const &momentum_vec, AXIS_TYPE const &axis_vec)
calculate the rapidity of a particle, relative to an axis