15 static double NF_S_H_Q2_3D_Xi[] = { -1, 0, 1, -1, 0, 1, -1, 0, 1,
16 -1, 0, 1, -1, 0, 1, -1, 0, 1,
17 -1, 0, 1, -1, 0, 1, -1, 0, 1 };
18 static double NF_S_H_Q2_3D_Eta[] = { -1, -1, -1, 0, 0, 0, 1, 1, 1,
19 -1, -1, -1, 0, 0, 0, 1, 1, 1,
20 -1, -1, -1, 0, 0, 0, 1, 1, 1 };
21 static double NF_S_H_Q2_3D_Zeta[] = { -1, -1, -1, -1, -1, -1, -1, -1, -1,
22 0, 0, 0, 0, 0, 0, 0, 0, 0,
23 1, 1, 1, 1, 1, 1, 1, 1, 1 };
27 static double NF_S_H_Q2_3D_F0_Xi[] = {-0.77459666924148337703585307995647992, 0,
28 0.77459666924148337703585307995647992,
32 0.77459666924148337703585307995647992, 0,
33 -0.77459666924148337703585307995647992,
37 -0.77459666924148337703585307995647992, 0,
38 0.77459666924148337703585307995647992,
40 -0.77459666924148337703585307995647992, 0,
41 0.77459666924148337703585307995647992,
43 -0.77459666924148337703585307995647992, 0,
44 0.77459666924148337703585307995647992,
48 static double NF_S_H_Q2_3D_F0_Eta[] = {-1, -1, -1,
50 -0.77459666924148337703585307995647992, 0,
51 0.77459666924148337703585307995647992,
55 0.77459666924148337703585307995647992, 0,
56 -0.77459666924148337703585307995647992,
58 -0.77459666924148337703585307995647992,
59 -0.77459666924148337703585307995647992,
60 -0.77459666924148337703585307995647992,
64 0.77459666924148337703585307995647992,
65 0.77459666924148337703585307995647992,
66 0.77459666924148337703585307995647992,
70 static double NF_S_H_Q2_3D_F0_Zeta[] = { -1, -1, -1, -1, -1,
78 static double NF_S_H_Q2_3D_F1_Xi[] = { -1, -1, -1,
80 -0.77459666924148337703585307995647992, 0,
81 0.77459666924148337703585307995647992,
85 0.77459666924148337703585307995647992, 0,
86 -0.77459666924148337703585307995647992,
88 -0.77459666924148337703585307995647992,
89 -0.77459666924148337703585307995647992,
90 -0.77459666924148337703585307995647992,
94 0.77459666924148337703585307995647992,
95 0.77459666924148337703585307995647992,
96 0.77459666924148337703585307995647992,
100 static double NF_S_H_Q2_3D_F1_Eta[] = { -1, -1, -1, -1, -1,
104 -1, -1, -1, -1, -1 };
106 static double NF_S_H_Q2_3D_F1_Zeta[] = {
107 -0.77459666924148337703585307995647992, 0,
108 0.77459666924148337703585307995647992,
112 0.77459666924148337703585307995647992, 0,
113 -0.77459666924148337703585307995647992,
117 -0.77459666924148337703585307995647992, 0,
118 0.77459666924148337703585307995647992,
120 -0.77459666924148337703585307995647992, 0,
121 0.77459666924148337703585307995647992,
123 -0.77459666924148337703585307995647992, 0,
124 0.77459666924148337703585307995647992,
130 static double NF_S_H_Q2_3D_F2_Xi[] = { 1, 1, 1, 1, 1,
136 static double NF_S_H_Q2_3D_F2_Eta[] = { -1, -1, -1,
138 -0.77459666924148337703585307995647992, 0,
139 0.77459666924148337703585307995647992,
143 0.77459666924148337703585307995647992, 0,
144 -0.77459666924148337703585307995647992,
146 -0.77459666924148337703585307995647992,
147 -0.77459666924148337703585307995647992,
148 -0.77459666924148337703585307995647992,
152 0.77459666924148337703585307995647992,
153 0.77459666924148337703585307995647992,
154 0.77459666924148337703585307995647992,
158 static double NF_S_H_Q2_3D_F2_Zeta[] = { -0.77459666924148337703585307995647992, 0,
159 0.77459666924148337703585307995647992,
163 0.77459666924148337703585307995647992, 0,
164 -0.77459666924148337703585307995647992,
168 -0.77459666924148337703585307995647992, 0,
169 0.77459666924148337703585307995647992,
171 -0.77459666924148337703585307995647992, 0,
172 0.77459666924148337703585307995647992,
174 -0.77459666924148337703585307995647992, 0,
175 0.77459666924148337703585307995647992,
181 static double NF_S_H_Q2_3D_F3_Xi[] = { 1, 1, 1,
183 0.77459666924148337703585307995647992, 0,
184 -0.77459666924148337703585307995647992,
188 -0.77459666924148337703585307995647992, 0,
189 0.77459666924148337703585307995647992,
191 0.77459666924148337703585307995647992,
192 0.77459666924148337703585307995647992,
193 0.77459666924148337703585307995647992,
197 -0.77459666924148337703585307995647992,
198 -0.77459666924148337703585307995647992,
199 -0.77459666924148337703585307995647992,
203 static double NF_S_H_Q2_3D_F3_Eta[] = { 1, 1, 1, 1, 1,
209 static double NF_S_H_Q2_3D_F3_Zeta[] = { -0.77459666924148337703585307995647992, 0,
210 0.77459666924148337703585307995647992,
214 0.77459666924148337703585307995647992, 0,
215 -0.77459666924148337703585307995647992,
219 -0.77459666924148337703585307995647992, 0,
220 0.77459666924148337703585307995647992,
222 -0.77459666924148337703585307995647992, 0,
223 0.77459666924148337703585307995647992,
225 -0.77459666924148337703585307995647992, 0,
226 0.77459666924148337703585307995647992,
234 static double NF_S_H_Q2_3D_F4_Xi[] = { -1, -1, -1, -1, -1,
238 -1, -1, -1, -1, -1 };
240 static double NF_S_H_Q2_3D_F4_Eta[] = { -0.77459666924148337703585307995647992, 0,
241 0.77459666924148337703585307995647992,
245 0.77459666924148337703585307995647992, 0,
246 -0.77459666924148337703585307995647992,
250 -0.77459666924148337703585307995647992, 0,
251 0.77459666924148337703585307995647992,
253 -0.77459666924148337703585307995647992, 0,
254 0.77459666924148337703585307995647992,
256 -0.77459666924148337703585307995647992, 0,
257 0.77459666924148337703585307995647992,
261 static double NF_S_H_Q2_3D_F4_Zeta[] = { -1, -1, -1,
263 -0.77459666924148337703585307995647992, 0,
264 0.77459666924148337703585307995647992,
268 0.77459666924148337703585307995647992, 0,
269 -0.77459666924148337703585307995647992,
271 -0.77459666924148337703585307995647992,
272 -0.77459666924148337703585307995647992,
273 -0.77459666924148337703585307995647992,
277 0.77459666924148337703585307995647992,
278 0.77459666924148337703585307995647992,
279 0.77459666924148337703585307995647992,
286 static double NF_S_H_Q2_3D_F5_Xi[] = { -1, -1, -1,
288 -0.77459666924148337703585307995647992, 0,
289 0.77459666924148337703585307995647992,
293 0.77459666924148337703585307995647992, 0,
294 -0.77459666924148337703585307995647992,
296 -0.77459666924148337703585307995647992,
297 -0.77459666924148337703585307995647992,
298 -0.77459666924148337703585307995647992,
302 0.77459666924148337703585307995647992,
303 0.77459666924148337703585307995647992,
304 0.77459666924148337703585307995647992,
308 static double NF_S_H_Q2_3D_F5_Eta[] = { -0.77459666924148337703585307995647992, 0,
309 0.77459666924148337703585307995647992,
313 0.77459666924148337703585307995647992, 0,
314 -0.77459666924148337703585307995647992,
318 -0.77459666924148337703585307995647992, 0,
319 0.77459666924148337703585307995647992,
321 -0.77459666924148337703585307995647992, 0,
322 0.77459666924148337703585307995647992,
324 -0.77459666924148337703585307995647992, 0,
325 0.77459666924148337703585307995647992,
329 static double NF_S_H_Q2_3D_F5_Zeta[] = { 1, 1, 1, 1, 1,
335 static double *NF_S_H_Q2_3D_XiArray[6] = {
341 NF_S_H_Q2_3D_F5_Xi };
343 static double *NF_S_H_Q2_3D_EtaArray[6] = {
349 NF_S_H_Q2_3D_F5_Eta };
351 static double *NF_S_H_Q2_3D_ZetaArray[6] = {
352 NF_S_H_Q2_3D_F0_Zeta,
353 NF_S_H_Q2_3D_F1_Zeta,
354 NF_S_H_Q2_3D_F2_Zeta,
355 NF_S_H_Q2_3D_F3_Zeta,
356 NF_S_H_Q2_3D_F4_Zeta,
357 NF_S_H_Q2_3D_F5_Zeta };
359 static double NF_S_H_Q2_3D_T[25] = { 0.11270166537925831148207346002176004,
360 0.5, 0.88729833462074168851792653997823996, 1.0,
361 1.0, 1.0, 0.88729833462074168851792653997823996,
362 0.5, 0.11270166537925831148207346002176004,
364 0.11270166537925831148207346002176004, 0.5, 0.88729833462074168851792653997823996,
365 0.11270166537925831148207346002176004, 0.5, 0.88729833462074168851792653997823996,
366 0.11270166537925831148207346002176004, 0.5, 0.88729833462074168851792653997823996,
369 static double NF_S_H_Q2_3D_S[25] = { 0, 0, 0,
370 0.11270166537925831148207346002176004, 0.5, 0.88729833462074168851792653997823996,
372 0.88729833462074168851792653997823996, 0.5, 0.11270166537925831148207346002176004,
373 0.11270166537925831148207346002176004, 0.11270166537925831148207346002176004,
374 0.112701665379258311482073460021760040, 0.5, 0.5,
375 0.5, 0.88729833462074168851792653997823996, 0.88729833462074168851792653997823996,
376 0.88729833462074168851792653997823996, 0, 0,
380 double *PointValues,
double *Functionals)
382 memcpy(Functionals, PointValues, 27*SizeOfDouble);
386 double *PointValues,
double *Functionals)
388 double f0,f1,f2,f3,f4,f5,f6,f7,f8;
389 static double weights[3] = { 0.5555555555555555555555555555555556,
390 0.88888888888888888888888888888888889,
391 0.5555555555555555555555555555555556 };
393 f0 = PointValues[21];
394 f1 = PointValues[22];
395 f2 = PointValues[23];
396 f3 = PointValues[24];
399 f4 = ( weights[0]*PointValues[0]
400 +weights[1]*PointValues[1]
401 +weights[2]*PointValues[2]) * 0.5;
402 f5 = ( weights[0]*PointValues[3]
403 +weights[1]*PointValues[4]
404 +weights[2]*PointValues[5]) * 0.5;
405 f6 = ( weights[0]*PointValues[6]
406 +weights[1]*PointValues[7]
407 +weights[2]*PointValues[8]) * 0.5;
408 f7 = ( weights[0]*PointValues[9]
409 +weights[1]*PointValues[10]
410 +weights[2]*PointValues[11]) * 0.5;
413 f8 = ( weights[0]*weights[0]*PointValues[12]
414 +weights[1]*weights[0]*PointValues[13]
415 +weights[2]*weights[0]*PointValues[14]
416 +weights[0]*weights[1]*PointValues[15]
417 +weights[1]*weights[1]*PointValues[16]
418 +weights[2]*weights[1]*PointValues[17]
419 +weights[0]*weights[2]*PointValues[18]
420 +weights[1]*weights[2]*PointValues[19]
421 +weights[2]*weights[2]*PointValues[20])*0.25;
428 Functionals[1]=-0.25*(f0+f1)+1.5*f4;
429 Functionals[5]=-0.25*(f1+f2)+1.5*f5;
430 Functionals[7]=-0.25*(f2+f3)+1.5*f6;
431 Functionals[3]=-0.25*(f0+f3)+1.5*f7;
432 Functionals[4]=0.0625*(f0+f1+f2+f3)-0.375*(f4+f5+f6+f7)
437 static int NF_S_H_Q2_3D_N_AllFunctionals = 27;
438 static int NF_S_H_Q2_3D_N_PointsAll = 27;
439 static int NF_S_H_Q2_3D_N_FaceFunctionals[] = { 9, 9, 9, 9, 9, 9 };
440 static int NF_S_H_Q2_3D_N_PointsFace[] = { 25, 25, 25, 25, 25, 25 };
443 (NF_S_H_Q2_3D, NF_S_H_Q2_3D_N_AllFunctionals,
444 NF_S_H_Q2_3D_N_FaceFunctionals, NF_S_H_Q2_3D_N_PointsAll,
445 NF_S_H_Q2_3D_N_PointsFace,
446 NF_S_H_Q2_3D_Xi, NF_S_H_Q2_3D_Eta, NF_S_H_Q2_3D_Zeta,
447 NF_S_H_Q2_3D_XiArray, NF_S_H_Q2_3D_EtaArray,
448 NF_S_H_Q2_3D_ZetaArray,
449 NF_S_H_Q2_3D_T, NF_S_H_Q2_3D_S,
450 NF_S_H_Q2_3D_EvalAll, NF_S_H_Q2_3D_EvalFace);
Definition: NodalFunctional3D.h:21
store cells in an array, used by cell iterators
Definition: Collection.h:18
information for finite element data structure
Definition: BaseCell.h:25