Main Page | Alphabetical List | Class List | File List | Class Members | File Members

Gamma.h

Go to the documentation of this file.
00001 #ifndef GAMMA_H
00002 #define GAMMA_H
00003 
00004 
00005 // ----------------------------------------------------------------------
00006 //
00007 // Bridge object between C++ code and the GSL Gamma functions
00008 //
00009 // ----------------------------------------------------------------------
00010 
00011 #ifndef ZMENVIRONMENT_H
00012   #include "ZMutility/ZMenvironment.h"
00013 #endif
00014 #include <utility>
00015 #include <complex>
00016 
00017 ZM_BEGIN_NAMESPACE( zmsf )      /*  namespace zmsf  {  */
00018 
00019 typedef std::pair<double,double> Dpair;
00020 typedef std::complex<double> Dcomplex;
00021 
00026 
00027 struct Gamma {
00028 
00030   static double lnGammaAbs( const double x );
00031 
00033 
00037   static Dpair lnGammaAbsErr( const double x ); 
00038 
00040   static Dpair lnGamma( const double x );
00041 
00043 
00047   static Dpair lnGammaErr( const double x ); 
00048 
00050   static double GammaFunction( const double x );
00051 
00053   static Dpair GammaFunctionErr( const double x ); 
00054 
00056   static double GammaStar( const double x );
00057 
00059   static Dpair GammaStarErr( const double x ); 
00060 
00062   static double ReciprocalGamma( const double x );
00063 
00065   static Dpair ReciprocalGammaErr( const double x );
00066 
00068   static Dpair lnGammaZ( const Dcomplex x );
00069 
00071   static Dpair lnGammaZErr( const Dcomplex x ); 
00072 
00074   static double TaylorN( const int n, const double x ); 
00075 
00077   static Dpair TaylorNErr( const int n, const double x ); 
00078 
00080   static double Factorial( const unsigned int n );
00081 
00083   static Dpair FactorialErr( const unsigned int n );
00084 
00086   static double DoubleFactorial( const unsigned int n );
00087 
00089   static Dpair DoubleFactorialErr( const unsigned int n ); 
00090 
00092   static double lnFactorial( const unsigned int n );
00093 
00095   static Dpair lnFactorialErr( const unsigned int n );
00096 
00098   static double lnDoubleFactorial( const unsigned int n );
00099 
00101   static Dpair lnDoubleFactorialErr( const unsigned int n ); 
00102 
00104   static double lnBinomialCoefficient( const unsigned int n, const unsigned int m );
00105 
00107   static Dpair lnBinomialCoefficientErr( const unsigned int n, const unsigned int m ); 
00108 
00110   static double BinomialCoefficient( const unsigned int n, const unsigned int m );
00111 
00113   static Dpair BinomialCoefficientErr( const unsigned int n, const unsigned int m ); 
00114 
00116   static double lnPochammer( const double a, const double x );
00117 
00119   static Dpair lnPochammerErr( const double a, const double x );
00120 
00122   static Dpair lnPochammerSign( const double a, const double x );
00123 
00125   static Dpair lnPochammerSignErr( const double a, const double x );
00126 
00128   static double Pochammer( const double a, const double x );
00129 
00131   static Dpair PochammerErr( const double a, const double x );
00132 
00134   static double RelativePochammer( const double a, const double x );
00135 
00137   static Dpair RelativePochammerErr( const double a, const double x );
00138 
00140   static double IncompleteGamma( const double a, const double x );
00141 
00143   static Dpair IncompleteGammaErr( const double a, const double x );
00144 
00146   static double CompIncompleteGamma( const double a, const double x );
00147 
00149   static Dpair CompIncompleteGammaErr( const double a, const double x );
00150 
00152   static double lnBeta( const double a, const double b );
00153 
00155   static Dpair lnBetaErr( const double a, const double b );
00156 
00158   static double Beta( const double a, const double b );
00159 
00161   static Dpair BetaErr( const double a, const double b );
00162 
00164   static double IncompleteBeta( const double a, const double b,
00165                                 const double x );
00166 
00168   static Dpair IncompleteBetaErr( const double a, const double b,
00169                                   const double x );
00170 
00171 };  // Gamma
00172 
00173 ZM_END_NAMESPACE( zmsf )        /*  }  // namespace zmsf  */
00174 
00175 #endif  /* GAMMA_H */

Generated on Wed Feb 25 15:03:16 2004 for SpecialFunctions by doxygen 1.3.4