ROOT   6.14/05 Reference Guide
TMath.h File Reference
#include "Rtypes.h"
#include "TMathBase.h"
#include "TError.h"
#include <algorithm>
#include <limits>
#include <cmath>
#include <float.h>
Include dependency graph for TMath.h:

## Classes

struct  CompareAsc< T >

struct  CompareDesc< T >

struct  TMath::Limits< T >

TMath
TMath.

## Functions

Double_t TMath::ACos (Double_t)

double acos (double)

Double_t TMath::ACosH (Double_t)

Bool_t TMath::AreEqualAbs (Double_t af, Double_t bf, Double_t epsilon)

Bool_t TMath::AreEqualRel (Double_t af, Double_t bf, Double_t relPrec)

Double_t TMath::ASin (Double_t)

double asin (double)

Double_t TMath::ASinH (Double_t)

Double_t TMath::ATan (Double_t)

double atan (double)

Double_t TMath::ATan2 (Double_t, Double_t)

double atan2 (double, double)

Double_t TMath::ATanH (Double_t)

Double_t TMath::BesselI (Int_t n, Double_t x)

Double_t TMath::BesselI0 (Double_t x)
integer order modified Bessel function K_n(x) More...

Double_t TMath::BesselI1 (Double_t x)
modified Bessel function K_0(x) More...

Double_t TMath::BesselJ0 (Double_t x)
modified Bessel function K_1(x) More...

Double_t TMath::BesselJ1 (Double_t x)
Bessel function J0(x) for any real x. More...

Double_t TMath::BesselK (Int_t n, Double_t x)
integer order modified Bessel function I_n(x) More...

Double_t TMath::BesselK0 (Double_t x)
modified Bessel function I_0(x) More...

Double_t TMath::BesselK1 (Double_t x)
modified Bessel function I_1(x) More...

Double_t TMath::BesselY0 (Double_t x)
Bessel function J1(x) for any real x. More...

Double_t TMath::BesselY1 (Double_t x)
Bessel function Y0(x) for positive x. More...

Double_t TMath::Beta (Double_t p, Double_t q)

Double_t TMath::BetaCf (Double_t x, Double_t a, Double_t b)

Double_t TMath::BetaDist (Double_t x, Double_t p, Double_t q)

Double_t TMath::BetaDistI (Double_t x, Double_t p, Double_t q)

Double_t TMath::BetaIncomplete (Double_t x, Double_t a, Double_t b)

template<typename T >
Long64_t TMath::BinarySearch (Long64_t n, const T *array, T value)
Binary search in an array of n values to locate value. More...

template<typename T >
Long64_t TMath::BinarySearch (Long64_t n, const T **array, T value)
Binary search in an array of n values to locate value. More...

template<typename Iterator , typename Element >
Iterator TMath::BinarySearch (Iterator first, Iterator last, Element value)
Binary search in an array defined by its iterators. More...

Double_t TMath::Binomial (Int_t n, Int_t k)

Double_t TMath::BinomialI (Double_t p, Int_t n, Int_t k)

Double_t TMath::BreitWigner (Double_t x, Double_t mean=0, Double_t gamma=1)
Calculate a Breit Wigner function with mean and gamma. More...

void TMath::BubbleHigh (Int_t Narr, Double_t *arr1, Int_t *arr2)

void TMath::BubbleLow (Int_t Narr, Double_t *arr1, Int_t *arr2)

constexpr Double_t TMath::C ()
Velocity of light in $$m s^{-1}$$. More...

Double_t TMath::CauchyDist (Double_t x, Double_t t=0, Double_t s=1)

constexpr Double_t TMath::Ccgs ()
$$cm s^{-1}$$ More...

Double_t TMath::Ceil (Double_t x)

double ceil (double)

Int_t TMath::CeilNint (Double_t x)

Double_t TMath::ChisquareQuantile (Double_t p, Double_t ndf)

Double_t TMath::Cos (Double_t)

double cos (double)

Double_t TMath::CosH (Double_t)

double cosh (double)

template<typename T >
T * TMath::Cross (const T v1[3], const T v2[3], T out[3])
Calculate the Cross Product of two vectors: out = [v1 x v2]. More...

constexpr Double_t TMath::CUncertainty ()
Speed of light uncertainty. More...

$\frac{\pi}{180}$

Double_t TMath::DiLog (Double_t x)
Modified Struve functions of order 1. More...

constexpr Double_t TMath::E ()
Base of natural log:

$e$

Double_t TMath::Erf (Double_t x)
Computation of the error function erf(x). More...

Double_t TMath::Erfc (Double_t x)
Compute the complementary error function erfc(x). More...

Double_t TMath::ErfcInverse (Double_t x)
returns the inverse of the complementary error function x must be 0<x<2 implement using the quantile of the normal distribution instead of ErfInverse for better numerical precision for large x More...

Double_t TMath::ErfInverse (Double_t x)
returns the inverse error function x must be <-1<x<1 More...

constexpr Double_t TMath::EulerGamma ()
Euler-Mascheroni Constant. More...

Double_t TMath::Exp (Double_t x)

double exp (double)

Double_t TMath::Factorial (Int_t i)
Compute factorial(n). More...

Double_t TMath::FDist (Double_t F, Double_t N, Double_t M)

Double_t TMath::FDistI (Double_t F, Double_t N, Double_t M)

Int_t TMath::Finite (Double_t x)
Check if it is finite with a mask in order to be consistent in presence of fast math. More...

Int_t TMath::Finite (Float_t x)
Check if it is finite with a mask in order to be consistent in presence of fast math. More...

int finite (double)

Double_t TMath::Floor (Double_t x)

double floor (double)

Int_t TMath::FloorNint (Double_t x)

Double_t TMath::Freq (Double_t x)
Computation of the normal frequency function freq(x). More...

constexpr Double_t TMath::G ()
Gravitational constant in: $$m^{3} kg^{-1} s^{-2}$$. More...

Double_t TMath::Gamma (Double_t z)
Computation of gamma(z) for all z. More...

Double_t TMath::Gamma (Double_t a, Double_t x)
Computation of the normalized lower incomplete gamma function P(a,x) as defined in the Handbook of Mathematical Functions by Abramowitz and Stegun, formula 6.5.1 on page 260 . More...

Double_t TMath::GammaDist (Double_t x, Double_t gamma, Double_t mu=0, Double_t beta=1)

Double_t TMath::Gaus (Double_t x, Double_t mean=0, Double_t sigma=1, Bool_t norm=kFALSE)
Calculate a gaussian function with mean and sigma. More...

constexpr Double_t TMath::Gcgs ()
$$cm^{3} g^{-1} s^{-2}$$ More...

template<typename T >
Double_t TMath::GeomMean (Long64_t n, const T *a)
Return the geometric mean of an array a of size n. More...

template<typename Iterator >
Double_t TMath::GeomMean (Iterator first, Iterator last)
Return the geometric mean of an array defined by the iterators. More...

constexpr Double_t TMath::GhbarC ()
$$\frac{G}{\hbar C}$$ in $$(GeV/c^{2})^{-2}$$ More...

constexpr Double_t TMath::GhbarCUncertainty ()
$$\frac{G}{\hbar C}$$ uncertainty. More...

constexpr Double_t TMath::Gn ()
Standard acceleration of gravity in $$m s^{-2}$$. More...

constexpr Double_t TMath::GnUncertainty ()
Standard acceleration of gravity uncertainty. More...

constexpr Double_t TMath::GUncertainty ()
Gravitational constant uncertainty. More...

constexpr Double_t TMath::H ()
Planck's constant in $$J s$$

$h$

ULong_t TMath::Hash (const void *txt, Int_t ntxt)

ULong_t TMath::Hash (const char *str)
Return a case-sensitive hash value (endian independent). More...

constexpr Double_t TMath::Hbar ()
$$\hbar$$ in $$J s$$

$\hbar = \frac{h}{2\pi}$

More...

constexpr Double_t TMath::Hbarcgs ()
$$erg s$$ More...

constexpr Double_t TMath::HbarUncertainty ()
$$\hbar$$ uncertainty. More...

constexpr Double_t TMath::HC ()
$$hc$$ in $$J m$$ More...

constexpr Double_t TMath::HCcgs ()
$$erg cm$$ More...

constexpr Double_t TMath::Hcgs ()
$$erg s$$ More...

constexpr Double_t TMath::HUncertainty ()
Planck's constant uncertainty. More...

Double_t TMath::Hypot (Double_t x, Double_t y)

Long_t TMath::Hypot (Long_t x, Long_t y)

Double_t TMath::Infinity ()
Returns an infinity as defined by the IEEE standard. More...

constexpr Double_t TMath::InvPi ()
$$\frac{1.}{\pi}$$ More...

template<typename T >
Bool_t TMath::IsInside (T xp, T yp, Int_t np, T *x, T *y)
Function which returns kTRUE if point xp,yp lies inside the polygon defined by the np points in arrays x and y, kFALSE otherwise. More...

Bool_t TMath::IsNaN (Double_t x)

Bool_t TMath::IsNaN (Float_t x)

int isnan (double)

constexpr Double_t TMath::K ()
Boltzmann's constant in $$J K^{-1}$$

$k$

constexpr Double_t TMath::Kcgs ()
$$erg K^{-1}$$ More...

Double_t TMath::KolmogorovProb (Double_t z)

Double_t TMath::KolmogorovTest (Int_t na, const Double_t *a, Int_t nb, const Double_t *b, Option_t *option)

template<class Element , typename Size >
Element TMath::KOrdStat (Size n, const Element *a, Size k, Size *work=0)
Returns k_th order statistic of the array a of size n (k_th smallest element out of n elements). More...

constexpr Double_t TMath::KUncertainty ()
Boltzmann's constant uncertainty. More...

Double_t TMath::Landau (Double_t x, Double_t mpv=0, Double_t sigma=1, Bool_t norm=kFALSE)
The LANDAU function. More...

Double_t TMath::LandauI (Double_t x)

Double_t TMath::LaplaceDist (Double_t x, Double_t alpha=0, Double_t beta=1)

Double_t TMath::LaplaceDistI (Double_t x, Double_t alpha=0, Double_t beta=1)

Double_t TMath::Ldexp (Double_t x, Int_t exp)

double ldexp (double, int)

constexpr Double_t TMath::Ln10 ()
Natural log of 10 (to convert log to ln) More...

Double_t TMath::LnGamma (Double_t z)
Computation of ln[gamma(z)] for all z. More...

template<typename T >
Long64_t TMath::LocMax (Long64_t n, const T *a)
Return index of array with the maximum element. More...

template<typename Iterator >
Iterator TMath::LocMax (Iterator first, Iterator last)
Return index of array with the maximum element. More...

template<typename T >
Long64_t TMath::LocMin (Long64_t n, const T *a)
Return index of array with the minimum element. More...

template<typename Iterator >
Iterator TMath::LocMin (Iterator first, Iterator last)
Return index of array with the minimum element. More...

Double_t TMath::Log (Double_t x)

double log (double)

Double_t TMath::Log10 (Double_t x)

double log10 (double)

Double_t TMath::Log2 (Double_t x)

constexpr Double_t TMath::LogE ()
Base-10 log of e (to convert ln to log) More...

Double_t TMath::LogNormal (Double_t x, Double_t sigma, Double_t theta=0, Double_t m=1)

template<typename T >
TMath::MaxElement (Long64_t n, const T *a)
Return maximum of array a of length n. More...

template<typename T >
Double_t TMath::Mean (Long64_t n, const T *a, const Double_t *w=0)
Return the weighted mean of an array a with length n. More...

template<typename Iterator >
Double_t TMath::Mean (Iterator first, Iterator last)
Return the weighted mean of an array defined by the iterators. More...

template<typename Iterator , typename WeightIterator >
Double_t TMath::Mean (Iterator first, Iterator last, WeightIterator wfirst)
Return the weighted mean of an array defined by the first and last iterators. More...

template<typename T >
Double_t TMath::Median (Long64_t n, const T *a, const Double_t *w=0, Long64_t *work=0)
Return the median of the array a where each entry i has weight w[i] . More...

template<typename T >
TMath::MinElement (Long64_t n, const T *a)
Return minimum of array a of length n. More...

constexpr Double_t TMath::MWair ()
Molecular weight of dry air 1976 US Standard Atmosphere in $$kg kmol^{-1}$$ or $$gm mol^{-1}$$ More...

constexpr Double_t TMath::Na ()
Avogadro constant (Avogadro's Number) in $$mol^{-1}$$. More...

constexpr Double_t TMath::NaUncertainty ()

template<typename T >
Int_t TMath::Nint (T x)
Round to nearest integer. Rounds half integers to the nearest even integer. More...

template<typename T >
T * TMath::Normal2Plane (const T v1[3], const T v2[3], const T v3[3], T normal[3])
Calculate a normal vector of a plane. More...

Float_t TMath::Normalize (Float_t v[3])
Normalize a vector v in place. More...

Double_t TMath::Normalize (Double_t v[3])
Normalize a vector v in place. More...

template<typename T >
TMath::NormCross (const T v1[3], const T v2[3], T out[3])
Calculate the Normalized Cross Product of two vectors. More...

Double_t TMath::NormQuantile (Double_t p)

Bool_t TMath::Permute (Int_t n, Int_t *a)

constexpr Double_t TMath::Pi ()

$\pi$

More...

constexpr Double_t TMath::PiOver2 ()

$\frac{\pi}{2}$

More...

constexpr Double_t TMath::PiOver4 ()

$\frac{\pi}{4}$

More...

Double_t TMath::Poisson (Double_t x, Double_t par)

Double_t TMath::PoissonI (Double_t x, Double_t par)

double pow (double, double)

LongDouble_t TMath::Power (LongDouble_t x, LongDouble_t y)

LongDouble_t TMath::Power (LongDouble_t x, Long64_t y)

LongDouble_t TMath::Power (Long64_t x, Long64_t y)

Double_t TMath::Power (Double_t x, Double_t y)

Double_t TMath::Power (Double_t x, Int_t y)

Double_t TMath::Prob (Double_t chi2, Int_t ndf)

constexpr Double_t TMath::Qe ()
Elementary charge in $$C$$ . More...

constexpr Double_t TMath::QeUncertainty ()
Elementary charge uncertainty. More...

void TMath::Quantiles (Int_t n, Int_t nprob, Double_t *x, Double_t *quantiles, Double_t *prob, Bool_t isSorted=kTRUE, Int_t *index=0, Int_t type=7)

Double_t TMath::QuietNaN ()
Returns a quiet NaN as defined by IEEE 754 More...

constexpr Double_t TMath::R ()
Universal gas constant ( $$Na K$$) in $$J K^{-1} mol^{-1}$$ More...

$\frac{180}{\pi}$

constexpr Double_t TMath::Rgair ()
Dry Air Gas Constant (R / MWair) in $$J kg^{-1} K^{-1}$$ More...

template<typename T >
Double_t TMath::RMS (Long64_t n, const T *a, const Double_t *w=0)
Return the Standard Deviation of an array a with length n. More...

template<typename Iterator >
Double_t TMath::RMS (Iterator first, Iterator last)
Return the Standard Deviation of an array defined by the iterators. More...

template<typename Iterator , typename WeightIterator >
Double_t TMath::RMS (Iterator first, Iterator last, WeightIterator wfirst)
Return the weighted Standard Deviation of an array defined by the iterators. More...

Bool_t TMath::RootsCubic (const Double_t coef[4], Double_t &a, Double_t &b, Double_t &c)

constexpr Double_t TMath::RUncertainty ()
Universal gas constant uncertainty. More...

constexpr Double_t TMath::Sigma ()
Stefan-Boltzmann constant in $$W m^{-2} K^{-4}$$

$\sigma$

constexpr Double_t TMath::SigmaUncertainty ()
Stefan-Boltzmann constant uncertainty. More...

Double_t TMath::SignalingNaN ()
Returns a signaling NaN as defined by IEEE 754](http://en.wikipedia.org/wiki/NaN#Signaling_NaN) More...

Double_t TMath::Sin (Double_t)

double sin (double)

Double_t TMath::SinH (Double_t)

double sinh (double)

template<typename Element , typename Index >
void TMath::Sort (Index n, const Element *a, Index *index, Bool_t down=kTRUE)
Sort the n elements of the array a of generic templated type Element. More...

template<typename Iterator , typename IndexIterator >
void TMath::SortItr (Iterator first, Iterator last, IndexIterator index, Bool_t down=kTRUE)
Sort the n1 elements of the Short_t array defined by its iterators. More...

Double_t TMath::Sq (Double_t x)

Double_t TMath::Sqrt (Double_t x)

double sqrt (double)

constexpr Double_t TMath::Sqrt2 ()

$\sqrt{2}$

More...

template<typename T >
Double_t TMath::StdDev (Long64_t n, const T *a, const Double_t *w=0)

template<typename Iterator >
Double_t TMath::StdDev (Iterator first, Iterator last)

template<typename Iterator , typename WeightIterator >
Double_t TMath::StdDev (Iterator first, Iterator last, WeightIterator wfirst)

Double_t TMath::StruveH0 (Double_t x)
Bessel function Y1(x) for positive x. More...

Double_t TMath::StruveH1 (Double_t x)
Struve functions of order 0. More...

Double_t TMath::StruveL0 (Double_t x)
Struve functions of order 1. More...

Double_t TMath::StruveL1 (Double_t x)
Modified Struve functions of order 0. More...

Double_t TMath::Student (Double_t T, Double_t ndf)

Double_t TMath::StudentI (Double_t T, Double_t ndf)

Double_t TMath::StudentQuantile (Double_t p, Double_t ndf, Bool_t lower_tail=kTRUE)

Double_t TMath::Tan (Double_t)

double tan (double)

Double_t TMath::TanH (Double_t)

double tanh (double)

constexpr Double_t TMath::TwoPi ()

$2\pi$

More...

Double_t TMath::Vavilov (Double_t x, Double_t kappa, Double_t beta2)

Double_t TMath::VavilovI (Double_t x, Double_t kappa, Double_t beta2)

Double_t TMath::Voigt (Double_t x, Double_t sigma, Double_t lg, Int_t r=4)

## ◆ acos()

 double acos ( double )

## ◆ asin()

 double asin ( double )

## ◆ atan()

 double atan ( double )

## ◆ atan2()

 double atan2 ( double , double )

## ◆ ceil()

 double ceil ( double )

## ◆ cos()

 double cos ( double )

## ◆ cosh()

 double cosh ( double )

## ◆ exp()

 double exp ( double )

## ◆ finite()

 int finite ( double )

## ◆ floor()

 double floor ( double )

## ◆ isnan()

 int isnan ( double )

## ◆ ldexp()

 double ldexp ( double , int )

## ◆ log()

 double log ( double )

## ◆ log10()

 double log10 ( double )

## ◆ pow()

 double pow ( double , double )

## ◆ sin()

 double sin ( double )

## ◆ sinh()

 double sinh ( double )

## ◆ sqrt()

 double sqrt ( double )

## ◆ tan()

 double tan ( double )

## ◆ tanh()

 double tanh ( double )