Iguana LATEST
Implementation Guardian of Analysis Algorithms
Loading...
Searching...
No Matches
Tools.h File Reference
#include <Math/Vector3D.h>
#include <Math/Vector4D.h>
#include <optional>
Include dependency graph for Tools.h:

Go to the source code of this file.

Namespaces

namespace  iguana::physics
 Physics algorithms.
namespace  iguana::physics::tools
 physics tools

Functions

double iguana::physics::tools::AdjustAnglePi (double ang)
 shift angle to the range \((-\pi,+\pi]\)
double iguana::physics::tools::AdjustAngleTwoPi (double ang)
 shift angle to the range \((0,2\pi]\)
template<typename MOMENTUM_TYPE, typename AXIS_TYPE>
std::optional< double > iguana::physics::tools::ParticleRapidity (MOMENTUM_TYPE const &momentum_vec, AXIS_TYPE const &axis_vec)
 calculate the rapidity of a particle, relative to an axis
std::optional< double > iguana::physics::tools::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 > iguana::physics::tools::ProjectVector (ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b)
 projection of one vector onto another
std::optional< ROOT::Math::XYZVector > iguana::physics::tools::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 > iguana::physics::tools::VectorAngle (ROOT::Math::XYZVector const v_a, ROOT::Math::XYZVector const v_b)
 calculate the angle between two vectors

Variables

double const iguana::physics::tools::UNDEF {-10000}
 a value used when some calculation fails