00001 #ifndef GEGENBAUER_H
00002 #define GEGENBAUER_H
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef ZMENVIRONMENT_H
00012 #include "ZMutility/ZMenvironment.h"
00013 #endif
00014 #include <utility>
00015 #include <vector>
00016
00017 ZM_BEGIN_NAMESPACE( zmsf )
00018
00019 typedef std::vector<double> Dvector;
00020 typedef std::pair<double,double> Dpair;
00021
00026
00027 struct Gegenbauer {
00028
00030 static double GegenPoly1( const double lambda, const double x );
00031
00033 static Dpair GegenPoly1Err( const double lambda, const double x );
00034
00036 static double GegenPoly2( const double lambda, const double x );
00037
00039 static Dpair GegenPoly2Err( const double lambda, const double x );
00040
00042 static double GegenPoly3( const double lambda, const double x );
00043
00045 static Dpair GegenPoly3Err( const double lambda, const double x );
00046
00048 static double GegenPolyN( const int n, const double lambda, const double x );
00049
00051 static Dpair GegenPolyNErr( const int n, const double lambda, const double x );
00052
00054 static Dvector GegenPolyArray( const int nmax, const double lambda, const double x );
00055
00057 static Dvector GegenPolyArrayErr( const int nmax, const double lambda,
00058 const double x );
00059
00060 };
00061
00062 ZM_END_NAMESPACE( zmsf )
00063
00064 #endif