ParMooN
 All Classes Functions Variables Friends Pages
BF_D_Q_P2_2D.h
1 // ***********************************************************************
2 // P2 element, discontinous, 2D, quadrilateral
3 // ***********************************************************************
4 
5 // base function values
6 static void D_Q_P2_2D_Funct(double xi, double eta, double *values)
7 {
8  values[0] = 1;
9  values[1] = 3*xi;
10  values[2] = 3*eta;
11  values[3] = 1.25*(3*xi*xi-1);
12  values[4] = 9*xi*eta;
13  values[5] = 1.25*(3*eta*eta-1);
14 }
15 
16 // values of the derivatives in xi direction
17 static void D_Q_P2_2D_DeriveXi(double xi, double eta, double *values)
18 {
19  values[0] = 0;
20  values[1] = 3;
21  values[2] = 0;
22  values[3] = 7.5*xi;
23  values[4] = 9*eta;
24  values[5] = 0;
25 }
26 
27 // values of the derivatives in eta direction
28 static void D_Q_P2_2D_DeriveEta(double xi, double eta, double *values)
29 {
30  values[0] = 0;
31  values[1] = 0;
32  values[2] = 3;
33  values[3] = 0;
34  values[4] = 9*xi;
35  values[5] = 7.5*eta;
36 }
37 
38 // values of the derivatives in xi-xi direction
39 static void D_Q_P2_2D_DeriveXiXi(double xi, double eta,
40  double *values)
41 {
42  values[0]=0;
43  values[1]=0;
44  values[2]=0;
45  values[3]=7.5;
46  values[4]=0;
47  values[5]=0;
48 }
49 
50 // values of the derivatives in eta-eta direction
51 static void D_Q_P2_2D_DeriveEtaEta(double xi, double eta,
52  double *values)
53 {
54  values[0]=0;
55  values[1]=0;
56  values[2]=0;
57  values[3]=0;
58  values[4]=0;
59  values[5]=7.5;
60 }
61 
62 // values of the derivatives in xi-eta direction
63 static void D_Q_P2_2D_DeriveXiEta(double xi, double eta,
64  double *values)
65 {
66  values[0]=0;
67  values[1]=0;
68  values[2]=0;
69  values[3]=0;
70  values[4]=9;
71  values[5]=0;
72 }
73 // ***********************************************************************
74 
75 TBaseFunct2D *BF_D_Q_P2_2D_Obj = new TBaseFunct2D
76  (6, BF_D_Q_P2_2D, BFUnitSquare,
77  D_Q_P2_2D_Funct, D_Q_P2_2D_DeriveXi,
78  D_Q_P2_2D_DeriveEta, D_Q_P2_2D_DeriveXiXi,
79  D_Q_P2_2D_DeriveXiEta, D_Q_P2_2D_DeriveEtaEta, 2, 2,
80  0, NULL);
Definition: BaseFunct2D.h:27