00001 #ifndef TRIANGLEQUADRATURE_H
00002 #define TRIANGLEQUADRATURE_H
00003
00004 #include "SundanceDefs.h"
00005 #include "TSFArray.h"
00006 #include "TSFOut.h"
00007 #include "TSFError.h"
00008
00009 namespace Sundance
00010 {
00011 using namespace TSF;
00012
00013
00014
00015
00016
00017 class TriangleQuadrature
00018 {
00019 public:
00020 static void getPoints(int order, TSFArray<double>& wgt,
00021 TSFArray<double>& x,
00022 TSFArray<double>& y);
00023
00024 static bool test(int p);
00025
00026
00027 private:
00028
00029 static void permute(int m, const TSFArray<double>& q,
00030 TSFArray<TSFArray<double> >& qPerm);
00031
00032 static double exact(int a, int b, int c);
00033
00034 static double fact(int x);
00035
00036 };
00037
00038 }
00039
00040
00041 #endif
00042