ParMooN
 All Classes Functions Variables Friends Pages
NF_C_Q_UL3S_2D.h
1 /*
2  TNodalFunctional2D(NodalFunctional2D id,
3  int n_allfunctionals, int n_edgefunctionals,
4  int n_pointsall, int n_pointsedge,
5  double *xi, double *eta, double *t,
6  DoubleFunctVect *evalall,
7  DoubleFunctVect *evaledge);
8 */
9 
10 static double NF_C_Q_UL3S_2D_Xi[] = {
11 -1.0, -0.3333333333333333, 0.3333333333333333, 1.0, 1.0, 1.0, 1.0,
12 0.3333333333333333, -0.3333333333333333, -1.0, -1.0, -1.0,
13 -0.3333333333333333, 0.3333333333333333, -0.3333333333333333 };
14 
15 static double NF_C_Q_UL3S_2D_Eta[] = {
16 -1.0, -1.0, -1.0, -1.0, -0.3333333333333333, 0.3333333333333333, 1.0,
17 1.0, 1.0, 1.0, 0.3333333333333333, -0.3333333333333333,
18 -0.3333333333333333, -0.3333333333333333, 0.3333333333333333 };
19 
20 static double NF_C_Q_UL3S_2D_T[] = { -1, -0.33333333333333333333,
21  0.33333333333333333333, 1 };
22 
23 void NF_C_Q_UL3S_2D_EvalAll(TCollection *Coll, TBaseCell *Cell, double *PointValues,
24  double *Functionals)
25 {
26  memcpy(Functionals, PointValues, 15*SizeOfDouble);
27 }
28 
29 void NF_C_Q_UL3S_2D_EvalEdge(TCollection *Coll, TBaseCell *Cell, int Joint, double *PointValues,
30  double *Functionals)
31 {
32  memcpy(Functionals, PointValues, 4*SizeOfDouble);
33 }
34 
35 TNodalFunctional2D *NF_C_Q_UL3S_2D_Obj = new TNodalFunctional2D
36  (NF_C_Q_UL3S_2D, 15, 4, 15, 4, NF_C_Q_UL3S_2D_Xi, NF_C_Q_UL3S_2D_Eta,
37  NF_C_Q_UL3S_2D_T, NF_C_Q_UL3S_2D_EvalAll, NF_C_Q_UL3S_2D_EvalEdge);
store cells in an array, used by cell iterators
Definition: Collection.h:18
Definition: NodalFunctional2D.h:20
information for finite element data structure
Definition: BaseCell.h:25