rivet is hosted by Hepforge, IPPP Durham
MathHeader.hh
Go to the documentation of this file.
00001 #ifndef RIVET_Math_MathHeader
00002 #define RIVET_Math_MathHeader
00003 
00004 #include "Rivet/Tools/Exceptions.hh"
00005 #include "Rivet/Tools/Utils.hh"
00006 
00007 namespace Rivet {
00008 
00009 
00010   /// Pre-defined numeric type limits
00011   /// @deprecated Prefer the standard DBL/INT_MAX
00012   static const double MAXDOUBLE = DBL_MAX; // was std::numeric_limits<double>::max(); -- warns in GCC5
00013   static const double MAXINT = INT_MAX; // was std::numeric_limits<int>::max(); -- warns in GCC5
00014 
00015   /// A pre-defined value of \f$ \pi \f$.
00016   static const double PI = M_PI;
00017 
00018   /// A pre-defined value of \f$ 2\pi \f$.
00019   static const double TWOPI = 2*M_PI;
00020 
00021   /// A pre-defined value of \f$ \pi/2 \f$.
00022   static const double HALFPI = M_PI_2;
00023 
00024   /// Enum for signs of numbers.
00025   enum Sign { MINUS = -1, ZERO = 0, PLUS = 1 };
00026 
00027   /// Enum for rapidity variable to be used in calculating \f$ R \f$, applying rapidity cuts, etc.
00028   enum RapScheme { PSEUDORAPIDITY = 0, ETARAP = 0, RAPIDITY = 1, YRAP = 1 };
00029 
00030   /// Enum for range of \f$ \phi \f$ to be mapped into
00031   enum PhiMapping { MINUSPI_PLUSPI, ZERO_2PI, ZERO_PI };
00032 
00033 }
00034 
00035 #endif