6 static void D_Q_Q4_2D_Funct(
double xi,
double eta,
double *values)
8 double t1, t8, t12, t14, t15, t19, t24, t25, t27, t31, t45, t55, t61;
15 t19 = xi*(5.0*t1-3.0);
16 t24 = 3.0+35.0*t8-30.0*t1;
22 t61 = 3.0+35.0*t55-30.0*t27;
26 values[2] = -1.0/2.0+3.0/2.0*t1;
27 values[3] = 5.0/2.0*t1*xi-3.0/2.0*xi;
28 values[4] = 3.0/8.0+35.0/8.0*t8-15.0/4.0*t1;
32 values[8] = t19*eta/2.0;
34 values[10] = -1.0/2.0+3.0/2.0*t27;
35 values[11] = xi*t31/2.0;
36 values[12] = t14*t31/4.0;
37 values[13] = t19*t31/4.0;
38 values[14] = t24*t31/16.0;
39 values[15] = 5.0/2.0*t27*eta-3.0/2.0*eta;
40 values[16] = t12*t45/2.0;
41 values[17] = t15*t45/4.0;
42 values[18] = t19*eta*t45/4.0;
43 values[19] = t25*t45/16.0;
44 values[20] = 3.0/8.0+35.0/8.0*t55-15.0/4.0*t27;
45 values[21] = xi*t61/8.0;
46 values[22] = t14*t61/16.0;
47 values[23] = t19*t61/16.0;
48 values[24] = t24*t61/64.0;
52 static void D_Q_Q4_2D_DeriveXi(
double xi,
double eta,
double *values)
54 double t2, t9, t11, t17, t20, t24, t28, t35, t36, t40, t49, t55;
59 t17 = xi*(7.0*t2-3.0);
67 t55 = 3.0+35.0*t49-30.0*t20;
72 values[3] = 15.0/2.0*t2-3.0/2.0;
73 values[4] = 35.0/2.0*t2*xi-15.0/2.0*xi;
77 values[8] = 15.0/2.0*t11-3.0/2.0*eta;
78 values[9] = 5.0/2.0*t17*eta;
80 values[11] = -1.0/2.0+3.0/2.0*t20;
81 values[12] = 3.0/2.0*xi*t24;
82 values[13] = -15.0/4.0*t2+45.0/4.0*t28+3.0/4.0-9.0/4.0*t20;
83 values[14] = 5.0/4.0*t17*t24;
86 values[17] = 3.0/2.0*t9*t35;
87 values[18] = 75.0/4.0*t2*t40-45.0/4.0*t11-15.0/4.0*t40+9.0/4.0*eta;
88 values[19] = 5.0/4.0*t17*t36;
90 values[21] = 3.0/8.0+35.0/8.0*t49-15.0/4.0*t20;
91 values[22] = 3.0/8.0*xi*t55;
92 values[23] = 45.0/16.0*t2+525.0/16.0*t2*t49-225.0/8.0*t28-9.0/16.0-105.0/16.0*t49+45.0/8.0*t20;
93 values[24] = 5.0/16.0*t17*t55;
97 static void D_Q_Q4_2D_DeriveEta(
double xi,
double eta,
double *values)
99 double t1, t6, t8, t13, t17, t24, t26, t29, t34, t38, t57;
102 t6 = xi*(5.0*t1-3.0);
105 t17 = (-1.0+3.0*t1)*eta;
106 t24 = (3.0+35.0*t8-30.0*t1)*eta;
120 values[7] = -1.0/2.0+3.0/2.0*t1;
122 values[9] = 3.0/8.0+35.0/8.0*t8-15.0/4.0*t1;
123 values[10] = 3.0*eta;
124 values[11] = 3.0*t13;
125 values[12] = 3.0/2.0*t17;
126 values[13] = 3.0/2.0*t6*eta;
127 values[14] = 3.0/8.0*t24;
128 values[15] = 15.0/2.0*t26-3.0/2.0;
129 values[16] = 15.0/2.0*t29-3.0/2.0*xi;
130 values[17] = -15.0/4.0*t26+3.0/4.0+45.0/4.0*t34-9.0/4.0*t1;
131 values[18] = 75.0/4.0*t38*t26-15.0/4.0*t38-45.0/4.0*t29+9.0/4.0*xi;
132 values[19] = 45.0/16.0*t26-9.0/16.0+525.0/16.0*t8*t26-105.0/16.0*t8-225.0/8.0*t34+45.0/8.0*t1;
133 values[20] = 35.0/2.0*t26*eta-15.0/2.0*eta;
134 values[21] = 5.0/2.0*t13*t57;
135 values[22] = 5.0/4.0*t17*t57;
136 values[23] = 5.0/4.0*t6*eta*t57;
137 values[24] = 5.0/16.0*t24*t57;
141 static void D_Q_Q4_2D_DeriveXiXi(
double xi,
double eta,
144 double t2, t6, t8, t12, t16, t20, t22, t28, t39;
160 values[4] = 105.0/2.0*t2-15.0/2.0;
165 values[9] = 105.0/2.0*t8-15.0/2.0*eta;
168 values[12] = -3.0/2.0+9.0/2.0*t12;
169 values[13] = -15.0/2.0*xi+45.0/2.0*t16;
170 values[14] = -105.0/4.0*t2+315.0/4.0*t20+15.0/4.0-t22;
173 values[17] = 3.0/2.0*eta*(5.0*t12-3.0);
174 values[18] = 75.0/2.0*xi*t28-45.0/2.0*t6;
175 values[19] = 525.0/4.0*t2*t28-315.0/4.0*t8-75.0/4.0*t28+45.0/4.0*eta;
178 values[22] = 9.0/8.0+105.0/8.0*t39-t22;
179 values[23] = 45.0/8.0*xi+525.0/8.0*xi*t39-225.0/4.0*t16;
180 values[24] = 315.0/16.0*t2+3675.0/16.0*t2*t39-1575.0/8.0*t20-45.0/16.0-525.0/16.0*t39+225.0/8.0*t12;
184 static void D_Q_Q4_2D_DeriveXiEta(
double xi,
double eta,
187 double t2, t7, t10, t12, t18, t21, t30, t37, t42;
190 t7 = xi*(7.0*t2-3.0);
207 values[8] = 15.0/2.0*t2-3.0/2.0;
208 values[9] = 5.0/2.0*t7;
210 values[11] = 3.0*eta;
211 values[12] = 9.0*t10;
212 values[13] = 45.0/2.0*t12-9.0/2.0*eta;
213 values[14] = 15.0/2.0*t7*eta;
215 values[16] = 15.0/2.0*t18-3.0/2.0;
216 values[17] = 45.0/2.0*t21-9.0/2.0*xi;
217 values[18] = 225.0/4.0*t2*t18-45.0/4.0*t2-45.0/4.0*t18+9.0/4.0;
218 values[19] = 525.0/4.0*t30*t18-105.0/4.0*t30-225.0/4.0*t21+45.0/4.0*xi;
220 values[21] = 35.0/2.0*t37-15.0/2.0*eta;
221 values[22] = 15.0/2.0*t10*t42;
222 values[23] = 525.0/4.0*t2*t37-225.0/4.0*t12-105.0/4.0*t37+45.0/4.0*eta;
223 values[24] = 25.0/4.0*t7*eta*t42;
227 static void D_Q_Q4_2D_DeriveEtaEta(
double xi,
double eta,
230 double t2, t9, t11, t14, t17, t20, t30, t33, t38;
254 values[12] = 9.0/2.0*t2-3.0/2.0;
255 values[13] = 3.0/2.0*xi*(5.0*t2-3.0);
256 values[14] = 9.0/8.0+105.0/8.0*t9-t11;
257 values[15] = 15.0*eta;
258 values[16] = 15.0*t14;
259 values[17] = -15.0/2.0*eta+45.0/2.0*t17;
260 values[18] = 75.0/2.0*t20*eta-45.0/2.0*t14;
261 values[19] = 45.0/8.0*eta+525.0/8.0*t9*eta-225.0/4.0*t17;
262 values[20] = 105.0/2.0*t30-15.0/2.0;
263 values[21] = 105.0/2.0*t33-15.0/2.0*xi;
264 values[22] = -105.0/4.0*t30+15.0/4.0+315.0/4.0*t38-t11;
265 values[23] = 525.0/4.0*t20*t30-75.0/4.0*t20-315.0/4.0*t33+45.0/4.0*xi;
266 values[24] = 315.0/16.0*t30+3675.0/16.0*t9*t30-525.0/16.0*t9-45.0/16.0-1575.0/8.0*t38+225.0/8.0*t2;
272 (25, BF_D_Q_Q4_2D, BFUnitSquare,
273 D_Q_Q4_2D_Funct, D_Q_Q4_2D_DeriveXi,
274 D_Q_Q4_2D_DeriveEta, D_Q_Q4_2D_DeriveXiXi,
275 D_Q_Q4_2D_DeriveXiEta, D_Q_Q4_2D_DeriveEtaEta, 4, 4,
Definition: BaseFunct2D.h:27