Iguana
1.2.1
Implementation Guardian of Analysis Algorithms
Toggle main menu visibility
Loading...
Searching...
No Matches
Tools.h
Go to the documentation of this file.
1
#pragma once
3
4
#include <Math/Vector3D.h>
5
#include <Math/Vector4D.h>
6
#include <optional>
7
9
namespace
iguana::physics::tools
{
10
12
double
const
UNDEF
{-10000};
13
22
std::optional<double>
PlaneAngle
(
23
ROOT::Math::XYZVector
const
v_a,
24
ROOT::Math::XYZVector
const
v_b,
25
ROOT::Math::XYZVector
const
v_c,
26
ROOT::Math::XYZVector
const
v_d);
27
32
std::optional<ROOT::Math::XYZVector>
ProjectVector
(
33
ROOT::Math::XYZVector
const
v_a,
34
ROOT::Math::XYZVector
const
v_b);
35
40
std::optional<ROOT::Math::XYZVector>
RejectVector
(
41
ROOT::Math::XYZVector
const
v_a,
42
ROOT::Math::XYZVector
const
v_b);
43
48
std::optional<double>
VectorAngle
(
49
ROOT::Math::XYZVector
const
v_a,
50
ROOT::Math::XYZVector
const
v_b);
51
60
template
<
typename
MOMENTUM_TYPE,
typename
AXIS_TYPE>
61
std::optional<double>
ParticleRapidity
(
62
MOMENTUM_TYPE
const
& momentum_vec,
63
AXIS_TYPE
const
& axis_vec);
64
68
double
AdjustAnglePi
(
double
ang);
69
73
double
AdjustAngleTwoPi
(
double
ang);
74
75
}
iguana::physics::tools
physics tools
Definition
Tools.h:9
iguana::physics::tools::AdjustAngleTwoPi
double AdjustAngleTwoPi(double ang)
shift angle to the range
iguana::physics::tools::RejectVector
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
iguana::physics::tools::VectorAngle
std::optional< double > VectorAngle(ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b)
calculate the angle between two vectors
iguana::physics::tools::PlaneAngle
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
iguana::physics::tools::ProjectVector
std::optional< ROOT::Math::XYZVector > ProjectVector(ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b)
projection of one vector onto another
iguana::physics::tools::AdjustAnglePi
double AdjustAnglePi(double ang)
shift angle to the range
iguana::physics::tools::UNDEF
double const UNDEF
a value used when some calculation fails
Definition
Tools.h:12
iguana::physics::tools::ParticleRapidity
std::optional< double > ParticleRapidity(MOMENTUM_TYPE const &momentum_vec, AXIS_TYPE const &axis_vec)
calculate the rapidity of a particle, relative to an axis
iguana_v1.2.1
src
iguana
algorithms
physics
Tools.h
Generated by
1.18.0