6 static void C_T_P3_2D_Funct(
double xi,
double eta,
double *values)
8 double t1 = xi+eta-2.0/3.0;
9 double t3 = xi+eta-1.0;
10 double t6 = xi*(xi-1.0/3.0);
11 double t16 = eta*(eta-1.0/3.0);
12 values[0] = -9.0/2.0*(xi+eta-1.0/3.0)*t1*t3;
13 values[1] = 27.0/2.0*xi*t1*t3;
14 values[2] = -27.0/2.0*t6*t3;
15 values[3] = 9.0/2.0*t6*(xi-2.0/3.0);
16 values[4] = 27.0/2.0*t1*t3*eta;
17 values[5] = -27.0*xi*eta*t3;
18 values[6] = 27.0/2.0*t6*eta;
19 values[7] = -27.0/2.0*t16*t3;
20 values[8] = 27.0/2.0*t16*xi;
21 values[9] = 9.0/2.0*t16*(eta-2.0/3.0);
25 static void C_T_P3_2D_DeriveXi(
double xi,
double eta,
double *values)
27 double t1 = xi+eta-2.0/3.0;
28 double t2 = xi+eta-1.0;
31 double t7 = xi-1.0/3.0;
33 double t11 = xi-2.0/3.0;
36 double t23 = eta*(eta-1.0/3.0);
37 double t24 = xi+eta-1.0/3.0;
38 values[0] = -9.0/2.0*t3-9.0/2.0*t24*t2-9.0/2.0*t24*t1;
39 values[1] = 27.0/2.0*t3+27.0/2.0*t4+27.0/2.0*xi*t1;
40 values[2] = -27.0/2.0*t7*t2-27.0/2.0*t4-27.0/2.0*t9;
41 values[3] = 9.0/2.0*t7*t11+9.0/2.0*xi*t11+9.0/2.0*t9;
42 values[4] = 27.0/2.0*t15+27.0/2.0*t1*eta;
43 values[5] = -27.0*t15-27.0*t18;
44 values[6] = 27.0/2.0*t18+27.0/2.0*t7*eta;
45 values[7] = -27.0/2.0*t23;
46 values[8] = 27.0/2.0*t23;
51 static void C_T_P3_2D_DeriveEta(
double xi,
double eta,
double *values)
53 double t1 = xi+eta-1.0;
55 double t3 = xi+eta-2.0/3.0;
56 double t7 = xi*(xi-1.0/3.0);
60 double t14 = eta-1.0/3.0;
62 double t20 = eta-2.0/3.0;
63 double t24 = xi+eta-1.0/3.0;
64 values[0] = -9.0/2.0*t10-9.0/2.0*t24*t1-9.0/2.0*t24*t3;
65 values[1] = 27.0/2.0*t2+27.0/2.0*xi*t3;
66 values[2] = -27.0/2.0*t7;
68 values[4] = 27.0/2.0*t8+27.0/2.0*t3*eta+27.0/2.0*t10;
69 values[5] = -27.0*t2-27.0*t12;
70 values[6] = 27.0/2.0*t7;
71 values[7] = -27.0/2.0*t14*t1-27.0/2.0*t8-27.0/2.0*t16;
72 values[8] = 27.0/2.0*t14*xi+27.0/2.0*t12;
73 values[9] = 9.0/2.0*t14*t20+9.0/2.0*eta*t20+9.0/2.0*t16;
76 static void C_T_P3_2D_DeriveXiXi(
double xi,
double eta,
double *values)
78 double t1 = xi+eta-2.0/3.0;
79 double t2 = xi+eta-1.0;
80 double t7 = xi-1.0/3.0;
81 double t11 = xi-2.0/3.0;
82 double t24 = xi+eta-1.0/3.0;
84 values[0] = -9.0*(t1+t2+t24);
85 values[1] = 27.0*(t1+t2+xi);
86 values[2] = -27.0*(t7+t2+xi);
87 values[3] = 9.0*(t7+t11+xi);
89 values[5] = -54.0*eta;
96 static void C_T_P3_2D_DeriveXiEta(
double xi,
double eta,
double *values)
98 double t1 = xi+eta-2.0/3.0;
99 double t2 = xi+eta-1.0;
100 double t24 = xi+eta-1.0/3.0;
102 values[0] = -9.0*(t1+t2+t24);
103 values[1] = 27.0/2.0*(t1+t2)+27.0*xi;
104 values[2] = -27.0*xi+9.0/2.0;
106 values[4] = 27.0/2.0*(t1+t2)+27.0*eta;
107 values[5] = -54.0*(xi+eta-0.5);
108 values[6] = 27.0*xi-9.0/2.0;
109 values[7] = -27.0*eta+9.0/2.0;
110 values[8] = 27.0*eta-9.0/2.0;
114 static void C_T_P3_2D_DeriveEtaEta(
double xi,
double eta,
double *values)
116 double t1 = xi+eta-1.0;
117 double t3 = xi+eta-2.0/3.0;
118 double t14 = eta-1.0/3.0;
119 double t20 = eta-2.0/3.0;
120 double t24 = xi+eta-1.0/3.0;
122 values[0] = -9.0*(t3+t1+t24);
126 values[4] = 27.0*(t1+eta+t3);
127 values[5] = -54.0*xi;
129 values[7] = -27.0*(t14+t1+eta);
131 values[9] = 9.0*(t14+t20+eta);
137 (10, BF_C_T_P3_2D, BFUnitTriangle,
138 C_T_P3_2D_Funct, C_T_P3_2D_DeriveXi,
139 C_T_P3_2D_DeriveEta, C_T_P3_2D_DeriveXiXi,
140 C_T_P3_2D_DeriveXiEta, C_T_P3_2D_DeriveEtaEta, 3, 3,
Definition: BaseFunct2D.h:27