ParMooN
 All Classes Functions Variables Friends Pages
BF_C_Q_UL4S_2D.h
1 // ***********************************************************************
2 // Q4 element with bubbles, conforming, 2D
3 // ***********************************************************************
4 
5 // base function values
6 static void C_Q_UL4S_2D_Funct(double xi, double eta, double *values)
7 {
8  double t2, t3, t4, t5, t7, t9, t11, t12, t13, t14, t15, t17, t18, t19, t21;
9  double t22, t23, t24, t25, t27, t29, t32, t33, t34, t36, t39, t40, t41, t42;
10  double t43, t44, t45, t46, t47, t48, t49, t50, t52, t53, t54, t55, t57, t58;
11  double t59, t60, t61, t62, t63, t66, t67, t68, t69, t72, t73, t74, t75, t78;
12  double t79, t80, t81, t85, t87, t90, t91, t92, t93, t94, t95, t96, t98, t99;
13  double t100, t101, t103, t104, t105, t106, t108, t109, t112, t114, t115;
14  double t116, t117, t120, t121, t122, t123, t125, t129, t136, t137, t138;
15  double t139, t140, t141, t142, t143, t150, t151, t154, t159, t160, t162;
16  double t164, t165, t166, t171, t174, t175, t176, t177, t179, t181, t182;
17  double t183, t185, t187, t188, t189, t190, t191, t192, t193, t194, t195;
18  double t196, t197, t198, t199, t200, t201, t203, t205, t218;
19 
20  t2 = xi*xi;
21  t3 = t2/9.0;
22  t4 = t2*xi;
23  t5 = t4/6.0;
24  t7 = xi*eta;
25  t9 = t2*eta;
26  t11 = t4*eta;
27  t12 = 2.0/3.0*t11;
28  t13 = eta*eta;
29  t14 = t13/9.0;
30  t15 = xi*t13;
31  t17 = t2*t13;
32  t18 = t17/4.0;
33  t19 = t4*t13;
34  t21 = t13*eta;
35  t22 = t21/6.0;
36  t23 = xi*t21;
37  t24 = 2.0/3.0*t23;
38  t25 = t2*t21;
39  t27 = t4*t21;
40  t29 = 1.0-t2;
41  t32 = -1.0/2.0+3.0/2.0*t2;
42  t33 = (1.0-eta)*t29*t32;
43  t34 = 2.0/9.0*t33;
44  t36 = 1.0-t13;
45  t39 = -1.0/2.0+3.0/2.0*t13;
46  t40 = (1.0-xi)*t36*t39;
47  t41 = 2.0/9.0*t40;
48  t42 = t29*t36;
49  t43 = t42*t2;
50  t44 = 2.0/3.0*t43;
51  t45 = t42*t13;
52  t46 = 2.0/3.0*t45;
53  t47 = -2.0/9.0+5.0/18.0*xi+t3-t5+5.0/18.0*eta+7.0/12.0*t7-7.0/36.0*t9-t12+t14-7.0/36.0*t15+t18-t19/6.0-t22-t24-t25/6.0+t27-t34-t41+t44+t46;
54  t48 = 2.0/3.0*xi;
55  t49 = 4.0/9.0*t2;
56  t50 = 2.0/3.0*t4;
57  t52 = 2.0*t7;
58  t53 = 8.0/9.0*t9;
59  t54 = 2.0*t11;
60  t55 = 4.0/9.0*t21;
61  t57 = 4.0/9.0*t25;
62  t58 = 8.0/3.0*t27;
63  t59 = 8.0/9.0*t33;
64  t60 = 8.0/3.0*t43;
65  t61 = 8.0/9.0*t45;
66  t62 = 4.0/9.0-t48-t49+t50-8.0/9.0*eta-t52+t53+t54+t55+8.0/3.0*t23-t57-t58+t59-t60-t61;
67  t63 = 2.0/3.0*t2;
68  t66 = t13/2.0;
69  t67 = t17/2.0;
70  t68 = 2.0*t23;
71  t69 = 2.0*t27;
72  t72 = -2.0/3.0+xi+t63-t4+7.0/6.0*eta+t52-7.0/6.0*t9-t54+t66-t15-t67+t19-t21-t68+t25+t69-4.0/3.0*t33+4.0*t43;
73  t73 = 4.0/9.0*eta;
74  t74 = 2.0/3.0*t7;
75  t75 = 4.0/9.0*t9;
76  t78 = 4.0/9.0-t48-t49+t50-t73-t74+t75+t12+4.0/3.0*t15-4.0/3.0*t19+t59-t60;
77  t79 = xi/18.0;
78  t80 = eta/18.0;
79  t81 = t7/12.0;
80  t85 = t21/18.0;
81  t87 = t27/3.0;
82  t90 = (1.0+xi)*t36*t39;
83  t91 = 2.0/9.0*t90;
84  t92 = 2.0/9.0*t45;
85  t93 = -2.0/9.0+t79+t3-t5+t80+t81+t9/36.0+t14-5.0/36.0*t15+t18+t19/2.0+t85-7.0/18.0*t25-t87-t34-t91+t44+t92;
86  t94 = 4.0/9.0*t4;
87  t95 = 2.0/9.0*eta;
88  t96 = 2.0/9.0*t7;
89  t98 = 4.0/9.0*t13;
90  t99 = 4.0/9.0*t19;
91  t100 = 2.0/9.0*t21;
92  t101 = 2.0/9.0*t23;
93  t103 = 8.0/9.0*t27;
94  t104 = 8.0/9.0*t90;
95  t105 = 8.0/9.0*t43;
96  t106 = 4.0/9.0+t94+t95+t96-t53-8.0/9.0*t11-t98-t99-t100-t101+8.0/9.0*t25+t103+t104-t105-t61;
97  t108 = t2/2.0;
98  t109 = t4/3.0;
99  t112 = 2.0/3.0*t13;
100  t114 = t19/3.0;
101  t115 = t21/3.0;
102  t116 = t25/3.0;
103  t117 = 2.0/3.0*t27;
104  t120 = -2.0/3.0-xi/2.0+t108+t109-eta/3.0-t74+t9/3.0+t12+t112+t15/2.0-t67-t114+t115+t24-t116-t117-4.0/3.0*t90+4.0/3.0*t45;
105  t121 = 4.0/9.0*xi;
106  t122 = 4.0/9.0*t15;
107  t123 = 4.0/9.0+t121+t95+t74+t75-t98-t122-t100-t24-t57+t104-t61;
108  t125 = t4/18.0;
109  t129 = 2.0/9.0*t11;
110  t136 = (1.0+eta)*t29*t32;
111  t137 = 2.0/9.0*t136;
112  t138 = 2.0/9.0*t43;
113  t139 = -2.0/9.0-xi/6.0+t3+t125-eta/6.0-11.0/36.0*t7+t9/12.0+t129+t14+t15/12.0+t18+5.0/18.0*t19+t85+t101+5.0/18.0*t25+t27/9.0-t137-t91+t138+t92;
114  t140 = 2.0/9.0*xi;
115  t141 = 2.0/9.0*t4;
116  t142 = 8.0/9.0*t136;
117  t143 = 4.0/9.0+t140-t49-t141+t73+t74-t75-t12+t122-t99+t142-t105;
118  t150 = -2.0/3.0-xi/3.0+t63+t109-eta/2.0-t74+t9/2.0+t12+t66+t15/3.0-t67-t114+t115+t24-t116-t117-4.0/3.0*t136+4.0/3.0*t43;
119  t151 = 8.0/9.0*t15;
120  t154 = 4.0/9.0+t140-t49-t141+t96-t129-t151+8.0/9.0*t19+t55-8.0/9.0*t23-t57+t103+t142-t105-t61;
121  t159 = -2.0/9.0+t79+t3+t125+t80+t81-5.0/36.0*t9+t14+t15/36.0+t18-7.0/18.0*t19-t22+t25/2.0-t87-t137-t41+t138+t46;
122  t160 = 2.0/3.0*eta;
123  t162 = 2.0/3.0*t21;
124  t164 = 8.0/9.0*t40;
125  t165 = 8.0/3.0*t45;
126  t166 = 4.0/9.0-t121-t160-t74+4.0/3.0*t9-t98+t122+t162+t24-4.0/3.0*t25+t164-t165;
127  t171 = -2.0/3.0+7.0/6.0*xi+t108-t4+eta+t52-t9-t54+t112-7.0/6.0*t15-t67+t19-t21-t68+t25+t69-4.0/3.0*t40+4.0*t45;
128  t174 = 4.0/9.0-8.0/9.0*xi+t94-t160-t52+8.0/3.0*t11-t98+t151-t99+t162+t68-t58+t164-t105-t165;
129  t175 = 16.0/9.0*xi;
130  t176 = 16.0/9.0*t4;
131  t177 = 16.0/9.0*eta;
132  t179 = 16.0/9.0*t9;
133  t181 = 16.0/9.0*t15;
134  t182 = 16.0/9.0*t19;
135  t183 = 16.0/9.0*t21;
136  t185 = 16.0/9.0*t25;
137  t187 = 32.0/9.0*t43;
138  t188 = 32.0/9.0*t45;
139  t189 = t175-t176+t177+64.0/9.0*t7-t179-64.0/9.0*t11-t181+t182-t183-64.0/9.0*t23+t185+64.0/9.0*t27+t187+t188;
140  t190 = 8.0/3.0*xi;
141  t191 = 8.0/3.0*t4;
142  t192 = 8.0/3.0*eta;
143  t193 = 16.0/3.0*t7;
144  t194 = 8.0/3.0*t9;
145  t195 = 16.0/3.0*t11;
146  t196 = 8.0/3.0*t15;
147  t197 = 8.0/3.0*t19;
148  t198 = 8.0/3.0*t21;
149  t199 = 16.0/3.0*t23;
150  t200 = 8.0/3.0*t25;
151  t201 = 16.0/3.0*t27;
152  t203 = -t190+t191-t192-t193+t194+t195+t196-t197+t198+t199-t200-t201-16.0/3.0*t45;
153  t205 = -t190+t191-t192-t193+t194+t195+t196-t197+t198+t199-t200-t201-16.0/3.0*t43;
154  t218 = 1.0+2.0*xi-t2-2.0*t4+2.0*eta+4.0*t7-2.0*t9-4.0*t11-t13-2.0*t15+t17+2.0*t19-2.0*t21-4.0*t23+2.0*t25+4.0*t27;
155 
156  values[0] = t47;
157  values[1] = t62;
158  values[2] = t72;
159  values[3] = t78;
160  values[4] = t93;
161  values[5] = t106;
162  values[6] = t120;
163  values[7] = t123;
164  values[8] = t139;
165  values[9] = t143;
166  values[10] = t150;
167  values[11] = t154;
168  values[12] = t159;
169  values[13] = t166;
170  values[14] = t171;
171  values[15] = t174;
172  values[16] = t189;
173  values[17] = t203;
174  values[18] = t205;
175  values[19] = t218;
176  values[20] = t175-t176-t181+t182+t187;
177  values[21] = t177-t179-t183+t185+t188;
178 }
179 
180 // values of the derivatives in xi direction
181 static void C_Q_UL4S_2D_DeriveXi(double xi, double eta, double *values)
182 {
183  double t1, t2, t3, t5, t7, t8, t9, t11, t12, t13, t15, t16, t17, t19, t21;
184  double t24, t25, t26, t27, t29, t30, t31, t34, t35, t37, t38, t40, t41, t43;
185  double t44, t45, t46, t47, t48, t49, t50, t52, t53, t54, t55, t56, t57, t58;
186  double t59, t60, t61, t63, t64, t65, t66, t71, t72, t73, t76, t77, t82, t83;
187  double t84, t85, t87, t88, t90, t91, t92, t93, t94, t97, t98, t99, t101;
188  double t102, t104, t107, t112, t114, t115, t117, t118, t119, t120, t121;
189  double t122, t123, t124, t125, t131, t132, t135, t139, t142, t147, t149;
190  double t150, t152, t154, t155, t157, t159, t160, t161, t162, t163, t164;
191  double t165, t166, t167, t168, t169, t170, t171, t173, t176, t188;
192 
193  t1 = 2.0/9.0*xi;
194  t2 = xi*xi;
195  t3 = t2/2.0;
196  t5 = xi*eta;
197  t7 = t2*eta;
198  t8 = 2.0*t7;
199  t9 = eta*eta;
200  t11 = xi*t9;
201  t12 = t11/2.0;
202  t13 = t2*t9;
203  t15 = t9*eta;
204  t16 = 2.0/3.0*t15;
205  t17 = xi*t15;
206  t19 = t2*t15;
207  t21 = 1.0-eta;
208  t24 = -1.0/2.0+3.0/2.0*t2;
209  t25 = t21*xi*t24;
210  t26 = 4.0/9.0*t25;
211  t27 = 1.0-t2;
212  t29 = t21*t27*xi;
213  t30 = 2.0/3.0*t29;
214  t31 = 1.0-t9;
215  t34 = t31*(-1.0/2.0+3.0/2.0*t9);
216  t35 = 2.0/9.0*t34;
217  t37 = t2*xi*t31;
218  t38 = 4.0/3.0*t37;
219  t40 = t27*t31*xi;
220  t41 = 4.0/3.0*t40;
221  t43 = xi*t31*t9;
222  t44 = 4.0/3.0*t43;
223  t45 = 5.0/18.0+t1-t3+7.0/12.0*eta-7.0/18.0*t5-t8-7.0/36.0*t9+t12-t13/2.0-t16-t17/3.0+3.0*t19+t26-t30+t35-t38+t41-t44;
224  t46 = 8.0/9.0*xi;
225  t47 = 2.0*t2;
226  t48 = 2.0*eta;
227  t49 = 16.0/9.0*t5;
228  t50 = 6.0*t7;
229  t52 = 8.0/9.0*t17;
230  t53 = 8.0*t19;
231  t54 = 16.0/9.0*t25;
232  t55 = 8.0/3.0*t29;
233  t56 = 16.0/3.0*t37;
234  t57 = 16.0/3.0*t40;
235  t58 = 16.0/9.0*t43;
236  t59 = -2.0/3.0-t46+t47-t48+t49+t50+8.0/3.0*t15-t52-t53-t54+t55+t56-t57+t58;
237  t60 = 4.0/3.0*xi;
238  t61 = 3.0*t2;
239  t63 = 3.0*t13;
240  t64 = 2.0*t15;
241  t65 = 2.0*t17;
242  t66 = 6.0*t19;
243  t71 = 1.0+t60-t61+t48-7.0/3.0*t5-t50-t9-t11+t63-t64+t65+t66+8.0/3.0*t25-4.0*t29-8.0*t37+8.0*t40;
244  t72 = 2.0/3.0*eta;
245  t73 = 8.0/9.0*t5;
246  t76 = -2.0/3.0-t46+t47-t72+t73+t8+4.0/3.0*t9-4.0*t13-t54+t55+t56-t57;
247  t77 = eta/12.0;
248  t82 = 4.0/9.0*t43;
249  t83 = 1.0/18.0+t1-t3+t77+t5/18.0-5.0/36.0*t9+t12+3.0/2.0*t13-7.0/9.0*t17-t19+t26-t30-t35-t38+t41-t82;
250  t84 = 4.0/3.0*t2;
251  t85 = 2.0/9.0*eta;
252  t87 = 4.0/3.0*t13;
253  t88 = 2.0/9.0*t15;
254  t90 = 8.0/3.0*t19;
255  t91 = 8.0/9.0*t34;
256  t92 = 16.0/9.0*t37;
257  t93 = 16.0/9.0*t40;
258  t94 = t84+t85-t49-8.0/3.0*t7-t87-t88+16.0/9.0*t17+t90+t91+t92-t93+t58;
259  t97 = 2.0/3.0*t17;
260  t98 = 2.0*t19;
261  t99 = 4.0/3.0*t34;
262  t101 = -1.0/2.0+xi+t2-t72+2.0/3.0*t5+t8+t9/2.0-t11-t13+t16-t97-t98-t99-8.0/3.0*t43;
263  t102 = 4.0/9.0*t9;
264  t104 = t2/6.0;
265  t107 = 2.0/3.0*t7;
266  t112 = 1.0+eta;
267  t114 = t112*xi*t24;
268  t115 = 4.0/9.0*t114;
269  t117 = t112*t27*xi;
270  t118 = 2.0/3.0*t117;
271  t119 = 4.0/9.0*t37;
272  t120 = 4.0/9.0*t40;
273  t121 = -1.0/6.0+t1+t104-11.0/36.0*eta+t5/6.0+t107+t9/12.0+t12+5.0/6.0*t13+t88+5.0/9.0*t17+t19/3.0+t115-t118-t35-t119+t120-t82;
274  t122 = 2.0/3.0*t2;
275  t123 = 16.0/9.0*t114;
276  t124 = 8.0/3.0*t117;
277  t125 = 2.0/9.0-t46-t122+t72-t73-t8+t102-t87-t123+t124+t92-t93;
278  t131 = -1.0/3.0+t60+t2-t72+t5+t8+t9/3.0-t11-t13+t16-t97-t98+8.0/3.0*t114-4.0*t117-8.0/3.0*t37+8.0/3.0*t40;
279  t132 = 8.0/9.0*t9;
280  t135 = 2.0/9.0-t46-t122+t85-t107-t132+8.0/3.0*t13-8.0/9.0*t15-t52+t90-t123+t124+t92-t93+t58;
281  t139 = 1.0/18.0+t1+t104+t77-5.0/18.0*t5+t9/36.0+t12-7.0/6.0*t13+t17-t19+t115-t118+t35-t119+t120-t44;
282  t142 = 16.0/3.0*t43;
283  t147 = 7.0/6.0+xi-t61+t48-2.0*t5-t50-7.0/6.0*t9-t11+t63-t64+t65+t66+t99-8.0*t43;
284  t149 = -8.0/9.0+t84-t48+8.0*t7+t132-t87+t64-t53-t91+t92-t93+t142;
285  t150 = 16.0/3.0*t2;
286  t152 = 32.0/9.0*t5;
287  t154 = 16.0/9.0*t9;
288  t155 = 16.0/3.0*t13;
289  t157 = 32.0/9.0*t17;
290  t159 = 64.0/9.0*t37;
291  t160 = 64.0/9.0*t40;
292  t161 = 64.0/9.0*t43;
293  t162 = 16.0/9.0-t150+64.0/9.0*eta-t152-64.0/3.0*t7-t154+t155-64.0/9.0*t15+t157+64.0/3.0*t19-t159+t160-t161;
294  t163 = 8.0*t2;
295  t164 = 16.0/3.0*eta;
296  t165 = 16.0/3.0*t5;
297  t166 = 16.0*t7;
298  t167 = 8.0/3.0*t9;
299  t168 = 8.0*t13;
300  t169 = 16.0/3.0*t15;
301  t170 = 16.0/3.0*t17;
302  t171 = 16.0*t19;
303  t173 = -8.0/3.0+t163-t164+t165+t166+t167-t168+t169-t170-t171+32.0/3.0*t43;
304  t176 = -8.0/3.0+t163-t164+t165+t166+t167-t168+t169-t170-t171+32.0/3.0*t37-32.0/3.0*t40;
305  t188 = 2.0-2.0*xi-6.0*t2+4.0*eta-4.0*t5-12.0*t7-2.0*t9+2.0*t11+6.0*t13-4.0*t15+4.0*t17+12.0*t19;
306 
307  values[0] = t45;
308  values[1] = t59;
309  values[2] = t71;
310  values[3] = t76;
311  values[4] = t83;
312  values[5] = t94;
313  values[6] = t101;
314  values[7] = 4.0/9.0+t72+t73-t102-t16-t52+t91+t58;
315  values[8] = t121;
316  values[9] = t125;
317  values[10] = t131;
318  values[11] = t135;
319  values[12] = t139;
320  values[13] = -4.0/9.0-t72+8.0/3.0*t5+t102+t16-8.0/3.0*t17-t91+t142;
321  values[14] = t147;
322  values[15] = t149;
323  values[16] = t162;
324  values[17] = t173;
325  values[18] = t176;
326  values[19] = t188;
327  values[20] = 16.0/9.0-t150-t154+t155-t159+t160;
328  values[21] = -t152+t157-t161;
329 }
330 
331 // values of the derivatives in eta direction
332 static void C_Q_UL4S_2D_DeriveEta(double xi, double eta, double *values)
333 {
334  double t2, t4, t5, t6, t7, t9, t10, t11, t13, t14, t15, t16, t17, t19, t21;
335  double t24, t25, t26, t29, t30, t31, t32, t34, t35, t37, t38, t40, t41, t43;
336  double t44, t45, t46, t47, t48, t49, t51, t52, t53, t54, t55, t56, t57, t60;
337  double t61, t62, t63, t64, t65, t67, t68, t69, t73, t76, t78, t80, t81, t83;
338  double t84, t85, t86, t87, t88, t90, t91, t92, t93, t95, t96, t97, t98, t99;
339  double t101, t102, t103, t108, t109, t110, t113, t118, t119, t124, t125;
340  double t128, t133, t135, t137, t138, t139, t140, t141, t147, t149, t151;
341  double t153, t154, t155, t157, t159, t160, t161, t162, t163, t164, t165;
342  double t166, t167, t168, t169, t170, t171, t174, t176, t188;
343 
344  t2 = xi*xi;
345  t4 = t2*xi;
346  t5 = 2.0/3.0*t4;
347  t6 = 2.0/9.0*eta;
348  t7 = xi*eta;
349  t9 = t2*eta;
350  t10 = t9/2.0;
351  t11 = t4*eta;
352  t13 = eta*eta;
353  t14 = t13/2.0;
354  t15 = xi*t13;
355  t16 = 2.0*t15;
356  t17 = t2*t13;
357  t19 = t4*t13;
358  t21 = 1.0-t2;
359  t24 = t21*(-1.0/2.0+3.0/2.0*t2);
360  t25 = 2.0/9.0*t24;
361  t26 = 1.0-xi;
362  t29 = -1.0/2.0+3.0/2.0*t13;
363  t30 = t26*eta*t29;
364  t31 = 4.0/9.0*t30;
365  t32 = 1.0-t13;
366  t34 = t26*t32*eta;
367  t35 = 2.0/3.0*t34;
368  t37 = t21*eta*t2;
369  t38 = 4.0/3.0*t37;
370  t40 = t21*t13*eta;
371  t41 = 4.0/3.0*t40;
372  t43 = t21*t32*eta;
373  t44 = 4.0/3.0*t43;
374  t45 = 5.0/18.0+7.0/12.0*xi-7.0/36.0*t2-t5+t6-7.0/18.0*t7+t10-t11/3.0-t14-t16-t17/2.0+3.0*t19+t25+t31-t35-t38-t41+t44;
375  t46 = 2.0*xi;
376  t47 = 8.0/9.0*t2;
377  t48 = 2.0*t4;
378  t49 = 4.0/3.0*t13;
379  t51 = 4.0/3.0*t17;
380  t52 = 8.0*t19;
381  t53 = 8.0/9.0*t24;
382  t54 = 16.0/3.0*t37;
383  t55 = 16.0/9.0*t40;
384  t56 = 16.0/9.0*t43;
385  t57 = -8.0/9.0-t46+t47+t48+t49+8.0*t15-t51-t52-t53+t54+t55-t56;
386  t60 = 2.0*t11;
387  t61 = 3.0*t13;
388  t62 = 6.0*t15;
389  t63 = 3.0*t17;
390  t64 = 6.0*t19;
391  t65 = 4.0/3.0*t24;
392  t67 = 7.0/6.0+t46-7.0/6.0*t2-t48+eta-2.0*t7-t9+t60-t61-t62+t63+t64+t65-8.0*t37;
393  t68 = 2.0/3.0*xi;
394  t69 = 4.0/9.0*t2;
395  t73 = xi/12.0;
396  t76 = t13/6.0;
397  t78 = 1.0+xi;
398  t80 = t78*eta*t29;
399  t81 = 4.0/9.0*t80;
400  t83 = t78*t32*eta;
401  t84 = 2.0/3.0*t83;
402  t85 = 4.0/9.0*t40;
403  t86 = 4.0/9.0*t43;
404  t87 = 1.0/18.0+t73+t2/36.0+t6-5.0/18.0*t7+t10+t11+t76-7.0/6.0*t17-t19+t25+t81-t84-t38-t85+t86;
405  t88 = 2.0/9.0*xi;
406  t90 = 8.0/9.0*eta;
407  t91 = 8.0/9.0*t11;
408  t92 = 2.0/3.0*t13;
409  t93 = 2.0/3.0*t15;
410  t95 = 8.0/3.0*t19;
411  t96 = 16.0/9.0*t80;
412  t97 = 8.0/3.0*t83;
413  t98 = 16.0/9.0*t37;
414  t99 = 2.0/9.0+t88-t47-8.0/9.0*t4-t90-t91-t92-t93+8.0/3.0*t17+t95-t96+t97+t98+t55-t56;
415  t101 = 4.0/3.0*eta;
416  t102 = 2.0/3.0*t11;
417  t103 = 2.0*t19;
418  t108 = -1.0/3.0-t68+t2/3.0+t5+t101+t7-t9-t102+t13+t16-t17-t103+8.0/3.0*t80-4.0*t83-8.0/3.0*t40+8.0/3.0*t43;
419  t109 = 8.0/9.0*t7;
420  t110 = 2.0/9.0+t68+t69-t90-t109-t92-t16-t51-t96+t97+t55-t56;
421  t113 = 2.0/9.0*t4;
422  t118 = 4.0/9.0*t37;
423  t119 = -1.0/6.0-11.0/36.0*xi+t2/12.0+t113+t6+t7/6.0+t10+5.0/9.0*t11+t76+t93+5.0/6.0*t17+t19/3.0-t25+t81-t84-t118-t85+t86;
424  t124 = -1.0/2.0-t68+t2/2.0+t5+eta+2.0/3.0*t7-t9-t102+t13+t16-t17-t103-t65-8.0/3.0*t37;
425  t125 = 16.0/9.0*t7;
426  t128 = t88-t113-t125+16.0/9.0*t11+t49-8.0/3.0*t15-t51+t95+t53+t98+t55-t56;
427  t133 = 1.0/18.0+t73-5.0/36.0*t2+t6+t7/18.0+t10-7.0/9.0*t11-t14+3.0/2.0*t17-t19-t25+t31-t35-t118-t41+t44;
428  t135 = 2.0*t13;
429  t137 = 16.0/9.0*t30;
430  t138 = 8.0/3.0*t34;
431  t139 = 16.0/3.0*t40;
432  t140 = 16.0/3.0*t43;
433  t141 = -2.0/3.0-t68+4.0/3.0*t2-t90+t109+t135+t16-4.0*t17-t137+t138+t139-t140;
434  t147 = 1.0+t46-t2-t48+t101-7.0/3.0*t7-t9+t60-t61-t62+t63+t64+8.0/3.0*t30-4.0*t34-8.0*t40+8.0*t43;
435  t149 = -2.0/3.0-t46+8.0/3.0*t4-t90+t125-t91+t135+t62-t52-t137+t138+t98+t139-t140;
436  t151 = 16.0/9.0*t2;
437  t153 = 32.0/9.0*t7;
438  t154 = 32.0/9.0*t11;
439  t155 = 16.0/3.0*t13;
440  t157 = 16.0/3.0*t17;
441  t159 = 64.0/9.0*t37;
442  t160 = 64.0/9.0*t40;
443  t161 = 64.0/9.0*t43;
444  t162 = 16.0/9.0+64.0/9.0*xi-t151-64.0/9.0*t4-t153+t154-t155-64.0/3.0*t15+t157+64.0/3.0*t19-t159-t160+t161;
445  t163 = 16.0/3.0*xi;
446  t164 = 8.0/3.0*t2;
447  t165 = 16.0/3.0*t4;
448  t166 = 16.0/3.0*t7;
449  t167 = 16.0/3.0*t11;
450  t168 = 8.0*t13;
451  t169 = 16.0*t15;
452  t170 = 8.0*t17;
453  t171 = 16.0*t19;
454  t174 = -8.0/3.0-t163+t164+t165+t166-t167+t168+t169-t170-t171+32.0/3.0*t40-32.0/3.0*t43;
455  t176 = -8.0/3.0-t163+t164+t165+t166-t167+t168+t169-t170-t171+32.0/3.0*t37;
456  t188 = 2.0+4.0*xi-2.0*t2-4.0*t4-2.0*eta-4.0*t7+2.0*t9+4.0*t11-6.0*t13-12.0*t15+6.0*t17+12.0*t19;
457 
458  values[0] = t45;
459  values[1] = t57;
460  values[2] = t67;
461  values[3] = -4.0/9.0-t68+t69+t5+8.0/3.0*t7-8.0/3.0*t11-t53+t54;
462  values[4] = t87;
463  values[5] = t99;
464  values[6] = t108;
465  values[7] = t110;
466  values[8] = t119;
467  values[9] = 4.0/9.0+t68-t69-t5+t109-t91+t53+t98;
468  values[10] = t124;
469  values[11] = t128;
470  values[12] = t133;
471  values[13] = t141;
472  values[14] = t147;
473  values[15] = t149;
474  values[16] = t162;
475  values[17] = t174;
476  values[18] = t176;
477  values[19] = t188;
478  values[20] = -t153+t154-t159;
479  values[21] = 16.0/9.0-t151-t155+t157-t160+t161;
480 }
481 
482 // values of the derivatives in xi-xi direction
483 static void C_Q_UL4S_2D_DeriveXiXi(double xi, double eta, double *values)
484 {
485  double t2, t3, t4, t5, t6, t7, t9, t11, t12, t14, t15, t16, t17, t18, t19;
486  double t20, t21, t22, t23, t24, t25, t26, t27, t28, t29, t30, t31, t32, t33;
487  double t34, t35, t36, t37, t38, t39, t40, t41, t42, t44, t45, t46, t52, t53;
488  double t59, t60, t61, t62, t64, t66, t67, t68, t70, t72, t73, t74, t78, t80;
489  double t84, t85, t86, t87, t88, t89, t90, t91, t92, t93, t94, t95, t96, t97;
490  double t104, t106, t109, t112, t119, t120, t122, t123, t125, t126, t127;
491  double t129, t130, t131, t132, t133, t134;
492 
493  t2 = xi*eta;
494  t3 = 4.0*t2;
495  t4 = eta*eta;
496  t5 = t4/2.0;
497  t6 = xi*t4;
498  t7 = t4*eta;
499  t9 = xi*t7;
500  t11 = 1.0-eta;
501  t12 = xi*xi;
502  t14 = -1.0/2.0+3.0/2.0*t12;
503  t15 = t11*t14;
504  t16 = 4.0/9.0*t15;
505  t17 = t11*t12;
506  t18 = 8.0/3.0*t17;
507  t19 = 1.0-t12;
508  t20 = t11*t19;
509  t21 = 2.0/3.0*t20;
510  t22 = 1.0-t4;
511  t23 = t12*t22;
512  t24 = 20.0/3.0*t23;
513  t25 = t19*t22;
514  t26 = 4.0/3.0*t25;
515  t27 = t22*t4;
516  t28 = 4.0/3.0*t27;
517  t29 = 2.0/9.0-xi-7.0/18.0*eta-t3+t5-t6-t7/3.0+6.0*t9+t16+t18-t21-t24+t26-t28;
518  t30 = 4.0*xi;
519  t31 = 16.0/9.0*eta;
520  t32 = 12.0*t2;
521  t33 = 8.0/9.0*t7;
522  t34 = 16.0*t9;
523  t35 = 16.0/9.0*t15;
524  t36 = 32.0/3.0*t17;
525  t37 = 8.0/3.0*t20;
526  t38 = 80.0/3.0*t23;
527  t39 = 16.0/3.0*t25;
528  t40 = 16.0/9.0*t27;
529  t41 = -8.0/9.0+t30+t31+t32-t33-t34-t35-t36+t37+t38-t39+t40;
530  t42 = 6.0*xi;
531  t44 = 6.0*t6;
532  t45 = 2.0*t7;
533  t46 = 12.0*t9;
534  t52 = 4.0/3.0-t42-7.0/3.0*eta-t32-t4+t44+t45+t46+8.0/3.0*t15+16.0*t17-4.0*t20-40.0*t23+8.0*t25;
535  t53 = 8.0/9.0*eta;
536  t59 = 2.0*t9;
537  t60 = 4.0/9.0*t27;
538  t61 = 2.0/9.0-xi+eta/18.0+t5+3.0*t6-7.0/9.0*t7-t59+t16+t18-t21-t24+t26-t60;
539  t62 = 8.0/3.0*xi;
540  t64 = 8.0/3.0*t6;
541  t66 = 16.0/3.0*t9;
542  t67 = 80.0/9.0*t23;
543  t68 = 16.0/9.0*t25;
544  t70 = 2.0*xi;
545  t72 = 2.0*t6;
546  t73 = 2.0/3.0*t7;
547  t74 = 4.0*t9;
548  t78 = xi/3.0;
549  t80 = 4.0/3.0*t2;
550  t84 = 1.0+eta;
551  t85 = t84*t14;
552  t86 = 4.0/9.0*t85;
553  t87 = t84*t12;
554  t88 = 8.0/3.0*t87;
555  t89 = t84*t19;
556  t90 = 2.0/3.0*t89;
557  t91 = 20.0/9.0*t23;
558  t92 = 4.0/9.0*t25;
559  t93 = 2.0/9.0+t78+eta/6.0+t80+t5+5.0/3.0*t6+5.0/9.0*t7+2.0/3.0*t9+t86+t88-t90-t91+t92-t60;
560  t94 = 4.0/3.0*xi;
561  t95 = 16.0/9.0*t85;
562  t96 = 32.0/3.0*t87;
563  t97 = 8.0/3.0*t89;
564  t104 = 4.0/3.0+t70+eta+t3-t4-t72-t73-t74+8.0/3.0*t85+16.0*t87-4.0*t89-40.0/3.0*t23+8.0/3.0*t25;
565  t106 = -8.0/9.0-t94-t80+16.0/3.0*t6-t33+t66-t95-t96+t97+t67-t68+t40;
566  t109 = 2.0/9.0+t78-5.0/18.0*eta+t5-7.0/3.0*t6+t7-t59+t86+t88-t90-t91+t92-t28;
567  t112 = 16.0/3.0*t27;
568  t119 = 32.0/3.0*xi;
569  t120 = 32.0/9.0*eta;
570  t122 = 32.0/3.0*t6;
571  t123 = 32.0/9.0*t7;
572  t125 = 320.0/9.0*t23;
573  t126 = 64.0/9.0*t25;
574  t127 = 64.0/9.0*t27;
575  t129 = 16.0*xi;
576  t130 = 16.0/3.0*eta;
577  t131 = 32.0*t2;
578  t132 = 16.0*t6;
579  t133 = 16.0/3.0*t7;
580  t134 = 32.0*t9;
581 
582  values[0] = t29;
583  values[1] = t41;
584  values[2] = t52;
585  values[3] = -8.0/9.0+t30+t53+t3-8.0*t6-t35-t36+t37+t38-t39;
586  values[4] = t61;
587  values[5] = t62-t31-16.0/3.0*t2-t64+16.0/9.0*t7+t66+t67-t68+t40;
588  values[6] = 1.0+t70+2.0/3.0*eta+t3-t4-t72-t73-t74-8.0/3.0*t27;
589  values[7] = t53-t33+t40;
590  values[8] = t93;
591  values[9] = -8.0/9.0-t94-t53-t3-t64-t95-t96+t97+t67-t68;
592  values[10] = t104;
593  values[11] = t106;
594  values[12] = t109;
595  values[13] = 8.0/3.0*eta-8.0/3.0*t7+t112;
596  values[14] = 1.0-t42-2.0*eta-t32-t4+t44+t45+t46-8.0*t27;
597  values[15] = t62+16.0*t2-t64-t34+t67-t68+t112;
598  values[16] = -t119-t120-128.0/3.0*t2+t122+t123+128.0/3.0*t9-t125+t126-t127;
599  values[17] = t129+t130+t131-t132-t133-t134+32.0/3.0*t27;
600  values[18] = t129+t130+t131-t132-t133-t134+160.0/3.0*t23-32.0/3.0*t25;
601  values[19] = -2.0-12.0*xi-4.0*eta-24.0*t2+2.0*t4+12.0*t6+4.0*t7+24.0*t9;
602  values[20] = -t119+t122-t125+t126;
603  values[21] = -t120+t123-t127;
604 }
605 
606 // values of the derivatives in xi-eta direction
607 static void C_Q_UL4S_2D_DeriveXiEta(double xi, double eta, double *values)
608 {
609  double t2, t3, t5, t6, t7, t8, t9, t10, t14, t15, t16, t17, t18, t21, t22;
610  double t23, t24, t25, t27, t28, t30, t31, t33, t34, t36, t37, t38, t39, t40;
611  double t42, t43, t44, t45, t46, t47, t48, t49, t50, t53, t54, t55, t56, t57;
612  double t58, t59, t62, t63, t71, t72, t73, t74, t76, t77, t79, t80, t81, t82;
613  double t83, t84, t86, t87, t88, t89, t90, t93, t94, t97, t101, t102, t103;
614  double t108, t109, t112, t117, t120, t121, t127, t129, t130, t132, t133;
615  double t135, t137, t138, t139, t140, t141, t142, t143, t144, t145, t146;
616  double t147, t148;
617 
618  t2 = xi*xi;
619  t3 = 2.0*t2;
620  t5 = xi*eta;
621  t6 = t2*eta;
622  t7 = eta*eta;
623  t8 = 2.0*t7;
624  t9 = xi*t7;
625  t10 = t2*t7;
626  t14 = xi*(-1.0/2.0+3.0/2.0*t2);
627  t15 = 4.0/9.0*t14;
628  t16 = 1.0-t2;
629  t17 = t16*xi;
630  t18 = 2.0/3.0*t17;
631  t21 = eta*(-1.0/2.0+3.0/2.0*t7);
632  t22 = 4.0/9.0*t21;
633  t23 = 1.0-t7;
634  t24 = t23*eta;
635  t25 = 2.0/3.0*t24;
636  t27 = t2*xi*eta;
637  t28 = 8.0/3.0*t27;
638  t30 = t16*eta*xi;
639  t31 = 8.0/3.0*t30;
640  t33 = xi*t7*eta;
641  t34 = 8.0/3.0*t33;
642  t36 = xi*t23*eta;
643  t37 = 8.0/3.0*t36;
644  t38 = 7.0/12.0-7.0/18.0*xi-t3-7.0/18.0*eta+t5-t6-t8-t9+9.0*t10-t15+t18-t22+t25+t28-t31+t34-t37;
645  t39 = 16.0/9.0*xi;
646  t40 = 6.0*t2;
647  t42 = 8.0/3.0*t9;
648  t43 = 24.0*t10;
649  t44 = 16.0/9.0*t14;
650  t45 = 8.0/3.0*t17;
651  t46 = 32.0/3.0*t27;
652  t47 = 32.0/3.0*t30;
653  t48 = 32.0/9.0*t33;
654  t49 = 32.0/9.0*t36;
655  t50 = -2.0+t39+t40+8.0*t7-t42-t43+t44-t45-t46+t47-t48+t49;
656  t53 = 2.0*t5;
657  t54 = 6.0*t6;
658  t55 = 6.0*t7;
659  t56 = 6.0*t9;
660  t57 = 18.0*t10;
661  t58 = 8.0/3.0*t14;
662  t59 = 4.0*t17;
663  t62 = 2.0-7.0/3.0*xi-t40-2.0*eta-t53+t54-t55+t56+t57-t58+t59+16.0*t27-16.0*t30;
664  t63 = 8.0/9.0*xi;
665  t71 = 3.0*t10;
666  t72 = 8.0/9.0*t33;
667  t73 = 8.0/9.0*t36;
668  t74 = 1.0/12.0+xi/18.0-5.0/18.0*eta+t5+3.0*t6-7.0/3.0*t9-t71-t15+t18+t22-t25+t28-t31+t72-t73;
669  t76 = 8.0/3.0*t6;
670  t77 = 2.0/3.0*t7;
671  t79 = 8.0*t10;
672  t80 = 16.0/9.0*t21;
673  t81 = 8.0/3.0*t24;
674  t82 = 32.0/9.0*t27;
675  t83 = 32.0/9.0*t30;
676  t84 = 2.0/9.0-t39-8.0/3.0*t2-t76-t77+16.0/3.0*t9+t79-t80+t81-t82+t83-t48+t49;
677  t86 = 2.0*t6;
678  t87 = 2.0*t9;
679  t88 = 6.0*t10;
680  t89 = 8.0/3.0*t21;
681  t90 = 4.0*t24;
682  t93 = -2.0/3.0+2.0/3.0*xi+t3+eta-t53-t86+t8-t87-t88+t89-t90+16.0/3.0*t33-16.0/3.0*t36;
683  t94 = 8.0/9.0*eta;
684  t97 = 2.0/3.0*t2;
685  t101 = 8.0/9.0*t27;
686  t102 = 8.0/9.0*t30;
687  t103 = -11.0/36.0+xi/6.0+t97+eta/6.0+t5+5.0/3.0*t6+t77+5.0/3.0*t9+t10+t15-t18+t22-t25+t101-t102+t72-t73;
688  t108 = -2.0/3.0+xi+t3+2.0/3.0*eta-t53-t86+t8-t87-t88+t58-t59+16.0/3.0*t27-16.0/3.0*t30;
689  t109 = 16.0/9.0*eta;
690  t112 = 2.0/9.0-t97-t109+16.0/3.0*t6-8.0/3.0*t7-t42+t79-t44+t45-t82+t83-t48+t49;
691  t117 = 1.0/12.0-5.0/18.0*xi+eta/18.0+t5-7.0/3.0*t6+3.0*t9-t71+t15-t18-t22+t25+t101-t102+t34-t37;
692  t120 = 32.0/3.0*t33;
693  t121 = 32.0/3.0*t36;
694  t127 = 2.0-2.0*xi-t40-7.0/3.0*eta-t53+t54-t55+t56+t57-t89+t90+16.0*t33-16.0*t36;
695  t129 = -2.0+8.0*t2+t109-t76+t55-t43+t80-t81-t82+t83-t120+t121;
696  t130 = 32.0/9.0*xi;
697  t132 = 32.0/9.0*eta;
698  t133 = 32.0/3.0*t6;
699  t135 = 32.0/3.0*t9;
700  t137 = 128.0/9.0*t27;
701  t138 = 128.0/9.0*t30;
702  t139 = 128.0/9.0*t33;
703  t140 = 128.0/9.0*t36;
704  t141 = 64.0/9.0-t130-64.0/3.0*t2-t132+t133-64.0/3.0*t7+t135+64.0*t10+t137-t138+t139-t140;
705  t142 = 16.0/3.0*xi;
706  t143 = 16.0*t2;
707  t144 = 16.0/3.0*eta;
708  t145 = 16.0*t6;
709  t146 = 16.0*t7;
710  t147 = 16.0*t9;
711  t148 = 48.0*t10;
712 
713  values[0] = t38;
714  values[1] = t50;
715  values[2] = t62;
716  values[3] = -2.0/3.0+t63+t3+8.0/3.0*eta-8.0*t6+t44-t45-t46+t47;
717  values[4] = t74;
718  values[5] = t84;
719  values[6] = t93;
720  values[7] = 2.0/3.0+t63-t94-t8-t42-t80+t81-t48+t49;
721  values[8] = t103;
722  values[9] = 2.0/3.0-t63-t3+t94-t76-t44+t45-t82+t83;
723  values[10] = t108;
724  values[11] = t112;
725  values[12] = t117;
726  values[13] = -2.0/3.0+8.0/3.0*xi+t94+t8-8.0*t9+t80-t81-t120+t121;
727  values[14] = t127;
728  values[15] = t129;
729  values[16] = t141;
730  values[17] = -16.0/3.0+t142+t143+t144-t145+t146-t147-t148-64.0/3.0*t33+64.0/3.0*t36;
731  values[18] = -16.0/3.0+t142+t143+t144-t145+t146-t147-t148-64.0/3.0*t27+64.0/3.0*t30;
732  values[19] = 4.0-4.0*xi-12.0*t2-4.0*eta+4.0*t5+12.0*t6-12.0*t7+12.0*t9+36.0*t10;
733  values[20] = -t132+t133+t137-t138;
734  values[21] = -t130+t135+t139-t140;
735 }
736 
737 // values of the derivatives in eta-eta direction
738 static void C_Q_UL4S_2D_DeriveEtaEta(double xi, double eta, double *values)
739 {
740  double t2, t3, t4, t6, t7, t8, t9, t11, t12, t14, t15, t16, t17, t18, t19, t20;
741  double t21, t22, t23, t24, t25, t26, t27, t28, t29, t30, t32, t33, t34, t35;
742  double t36, t39, t40, t41, t42, t43, t50, t52, t53, t54, t55, t56, t57, t58;
743  double t59, t60, t61, t62, t63, t64, t65, t67, t68, t69, t70, t71, t72, t73;
744  double t74, t75, t76, t82, t83, t89, t90, t95, t102, t103, t105, t106, t107;
745  double t108, t109, t117, t118, t119, t120, t121, t123, t125, t126, t127;
746  double t129, t130, t131, t132, t133, t134;
747 
748  t2 = xi*xi;
749  t3 = t2/2.0;
750  t4 = t2*xi;
751  t6 = xi*eta;
752  t7 = 4.0*t6;
753  t8 = t2*eta;
754  t9 = t4*eta;
755  t11 = 1.0-xi;
756  t12 = eta*eta;
757  t14 = -1.0/2.0+3.0/2.0*t12;
758  t15 = t11*t14;
759  t16 = 4.0/9.0*t15;
760  t17 = t11*t12;
761  t18 = 8.0/3.0*t17;
762  t19 = 1.0-t12;
763  t20 = t11*t19;
764  t21 = 2.0/3.0*t20;
765  t22 = 1.0-t2;
766  t23 = t22*t2;
767  t24 = 4.0/3.0*t23;
768  t25 = t12*t22;
769  t26 = 20.0/3.0*t25;
770  t27 = t19*t22;
771  t28 = 4.0/3.0*t27;
772  t29 = 2.0/9.0-7.0/18.0*xi+t3-t4/3.0-eta-t7-t8+6.0*t9+t16+t18-t21-t24-t26+t28;
773  t30 = 8.0/3.0*eta;
774  t32 = 8.0/3.0*t8;
775  t33 = 16.0*t9;
776  t34 = 16.0/3.0*t23;
777  t35 = 80.0/9.0*t25;
778  t36 = 16.0/9.0*t27;
779  t39 = 2.0*t4;
780  t40 = 6.0*eta;
781  t41 = 12.0*t6;
782  t42 = 6.0*t8;
783  t43 = 12.0*t9;
784  t50 = eta/3.0;
785  t52 = 2.0*t9;
786  t53 = 1.0+xi;
787  t54 = t53*t14;
788  t55 = 4.0/9.0*t54;
789  t56 = t53*t12;
790  t57 = 8.0/3.0*t56;
791  t58 = t53*t19;
792  t59 = 2.0/3.0*t58;
793  t60 = 20.0/9.0*t25;
794  t61 = 4.0/9.0*t27;
795  t62 = 2.0/9.0-5.0/18.0*xi+t3+t4+t50-7.0/3.0*t8-t52+t55+t57-t59-t24-t60+t61;
796  t63 = 8.0/9.0*t4;
797  t64 = 4.0/3.0*eta;
798  t65 = 4.0/3.0*t6;
799  t67 = 16.0/3.0*t9;
800  t68 = 16.0/9.0*t54;
801  t69 = 32.0/3.0*t56;
802  t70 = 8.0/3.0*t58;
803  t71 = 16.0/9.0*t23;
804  t72 = -8.0/9.0-t63-t64-t65+16.0/3.0*t8+t67-t68-t69+t70+t71+t35-t36;
805  t73 = 2.0/3.0*t4;
806  t74 = 2.0*eta;
807  t75 = 2.0*t8;
808  t76 = 4.0*t9;
809  t82 = 4.0/3.0+xi-t2-t73+t74+t7-t75-t76+8.0/3.0*t54+16.0*t56-4.0*t58-40.0/3.0*t25+8.0/3.0*t27;
810  t83 = 8.0/9.0*xi;
811  t89 = 4.0/9.0*t23;
812  t90 = 2.0/9.0+xi/6.0+t3+5.0/9.0*t4+t50+t65+5.0/3.0*t8+2.0/3.0*t9+t55+t57-t59-t89-t60+t61;
813  t95 = 16.0/9.0*xi;
814  t102 = 2.0/9.0+xi/18.0+t3-7.0/9.0*t4-eta+3.0*t8-t52+t16+t18-t21-t89-t26+t28;
815  t103 = 4.0*eta;
816  t105 = 16.0/9.0*t15;
817  t106 = 32.0/3.0*t17;
818  t107 = 8.0/3.0*t20;
819  t108 = 80.0/3.0*t25;
820  t109 = 16.0/3.0*t27;
821  t117 = 4.0/3.0-7.0/3.0*xi-t2+t39-t40-t41+t42+t43+8.0/3.0*t15+16.0*t17-4.0*t20-40.0*t25+8.0*t27;
822  t118 = -8.0/9.0+t95-t63+t103+t41-t33-t105-t106+t107+t71+t108-t109;
823  t119 = 32.0/9.0*xi;
824  t120 = 32.0/9.0*t4;
825  t121 = 32.0/3.0*eta;
826  t123 = 32.0/3.0*t8;
827  t125 = 64.0/9.0*t23;
828  t126 = 320.0/9.0*t25;
829  t127 = 64.0/9.0*t27;
830  t129 = 16.0/3.0*xi;
831  t130 = 16.0/3.0*t4;
832  t131 = 16.0*eta;
833  t132 = 32.0*t6;
834  t133 = 16.0*t8;
835  t134 = 32.0*t9;
836 
837  values[0] = t29;
838  values[1] = t30+16.0*t6-t32-t33+t34+t35-t36;
839  values[2] = 1.0-2.0*xi-t2+t39-t40-t41+t42+t43-8.0*t23;
840  values[3] = 8.0/3.0*xi-8.0/3.0*t4+t34;
841  values[4] = t62;
842  values[5] = t72;
843  values[6] = t82;
844  values[7] = -8.0/9.0-t83-t64-t7-t32-t68-t69+t70+t35-t36;
845  values[8] = t90;
846  values[9] = t83-t63+t71;
847  values[10] = 1.0+2.0/3.0*xi-t2-t73+t74+t7-t75-t76-8.0/3.0*t23;
848  values[11] = -t95+16.0/9.0*t4+t30-16.0/3.0*t6-t32+t67+t71+t35-t36;
849  values[12] = t102;
850  values[13] = -8.0/9.0+t83+t103+t7-8.0*t8-t105-t106+t107+t108-t109;
851  values[14] = t117;
852  values[15] = t118;
853  values[16] = -t119+t120-t121-128.0/3.0*t6+t123+128.0/3.0*t9-t125-t126+t127;
854  values[17] = t129-t130+t131+t132-t133-t134+160.0/3.0*t25-32.0/3.0*t27;
855  values[18] = t129-t130+t131+t132-t133-t134+32.0/3.0*t23;
856  values[19] = -2.0-4.0*xi+2.0*t2+4.0*t4-12.0*eta-24.0*t6+12.0*t8+24.0*t9;
857  values[20] = -t119+t120-t125;
858  values[21] = -t121+t123-t126+t127;
859 }
860 
861 // ***********************************************************************
862 
863 TBaseFunct2D *BF_C_Q_UL4S_2D_Obj = new TBaseFunct2D
864  (22, BF_C_Q_UL4S_2D, BFUnitSquare,
865  C_Q_UL4S_2D_Funct, C_Q_UL4S_2D_DeriveXi,
866  C_Q_UL4S_2D_DeriveEta, C_Q_UL4S_2D_DeriveXiXi,
867  C_Q_UL4S_2D_DeriveXiEta, C_Q_UL4S_2D_DeriveEtaEta, 4, 4,
868  0, NULL);
Definition: BaseFunct2D.h:27