11 #ifndef HIERARCHICAL_BASIS_H1_H
12 #define HIERARCHICAL_BASIS_H1_H
16 virtual void orientOneFace(
double const &u,
double const &v,
double const &w,
17 int const &flag1,
int const &flag2,
18 int const &flag3,
int const &faceNumber,
19 std::vector<double> &faceFunctions) = 0;
21 virtual void orientOneFace(
double const &u,
double const &v,
double const &w,
22 int const &flag1,
int const &flag2,
23 int const &flag3,
int const &faceNumber,
24 std::vector<std::vector<double> > &faceFunctions,
25 std::string typeFunction =
"GradH1Legendre") = 0;
30 virtual void generateBasis(
double const &u,
double const &v,
double const &w,
31 std::vector<double> &vertexBasis,
32 std::vector<double> &edgeBasis,
33 std::vector<double> &faceBasis,
34 std::vector<double> &bubbleBasis) = 0;
36 virtual void generateBasis(
double const &u,
double const &v,
double const &w,
37 std::vector<std::vector<double> > &vertexBasis,
38 std::vector<std::vector<double> > &edgeBasis,
39 std::vector<std::vector<double> > &faceBasis,
40 std::vector<std::vector<double> > &bubbleBasis,
41 std::string typeFunction =
"GradH1Legendre") = 0;
43 orientEdge(
int const &flagOrientation,
int const &edgeNumber,
44 std::vector<std::vector<double> > &edgeBasis,
45 const std::vector<std::vector<double> > &eTablePositiveFlag,
46 const std::vector<std::vector<double> > &eTableNegativeFlag) = 0;
47 virtual void orientEdge(
int const &flagOrientation,
int const &edgeNumber,
48 std::vector<double> &edgeFunctions,
49 const std::vector<double> &eTablePositiveFlag,
50 const std::vector<double> &eTableNegativeFlag) = 0;
52 std::vector<std::vector<double> > &edgeFunctions) = 0;
56 double const &u,
double const &v,
double const &w,
57 const std::vector<double> &faceFunctions,
58 std::vector<double> &quadFaceFunctionsAllOrientations,
59 std::vector<double> &triFaceFunctionsAllOrientations);
61 double const &u,
double const &v,
double const &w,
62 const std::vector<std::vector<double> > &faceFunctions,
63 std::vector<std::vector<double> > &quadFaceFunctionsAllOrientations,
64 std::vector<std::vector<double> > &triFaceFunctionsAllOrientations,
65 std::string typeFunction =
"GradH1Legendre");
67 orientFace(
int const &flag1,
int const &flag2,
int const &flag3,
68 int const &faceNumber,
69 const std::vector<double> &quadFaceFunctionsAllOrientations,
70 const std::vector<double> &triFaceFunctionsAllOrientations,
71 std::vector<double> &fTableCopy) = 0;
73 int const &flag1,
int const &flag2,
int const &flag3,
int const &faceNumber,
74 const std::vector<std::vector<double> > &quadFaceFunctionsAllOrientations,
75 const std::vector<std::vector<double> > &triFaceFunctionsAllOrientations,
76 std::vector<std::vector<double> > &fTableCopy) = 0;
78 std::vector<int> &orderInfo) = 0;