libMesh
Loading...
Searching...
No Matches
inf_fe_lagrange_eval.C
Go to the documentation of this file.
1// The libMesh Finite Element Library.
2// Copyright (C) 2002-2026 Benjamin S. Kirk, John W. Peterson, Roy H. Stogner
3
4// This library is free software; you can redistribute it and/or
5// modify it under the terms of the GNU Lesser General Public
6// License as published by the Free Software Foundation; either
7// version 2.1 of the License, or (at your option) any later version.
8
9// This library is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12// Lesser General Public License for more details.
13
14// You should have received a copy of the GNU Lesser General Public
15// License along with this library; if not, write to the Free Software
16// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
18
19// Local Includes
20#include "libmesh/libmesh_config.h"
21#ifdef LIBMESH_ENABLE_INFINITE_ELEMENTS
22#include "libmesh/inf_fe.h"
23
24namespace libMesh
25{
26
27// Anonymous namespace for local helper functions
28namespace {
29
30Real lagrange_eval(Real v, Order o_radial, unsigned i)
31{
32 libmesh_assert (-1.-1.e-5 <= v && v < 1.);
33
34 switch (o_radial)
35 {
36 case CONSTANT:
37 switch (i)
38 {
39 case 0:
40 return 1.;
41
42 default:
43 libmesh_error_msg("bad index i = " << i);
44 }
45
46
47 case FIRST:
48 switch (i)
49 {
50 case 0:
51 return -1.*v;
52
53 case 1:
54 return v+1.;
55
56 default:
57 libmesh_error_msg("bad index i = " << i);
58 }
59
60
61 case SECOND:
62 switch (i)
63 {
64 case 0:
65 return 2.*v*(v+.5);
66
67 case 1:
68 return 2.*(v+1.)*(v+.5);
69
70 case 2:
71 return -4.*(v+1.)*v;
72
73 default:
74 libmesh_error_msg("bad index i = " << i);
75 }
76
77
78 case THIRD:
79 switch (i)
80 {
81 case 0:
82 return -4.5*v*(v+.6666666666666667)*(v+.3333333333333333);
83
84 case 1:
85 return 4.5*(v+1.)*(v+.6666666666666667)*(v+.3333333333333333);
86
87 case 2:
88 return 13.5*(v+1.)*v*(v+.3333333333333333);
89
90 case 3:
91 return -13.5*(v+1.)*v*(v+.6666666666666667);
92
93 default:
94 libmesh_error_msg("bad index i = " << i);
95 }
96
97
98 case FOURTH:
99 switch (i)
100 {
101 case 0:
102 return 10.66666666666667*v*(v+.75)*(v+.5)*(v+.25);
103
104 case 1:
105 return 10.66666666666667*(v+1.)*(v+.75)*(v+.5)*(v+.25);
106
107 case 2:
108 return -42.66666666666667*(v+1.)*v*(v+.5)*(v+.25);
109
110 case 3:
111 return 64.*(v+1.)*v*(v+.75)*(v+.25);
112
113 case 4:
114 return -42.66666666666667*(v+1.)*v*(v+.75)*(v+.5);
115
116 default:
117 libmesh_error_msg("bad index i = " << i);
118 }
119
120
121 case FIFTH:
122 switch (i)
123 {
124 case 0:
125 return -26.04166666666667*v*(v+.8)*(v+.6)*(v+.4)*(v+.2);
126
127 case 1:
128 return 26.04166666666667*(v+1.)*(v+.8)*(v+.6)*(v+.4)*(v+.2);
129
130 case 2:
131 return 130.2083333333333*(v+1.)*v*(v+.6)*(v+.4)*(v+.2);
132
133 case 3:
134 return -260.4166666666667*(v+1.)*v*(v+.8)*(v+.4)*(v+.2);
135
136 case 4:
137 return 260.4166666666667*(v+1.)*v*(v+.8)*(v+.6)*(v+.2);
138
139 case 5:
140 return -130.2083333333333*(v+1.)*v*(v+.8)*(v+.6)*(v+.4);
141
142 default:
143 libmesh_error_msg("bad index i = " << i);
144 }
145
146
147 case SIXTH:
148 switch (i)
149 {
150 case 0:
151 return 64.8*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667);
152
153 case 1:
154 return 64.8*(v+1.)*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667);
155
156 case 2:
157 return -388.8*(v+1.)*v*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667);
158
159 case 3:
160 return 972.*(v+1.)*v*(v+.8333333333333333)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667);
161
162 case 4:
163 return -1296.*(v+1.)*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.3333333333333333)*(v+.1666666666666667);
164
165 case 5:
166 return 972.*(v+1.)*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.1666666666666667);
167
168 case 6:
169 return -388.8*(v+1.)*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333);
170
171 default:
172 libmesh_error_msg("bad index i = " << i);
173 }
174
175
176 case SEVENTH:
177 switch (i)
178 {
179 case 0:
180 return -163.401388888889*v*
181 (v+.8571428571428571)*
182 (v+.7142857142857143)*
183 (v+.5714285714285714)*
184 (v+.4285714285714286)*
185 (v+.2857142857142857)*
186 (v+.1428571428571429);
187
188 case 1:
189 return 163.4013888888888*
190 (v+1.)*
191 (v+.8571428571428571)*
192 (v+.7142857142857143)*
193 (v+.5714285714285714)*
194 (v+.4285714285714286)*
195 (v+.2857142857142857)*
196 (v+.1428571428571429);
197
198 case 2:
199 return 1143.809722222222*
200 (v+1.)*v*
201 (v+.7142857142857143)*
202 (v+.5714285714285714)*
203 (v+.4285714285714286)*
204 (v+.2857142857142857)*
205 (v+.1428571428571429);
206
207 case 3:
208 return -3431.429166666665*
209 (v+1.)*v*
210 (v+.8571428571428571)*
211 (v+.5714285714285714)*
212 (v+.4285714285714286)*
213 (v+.2857142857142857)*
214 (v+.1428571428571429);
215
216 case 4:
217 return 5719.048611111112*
218 (v+1.)*v*
219 (v+.8571428571428571)*
220 (v+.7142857142857143)*
221 (v+.4285714285714286)*
222 (v+.2857142857142857)*
223 (v+.1428571428571429);
224
225 case 5:
226 return -5719.048611111112*
227 (v+1.)*v*
228 (v+.8571428571428571)*
229 (v+.7142857142857143)*
230 (v+.5714285714285714)*
231 (v+.2857142857142857)*
232 (v+.1428571428571429);
233
234 case 6:
235 return 3431.429166666666*
236 (v+1.)*v*
237 (v+.8571428571428571)*
238 (v+.7142857142857143)*
239 (v+.5714285714285714)*
240 (v+.4285714285714286)*
241 (v+.1428571428571429);
242
243 case 7:
244 return -1143.809722222223*
245 (v+1.)*v*
246 (v+.8571428571428571)*
247 (v+.7142857142857143)*
248 (v+.5714285714285714)*
249 (v+.4285714285714286)*
250 (v+.2857142857142857);
251
252 default:
253 libmesh_error_msg("bad index i = " << i);
254 }
255
256
257 case EIGHTH:
258 switch (i)
259 {
260 case 0:
261 return 416.1015873015873*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125);
262
263 case 1:
264 return 416.1015873015873*(v+1.)*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125);
265
266 case 2:
267 return -3328.812698412698*(v+1.)*v*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125);
268
269 case 3:
270 return 11650.84444444444*(v+1.)*v*(v+.875)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125);
271
272 case 4:
273 return -23301.68888888889*(v+1.)*v*(v+.875)*(v+.75)*(v+.5)*(v+.375)*(v+.25)*(v+.125);
274
275 case 5:
276 return 29127.11111111111*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.375)*(v+.25)*(v+.125);
277
278 case 6:
279 return -23301.68888888889*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.25)*(v+.125);
280
281 case 7:
282 return 11650.84444444444*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.125);
283
284 case 8:
285 return -3328.812698412698*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25);
286
287 default:
288 libmesh_error_msg("bad index i = " << i);
289 }
290
291
292 case NINTH:
293 switch (i)
294 {
295 case 0:
296 return -1067.627008928571*v*
297 (v+.8888888888888889)*
298 (v+.7777777777777778)*
299 (v+.6666666666666667)*
300 (v+.5555555555555556)*
301 (v+.4444444444444444)*
302 (v+.3333333333333333)*
303 (v+.2222222222222222)*
304 (v+.1111111111111111);
305
306 case 1:
307 return 1067.627008928571*
308 (v+1.)*
309 (v+.8888888888888889)*
310 (v+.7777777777777778)*
311 (v+.6666666666666667)*
312 (v+.5555555555555556)*
313 (v+.4444444444444444)*
314 (v+.3333333333333333)*
315 (v+.2222222222222222)*
316 (v+.1111111111111111);
317
318 case 2:
319 return 9608.643080357158*
320 (v+1.)*v*
321 (v+.7777777777777778)*
322 (v+.6666666666666667)*
323 (v+.5555555555555556)*
324 (v+.4444444444444444)*
325 (v+.3333333333333333)*
326 (v+.2222222222222222)*
327 (v+.1111111111111111);
328
329 case 3:
330 return -38434.57232142862*
331 (v+1.)*v*
332 (v+.8888888888888889)*
333 (v+.6666666666666667)*
334 (v+.5555555555555556)*
335 (v+.4444444444444444)*
336 (v+.3333333333333333)*
337 (v+.2222222222222222)*
338 (v+.1111111111111111);
339
340 case 4:
341 return 89680.66874999999*
342 (v+1.)*v*
343 (v+.8888888888888889)*
344 (v+.7777777777777778)*
345 (v+.5555555555555556)*
346 (v+.4444444444444444)*
347 (v+.3333333333333333)*
348 (v+.2222222222222222)*
349 (v+.1111111111111111);
350
351 case 5:
352 return -134521.0031249999*
353 (v+1.)*v*
354 (v+.8888888888888889)*
355 (v+.7777777777777778)*
356 (v+.6666666666666667)*
357 (v+.4444444444444444)*
358 (v+.3333333333333333)*
359 (v+.2222222222222222)*
360 (v+.1111111111111111);
361
362 case 6:
363 return 134521.003125*
364 (v+1.)*v*
365 (v+.8888888888888889)*
366 (v+.7777777777777778)*
367 (v+.6666666666666667)*
368 (v+.5555555555555556)*
369 (v+.3333333333333333)*
370 (v+.2222222222222222)*
371 (v+.1111111111111111);
372
373 case 7:
374 return -89680.66875000004*
375 (v+1.)*v*
376 (v+.8888888888888889)*
377 (v+.7777777777777778)*
378 (v+.6666666666666667)*
379 (v+.5555555555555556)*
380 (v+.4444444444444444)*
381 (v+.2222222222222222)*
382 (v+.1111111111111111);
383
384 case 8:
385 return 38434.57232142857*
386 (v+1.)*v*
387 (v+.8888888888888889)*
388 (v+.7777777777777778)*
389 (v+.6666666666666667)*
390 (v+.5555555555555556)*
391 (v+.4444444444444444)*
392 (v+.3333333333333333)*
393 (v+.1111111111111111);
394
395 case 9:
396 return -9608.643080357148*
397 (v+1.)*v*
398 (v+.8888888888888889)*
399 (v+.7777777777777778)*
400 (v+.6666666666666667)*
401 (v+.5555555555555556)*
402 (v+.4444444444444444)*
403 (v+.3333333333333333)*
404 (v+.2222222222222222);
405
406 default:
407 libmesh_error_msg("bad index i = " << i);
408 }
409
410
411 case TENTH:
412 switch (i)
413 {
414 case 0:
415 return 2755.73192239859*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1);
416
417 case 1:
418 return 2755.73192239859*(v+1.)*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1);
419
420 case 2:
421 return -27557.31922398588*(v+1.)*v*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1);
422
423 case 3:
424 return 124007.9365079364*(v+1.)*v*(v+.9)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1);
425
426 case 4:
427 return -330687.8306878306*(v+1.)*v*(v+.9)*(v+.8)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1);
428
429 case 5:
430 return 578703.7037037039*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1);
431
432 case 6:
433 return -694444.4444444449*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.4)*(v+.3)*(v+.2)*(v+.1);
434
435 case 7:
436 return 578703.7037037039*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.3)*(v+.2)*(v+.1);
437
438 case 8:
439 return -330687.8306878306*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.2)*(v+.1);
440
441 case 9:
442 return 124007.9365079364*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.1);
443
444 case 10:
445 return -27557.31922398588*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2);
446
447 default:
448 libmesh_error_msg("bad index i = " << i);
449 }
450
451
452 case ELEVENTH:
453 switch (i)
454 {
455 case 0:
456 return -7147.658895778214*v*
457 (v+.9090909090909091)*
458 (v+.8181818181818182)*
459 (v+.7272727272727273)*
460 (v+.6363636363636364)*
461 (v+.5454545454545455)*
462 (v+.4545454545454545)*
463 (v+.3636363636363636)*
464 (v+.2727272727272727)*
465 (v+.1818181818181818)*
466 (v+.9090909090909091e-1);
467
468 case 1:
469 return 7147.65889577822*
470 (v+1.)*
471 (v+.9090909090909091)*
472 (v+.8181818181818182)*
473 (v+.7272727272727273)*
474 (v+.6363636363636364)*
475 (v+.5454545454545455)*
476 (v+.4545454545454545)*
477 (v+.3636363636363636)*
478 (v+.2727272727272727)*
479 (v+.1818181818181818)*
480 (v+.9090909090909091e-1);
481
482 case 2:
483 return 78624.2478535604*
484 (v+1.)*v*
485 (v+.8181818181818182)*
486 (v+.7272727272727273)*
487 (v+.6363636363636364)*
488 (v+.5454545454545455)*
489 (v+.4545454545454545)*
490 (v+.3636363636363636)*
491 (v+.2727272727272727)*
492 (v+.1818181818181818)*
493 (v+.9090909090909091e-1);
494
495 case 3:
496 return -393121.2392678026*
497 (v+1.)*v*
498 (v+.9090909090909091)*
499 (v+.7272727272727273)*
500 (v+.6363636363636364)*
501 (v+.5454545454545455)*
502 (v+.4545454545454545)*
503 (v+.3636363636363636)*
504 (v+.2727272727272727)*
505 (v+.1818181818181818)*
506 (v+.9090909090909091e-1);
507
508 case 4:
509 return 1179363.717803407*
510 (v+1.)*v*
511 (v+.9090909090909091)*
512 (v+.8181818181818182)*
513 (v+.6363636363636364)*
514 (v+.5454545454545455)*
515 (v+.4545454545454545)*
516 (v+.3636363636363636)*
517 (v+.2727272727272727)*
518 (v+.1818181818181818)*
519 (v+.9090909090909091e-1);
520
521 case 5:
522 return -2358727.435606812*
523 (v+1.)*v*
524 (v+.9090909090909091)*
525 (v+.8181818181818182)*
526 (v+.7272727272727273)*
527 (v+.5454545454545455)*
528 (v+.4545454545454545)*
529 (v+.3636363636363636)*
530 (v+.2727272727272727)*
531 (v+.1818181818181818)*
532 (v+.9090909090909091e-1);
533
534 case 6:
535 return 3302218.409849539*
536 (v+1.)*v*
537 (v+.9090909090909091)*
538 (v+.8181818181818182)*
539 (v+.7272727272727273)*
540 (v+.6363636363636364)*
541 (v+.4545454545454545)*
542 (v+.3636363636363636)*
543 (v+.2727272727272727)*
544 (v+.1818181818181818)*
545 (v+.9090909090909091e-1);
546
547 case 7:
548 return -3302218.40984954*
549 (v+1.)*v*
550 (v+.9090909090909091)*
551 (v+.8181818181818182)*
552 (v+.7272727272727273)*
553 (v+.6363636363636364)*
554 (v+.5454545454545455)*
555 (v+.3636363636363636)*
556 (v+.2727272727272727)*
557 (v+.1818181818181818)*
558 (v+.9090909090909091e-1);
559
560 case 8:
561 return 2358727.435606811*
562 (v+1.)*v*
563 (v+.9090909090909091)*
564 (v+.8181818181818182)*
565 (v+.7272727272727273)*
566 (v+.6363636363636364)*
567 (v+.5454545454545455)*
568 (v+.4545454545454545)*
569 (v+.2727272727272727)*
570 (v+.1818181818181818)*
571 (v+.9090909090909091e-1);
572
573 case 9:
574 return -1179363.717803406*
575 (v+1.)*v*
576 (v+.9090909090909091)*
577 (v+.8181818181818182)*
578 (v+.7272727272727273)*
579 (v+.6363636363636364)*
580 (v+.5454545454545455)*
581 (v+.4545454545454545)*
582 (v+.3636363636363636)*
583 (v+.1818181818181818)*
584 (v+.9090909090909091e-1);
585
586 case 10:
587 return 393121.2392678019*
588 (v+1.)*v*
589 (v+.9090909090909091)*
590 (v+.8181818181818182)*
591 (v+.7272727272727273)*
592 (v+.6363636363636364)*
593 (v+.5454545454545455)*
594 (v+.4545454545454545)*
595 (v+.3636363636363636)*
596 (v+.2727272727272727)*
597 (v+.9090909090909091e-1);
598
599 case 11:
600 return -78624.24785356052*
601 (v+1.)*v*
602 (v+.9090909090909091)*
603 (v+.8181818181818182)*
604 (v+.7272727272727273)*
605 (v+.6363636363636364)*
606 (v+.5454545454545455)*
607 (v+.4545454545454545)*
608 (v+.3636363636363636)*
609 (v+.2727272727272727)*
610 (v+.1818181818181818);
611
612 default:
613 libmesh_error_msg("bad index i = " << i);
614 }
615
616
617 case TWELFTH:
618 switch (i)
619 {
620 case 0:
621 return 18613.92623376623*v*
622 (v+.9166666666666667)*
623 (v+.8333333333333333)*
624 (v+.75)*
625 (v+.6666666666666667)*
626 (v+.5833333333333333)*
627 (v+.5)*
628 (v+.4166666666666667)*
629 (v+.3333333333333333)*
630 (v+.25)*
631 (v+.1666666666666667)*
632 (v+.8333333333333333e-1);
633
634 case 1:
635 return 18613.92623376623*
636 (v+1.)*
637 (v+.9166666666666667)*
638 (v+.8333333333333333)*
639 (v+.75)*
640 (v+.6666666666666667)*
641 (v+.5833333333333333)*
642 (v+.5)*
643 (v+.4166666666666667)*
644 (v+.3333333333333333)*
645 (v+.25)*
646 (v+.1666666666666667)*
647 (v+.8333333333333333e-1);
648
649 case 2:
650 return -223367.1148051951*
651 (v+1.)*v*
652 (v+.8333333333333333)*
653 (v+.75)*
654 (v+.6666666666666667)*
655 (v+.5833333333333333)*
656 (v+.5)*
657 (v+.4166666666666667)*
658 (v+.3333333333333333)*
659 (v+.25)*
660 (v+.1666666666666667)*
661 (v+.8333333333333333e-1);
662
663 case 3:
664 return 1228519.131428571*
665 (v+1.)*v*
666 (v+.9166666666666667)*
667 (v+.75)*
668 (v+.6666666666666667)*
669 (v+.5833333333333333)*
670 (v+.5)*
671 (v+.4166666666666667)*
672 (v+.3333333333333333)*
673 (v+.25)*
674 (v+.1666666666666667)*
675 (v+.8333333333333333e-1);
676
677 case 4:
678 return -4095063.771428572*
679 (v+1.)*v*
680 (v+.9166666666666667)*
681 (v+.8333333333333333)*
682 (v+.6666666666666667)*
683 (v+.5833333333333333)*
684 (v+.5)*
685 (v+.4166666666666667)*
686 (v+.3333333333333333)*
687 (v+.25)*
688 (v+.1666666666666667)*
689 (v+.8333333333333333e-1);
690
691 case 5:
692 return 9213893.485714271*
693 (v+1.)*v*
694 (v+.9166666666666667)*
695 (v+.8333333333333333)*
696 (v+.75)*
697 (v+.5833333333333333)*
698 (v+.5)*
699 (v+.4166666666666667)*
700 (v+.3333333333333333)*
701 (v+.25)*
702 (v+.1666666666666667)*
703 (v+.8333333333333333e-1);
704
705 case 6:
706 return -14742229.57714284*
707 (v+1.)*v*
708 (v+.9166666666666667)*
709 (v+.8333333333333333)*
710 (v+.75)*
711 (v+.6666666666666667)*
712 (v+.5)*
713 (v+.4166666666666667)*
714 (v+.3333333333333333)*
715 (v+.25)*
716 (v+.1666666666666667)*
717 (v+.8333333333333333e-1);
718
719 case 7:
720 return 17199267.84*
721 (v+1.)*v*
722 (v+.9166666666666667)*
723 (v+.8333333333333333)*
724 (v+.75)*
725 (v+.6666666666666667)*
726 (v+.5833333333333333)*
727 (v+.4166666666666667)*
728 (v+.3333333333333333)*
729 (v+.25)*
730 (v+.1666666666666667)*
731 (v+.8333333333333333e-1);
732
733 case 8:
734 return -14742229.57714286*
735 (v+1.)*v*
736 (v+.9166666666666667)*
737 (v+.8333333333333333)*
738 (v+.75)*
739 (v+.6666666666666667)*
740 (v+.5833333333333333)*
741 (v+.5)*
742 (v+.3333333333333333)*
743 (v+.25)*
744 (v+.1666666666666667)*
745 (v+.8333333333333333e-1);
746
747 case 9:
748 return 9213893.485714291*
749 (v+1.)*v*
750 (v+.9166666666666667)*
751 (v+.8333333333333333)*
752 (v+.75)*
753 (v+.6666666666666667)*
754 (v+.5833333333333333)*
755 (v+.5)*
756 (v+.4166666666666667)*
757 (v+.25)*
758 (v+.1666666666666667)*
759 (v+.8333333333333333e-1);
760
761 case 10:
762 return -4095063.77142857*
763 (v+1.)*v*
764 (v+.9166666666666667)*
765 (v+.8333333333333333)*
766 (v+.75)*
767 (v+.6666666666666667)*
768 (v+.5833333333333333)*
769 (v+.5)*
770 (v+.4166666666666667)*
771 (v+.3333333333333333)*
772 (v+.1666666666666667)*
773 (v+.8333333333333333e-1);
774
775 case 11:
776 return 1228519.131428571*
777 (v+1.)*v*
778 (v+.9166666666666667)*
779 (v+.8333333333333333)*
780 (v+.75)*
781 (v+.6666666666666667)*
782 (v+.5833333333333333)*
783 (v+.5)*
784 (v+.4166666666666667)*
785 (v+.3333333333333333)*
786 (v+.25)*
787 (v+.8333333333333333e-1);
788
789 case 12:
790 return -223367.1148051951*
791 (v+1.)*v*
792 (v+.9166666666666667)*
793 (v+.8333333333333333)*
794 (v+.75)*
795 (v+.6666666666666667)*
796 (v+.5833333333333333)*
797 (v+.5)*
798 (v+.4166666666666667)*
799 (v+.3333333333333333)*
800 (v+.25)*
801 (v+.1666666666666667);
802
803 default:
804 libmesh_error_msg("bad index i = " << i);
805 }
806
807
808 case THIRTEENTH:
809 switch (i)
810 {
811 case 0:
812 return -48638.84613847011*v*
813 (v+.9230769230769231)*
814 (v+.8461538461538462)*
815 (v+.7692307692307692)*
816 (v+.6923076923076923)*
817 (v+.6153846153846154)*
818 (v+.5384615384615385)*
819 (v+.4615384615384615)*
820 (v+.3846153846153846)*
821 (v+.3076923076923077)*
822 (v+.2307692307692308)*
823 (v+.1538461538461538)*
824 (v+.7692307692307692e-1);
825
826 case 1:
827 return 48638.84613847013*
828 (v+1.)*
829 (v+.9230769230769231)*
830 (v+.8461538461538462)*
831 (v+.7692307692307692)*
832 (v+.6923076923076923)*
833 (v+.6153846153846154)*
834 (v+.5384615384615385)*
835 (v+.4615384615384615)*
836 (v+.3846153846153846)*
837 (v+.3076923076923077)*
838 (v+.2307692307692308)*
839 (v+.1538461538461538)*
840 (v+.7692307692307692e-1);
841
842 case 2:
843 return 632304.9998001099*
844 (v+1.)*v*
845 (v+.8461538461538462)*
846 (v+.7692307692307692)*
847 (v+.6923076923076923)*
848 (v+.6153846153846154)*
849 (v+.5384615384615385)*
850 (v+.4615384615384615)*
851 (v+.3846153846153846)*
852 (v+.3076923076923077)*
853 (v+.2307692307692308)*
854 (v+.1538461538461538)*
855 (v+.7692307692307692e-1);
856
857 case 3:
858 return -3793829.998800662*
859 (v+1.)*v*
860 (v+.9230769230769231)*
861 (v+.7692307692307692)*
862 (v+.6923076923076923)*
863 (v+.6153846153846154)*
864 (v+.5384615384615385)*
865 (v+.4615384615384615)*
866 (v+.3846153846153846)*
867 (v+.3076923076923077)*
868 (v+.2307692307692308)*
869 (v+.1538461538461538)*
870 (v+.7692307692307692e-1);
871
872 case 4:
873 return 13910709.99560246*
874 (v+1.)*v*
875 (v+.9230769230769231)*
876 (v+.8461538461538462)*
877 (v+.6923076923076923)*
878 (v+.6153846153846154)*
879 (v+.5384615384615385)*
880 (v+.4615384615384615)*
881 (v+.3846153846153846)*
882 (v+.3076923076923077)*
883 (v+.2307692307692308)*
884 (v+.1538461538461538)*
885 (v+.7692307692307692e-1);
886
887 case 5:
888 return -34776774.98900616*
889 (v+1.)*v*
890 (v+.9230769230769231)*
891 (v+.8461538461538462)*
892 (v+.7692307692307692)*
893 (v+.6153846153846154)*
894 (v+.5384615384615385)*
895 (v+.4615384615384615)*
896 (v+.3846153846153846)*
897 (v+.3076923076923077)*
898 (v+.2307692307692308)*
899 (v+.1538461538461538)*
900 (v+.7692307692307692e-1);
901
902 case 6:
903 return 62598194.98021102*
904 (v+1.)*v*
905 (v+.9230769230769231)*
906 (v+.8461538461538462)*
907 (v+.7692307692307692)*
908 (v+.6923076923076923)*
909 (v+.5384615384615385)*
910 (v+.4615384615384615)*
911 (v+.3846153846153846)*
912 (v+.3076923076923077)*
913 (v+.2307692307692308)*
914 (v+.1538461538461538)*
915 (v+.7692307692307692e-1);
916
917 case 7:
918 return -83464259.97361468*
919 (v+1.)*v*
920 (v+.9230769230769231)*
921 (v+.8461538461538462)*
922 (v+.7692307692307692)*
923 (v+.6923076923076923)*
924 (v+.6153846153846154)*
925 (v+.4615384615384615)*
926 (v+.3846153846153846)*
927 (v+.3076923076923077)*
928 (v+.2307692307692308)*
929 (v+.1538461538461538)*
930 (v+.7692307692307692e-1);
931
932 case 8:
933 return 83464259.97361466*
934 (v+1.)*v*
935 (v+.9230769230769231)*
936 (v+.8461538461538462)*
937 (v+.7692307692307692)*
938 (v+.6923076923076923)*
939 (v+.6153846153846154)*
940 (v+.5384615384615385)*
941 (v+.3846153846153846)*
942 (v+.3076923076923077)*
943 (v+.2307692307692308)*
944 (v+.1538461538461538)*
945 (v+.7692307692307692e-1);
946
947 case 9:
948 return -62598194.98021099*
949 (v+1.)*v*
950 (v+.9230769230769231)*
951 (v+.8461538461538462)*
952 (v+.7692307692307692)*
953 (v+.6923076923076923)*
954 (v+.6153846153846154)*
955 (v+.5384615384615385)*
956 (v+.4615384615384615)*
957 (v+.3076923076923077)*
958 (v+.2307692307692308)*
959 (v+.1538461538461538)*
960 (v+.7692307692307692e-1);
961
962 case 10:
963 return 34776774.98900612*
964 (v+1.)*v*
965 (v+.9230769230769231)*
966 (v+.8461538461538462)*
967 (v+.7692307692307692)*
968 (v+.6923076923076923)*
969 (v+.6153846153846154)*
970 (v+.5384615384615385)*
971 (v+.4615384615384615)*
972 (v+.3846153846153846)*
973 (v+.2307692307692308)*
974 (v+.1538461538461538)*
975 (v+.7692307692307692e-1);
976
977 case 11:
978 return -13910709.99560244*
979 (v+1.)*v*
980 (v+.9230769230769231)*
981 (v+.8461538461538462)*
982 (v+.7692307692307692)*
983 (v+.6923076923076923)*
984 (v+.6153846153846154)*
985 (v+.5384615384615385)*
986 (v+.4615384615384615)*
987 (v+.3846153846153846)*
988 (v+.3076923076923077)*
989 (v+.1538461538461538)*
990 (v+.7692307692307692e-1);
991
992 case 12:
993 return 3793829.998800668*
994 (v+1.)*v*
995 (v+.9230769230769231)*
996 (v+.8461538461538462)*
997 (v+.7692307692307692)*
998 (v+.6923076923076923)*
999 (v+.6153846153846154)*
1000 (v+.5384615384615385)*
1001 (v+.4615384615384615)*
1002 (v+.3846153846153846)*
1003 (v+.3076923076923077)*
1004 (v+.2307692307692308)*
1005 (v+.7692307692307692e-1);
1006
1007 case 13:
1008 return -632304.9998001105*
1009 (v+1.)*v*
1010 (v+.9230769230769231)*
1011 (v+.8461538461538462)*
1012 (v+.7692307692307692)*
1013 (v+.6923076923076923)*
1014 (v+.6153846153846154)*
1015 (v+.5384615384615385)*
1016 (v+.4615384615384615)*
1017 (v+.3846153846153846)*
1018 (v+.3076923076923077)*
1019 (v+.2307692307692308)*
1020 (v+.1538461538461538);
1021
1022 default:
1023 libmesh_error_msg("bad index i = " << i);
1024 }
1025
1026
1027 case FOURTEENTH:
1028 switch (i)
1029 {
1030 case 0:
1031 return 127463.0033762123*v*
1032 (v+.9285714285714286)*
1033 (v+.8571428571428571)*
1034 (v+.7857142857142857)*
1035 (v+.7142857142857143)*
1036 (v+.6428571428571429)*
1037 (v+.5714285714285714)*
1038 (v+.5)*
1039 (v+.4285714285714286)*
1040 (v+.3571428571428571)*
1041 (v+.2857142857142857)*
1042 (v+.2142857142857143)*
1043 (v+.1428571428571429)*
1044 (v+.7142857142857143e-1);
1045
1046 case 1:
1047 return 127463.0033762123*
1048 (v+1.)*
1049 (v+.9285714285714286)*
1050 (v+.8571428571428571)*
1051 (v+.7857142857142857)*
1052 (v+.7142857142857143)*
1053 (v+.6428571428571429)*
1054 (v+.5714285714285714)*
1055 (v+.5)*
1056 (v+.4285714285714286)*
1057 (v+.3571428571428571)*
1058 (v+.2857142857142857)*
1059 (v+.2142857142857143)*
1060 (v+.1428571428571429)*
1061 (v+.7142857142857143e-1);
1062
1063 case 2:
1064 return -1784482.047266971*
1065 (v+1.)*v*
1066 (v+.8571428571428571)*
1067 (v+.7857142857142857)*
1068 (v+.7142857142857143)*
1069 (v+.6428571428571429)*
1070 (v+.5714285714285714)*
1071 (v+.5)*
1072 (v+.4285714285714286)*
1073 (v+.3571428571428571)*
1074 (v+.2857142857142857)*
1075 (v+.2142857142857143)*
1076 (v+.1428571428571429)*
1077 (v+.7142857142857143e-1);
1078
1079 case 3:
1080 return 11599133.30723529*
1081 (v+1.)*v*
1082 (v+.9285714285714286)*
1083 (v+.7857142857142857)*
1084 (v+.7142857142857143)*
1085 (v+.6428571428571429)*
1086 (v+.5714285714285714)*
1087 (v+.5)*
1088 (v+.4285714285714286)*
1089 (v+.3571428571428571)*
1090 (v+.2857142857142857)*
1091 (v+.2142857142857143)*
1092 (v+.1428571428571429)*
1093 (v+.7142857142857143e-1);
1094
1095 case 4:
1096 return -46396533.2289412*
1097 (v+1.)*v*
1098 (v+.9285714285714286)*
1099 (v+.8571428571428571)*
1100 (v+.7142857142857143)*
1101 (v+.6428571428571429)*
1102 (v+.5714285714285714)*
1103 (v+.5)*
1104 (v+.4285714285714286)*
1105 (v+.3571428571428571)*
1106 (v+.2857142857142857)*
1107 (v+.2142857142857143)*
1108 (v+.1428571428571429)*
1109 (v+.7142857142857143e-1);
1110
1111 case 5:
1112 return 127590466.3795883*
1113 (v+1.)*v*
1114 (v+.9285714285714286)*
1115 (v+.8571428571428571)*
1116 (v+.7857142857142857)*
1117 (v+.6428571428571429)*
1118 (v+.5714285714285714)*
1119 (v+.5)*
1120 (v+.4285714285714286)*
1121 (v+.3571428571428571)*
1122 (v+.2857142857142857)*
1123 (v+.2142857142857143)*
1124 (v+.1428571428571429)*
1125 (v+.7142857142857143e-1);
1126
1127 case 6:
1128 return -255180932.7591769*
1129 (v+1.)*v*
1130 (v+.9285714285714286)*
1131 (v+.8571428571428571)*
1132 (v+.7857142857142857)*
1133 (v+.7142857142857143)*
1134 (v+.5714285714285714)*
1135 (v+.5)*
1136 (v+.4285714285714286)*
1137 (v+.3571428571428571)*
1138 (v+.2857142857142857)*
1139 (v+.2142857142857143)*
1140 (v+.1428571428571429)*
1141 (v+.7142857142857143e-1);
1142
1143 case 7:
1144 return 382771399.1387658*
1145 (v+1.)*v*
1146 (v+.9285714285714286)*
1147 (v+.8571428571428571)*
1148 (v+.7857142857142857)*
1149 (v+.7142857142857143)*
1150 (v+.6428571428571429)*
1151 (v+.5)*
1152 (v+.4285714285714286)*
1153 (v+.3571428571428571)*
1154 (v+.2857142857142857)*
1155 (v+.2142857142857143)*
1156 (v+.1428571428571429)*
1157 (v+.7142857142857143e-1);
1158
1159 case 8:
1160 return -437453027.5871608*
1161 (v+1.)*v*
1162 (v+.9285714285714286)*
1163 (v+.8571428571428571)*
1164 (v+.7857142857142857)*
1165 (v+.7142857142857143)*
1166 (v+.6428571428571429)*
1167 (v+.5714285714285714)*
1168 (v+.4285714285714286)*
1169 (v+.3571428571428571)*
1170 (v+.2857142857142857)*
1171 (v+.2142857142857143)*
1172 (v+.1428571428571429)*
1173 (v+.7142857142857143e-1);
1174
1175 case 9:
1176 return 382771399.1387654*
1177 (v+1.)*v*
1178 (v+.9285714285714286)*
1179 (v+.8571428571428571)*
1180 (v+.7857142857142857)*
1181 (v+.7142857142857143)*
1182 (v+.6428571428571429)*
1183 (v+.5714285714285714)*
1184 (v+.5)*
1185 (v+.3571428571428571)*
1186 (v+.2857142857142857)*
1187 (v+.2142857142857143)*
1188 (v+.1428571428571429)*
1189 (v+.7142857142857143e-1);
1190
1191 case 10:
1192 return -255180932.7591768*
1193 (v+1.)*v*
1194 (v+.9285714285714286)*
1195 (v+.8571428571428571)*
1196 (v+.7857142857142857)*
1197 (v+.7142857142857143)*
1198 (v+.6428571428571429)*
1199 (v+.5714285714285714)*
1200 (v+.5)*
1201 (v+.4285714285714286)*
1202 (v+.2857142857142857)*
1203 (v+.2142857142857143)*
1204 (v+.1428571428571429)*
1205 (v+.7142857142857143e-1);
1206
1207 case 11:
1208 return 127590466.3795886*
1209 (v+1.)*v*
1210 (v+.9285714285714286)*
1211 (v+.8571428571428571)*
1212 (v+.7857142857142857)*
1213 (v+.7142857142857143)*
1214 (v+.6428571428571429)*
1215 (v+.5714285714285714)*
1216 (v+.5)*
1217 (v+.4285714285714286)*
1218 (v+.3571428571428571)*
1219 (v+.2142857142857143)*
1220 (v+.1428571428571429)*
1221 (v+.7142857142857143e-1);
1222
1223 case 12:
1224 return -46396533.22894132*
1225 (v+1.)*v*
1226 (v+.9285714285714286)*
1227 (v+.8571428571428571)*
1228 (v+.7857142857142857)*
1229 (v+.7142857142857143)*
1230 (v+.6428571428571429)*
1231 (v+.5714285714285714)*
1232 (v+.5)*
1233 (v+.4285714285714286)*
1234 (v+.3571428571428571)*
1235 (v+.2857142857142857)*
1236 (v+.1428571428571429)*
1237 (v+.7142857142857143e-1);
1238
1239 case 13:
1240 return 11599133.30723532*
1241 (v+1.)*v*
1242 (v+.9285714285714286)*
1243 (v+.8571428571428571)*
1244 (v+.7857142857142857)*
1245 (v+.7142857142857143)*
1246 (v+.6428571428571429)*
1247 (v+.5714285714285714)*
1248 (v+.5)*
1249 (v+.4285714285714286)*
1250 (v+.3571428571428571)*
1251 (v+.2857142857142857)*
1252 (v+.2142857142857143)*
1253 (v+.7142857142857143e-1);
1254
1255 case 14:
1256 return -1784482.047266969*
1257 (v+1.)*v*
1258 (v+.9285714285714286)*
1259 (v+.8571428571428571)*
1260 (v+.7857142857142857)*
1261 (v+.7142857142857143)*
1262 (v+.6428571428571429)*
1263 (v+.5714285714285714)*
1264 (v+.5)*
1265 (v+.4285714285714286)*
1266 (v+.3571428571428571)*
1267 (v+.2857142857142857)*
1268 (v+.2142857142857143)*
1269 (v+.1428571428571429);
1270
1271 default:
1272 libmesh_error_msg("bad index i = " << i);
1273 }
1274
1275
1276 // provided the constructor worked fine, we should never end up here.
1277 default:
1278 libmesh_error_msg("Lagrange polynomials only defined up to 15.");
1279 } // switch (o_radial)
1280} // lagrange_eval()
1281
1282
1283
1284
1285Real lagrange_eval_deriv(Real v, Order o_radial, unsigned i)
1286{
1287 libmesh_assert (-1.-1.e-5 <= v && v < 1.);
1288
1289 switch (o_radial)
1290 {
1291 case CONSTANT:
1292 switch (i)
1293 {
1294 case 0:
1295 return 0.;
1296
1297 default:
1298 libmesh_error_msg("bad index i = " << i);
1299 }
1300
1301
1302 case FIRST:
1303 switch (i)
1304 {
1305 case 0:
1306 return -1.;
1307
1308 case 1:
1309 return 1.;
1310
1311 default:
1312 libmesh_error_msg("bad index i = " << i);
1313 }
1314
1315
1316 case SECOND:
1317 switch (i)
1318 {
1319 case 0:
1320 return 4.*v+1.;
1321
1322 case 1:
1323 return 4.*v+3.;
1324
1325 case 2:
1326 return -8.*v-4.;
1327
1328 default:
1329 libmesh_error_msg("bad index i = " << i);
1330 }
1331
1332
1333 case THIRD:
1334 switch (i)
1335 {
1336 case 0:
1337 return -1.+(-9.-13.5*v)*v;
1338
1339 case 1:
1340 return 5.5+(18.+13.5*v)*v;
1341
1342 case 2:
1343 return 4.5+(36.+40.5*v)*v;
1344
1345 case 3:
1346 return -9.+(-45.-40.5*v)*v;
1347
1348 default:
1349 libmesh_error_msg("bad index i = " << i);
1350 }
1351
1352
1353 case FOURTH:
1354 switch (i)
1355 {
1356 case 0:
1357 return 1.+(14.66666666666667+(48.+42.66666666666667*v)*v)*v;
1358
1359 case 1:
1360 return 8.333333333333333+(46.66666666666667+(80.+42.66666666666667*v)*v)*v;
1361
1362 case 2:
1363 return -5.333333333333333+(-74.66666666666667+(-224.-170.6666666666667*v)*v)*v;
1364
1365 case 3:
1366 return 12.+(152.+(384.+256.*v)*v)*v;
1367
1368 case 4:
1369 return -16.+(-138.6666666666667+(-288.-170.6666666666667*v)*v)*v;
1370
1371 default:
1372 libmesh_error_msg("bad index i = " << i);
1373 }
1374
1375
1376 case FIFTH:
1377 switch (i)
1378 {
1379 case 0:
1380 return -1.+(-20.83333333333333+(-109.375+(-208.3333333333333-130.2083333333333*v)*v)*v)*v;
1381
1382 case 1:
1383 return 11.41666666666667+(93.75+(265.625+(312.5+130.2083333333333*v)*v)*v)*v;
1384
1385 case 2:
1386 return 6.25+(127.0833333333333+(640.625+(1145.833333333333+651.0416666666667*v)*v)*v)*v;
1387
1388 case 3:
1389 return -16.66666666666667+(-325.+(-1531.25+(-2500.-1302.083333333333*v)*v)*v)*v;
1390
1391 case 4:
1392 return 25.+(445.8333333333333+(1843.75+(2708.333333333333+1302.083333333333*v)*v)*v)*v;
1393
1394 case 5:
1395 return -25.+(-320.8333333333333+(-1109.375+(-1458.333333333333-651.0416666666667*v)*v)*v)*v;
1396
1397 default:
1398 libmesh_error_msg("bad index i = " << i);
1399 }
1400
1401
1402 case SIXTH:
1403 switch (i)
1404 {
1405 case 0:
1406 return 1.+(27.4+(202.5+(612.+(810.+388.8*v)*v)*v)*v)*v;
1407
1408 case 1:
1409 return 14.7+(162.4+(661.5+(1260.+(1134.+388.8*v)*v)*v)*v)*v;
1410
1411 case 2:
1412 return -7.2+(-194.4+(-1404.+(-4104.+(-5184.-2332.8*v)*v)*v)*v)*v;
1413
1414 case 3:
1415 return 22.5+(594.+(4144.5+(11556.+(13770.+5832.*v)*v)*v)*v)*v;
1416
1417 case 4:
1418 return -40.+(-1016.+(-6696.+(-17424.+(-19440.-7776.*v)*v)*v)*v)*v;
1419
1420 case 5:
1421 return 45.+(1053.+(6223.5+(14796.+(15390.+5832.*v)*v)*v)*v)*v;
1422
1423 case 6:
1424 return -36.+(-626.4+(-3132.+(-6696.+(-6480.-2332.8*v)*v)*v)*v)*v;
1425
1426 default:
1427 libmesh_error_msg("bad index i = " << i);
1428 }
1429
1430
1431 case SEVENTH:
1432 switch (i)
1433 {
1434 case 0:
1435 return -1.000000000000001+
1436 (-34.30000000000002+
1437 (-331.5666666666668+
1438 (-1400.583333333334+
1439 (-2917.881944444446+
1440 (-2941.225000000002-1143.809722222223*v)*v)*v)*v)*v)*v;
1441
1442 case 1:
1443 return 18.14999999999999+
1444 (255.3444444444444+
1445 (1382.004166666666+
1446 (3734.888888888888+
1447 (5368.902777777776+
1448 (3921.633333333332+1143.809722222222*v)*v)*v)*v)*v)*v;
1449
1450 case 2:
1451 return 8.166666666666662+
1452 (277.3944444444443+
1453 (2642.529166666665+
1454 (10937.88888888888+
1455 (22175.90277777776+
1456 (21568.98333333332+8006.668055555551*v)*v)*v)*v)*v)*v;
1457
1458 case 3:
1459 return -29.39999999999998+
1460 (-984.8999999999994+
1461 (-9192.399999999994+
1462 (-37015.41666666664+
1463 (-72480.18749999995+
1464 (-67648.17499999996-24020.00416666665*v)*v)*v)*v)*v)*v;
1465
1466 case 4:
1467 return 61.25000000000001+
1468 (2009.+
1469 (18186.14583333333+
1470 (70429.33333333334+
1471 (131888.2638888889+
1472 (117649.+40033.34027777778*v)*v)*v)*v)*v)*v;
1473
1474 case 5:
1475 return -81.66666666666667+
1476 (-2583.388888888889+
1477 (-22237.83333333334+
1478 (-81300.52777777778+
1479 (-144143.3680555556+
1480 (-122551.0416666667-40033.34027777778*v)*v)*v)*v)*v)*v;
1481
1482 case 6:
1483 return 73.49999999999999+
1484 (2153.55+
1485 (16845.5875+
1486 (56823.66666666666+
1487 (94539.37499999999+
1488 (76471.84999999999+24020.00416666666*v)*v)*v)*v)*v)*v;
1489
1490 case 7:
1491 return -49.00000000000003+
1492 (-1092.700000000001+
1493 (-7294.466666666671+
1494 (-22209.25000000001+
1495 (-34431.00694444447+
1496 (-26471.02500000002-8006.66805555556*v)*v)*v)*v)*v)*v;
1497
1498 default:
1499 libmesh_error_msg("bad index i = " << i);
1500 }
1501
1502
1503 case EIGHTH:
1504 switch (i)
1505 {
1506 case 0:
1507 return 1.+
1508 (41.48571428571429+
1509 (500.2666666666667+
1510 (2750.577777777778+
1511 (7964.444444444444+
1512 (12561.06666666667+
1513 (10194.48888888889+3328.812698412698*v)*v)*v)*v)*v)*v)*v;
1514
1515 case 1:
1516 return 21.74285714285714+
1517 (374.9968253968254+
1518 (2563.2+
1519 (9122.133333333333+
1520 (18432.+
1521 (21299.2+
1522 (13107.2+3328.812698412698*v)*v)*v)*v)*v)*v)*v;
1523
1524 case 2:
1525 return -9.142857142857143+
1526 (-376.6857142857143+
1527 (-4497.066666666667+
1528 (-24393.95555555556+
1529 (-69404.44444444444+
1530 (-107042.1333333333+
1531 (-84468.62222222222-26630.50158730159*v)*v)*v)*v)*v)*v)*v;
1532
1533 case 3:
1534 return 37.33333333333333+
1535 (1523.911111111111+
1536 (17952.+
1537 (95675.73333333333+
1538 (266240.+
1539 (399769.6+
1540 (305834.6666666667+93206.75555555556*v)*v)*v)*v)*v)*v)*v;
1541
1542 case 4:
1543 return -89.6+
1544 (-3609.6+
1545 (-41736.53333333333+
1546 (-217179.0222222222+
1547 (-587320.8888888889+
1548 (-854152.5333333333+
1549 (-632058.3111111111-186413.5111111111*v)*v)*v)*v)*v)*v)*v;
1550
1551 case 5:
1552 return 140.+
1553 (5528.+
1554 (62165.33333333333+
1555 (312689.7777777778+
1556 (814648.8888888889+
1557 (1141418.666666667+
1558 (815559.1111111111+233016.8888888889*v)*v)*v)*v)*v)*v)*v;
1559
1560 case 6:
1561 return -149.3333333333333+
1562 (-5697.422222222222+
1563 (-61209.6+
1564 (-292727.4666666667+
1565 (-727040.+
1566 (-976486.4+
1567 (-672836.2666666667-186413.5111111111*v)*v)*v)*v)*v)*v)*v;
1568
1569 case 7:
1570 return 112.+
1571 (3974.4+
1572 (39153.06666666667+
1573 (173954.8444444444+
1574 (407324.4444444444+
1575 (522103.4666666667+
1576 (346612.6222222222+93206.75555555556*v)*v)*v)*v)*v)*v)*v;
1577
1578 case 8:
1579 return -64.+
1580 (-1759.085714285714+
1581 (-14890.66666666667+
1582 (-59892.62222222222+
1583 (-130844.4444444444+
1584 (-159470.9333333333+
1585 (-101944.8888888889-26630.50158730159*v)*v)*v)*v)*v)*v)*v;
1586
1587 default:
1588 libmesh_error_msg("bad index i = " << i);
1589 }
1590
1591
1592 case NINTH:
1593 switch (i)
1594 {
1595 case 0:
1596 return -.9999999999999998+
1597 (-48.92142857142856+
1598 (-711.9080357142856+
1599 (-4866.074999999999+
1600 (-18264.8671875+
1601 (-39858.07499999999+
1602 (-50376.17812499999+
1603 (-34164.06428571428-9608.643080357141*v)*v)*v)*v)*v)*v)*v)*v;
1604
1605 case 1:
1606 return 25.46071428571428+
1607 (523.5267857142855+
1608 (4361.464285714284+
1609 (19477.96874999999+
1610 (51479.92968749998+
1611 (83037.65624999997+
1612 (80269.73437499997+
1613 (42705.08035714284+9608.643080357139*v)*v)*v)*v)*v)*v)*v)*v;
1614
1615 case 2:
1616 return 10.12500000000002+
1617 (492.7982142857151+
1618 (7119.466071428583+
1619 (48200.56875000008+
1620 (178735.9921875003+
1621 (384187.5562500006+
1622 (476636.1468750008+
1623 (316017.5946428576+86477.78772321442*v)*v)*v)*v)*v)*v)*v)*v;
1624
1625 case 3:
1626 return -46.28571428571434+
1627 (-2237.914285714288+
1628 (-32031.73928571432+
1629 (-214253.1000000003+
1630 (-782604.2812500009+
1631 (-1651895.775000002+
1632 (-2006189.775000002+
1633 (-1298234.442857144-345911.1508928576*v)*v)*v)*v)*v)*v)*v)*v;
1634
1635 case 4:
1636 return 126.+
1637 (6038.1+
1638 (85360.8375+
1639 (562004.325+
1640 (2014021.96875+
1641 (4158525.825+
1642 (4929115.275+
1643 (3108929.85+807126.01875*v)*v)*v)*v)*v)*v)*v)*v;
1644
1645 case 5:
1646 return -226.7999999999999+
1647 (-10732.49999999999+
1648 (-149126.0624999999+
1649 (-961004.2499999995+
1650 (-3359744.578124998+
1651 (-6753729.374999997+
1652 (-7788932.156249996+
1653 (-4782968.999999998-1210689.028124999*v)*v)*v)*v)*v)*v)*v)*v;
1654
1655 case 6:
1656 return 283.5+
1657 (13160.475+
1658 (178213.1625+
1659 (1113994.0125+
1660 (3769397.015624999+
1661 (7336100.137499999+
1662 (8207441.943749999+
1663 (4902543.224999999+1210689.028125*v)*v)*v)*v)*v)*v)*v)*v;
1664
1665 case 7:
1666 return -252.0000000000001+
1667 (-11320.2+
1668 (-146952.2250000001+
1669 (-877643.1000000003+
1670 (-2844398.531250001+
1671 (-5327696.025000002+
1672 (-5766134.850000002+
1673 (-3348078.300000001-807126.0187500003*v)*v)*v)*v)*v)*v)*v)*v;
1674
1675 case 8:
1676 return 162.+
1677 (6791.271428571428+
1678 (81375.92678571428+
1679 (453820.725+
1680 (1391547.09375+
1681 (2493344.025+
1682 (2604060.9+
1683 (1469054.764285714+345911.1508928571*v)*v)*v)*v)*v)*v)*v)*v;
1684
1685 case 9:
1686 return -81.00000000000004+
1687 (-2666.635714285716+
1688 (-27608.92232142859+
1689 (-139731.0750000001+
1690 (-400169.7421875002+
1691 (-682015.9500000004+
1692 (-685891.0406250004+
1693 (-375804.7071428573-86477.78772321433*v)*v)*v)*v)*v)*v)*v)*v;
1694
1695 default:
1696 libmesh_error_msg("bad index i = " << i);
1697 }
1698
1699
1700 case TENTH:
1701 switch (i)
1702 {
1703 case 0:
1704 return 1.+
1705 (56.57936507936509+
1706 (969.4940476190478+
1707 (7977.072310405645+
1708 (37109.37500000001+
1709 (104618.0555555556+
1710 (182291.6666666667+
1711 (191798.9417989418+
1712 (111607.1428571429+27557.3192239859*v)*v)*v)*v)*v)*v)*v)*v)*v;
1713
1714 case 1:
1715 return 29.28968253968254+
1716 (702.9087301587303+
1717 (6952.298280423282+
1718 (37664.57231040565+
1719 (124291.087962963+
1720 (260868.0555555556+
1721 (350115.7407407408+
1722 (291005.2910052911+
1723 (136408.7301587302+27557.3192239859*v)*v)*v)*v)*v)*v)*v)*v)*v;
1724
1725 case 2:
1726 return -11.11111111111111+
1727 (-626.190476190476+
1728 (-10671.49470899471+
1729 (-87187.38977072308+
1730 (-402025.4629629629+
1731 (-1121180.555555555+
1732 (-1928240.74074074+
1733 (-1997354.497354497+
1734 (-1140873.015873016-275573.1922398588*v)*v)*v)*v)*v)*v)*v)*v)*v;
1735
1736 case 3:
1737 return 56.24999999999993+
1738 (3154.464285714282+
1739 (53393.30357142851+
1740 (432433.5317460312+
1741 (1972612.84722222+
1742 (5430729.16666666+
1743 (9199652.777777767+
1744 (9365079.365079354+
1745 (5245535.714285708+1240079.365079364*v)*v)*v)*v)*v)*v)*v)*v)*v;
1746
1747 case 4:
1748 return -171.4285714285714+
1749 (-9552.380952380949+
1750 (-160278.5714285714+
1751 (-1283804.232804232+
1752 (-5778472.22222222+
1753 (-15662499.99999999+
1754 (-26069444.44444444+
1755 (-26031746.03174602+
1756 (-14285714.28571428-3306878.306878306*v)*v)*v)*v)*v)*v)*v)*v)*v;
1757
1758 case 5:
1759 return 350.0000000000001+
1760 (19336.11111111112+
1761 (320686.8055555557+
1762 (2531768.518518519+
1763 (11203732.63888889+
1764 (29794791.66666668+
1765 (48586805.55555557+
1766 (47500000.00000002+
1767 (25520833.33333334+5787037.037037039*v)*v)*v)*v)*v)*v)*v)*v)*v;
1768
1769 case 6:
1770 return -504.0000000000003+
1771 (-27508.00000000002+
1772 (-448875.0000000003+
1773 (-3474944.444444447+
1774 (-15041319.44444445+
1775 (-39072083.33333336+
1776 (-62222222.22222226+
1777 (-59444444.44444448+
1778 (-31250000.00000002-6944444.444444449*v)*v)*v)*v)*v)*v)*v)*v)*v;
1779
1780 case 7:
1781 return 525.0000000000002+
1782 (28129.16666666668+
1783 (448056.2500000002+
1784 (3373087.962962964+
1785 (14176475.69444445+
1786 (35773958.33333335+
1787 (55440972.22222224+
1788 (51666666.66666669+
1789 (26562500.00000001+5787037.037037039*v)*v)*v)*v)*v)*v)*v)*v)*v;
1790
1791 case 8:
1792 return -399.9999999999999+
1793 (-20765.07936507936+
1794 (-317919.8412698412+
1795 (-2294915.343915343+
1796 (-9270138.888888886+
1797 (-22579166.66666666+
1798 (-33930555.55555554+
1799 (-30793650.79365078+
1800 (-15476190.47619047-3306878.306878306*v)*v)*v)*v)*v)*v)*v)*v)*v;
1801
1802 case 9:
1803 return 224.9999999999997+
1804 (10930.35714285713+
1805 (155254.0178571427+
1806 (1050662.698412697+
1807 (4026519.097222217+
1808 (9399479.166666656+
1809 (13647569.44444443+
1810 (12043650.79365078+
1811 (5915178.571428564+1240079.365079364*v)*v)*v)*v)*v)*v)*v)*v)*v;
1812
1813 case 10:
1814 return -99.99999999999998+
1815 (-3857.936507936507+
1816 (-47567.26190476189+
1817 (-292742.9453262786+
1818 (-1048784.722222222+
1819 (-2329513.888888888+
1820 (-3256944.444444444+
1821 (-2791005.29100529+
1822 (-1339285.714285714-275573.1922398588*v)*v)*v)*v)*v)*v)*v)*v)*v;
1823
1824 default:
1825 libmesh_error_msg("bad index i = " << i);
1826 }
1827
1828
1829 case ELEVENTH:
1830 switch (i)
1831 {
1832 case 0:
1833 return -.9999999999999994+
1834 (-64.43730158730155+
1835 (-1275.779345238094+
1836 (-12338.01201499117+
1837 (-68930.87539958109+
1838 (-240206.4480902776+
1839 (-539167.6189293978+
1840 (-779744.6068121688+
1841 (-701770.1461309519+
1842 (-357382.9447889107-78624.24785356036*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1843
1844 case 1:
1845 return 33.2186507936508+
1846 (914.9568650793652+
1847 (10529.28835648148+
1848 (67482.7123346561+
1849 (269102.9154748127+
1850 (702350.1214583334+
1851 (1221444.149890046+
1852 (1403540.292261905+
1853 (1023414.796440972+
1854 (428859.5337466932+78624.24785356042*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1855
1856 case 2:
1857 return 12.1+
1858 (777.2713492063492+
1859 (15323.969375+
1860 (147397.3637345679+
1861 (818004.6489266424+
1862 (2827608.196111111+
1863 (6286078.696244213+
1864 (8988328.740343915+
1865 (7982635.412239583+
1866 (4002688.981635802+864866.7263891644*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1867
1868 case 3:
1869 return -67.22222222222232+
1870 (-4301.74206349207+
1871 (-84371.62344576732+
1872 (-806241.7181878318+
1873 (-4438664.17533345+
1874 (-15197594.39114585+
1875 (-33411814.74551509+
1876 (-47167460.12480165+
1877 (-41287476.93070442+
1878 (-20370827.85296795-4324333.631945828*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1879
1880 case 4:
1881 return 226.8750000000001+
1882 (14449.05654761906+
1883 (281570.0790178573+
1884 (2668897.916302912+
1885 (14550507.15751076+
1886 (49254931.92812503+
1887 (106890177.8054688+
1888 (148732739.4557541+
1889 (128160772.9371653+
1890 (62184632.39327054+12973000.89583747*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1891
1892 case 5:
1893 return -518.5714285714285+
1894 (-32822.69047619047+
1895 (-634337.9624999999+
1896 (-5951161.742195766+
1897 (-32053476.18047288+
1898 (-107015202.0322916+
1899 (-228727286.4230902+
1900 (-313117079.7464285+
1901 (-265269115.2375+
1902 (-126513562.4552744-25946001.79167493*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1903
1904 case 6:
1905 return 847.0000000000005+
1906 (53166.72777777781+
1907 (1016244.195694445+
1908 (9406923.838888894+
1909 (49889787.88686346+
1910 (163758669.9375001+
1911 (343777378.7658683+
1912 (462062476.8222225+
1913 (384394597.5432294+
1914 (180121004.1736112+36324402.50834493*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1915
1916 case 7:
1917 return -1016.400000000001+
1918 (-63054.71333333338+
1919 (-1186862.682500001+
1920 (-10787827.71203705+
1921 (-56070259.81307875+
1922 (-180193958.0397918+
1923 (-370348948.3898267+
1924 (-487666454.2750004+
1925 (-397903672.8562503+
1926 (-183123020.9098381-36324402.50834493*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1927
1928 case 8:
1929 return 907.4999999999995+
1930 (55300.60119047616+
1931 (1017370.052678571+
1932 (9010082.051521159+
1933 (45578544.75252147+
1934 (142643877.2687499+
1935 (285964084.8567707+
1936 (368067808.7646823+
1937 (294217133.7654016+
1938 (132946455.4614748+25946001.79167492*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1939
1940 case 9:
1941 return -604.9999999999997+
1942 (-35757.90079365078+
1943 (-633654.9006944442+
1944 (-5395757.537499998+
1945 (-26303245.82287532+
1946 (-79634435.01406247+
1947 (-155083710.9469617+
1948 (-194666785.3843253+
1949 (-152284121.7104166+
1950 (-67545376.56510414-12973000.89583746*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1951
1952 case 10:
1953 return 302.4999999999999+
1954 (16769.78373015873+
1955 (276810.9617559523+
1956 (2216865.917570546+
1957 (10275947.41824432+
1958 (29863105.35694444+
1959 (56249470.99094327+
1960 (68702588.44748676+
1961 (52545039.69155505+
1962 (22872508.46649029+4324333.631945821*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1963
1964 case 11:
1965 return -121.0000000000002+
1966 (-5376.9134920635+
1967 (-77345.59839285725+
1968 (-564323.0784171084+
1969 (-2447317.912381507+
1970 (-6769146.883506954+
1971 (-12277707.14086229+
1972 (-14559958.38538362+
1973 (-10877437.26502978+
1974 (-4645978.282255849-864866.7263891657*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1975
1976 default:
1977 libmesh_error_msg("bad index i = " << i);
1978 }
1979
1980
1981 case TWELFTH:
1982 switch (i)
1983 {
1984 case 0:
1985 return .9999999999999998+
1986 (72.47705627705626+
1987 (1633.311428571428+
1988 (18226.50666666666+
1989 (119469.4285714285+
1990 (498933.257142857+
1991 (1381121.28+
1992 (2566761.325714285+
1993 (3167275.885714285+
1994 (2488319.999999999+
1995 (1126142.537142857+223367.1148051948*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
1996
1997 case 1:
1998 return 37.23852813852813+
1999 (1161.351341991342+
2000 (15303.19142857143+
2001 (113802.0495238095+
2002 (535247.1428571427+
2003 (1682751.497142857+
2004 (3627037.439999999+
2005 (5382117.668571427+
2006 (5406763.885714285+
2007 (3512085.942857142+
2008 (1330895.725714285+223367.1148051948*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2009
2010 case 2:
2011 return -13.09090909090911+
2012 (-946.410389610391+
2013 (-21256.04571428574+
2014 (-236192.3657142861+
2015 (-1540134.857142859+
2016 (-6392069.485714295+
2017 (-17564843.52000003+
2018 (-32365222.76571433+
2019 (-39542959.5428572+
2020 (-30712978.28571433+
2021 (-13718463.63428573-2680405.377662341*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2022
2023 case 3:
2024 return 79.19999999999997+
2025 (5708.502857142855+
2026 (127693.2342857142+
2027 (1411707.84+
2028 (9148841.14285714+
2029 (37695557.21142856+
2030 (102712458.24+
2031 (187435903.2685714+
2032 (226508214.8571428+
2033 (173784268.7999999+
2034 (76577692.52571426+14742229.57714285*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2035
2036 case 4:
2037 return -293.3333333333333+
2038 (-21064.38095238095+
2039 (-468865.8285714286+
2040 (-5151708.952380953+
2041 (-33141236.57142857+
2042 (-135381015.7714286+
2043 (-365282265.6+
2044 (-659300527.5428572+
2045 (-787148039.3142857+
2046 (-596059282.2857143+
2047 (-259012783.5428571-49140765.25714286*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2048
2049 case 5:
2050 return 742.4999999999988+
2051 (53071.7142857142+
2052 (1174043.699999998+
2053 (12802072.11428569+
2054 (81618641.99999987+
2055 (329991648.6857138+
2056 (880198099.1999986+
2057 (1568889314.742855+
2058 (1848249446.399997+
2059 (1380164461.714284+
2060 (591224831.9999991+110566721.8285713*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2061
2062 case 6:
2063 return -1357.714285714284+
2064 (-96463.54285714276+
2065 (-2117125.851428569+
2066 (-22864004.02285712+
2067 (-144144041.142857+
2068 (-575530346.0571423+
2069 (-1514417679.359998+
2070 (-2660955375.908569+
2071 (-3088957791.085711+
2072 (-2272760393.142855+
2073 (-959473441.6457133-176906754.9257141*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2074
2075 case 7:
2076 return 1848.+
2077 (130241.6+
2078 (2828541.120000001+
2079 (30164287.36000001+
2080 (187472016.+
2081 (737031225.6000001+
2082 (1908272701.44+
2083 (3298536898.560001+
2084 (3767714611.200001+
2085 (2729189376.+
2086 (1135151677.44+206391214.08*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2087
2088 case 8:
2089 return -1900.800000000001+
2090 (-132442.1485714286+
2091 (-2834453.211428572+
2092 (-29714158.08000001+
2093 (-181251195.4285715+
2094 (-698873880.1371431+
2095 (-1774822855.680001+
2096 (-3011083328.365715+
2097 (-3379195435.885715+
2098 (-2407897497.600001+
2099 (-986500862.5371432-176906754.9257143*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2100
2101 case 9:
2102 return 1485.000000000001+
2103 (101688.4285714286+
2104 (2129312.185714287+
2105 (21783070.2857143+
2106 (129558540.8571429+
2107 (487399661.4857146+
2108 (1209468153.600001+
2109 (2008852728.685716+
2110 (2211622370.742859+
2111 (1549085842.285715+
2112 (625009108.1142861+110566721.8285715*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2113
2114 case 10:
2115 return -879.9999999999996+
2116 (-58499.8095238095+
2117 (-1181984.914285714+
2118 (-11651825.06666666+
2119 (-66923129.14285712+
2120 (-243989962.9714285+
2121 (-589005043.1999998+
2122 (-955168885.028571+
2123 (-1030036509.257142+
2124 (-708673535.9999997+
2125 (-281535634.2857142-49140765.25714284*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2126
2127 case 11:
2128 return 395.9999999999998+
2129 (24740.91428571427+
2130 (467174.4685714284+
2131 (4342689.325714284+
2132 (23761844.57142856+
2133 (83264161.37142853+
2134 (194582062.0799999+
2135 (307216518.582857+
2136 (324021920.9142856+
2137 (218829970.2857142+
2138 (85586832.8228571+14742229.57714285*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2139
2140 case 12:
2141 return -144.0000000000002+
2142 (-7268.696103896113+
2143 (-120015.3600000001+
2144 (-1017966.994285716+
2145 (-5214864.000000006+
2146 (-17396664.68571431+
2147 (-39148945.92000005+
2148 (-60006903.22285722+
2149 (-61809868.80000008+
2150 (-40950637.71428576+
2151 (-15765995.52000002-2680405.377662341*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2152
2153 default:
2154 libmesh_error_msg("bad index i = " << i);
2155 }
2156
2157
2158 case THIRTEENTH:
2159 switch (i)
2160 {
2161 case 0:
2162 return -1.+
2163 (-80.68347763347765+
2164 (-2044.462258297259+
2165 (-25942.2157164903+
2166 (-195933.4211304931+
2167 (-958398.5214740412+
2168 (-3173506.650750547+
2169 (-7259032.308898811+
2170 (-11486892.61199839+
2171 (-12346784.01976549+
2172 (-8601592.867103291+
2173 (-3501996.921969848-632304.9998001114*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2174
2175 case 1:
2176 return 41.34173881673884+
2177 (1443.658316498317+
2178 (21501.124045665+
2179 (182688.9526208849+
2180 (994598.8556921946+
2181 (3678547.079260226+
2182 (9525159.921037011+
2183 (17469603.51956405+
2184 (22598998.22978734+
2185 (20166413.89895031+
2186 (11811756.71224232+
2187 (4085663.075631491+632304.9998001117*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2188
2189 case 2:
2190 return 14.0833333333333+
2191 (1133.945087782585+
2192 (28654.62116838017+
2193 (362353.3209476036+
2194 (2725399.981313606+
2195 (13265700.68549035+
2196 (43674200.44979463+
2197 (99236897.21980192+
2198 (155839062.2764586+
2199 (166048415.8555637+
2200 (114536999.7566909+
2201 (46109626.13926956+8219964.997401429*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2202
2203 case 3:
2204 return -92.18181818181805+
2205 (-7404.029004328994+
2206 (-186493.2485281383+
2207 (-2348815.46078042+
2208 (-17580908.74629903+
2209 (-85087791.92399955+
2210 (-278293001.5682587+
2211 (-627605520.9915996+
2212 (-977247224.5855008+
2213 (-1031431341.958869+
2214 (-704013624.8070271+
2215 (-280159753.7575874-49319789.98440861*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2216
2217 case 4:
2218 return 371.8000000000002+
2219 (29775.036984127+
2220 (747066.9209920639+
2221 (9363907.89718475+
2222 (69688340.39763103+
2223 (335036414.4353251+
2224 (1087492542.853534+
2225 (2431673317.636533+
2226 (3750776185.102226+
2227 (3918109445.780044+
2228 (2644763448.927234+
2229 (1040093085.825045+180839229.9428319*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2230
2231 case 5:
2232 return -1032.777777777779+
2233 (-82410.07804232813+
2234 (-2057912.1728836+
2235 (-25644457.74177325+
2236 (-189543869.9955658+
2237 (-904096807.162213+
2238 (-2908738078.894543+
2239 (-6440986214.655237+
2240 (-9830892990.478734+
2241 (-10155071564.15431+
2242 (-6774886171.378993+
2243 (-2632334353.014005-452098074.8570801*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2244
2245 case 6:
2246 return 2091.375+
2247 (166125.1892857143+
2248 (4123916.218616072+
2249 (51020732.59433532+
2250 (373953022.277135+
2251 (1766886624.747501+
2252 (5625702404.785355+
2253 (12318759910.9515+
2254 (18582195606.11107+
2255 (18963235625.43443+
2256 (12496303574.24485+
2257 (4795984784.637706+813776534.7427433*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2258
2259 case 7:
2260 return -3186.857142857142+
2261 (-251663.5333333333+
2262 (-6200036.526666666+
2263 (-76008876.2598148+
2264 (-551305314.9444829+
2265 (-2574950087.743402+
2266 (-8097779517.245471+
2267 (-17504674905.19222+
2268 (-26060004891.47182+
2269 (-26247363320.78761+
2270 (-17074614556.61409+
2271 (-6471690311.800277-1085035379.656991*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2272
2273 case 8:
2274 return 3717.999999999998+
2275 (291305.8365079364+
2276 (7104538.462460314+
2277 (86064016.71082448+
2278 (615956862.0470787+
2279 (2836014413.233886+
2280 (8787496836.24099+
2281 (18714249266.16391+
2282 (27455001535.18193+
2283 (27263598620.87599+
2284 (17498356184.17243+
2285 (6548734244.083612+1085035379.656991*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2286
2287 case 9:
2288 return -3346.199999999998+
2289 (-259275.2128571427+
2290 (-6234980.857857139+
2291 (-74314814.73490075+
2292 (-522619068.6865779+
2293 (-2363180534.798538+
2294 (-7192365653.835081+
2295 (-15054787917.48891+
2296 (-21728631050.65575+
2297 (-21251474605.34373+
2298 (-13449722236.25113+
2299 (-4969333632.275211-813776534.7427428*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2300
2301 case 10:
2302 return 2323.75+
2303 (177031.3561507936+
2304 (4169023.658209325+
2305 (48551880.14924492+
2306 (333412303.9596687+
2307 (1473130923.654975+
2308 (4387072985.810989+
2309 (9001260757.284597+
2310 (12758505432.0885+
2311 (12276977202.42297+
2312 (7657681228.792217+
2313 (2792842545.270953+452098074.8570795*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2314
2315 case 11:
2316 return -1239.333333333332+
2317 (-91731.50105820099+
2318 (-2087506.053492062+
2319 (-23468266.89172691+
2320 (-155895856.7716664+
2321 (-668508962.9727646+
2322 (-1939086147.461385+
2323 (-3888161778.825734+
2324 (-5402206035.376699+
2325 (-5109035910.537828+
2326 (-3139128681.07864+
2327 (-1129977673.488937-180839229.9428317*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2328
2329 case 12:
2330 return 507.0000000000001+
2331 (35329.52316017317+
2332 (753439.2988852815+
2333 (8004952.597863758+
2334 (50738883.86584271+
2335 (209350649.6495577+
2336 (588284837.5399432+
2337 (1149033869.66415+
2338 (1561914935.552244+
2339 (1450272246.013992+
2340 (877362472.4445357+
2341 (311677726.0553165+49319789.98440869*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2342
2343 case 13:
2344 return -168.9999999999998+
2345 (-9579.507720057708+
2346 (-179166.9826911975+
2347 (-1739358.918309081+
2348 (-10328458.8186393+
2349 (-40580690.36360362+
2350 (-109813061.9461516+
2351 (-208208252.9774634+
2352 (-276362669.3617079+
2353 (-251684443.4798346+
2354 (-149848802.0532203+
2355 (-52529953.82954764-8219964.997401437*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2356
2357 default:
2358 libmesh_error_msg("bad index i = " << i);
2359 }
2360
2361
2362 case FOURTEENTH:
2363 switch (i)
2364 {
2365 case 0:
2366 return 1.000000000000001+
2367 (89.0437451437452+
2368 (2511.452929292931+
2369 (35805.84699214368+
2370 (307157.435133745+
2371 (1728831.305617285+
2372 (6694701.358837453+
2373 (18287612.31917697+
2374 (35556011.50111113+
2375 (48922521.07901238+
2376 (46544481.35786011+
2377 (29116191.77122336+
2378 (10770623.78528994+1784482.047266973*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2379
2380 case 1:
2381 return 45.52187257187257+
2382 (1763.345698005698+
2383 (29365.83817340067+
2384 (281531.7950991395+
2385 (1747850.189814815+
2386 (7467146.756049383+
2387 (22696362.13811728+
2388 (49892955.87572016+
2389 (79586280.47222222+
2390 (91235685.94979424+
2391 (73234323.81481481+
2392 (39058306.0345679+
2393 (12427642.8291807+1784482.047266972*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2394
2395 case 2:
2396 return -15.07692307692307+
2397 (-1340.186169386169+
2398 (-37713.82505050504+
2399 (-536175.4596184062+
2400 (-4584016.86584362+
2401 (-25698683.17679012+
2402 (-99057107.66633743+
2403 (-269159338.175144+
2404 (-520164399.5644443+
2405 (-710821314.4148147+
2406 (-671058896.060576+
2407 (-416148497.0228506+
2408 (-152445752.0379498-24982748.6617376*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2409
2410 case 3:
2411 return 106.1666666666664+
2412 (9418.0887205387+
2413 (264331.1471464641+
2414 (3745715.752540209+
2415 (31899113.16882709+
2416 (178017355.746049+
2417 (682587693.1574368+
2418 (1843708348.548309+
2419 (3539222709.936659+
2420 (4800352165.04608+
2421 (4494355579.027644+
2422 (2761777312.15335+
2423 (1001668012.031962+162387866.3012941*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2424
2425 case 4:
2426 return -463.2727272727266+
2427 (-40998.84444444439+
2428 (-1147094.434747473+
2429 (-16192604.75699212+
2430 (-137271541.0485595+
2431 (-762026508.285431+
2432 (-2904385776.815469+
2433 (-7792130969.395215+
2434 (-14846386660.68442+
2435 (-19971946670.39009+
2436 (-18532980221.46894+
2437 (-11280038782.78319+
2438 (-4049754543.269010-649551465.2051768*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2439
2440 case 5:
2441 return 1401.399999999998+
2442 (123664.7844444442+
2443 (3447032.944444439+
2444 (48436585.99197523+
2445 (408409296.5789602+
2446 (2253197088.95512+
2447 (8528314129.288823+
2448 (22705190993.54646+
2449 (42899311094.9277+
2450 (57192419912.08138+
2451 (52567132654.44024+
2452 (31676286194.03451+
2453 (11255301855.62796+1786266529.314236*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2454
2455 case 6:
2456 return -3114.222222222221+
2457 (-273841.7629629629+
2458 (-7598211.423703702+
2459 (-106176407.7618107+
2460 (-889486589.4962961+
2461 (-4871457715.624196+
2462 (-18289286459.60543+
2463 (-48264587628.2762+
2464 (-90336942561.1022+
2465 (-119250255953.088+
2466 (-108490582744.8178+
2467 (-64696178115.65826+
2468 (-22747557434.53234-3572533058.628476*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2469
2470 case 7:
2471 return 5255.250000000005+
2472 (460064.2666666671+
2473 (12692565.01916668+
2474 (176150443.0362965+
2475 (1464070863.601545+
2476 (7947918838.465933+
2477 (29555009192.81537+
2478 (77204332615.9018+
2479 (142978921074.0568+
2480 (186702987302.2742+
2481 (168009721889.5444+
2482 (99106545732.11268+
2483 (34476766736.71312+5358799587.942721*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2484
2485 case 8:
2486 return -6864.000000000005+
2487 (-597468.2666666671+
2488 (-16363002.50666668+
2489 (-225121477.611852+
2490 (-1852739107.920989+
2491 (-9950118584.456304+
2492 (-36579967858.71213+
2493 (-94431878855.5576+
2494 (-172801677847.3068+
2495 (-222974303851.9113+
2496 (-198322454721.1221+
2497 (-115675079151.9764+
2498 (-39808225510.43164-6124342386.220252*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2499
2500 case 9:
2501 return 7007.+
2502 (605244.1888888889+
2503 (16415290.29777778+
2504 (223285445.4038272+
2505 (1814617394.563426+
2506 (9615694831.261296+
2507 (34866622054.4775+
2508 (88774809190.10321+
2509 (160266060424.7967+
2510 (204118806975.1876+
2511 (179312358692.2474+
2512 (103371712751.0874+
2513 (35187627906.54222+5358799587.942716*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2514
2515 case 10:
2516 return -5605.599999999996+
2517 (-478963.4577777775+
2518 (-12815269.44444444+
2519 (-171640517.3604937+
2520 (-1371951477.497941+
2521 (-7147541864.43802+
2522 (-25485507407.83126+
2523 (-63848350696.57444+
2524 (-113517642944.8444+
2525 (-142532726188.3604+
2526 (-123573040616.0328+
2527 (-70383067474.29131+
2528 (-23695372327.63784-3572533058.628475*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2529
2530 case 11:
2531 return 3503.500000000003+
2532 (294447.2611111113+
2533 (7720974.358611117+
2534 (101146405.0471606+
2535 (790417783.0809677+
2536 (4028557079.079386+
2537 (14071398696.88138+
2538 (34590639213.49616+
2539 (60449325371.26783+
2540 (74730994261.10376+
2541 (63894320392.36532+
2542 (35941453213.00941+
2543 (11966163025.45713+1786266529.31424*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2544
2545 case 12:
2546 return -1698.666666666669+
2547 (-138798.752861953+
2548 (-3521413.568484853+
2549 (-44599342.83238314+
2550 (-337623011.738272+
2551 (-1672128961.184199+
2552 (-5694412271.43013+
2553 (-13691005583.17104+
2554 (-23467659366.85336+
2555 (-28527575611.29551+
2556 (-24035365582.07213+
2557 (-13347998549.55889+
2558 (-4394414504.398299-649551465.2051785*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2559
2560 case 13:
2561 return 637.0000000000005+
2562 (49076.86565656569+
2563 (1169569.725050506+
2564 (14025401.12147027+
2565 (101447432.0348252+
2566 (483898256.0019139+
2567 (1597498806.855073+
2568 (3742961181.708809+
2569 (6278720198.481116+
2570 (7494910301.597536+
2571 (6218035822.71984+
2572 (3408014739.270754+
2573 (1109374249.884864+162387866.3012945*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2574
2575 case 14:
2576 return -195.9999999999997+
2577 (-12356.57404817403+
2578 (-258935.5802020198+
2579 (-2840808.212210995+
2580 (-19261146.08559668+
2581 (-87507110.40641962+
2582 (-278204754.9117691+
2583 (-632709040.3499579+
2584 (-1036229385.084443+
2585 (-1212999534.859257+
2586 (-990221053.9430438+
2587 (-535453868.1829846+
2588 (-172329980.5646387-24982748.66173757*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v;
2589
2590 default:
2591 libmesh_error_msg("bad index i = " << i);
2592 }
2593
2594
2595 // provided the constructor worked fine, we should never end up here.
2596 default:
2597 libmesh_error_msg("Lagrange polynomials only defined up to 15.");
2598 } // switch (o_radial)
2599} // lagrange_eval_deriv()
2600
2601} // anonymous namespace
2602
2603
2604
2605 // Specialize the eval() function for 1, 2, and 3 dimensions and the CARTESIAN mapping type
2606 // to call the local helper function from the anonymous namespace.
2607template <> Real InfFE<1,LAGRANGE,CARTESIAN>::eval(Real v, Order o, unsigned i) { return lagrange_eval(v, o, i); }
2608template <> Real InfFE<2,LAGRANGE,CARTESIAN>::eval(Real v, Order o, unsigned i) { return lagrange_eval(v, o, i); }
2609template <> Real InfFE<3,LAGRANGE,CARTESIAN>::eval(Real v, Order o, unsigned i) { return lagrange_eval(v, o, i); }
2610
2611// Specialize the eval_deriv() function for 1, 2, and 3 dimensions and the CARTESIAN mapping type
2612// to call the local helper function from the anonymous namespace.
2613template <> Real InfFE<1,LAGRANGE,CARTESIAN>::eval_deriv(Real v, Order o, unsigned i) { return lagrange_eval_deriv(v, o, i); }
2614template <> Real InfFE<2,LAGRANGE,CARTESIAN>::eval_deriv(Real v, Order o, unsigned i) { return lagrange_eval_deriv(v, o, i); }
2615template <> Real InfFE<3,LAGRANGE,CARTESIAN>::eval_deriv(Real v, Order o, unsigned i) { return lagrange_eval_deriv(v, o, i); }
2616
2617
2618} // namespace libMesh
2619
2620#endif // LIBMESH_ENABLE_INFINITE_ELEMENTS
static Real eval(Real v, Order o_radial, unsigned int i)
static Real eval_deriv(Real v, Order o_radial, unsigned int i)
The libMesh namespace provides an interface to certain functionality in the library.
libmesh_assert(ctx)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
@ FOURTEENTH
Definition enum_order.h:55
@ THIRTEENTH
Definition enum_order.h:54