npstat is hosted by Hepforge, IPPP Durham
NPStat  5.10.0
MathUtils.hh File Reference

Various simple mathematical utilities which did not end up inside dedicated headers. More...

#include <utility>
#include <vector>
#include <cassert>
#include "npstat/nm/MathUtils.icc"

Go to the source code of this file.

Namespaces

 npstat
 

Functions

unsigned npstat::solveQuadratic (double b, double c, double *x1, double *x2)
 
unsigned npstat::solveCubic (double p, double q, double r, double v3[3])
 
bool npstat::parabolicExtremum (double x0, double y0, double x1, double y1, double x2, double y2, double *extremumCoordinate, double *extremumValue)
 
double npstat::ndUnitSphereVolume (unsigned n)
 
double npstat::ndUnitSphereArea (unsigned n)
 
template<typename Numeric >
long double npstat::polySeriesSum (const Numeric *coeffs, unsigned degree, long double x)
 
template<typename Numeric >
void npstat::polyAndDeriv (const Numeric *coeffs, unsigned degree, long double x, long double *value, long double *deriv)
 
template<typename Numeric >
void npstat::polyIntegralCoeffs (const Numeric *coeffs, unsigned degree, Numeric *integralCoeffs)
 
template<typename Numeric >
long double npstat::legendreSeriesSum (const Numeric *coeffs, unsigned degree, long double x)
 
template<typename Numeric >
long double npstat::hermiteSeriesSumProb (const Numeric *coeffs, unsigned degree, long double x)
 
template<typename Numeric >
long double npstat::hermiteSeriesSumPhys (const Numeric *coeffs, unsigned degree, long double x)
 
template<typename Numeric >
long double npstat::gegenbauerSeriesSum (const Numeric *coeffs, unsigned degree, long double lambda, long double x)
 
template<typename Numeric >
long double npstat::chebyshevSeriesSum (const Numeric *coeffs, unsigned degree, long double x)
 
template<typename Numeric1 , typename Numeric2 >
void npstat::chebyshevMonomialCoeffs (const Numeric1 *coeffs, unsigned degree, Numeric2 *monoCoeffs)
 
template<typename Numeric >
long double npstat::chebyshevSeriesSum (const Numeric *coeffs, unsigned degree, long double xmin, long double xmax, long double x)
 
template<typename Functor , typename Numeric >
void npstat::chebyshevSeriesCoeffs (const Functor &f, long double xmin, long double xmax, unsigned degree, Numeric *coeffs)
 
template<typename Numeric >
void npstat::chebyshevIntegralCoeffs (const Numeric *coeffs, unsigned degree, long double xmin, long double xmax, Numeric *integralCoeffs)
 
template<typename Numeric >
void npstat::chebyshevDerivativeCoeffs (const Numeric *coeffs, unsigned degree, long double xmin, long double xmax, Numeric *derivativeCoeffs)
 

Detailed Description

Various simple mathematical utilities which did not end up inside dedicated headers.

Author: I. Volobouev

March 2010