00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #if !defined(GBASIS_HPP)
00012 #define GBASIS_HPP
00013 #include "gtypes.h"
00014 #include "gllbasis.hpp"
00015
00016
00017 class GLBasis: public GLLBasis
00018 {
00019 public:
00020
00021 GLBasis();
00022 GLBasis(GINT );
00023 GLBasis(GINT , GINT );
00024 GLBasis(const GLBasis &);
00025 virtual ~GLBasis();
00026
00027 void operator=(const GLBasis &);
00028
00029 GDOUBLE EvalBasis (GINT i, GDOUBLE xi);
00030 GVector *EvalBasis (GINT i, GVector *xi, GVector *vret);
00031 GMatrix *EvalBasis (GVector *eta, GMatrix *mret);
00032 GMatrix *EvalDBasis(GVector *eta, GMatrix *mret);
00033
00034
00035
00036 private:
00037
00038 GBOOL ComputeNodes ();
00039 GBOOL ComputeWeights ();
00040 GBOOL ComputeDerivMatrix ();
00041 GBOOL ComputeBasisAtNodes();
00042 GBOOL ComputeLegendreMatrix();
00043
00044 GBOOL Resize(GINT order);
00045
00046
00047
00048
00049
00050
00051
00052
00053 };
00054
00055 #endif