ParMooN
 All Classes Functions Variables Friends Pages
NF_C_T_UL1_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_T_UL1_2D_Xi[10] = { 0.0, 1.0, 0.0,
11  0.333333333333333333333333333333333,
12  0.797426985353087322398025276169754,
13  0.101286507323456338800987361915123,
14  0.101286507323456338800987361915123,
15  0.059715871789769820459117580973106,
16  0.470142064105115089770441209513447,
17  0.470142064105115089770441209513447 };
18 
19 static double NF_C_T_UL1_2D_Eta[] = { 0.0, 0.0, 1.0,
20  0.333333333333333333333333333333333,
21  0.101286507323456338800987361915123,
22  0.797426985353087322398025276169754,
23  0.101286507323456338800987361915123,
24  0.470142064105115089770441209513447,
25  0.059715871789769820459117580973106,
26  0.470142064105115089770441209513447 };
27 
28 static double NF_C_T_UL1_2D_W[7] =
29  { 0.1125,
30  0.0629695902724135762978419727500906,
31  0.0629695902724135762978419727500906,
32  0.0629695902724135762978419727500906,
33  0.0661970763942530903688246939165759,
34  0.0661970763942530903688246939165759,
35  0.0661970763942530903688246939165759 };
36 
37 static double NF_C_T_UL1_2D_T[2] = { -1, 1 };
38 
39 void NF_C_T_UL1_2D_EvalAll(TCollection *Coll, TBaseCell *Cell, double *PointValues,
40  double *Functionals)
41 {
42  Functionals[0] = PointValues[0];
43  Functionals[1] = PointValues[1];
44  Functionals[2] = PointValues[2];
45  Functionals[3] = 2*( PointValues[3]*NF_C_T_UL1_2D_W[0]
46  + PointValues[4]*NF_C_T_UL1_2D_W[1]
47  + PointValues[5]*NF_C_T_UL1_2D_W[2]
48  + PointValues[6]*NF_C_T_UL1_2D_W[3]
49  + PointValues[7]*NF_C_T_UL1_2D_W[4]
50  + PointValues[8]*NF_C_T_UL1_2D_W[5]
51  + PointValues[9]*NF_C_T_UL1_2D_W[6] );
52 }
53 
54 void NF_C_T_UL1_2D_EvalEdge(TCollection *Coll, TBaseCell *Cell, int Joint, double *PointValues,
55  double *Functionals)
56 {
57  Functionals[0] = PointValues[0];
58  Functionals[1] = PointValues[1];
59 }
60 
61 TNodalFunctional2D *NF_C_T_UL1_2D_Obj = new TNodalFunctional2D
62  (NF_C_T_UL1_2D, 4, 2, 10, 2, NF_C_T_UL1_2D_Xi, NF_C_T_UL1_2D_Eta,
63  NF_C_T_UL1_2D_T, NF_C_T_UL1_2D_EvalAll, NF_C_T_UL1_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