inf_fe_lagrange_eval.C
Go to the documentation of this file.00001 // The libMesh Finite Element Library. 00002 // Copyright (C) 2002-2012 Benjamin S. Kirk, John W. Peterson, Roy H. Stogner 00003 00004 // This library is free software; you can redistribute it and/or 00005 // modify it under the terms of the GNU Lesser General Public 00006 // License as published by the Free Software Foundation; either 00007 // version 2.1 of the License, or (at your option) any later version. 00008 00009 // This library is distributed in the hope that it will be useful, 00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 // Lesser General Public License for more details. 00013 00014 // You should have received a copy of the GNU Lesser General Public 00015 // License along with this library; if not, write to the Free Software 00016 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00017 00018 00019 // Local Includes 00020 #include "libmesh/libmesh_config.h" 00021 #ifdef LIBMESH_ENABLE_INFINITE_ELEMENTS 00022 #include "libmesh/inf_fe.h" 00023 00024 namespace libMesh 00025 { 00026 00027 // Anonymous namespace for local helper functions 00028 namespace { 00029 00030 Real lagrange_eval(Real v, Order o_radial, unsigned i) 00031 { 00032 libmesh_assert (-1.-1.e-5 <= v && v < 1.); 00033 00034 switch (o_radial) 00035 { 00036 case CONSTANT: 00037 switch (i) 00038 { 00039 case 0: 00040 return 1.; 00041 00042 default: 00043 libMesh::err << "bad index i = " << i << std::endl; 00044 libmesh_error(); 00045 } 00046 00047 00048 case FIRST: 00049 switch (i) 00050 { 00051 case 0: 00052 return -1.*v; 00053 00054 case 1: 00055 return v+1.; 00056 00057 default: 00058 libMesh::err << "bad index i = " << i << std::endl; 00059 libmesh_error(); 00060 } 00061 00062 00063 case SECOND: 00064 switch (i) 00065 { 00066 case 0: 00067 return 2.*v*(v+.5); 00068 00069 case 1: 00070 return 2.*(v+1.)*(v+.5); 00071 00072 case 2: 00073 return -4.*(v+1.)*v; 00074 00075 default: 00076 libMesh::err << "bad index i = " << i << std::endl; 00077 libmesh_error(); 00078 } 00079 00080 00081 case THIRD: 00082 switch (i) 00083 { 00084 case 0: 00085 return -4.5*v*(v+.6666666666666667)*(v+.3333333333333333); 00086 00087 case 1: 00088 return 4.5*(v+1.)*(v+.6666666666666667)*(v+.3333333333333333); 00089 00090 case 2: 00091 return 13.5*(v+1.)*v*(v+.3333333333333333); 00092 00093 case 3: 00094 return -13.5*(v+1.)*v*(v+.6666666666666667); 00095 00096 default: 00097 libMesh::err << "bad index i = " << i << std::endl; 00098 libmesh_error(); 00099 } 00100 00101 00102 case FOURTH: 00103 switch (i) 00104 { 00105 case 0: 00106 return 10.66666666666667*v*(v+.75)*(v+.5)*(v+.25); 00107 00108 case 1: 00109 return 10.66666666666667*(v+1.)*(v+.75)*(v+.5)*(v+.25); 00110 00111 case 2: 00112 return -42.66666666666667*(v+1.)*v*(v+.5)*(v+.25); 00113 00114 case 3: 00115 return 64.*(v+1.)*v*(v+.75)*(v+.25); 00116 00117 case 4: 00118 return -42.66666666666667*(v+1.)*v*(v+.75)*(v+.5); 00119 00120 default: 00121 libMesh::err << "bad index i = " << i << std::endl; 00122 libmesh_error(); 00123 } 00124 00125 00126 case FIFTH: 00127 switch (i) 00128 { 00129 case 0: 00130 return -26.04166666666667*v*(v+.8)*(v+.6)*(v+.4)*(v+.2); 00131 00132 case 1: 00133 return 26.04166666666667*(v+1.)*(v+.8)*(v+.6)*(v+.4)*(v+.2); 00134 00135 case 2: 00136 return 130.2083333333333*(v+1.)*v*(v+.6)*(v+.4)*(v+.2); 00137 00138 case 3: 00139 return -260.4166666666667*(v+1.)*v*(v+.8)*(v+.4)*(v+.2); 00140 00141 case 4: 00142 return 260.4166666666667*(v+1.)*v*(v+.8)*(v+.6)*(v+.2); 00143 00144 case 5: 00145 return -130.2083333333333*(v+1.)*v*(v+.8)*(v+.6)*(v+.4); 00146 00147 default: 00148 libMesh::err << "bad index i = " << i << std::endl; 00149 libmesh_error(); 00150 } 00151 00152 00153 case SIXTH: 00154 switch (i) 00155 { 00156 case 0: 00157 return 64.8*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667); 00158 00159 case 1: 00160 return 64.8*(v+1.)*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667); 00161 00162 case 2: 00163 return -388.8*(v+1.)*v*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667); 00164 00165 case 3: 00166 return 972.*(v+1.)*v*(v+.8333333333333333)*(v+.5)*(v+.3333333333333333)*(v+.1666666666666667); 00167 00168 case 4: 00169 return -1296.*(v+1.)*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.3333333333333333)*(v+.1666666666666667); 00170 00171 case 5: 00172 return 972.*(v+1.)*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.1666666666666667); 00173 00174 case 6: 00175 return -388.8*(v+1.)*v*(v+.8333333333333333)*(v+.6666666666666667)*(v+.5)*(v+.3333333333333333); 00176 00177 default: 00178 libMesh::err << "bad index i = " << i << std::endl; 00179 libmesh_error(); 00180 } 00181 00182 00183 case SEVENTH: 00184 switch (i) 00185 { 00186 case 0: 00187 return -163.401388888889*v* 00188 (v+.8571428571428571)* 00189 (v+.7142857142857143)* 00190 (v+.5714285714285714)* 00191 (v+.4285714285714286)* 00192 (v+.2857142857142857)* 00193 (v+.1428571428571429); 00194 00195 case 1: 00196 return 163.4013888888888* 00197 (v+1.)* 00198 (v+.8571428571428571)* 00199 (v+.7142857142857143)* 00200 (v+.5714285714285714)* 00201 (v+.4285714285714286)* 00202 (v+.2857142857142857)* 00203 (v+.1428571428571429); 00204 00205 case 2: 00206 return 1143.809722222222* 00207 (v+1.)*v* 00208 (v+.7142857142857143)* 00209 (v+.5714285714285714)* 00210 (v+.4285714285714286)* 00211 (v+.2857142857142857)* 00212 (v+.1428571428571429); 00213 00214 case 3: 00215 return -3431.429166666665* 00216 (v+1.)*v* 00217 (v+.8571428571428571)* 00218 (v+.5714285714285714)* 00219 (v+.4285714285714286)* 00220 (v+.2857142857142857)* 00221 (v+.1428571428571429); 00222 00223 case 4: 00224 return 5719.048611111112* 00225 (v+1.)*v* 00226 (v+.8571428571428571)* 00227 (v+.7142857142857143)* 00228 (v+.4285714285714286)* 00229 (v+.2857142857142857)* 00230 (v+.1428571428571429); 00231 00232 case 5: 00233 return -5719.048611111112* 00234 (v+1.)*v* 00235 (v+.8571428571428571)* 00236 (v+.7142857142857143)* 00237 (v+.5714285714285714)* 00238 (v+.2857142857142857)* 00239 (v+.1428571428571429); 00240 00241 case 6: 00242 return 3431.429166666666* 00243 (v+1.)*v* 00244 (v+.8571428571428571)* 00245 (v+.7142857142857143)* 00246 (v+.5714285714285714)* 00247 (v+.4285714285714286)* 00248 (v+.1428571428571429); 00249 00250 case 7: 00251 return -1143.809722222223* 00252 (v+1.)*v* 00253 (v+.8571428571428571)* 00254 (v+.7142857142857143)* 00255 (v+.5714285714285714)* 00256 (v+.4285714285714286)* 00257 (v+.2857142857142857); 00258 00259 default: 00260 libMesh::err << "bad index i = " << i << std::endl; 00261 libmesh_error(); 00262 } 00263 00264 00265 case EIGHTH: 00266 switch (i) 00267 { 00268 case 0: 00269 return 416.1015873015873*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125); 00270 00271 case 1: 00272 return 416.1015873015873*(v+1.)*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125); 00273 00274 case 2: 00275 return -3328.812698412698*(v+1.)*v*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125); 00276 00277 case 3: 00278 return 11650.84444444444*(v+1.)*v*(v+.875)*(v+.625)*(v+.5)*(v+.375)*(v+.25)*(v+.125); 00279 00280 case 4: 00281 return -23301.68888888889*(v+1.)*v*(v+.875)*(v+.75)*(v+.5)*(v+.375)*(v+.25)*(v+.125); 00282 00283 case 5: 00284 return 29127.11111111111*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.375)*(v+.25)*(v+.125); 00285 00286 case 6: 00287 return -23301.68888888889*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.25)*(v+.125); 00288 00289 case 7: 00290 return 11650.84444444444*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.125); 00291 00292 case 8: 00293 return -3328.812698412698*(v+1.)*v*(v+.875)*(v+.75)*(v+.625)*(v+.5)*(v+.375)*(v+.25); 00294 00295 default: 00296 libMesh::err << "bad index i = " << i << std::endl; 00297 libmesh_error(); 00298 } 00299 00300 00301 case NINTH: 00302 switch (i) 00303 { 00304 case 0: 00305 return -1067.627008928571*v* 00306 (v+.8888888888888889)* 00307 (v+.7777777777777778)* 00308 (v+.6666666666666667)* 00309 (v+.5555555555555556)* 00310 (v+.4444444444444444)* 00311 (v+.3333333333333333)* 00312 (v+.2222222222222222)* 00313 (v+.1111111111111111); 00314 00315 case 1: 00316 return 1067.627008928571* 00317 (v+1.)* 00318 (v+.8888888888888889)* 00319 (v+.7777777777777778)* 00320 (v+.6666666666666667)* 00321 (v+.5555555555555556)* 00322 (v+.4444444444444444)* 00323 (v+.3333333333333333)* 00324 (v+.2222222222222222)* 00325 (v+.1111111111111111); 00326 00327 case 2: 00328 return 9608.643080357158* 00329 (v+1.)*v* 00330 (v+.7777777777777778)* 00331 (v+.6666666666666667)* 00332 (v+.5555555555555556)* 00333 (v+.4444444444444444)* 00334 (v+.3333333333333333)* 00335 (v+.2222222222222222)* 00336 (v+.1111111111111111); 00337 00338 case 3: 00339 return -38434.57232142862* 00340 (v+1.)*v* 00341 (v+.8888888888888889)* 00342 (v+.6666666666666667)* 00343 (v+.5555555555555556)* 00344 (v+.4444444444444444)* 00345 (v+.3333333333333333)* 00346 (v+.2222222222222222)* 00347 (v+.1111111111111111); 00348 00349 case 4: 00350 return 89680.66874999999* 00351 (v+1.)*v* 00352 (v+.8888888888888889)* 00353 (v+.7777777777777778)* 00354 (v+.5555555555555556)* 00355 (v+.4444444444444444)* 00356 (v+.3333333333333333)* 00357 (v+.2222222222222222)* 00358 (v+.1111111111111111); 00359 00360 case 5: 00361 return -134521.0031249999* 00362 (v+1.)*v* 00363 (v+.8888888888888889)* 00364 (v+.7777777777777778)* 00365 (v+.6666666666666667)* 00366 (v+.4444444444444444)* 00367 (v+.3333333333333333)* 00368 (v+.2222222222222222)* 00369 (v+.1111111111111111); 00370 00371 case 6: 00372 return 134521.003125* 00373 (v+1.)*v* 00374 (v+.8888888888888889)* 00375 (v+.7777777777777778)* 00376 (v+.6666666666666667)* 00377 (v+.5555555555555556)* 00378 (v+.3333333333333333)* 00379 (v+.2222222222222222)* 00380 (v+.1111111111111111); 00381 00382 case 7: 00383 return -89680.66875000004* 00384 (v+1.)*v* 00385 (v+.8888888888888889)* 00386 (v+.7777777777777778)* 00387 (v+.6666666666666667)* 00388 (v+.5555555555555556)* 00389 (v+.4444444444444444)* 00390 (v+.2222222222222222)* 00391 (v+.1111111111111111); 00392 00393 case 8: 00394 return 38434.57232142857* 00395 (v+1.)*v* 00396 (v+.8888888888888889)* 00397 (v+.7777777777777778)* 00398 (v+.6666666666666667)* 00399 (v+.5555555555555556)* 00400 (v+.4444444444444444)* 00401 (v+.3333333333333333)* 00402 (v+.1111111111111111); 00403 00404 case 9: 00405 return -9608.643080357148* 00406 (v+1.)*v* 00407 (v+.8888888888888889)* 00408 (v+.7777777777777778)* 00409 (v+.6666666666666667)* 00410 (v+.5555555555555556)* 00411 (v+.4444444444444444)* 00412 (v+.3333333333333333)* 00413 (v+.2222222222222222); 00414 00415 default: 00416 libMesh::err << "bad index i = " << i << std::endl; 00417 libmesh_error(); 00418 } 00419 00420 00421 case TENTH: 00422 switch (i) 00423 { 00424 case 0: 00425 return 2755.73192239859*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1); 00426 00427 case 1: 00428 return 2755.73192239859*(v+1.)*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1); 00429 00430 case 2: 00431 return -27557.31922398588*(v+1.)*v*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1); 00432 00433 case 3: 00434 return 124007.9365079364*(v+1.)*v*(v+.9)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1); 00435 00436 case 4: 00437 return -330687.8306878306*(v+1.)*v*(v+.9)*(v+.8)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1); 00438 00439 case 5: 00440 return 578703.7037037039*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.5)*(v+.4)*(v+.3)*(v+.2)*(v+.1); 00441 00442 case 6: 00443 return -694444.4444444449*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.4)*(v+.3)*(v+.2)*(v+.1); 00444 00445 case 7: 00446 return 578703.7037037039*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.3)*(v+.2)*(v+.1); 00447 00448 case 8: 00449 return -330687.8306878306*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.2)*(v+.1); 00450 00451 case 9: 00452 return 124007.9365079364*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.1); 00453 00454 case 10: 00455 return -27557.31922398588*(v+1.)*v*(v+.9)*(v+.8)*(v+.7)*(v+.6)*(v+.5)*(v+.4)*(v+.3)*(v+.2); 00456 00457 default: 00458 libMesh::err << "bad index i = " << i << std::endl; 00459 libmesh_error(); 00460 } 00461 00462 00463 case ELEVENTH: 00464 switch (i) 00465 { 00466 case 0: 00467 return -7147.658895778214*v* 00468 (v+.9090909090909091)* 00469 (v+.8181818181818182)* 00470 (v+.7272727272727273)* 00471 (v+.6363636363636364)* 00472 (v+.5454545454545455)* 00473 (v+.4545454545454545)* 00474 (v+.3636363636363636)* 00475 (v+.2727272727272727)* 00476 (v+.1818181818181818)* 00477 (v+.9090909090909091e-1); 00478 00479 case 1: 00480 return 7147.65889577822* 00481 (v+1.)* 00482 (v+.9090909090909091)* 00483 (v+.8181818181818182)* 00484 (v+.7272727272727273)* 00485 (v+.6363636363636364)* 00486 (v+.5454545454545455)* 00487 (v+.4545454545454545)* 00488 (v+.3636363636363636)* 00489 (v+.2727272727272727)* 00490 (v+.1818181818181818)* 00491 (v+.9090909090909091e-1); 00492 00493 case 2: 00494 return 78624.2478535604* 00495 (v+1.)*v* 00496 (v+.8181818181818182)* 00497 (v+.7272727272727273)* 00498 (v+.6363636363636364)* 00499 (v+.5454545454545455)* 00500 (v+.4545454545454545)* 00501 (v+.3636363636363636)* 00502 (v+.2727272727272727)* 00503 (v+.1818181818181818)* 00504 (v+.9090909090909091e-1); 00505 00506 case 3: 00507 return -393121.2392678026* 00508 (v+1.)*v* 00509 (v+.9090909090909091)* 00510 (v+.7272727272727273)* 00511 (v+.6363636363636364)* 00512 (v+.5454545454545455)* 00513 (v+.4545454545454545)* 00514 (v+.3636363636363636)* 00515 (v+.2727272727272727)* 00516 (v+.1818181818181818)* 00517 (v+.9090909090909091e-1); 00518 00519 case 4: 00520 return 1179363.717803407* 00521 (v+1.)*v* 00522 (v+.9090909090909091)* 00523 (v+.8181818181818182)* 00524 (v+.6363636363636364)* 00525 (v+.5454545454545455)* 00526 (v+.4545454545454545)* 00527 (v+.3636363636363636)* 00528 (v+.2727272727272727)* 00529 (v+.1818181818181818)* 00530 (v+.9090909090909091e-1); 00531 00532 case 5: 00533 return -2358727.435606812* 00534 (v+1.)*v* 00535 (v+.9090909090909091)* 00536 (v+.8181818181818182)* 00537 (v+.7272727272727273)* 00538 (v+.5454545454545455)* 00539 (v+.4545454545454545)* 00540 (v+.3636363636363636)* 00541 (v+.2727272727272727)* 00542 (v+.1818181818181818)* 00543 (v+.9090909090909091e-1); 00544 00545 case 6: 00546 return 3302218.409849539* 00547 (v+1.)*v* 00548 (v+.9090909090909091)* 00549 (v+.8181818181818182)* 00550 (v+.7272727272727273)* 00551 (v+.6363636363636364)* 00552 (v+.4545454545454545)* 00553 (v+.3636363636363636)* 00554 (v+.2727272727272727)* 00555 (v+.1818181818181818)* 00556 (v+.9090909090909091e-1); 00557 00558 case 7: 00559 return -3302218.40984954* 00560 (v+1.)*v* 00561 (v+.9090909090909091)* 00562 (v+.8181818181818182)* 00563 (v+.7272727272727273)* 00564 (v+.6363636363636364)* 00565 (v+.5454545454545455)* 00566 (v+.3636363636363636)* 00567 (v+.2727272727272727)* 00568 (v+.1818181818181818)* 00569 (v+.9090909090909091e-1); 00570 00571 case 8: 00572 return 2358727.435606811* 00573 (v+1.)*v* 00574 (v+.9090909090909091)* 00575 (v+.8181818181818182)* 00576 (v+.7272727272727273)* 00577 (v+.6363636363636364)* 00578 (v+.5454545454545455)* 00579 (v+.4545454545454545)* 00580 (v+.2727272727272727)* 00581 (v+.1818181818181818)* 00582 (v+.9090909090909091e-1); 00583 00584 case 9: 00585 return -1179363.717803406* 00586 (v+1.)*v* 00587 (v+.9090909090909091)* 00588 (v+.8181818181818182)* 00589 (v+.7272727272727273)* 00590 (v+.6363636363636364)* 00591 (v+.5454545454545455)* 00592 (v+.4545454545454545)* 00593 (v+.3636363636363636)* 00594 (v+.1818181818181818)* 00595 (v+.9090909090909091e-1); 00596 00597 case 10: 00598 return 393121.2392678019* 00599 (v+1.)*v* 00600 (v+.9090909090909091)* 00601 (v+.8181818181818182)* 00602 (v+.7272727272727273)* 00603 (v+.6363636363636364)* 00604 (v+.5454545454545455)* 00605 (v+.4545454545454545)* 00606 (v+.3636363636363636)* 00607 (v+.2727272727272727)* 00608 (v+.9090909090909091e-1); 00609 00610 case 11: 00611 return -78624.24785356052* 00612 (v+1.)*v* 00613 (v+.9090909090909091)* 00614 (v+.8181818181818182)* 00615 (v+.7272727272727273)* 00616 (v+.6363636363636364)* 00617 (v+.5454545454545455)* 00618 (v+.4545454545454545)* 00619 (v+.3636363636363636)* 00620 (v+.2727272727272727)* 00621 (v+.1818181818181818); 00622 00623 default: 00624 libMesh::err << "bad index i = " << i << std::endl; 00625 libmesh_error(); 00626 } 00627 00628 00629 case TWELFTH: 00630 switch (i) 00631 { 00632 case 0: 00633 return 18613.92623376623*v* 00634 (v+.9166666666666667)* 00635 (v+.8333333333333333)* 00636 (v+.75)* 00637 (v+.6666666666666667)* 00638 (v+.5833333333333333)* 00639 (v+.5)* 00640 (v+.4166666666666667)* 00641 (v+.3333333333333333)* 00642 (v+.25)* 00643 (v+.1666666666666667)* 00644 (v+.8333333333333333e-1); 00645 00646 case 1: 00647 return 18613.92623376623* 00648 (v+1.)* 00649 (v+.9166666666666667)* 00650 (v+.8333333333333333)* 00651 (v+.75)* 00652 (v+.6666666666666667)* 00653 (v+.5833333333333333)* 00654 (v+.5)* 00655 (v+.4166666666666667)* 00656 (v+.3333333333333333)* 00657 (v+.25)* 00658 (v+.1666666666666667)* 00659 (v+.8333333333333333e-1); 00660 00661 case 2: 00662 return -223367.1148051951* 00663 (v+1.)*v* 00664 (v+.8333333333333333)* 00665 (v+.75)* 00666 (v+.6666666666666667)* 00667 (v+.5833333333333333)* 00668 (v+.5)* 00669 (v+.4166666666666667)* 00670 (v+.3333333333333333)* 00671 (v+.25)* 00672 (v+.1666666666666667)* 00673 (v+.8333333333333333e-1); 00674 00675 case 3: 00676 return 1228519.131428571* 00677 (v+1.)*v* 00678 (v+.9166666666666667)* 00679 (v+.75)* 00680 (v+.6666666666666667)* 00681 (v+.5833333333333333)* 00682 (v+.5)* 00683 (v+.4166666666666667)* 00684 (v+.3333333333333333)* 00685 (v+.25)* 00686 (v+.1666666666666667)* 00687 (v+.8333333333333333e-1); 00688 00689 case 4: 00690 return -4095063.771428572* 00691 (v+1.)*v* 00692 (v+.9166666666666667)* 00693 (v+.8333333333333333)* 00694 (v+.6666666666666667)* 00695 (v+.5833333333333333)* 00696 (v+.5)* 00697 (v+.4166666666666667)* 00698 (v+.3333333333333333)* 00699 (v+.25)* 00700 (v+.1666666666666667)* 00701 (v+.8333333333333333e-1); 00702 00703 case 5: 00704 return 9213893.485714271* 00705 (v+1.)*v* 00706 (v+.9166666666666667)* 00707 (v+.8333333333333333)* 00708 (v+.75)* 00709 (v+.5833333333333333)* 00710 (v+.5)* 00711 (v+.4166666666666667)* 00712 (v+.3333333333333333)* 00713 (v+.25)* 00714 (v+.1666666666666667)* 00715 (v+.8333333333333333e-1); 00716 00717 case 6: 00718 return -14742229.57714284* 00719 (v+1.)*v* 00720 (v+.9166666666666667)* 00721 (v+.8333333333333333)* 00722 (v+.75)* 00723 (v+.6666666666666667)* 00724 (v+.5)* 00725 (v+.4166666666666667)* 00726 (v+.3333333333333333)* 00727 (v+.25)* 00728 (v+.1666666666666667)* 00729 (v+.8333333333333333e-1); 00730 00731 case 7: 00732 return 17199267.84* 00733 (v+1.)*v* 00734 (v+.9166666666666667)* 00735 (v+.8333333333333333)* 00736 (v+.75)* 00737 (v+.6666666666666667)* 00738 (v+.5833333333333333)* 00739 (v+.4166666666666667)* 00740 (v+.3333333333333333)* 00741 (v+.25)* 00742 (v+.1666666666666667)* 00743 (v+.8333333333333333e-1); 00744 00745 case 8: 00746 return -14742229.57714286* 00747 (v+1.)*v* 00748 (v+.9166666666666667)* 00749 (v+.8333333333333333)* 00750 (v+.75)* 00751 (v+.6666666666666667)* 00752 (v+.5833333333333333)* 00753 (v+.5)* 00754 (v+.3333333333333333)* 00755 (v+.25)* 00756 (v+.1666666666666667)* 00757 (v+.8333333333333333e-1); 00758 00759 case 9: 00760 return 9213893.485714291* 00761 (v+1.)*v* 00762 (v+.9166666666666667)* 00763 (v+.8333333333333333)* 00764 (v+.75)* 00765 (v+.6666666666666667)* 00766 (v+.5833333333333333)* 00767 (v+.5)* 00768 (v+.4166666666666667)* 00769 (v+.25)* 00770 (v+.1666666666666667)* 00771 (v+.8333333333333333e-1); 00772 00773 case 10: 00774 return -4095063.77142857* 00775 (v+1.)*v* 00776 (v+.9166666666666667)* 00777 (v+.8333333333333333)* 00778 (v+.75)* 00779 (v+.6666666666666667)* 00780 (v+.5833333333333333)* 00781 (v+.5)* 00782 (v+.4166666666666667)* 00783 (v+.3333333333333333)* 00784 (v+.1666666666666667)* 00785 (v+.8333333333333333e-1); 00786 00787 case 11: 00788 return 1228519.131428571* 00789 (v+1.)*v* 00790 (v+.9166666666666667)* 00791 (v+.8333333333333333)* 00792 (v+.75)* 00793 (v+.6666666666666667)* 00794 (v+.5833333333333333)* 00795 (v+.5)* 00796 (v+.4166666666666667)* 00797 (v+.3333333333333333)* 00798 (v+.25)* 00799 (v+.8333333333333333e-1); 00800 00801 case 12: 00802 return -223367.1148051951* 00803 (v+1.)*v* 00804 (v+.9166666666666667)* 00805 (v+.8333333333333333)* 00806 (v+.75)* 00807 (v+.6666666666666667)* 00808 (v+.5833333333333333)* 00809 (v+.5)* 00810 (v+.4166666666666667)* 00811 (v+.3333333333333333)* 00812 (v+.25)* 00813 (v+.1666666666666667); 00814 00815 default: 00816 libMesh::err << "bad index i = " << i << std::endl; 00817 libmesh_error(); 00818 } 00819 00820 00821 case THIRTEENTH: 00822 switch (i) 00823 { 00824 case 0: 00825 return -48638.84613847011*v* 00826 (v+.9230769230769231)* 00827 (v+.8461538461538462)* 00828 (v+.7692307692307692)* 00829 (v+.6923076923076923)* 00830 (v+.6153846153846154)* 00831 (v+.5384615384615385)* 00832 (v+.4615384615384615)* 00833 (v+.3846153846153846)* 00834 (v+.3076923076923077)* 00835 (v+.2307692307692308)* 00836 (v+.1538461538461538)* 00837 (v+.7692307692307692e-1); 00838 00839 case 1: 00840 return 48638.84613847013* 00841 (v+1.)* 00842 (v+.9230769230769231)* 00843 (v+.8461538461538462)* 00844 (v+.7692307692307692)* 00845 (v+.6923076923076923)* 00846 (v+.6153846153846154)* 00847 (v+.5384615384615385)* 00848 (v+.4615384615384615)* 00849 (v+.3846153846153846)* 00850 (v+.3076923076923077)* 00851 (v+.2307692307692308)* 00852 (v+.1538461538461538)* 00853 (v+.7692307692307692e-1); 00854 00855 case 2: 00856 return 632304.9998001099* 00857 (v+1.)*v* 00858 (v+.8461538461538462)* 00859 (v+.7692307692307692)* 00860 (v+.6923076923076923)* 00861 (v+.6153846153846154)* 00862 (v+.5384615384615385)* 00863 (v+.4615384615384615)* 00864 (v+.3846153846153846)* 00865 (v+.3076923076923077)* 00866 (v+.2307692307692308)* 00867 (v+.1538461538461538)* 00868 (v+.7692307692307692e-1); 00869 00870 case 3: 00871 return -3793829.998800662* 00872 (v+1.)*v* 00873 (v+.9230769230769231)* 00874 (v+.7692307692307692)* 00875 (v+.6923076923076923)* 00876 (v+.6153846153846154)* 00877 (v+.5384615384615385)* 00878 (v+.4615384615384615)* 00879 (v+.3846153846153846)* 00880 (v+.3076923076923077)* 00881 (v+.2307692307692308)* 00882 (v+.1538461538461538)* 00883 (v+.7692307692307692e-1); 00884 00885 case 4: 00886 return 13910709.99560246* 00887 (v+1.)*v* 00888 (v+.9230769230769231)* 00889 (v+.8461538461538462)* 00890 (v+.6923076923076923)* 00891 (v+.6153846153846154)* 00892 (v+.5384615384615385)* 00893 (v+.4615384615384615)* 00894 (v+.3846153846153846)* 00895 (v+.3076923076923077)* 00896 (v+.2307692307692308)* 00897 (v+.1538461538461538)* 00898 (v+.7692307692307692e-1); 00899 00900 case 5: 00901 return -34776774.98900616* 00902 (v+1.)*v* 00903 (v+.9230769230769231)* 00904 (v+.8461538461538462)* 00905 (v+.7692307692307692)* 00906 (v+.6153846153846154)* 00907 (v+.5384615384615385)* 00908 (v+.4615384615384615)* 00909 (v+.3846153846153846)* 00910 (v+.3076923076923077)* 00911 (v+.2307692307692308)* 00912 (v+.1538461538461538)* 00913 (v+.7692307692307692e-1); 00914 00915 case 6: 00916 return 62598194.98021102* 00917 (v+1.)*v* 00918 (v+.9230769230769231)* 00919 (v+.8461538461538462)* 00920 (v+.7692307692307692)* 00921 (v+.6923076923076923)* 00922 (v+.5384615384615385)* 00923 (v+.4615384615384615)* 00924 (v+.3846153846153846)* 00925 (v+.3076923076923077)* 00926 (v+.2307692307692308)* 00927 (v+.1538461538461538)* 00928 (v+.7692307692307692e-1); 00929 00930 case 7: 00931 return -83464259.97361468* 00932 (v+1.)*v* 00933 (v+.9230769230769231)* 00934 (v+.8461538461538462)* 00935 (v+.7692307692307692)* 00936 (v+.6923076923076923)* 00937 (v+.6153846153846154)* 00938 (v+.4615384615384615)* 00939 (v+.3846153846153846)* 00940 (v+.3076923076923077)* 00941 (v+.2307692307692308)* 00942 (v+.1538461538461538)* 00943 (v+.7692307692307692e-1); 00944 00945 case 8: 00946 return 83464259.97361466* 00947 (v+1.)*v* 00948 (v+.9230769230769231)* 00949 (v+.8461538461538462)* 00950 (v+.7692307692307692)* 00951 (v+.6923076923076923)* 00952 (v+.6153846153846154)* 00953 (v+.5384615384615385)* 00954 (v+.3846153846153846)* 00955 (v+.3076923076923077)* 00956 (v+.2307692307692308)* 00957 (v+.1538461538461538)* 00958 (v+.7692307692307692e-1); 00959 00960 case 9: 00961 return -62598194.98021099* 00962 (v+1.)*v* 00963 (v+.9230769230769231)* 00964 (v+.8461538461538462)* 00965 (v+.7692307692307692)* 00966 (v+.6923076923076923)* 00967 (v+.6153846153846154)* 00968 (v+.5384615384615385)* 00969 (v+.4615384615384615)* 00970 (v+.3076923076923077)* 00971 (v+.2307692307692308)* 00972 (v+.1538461538461538)* 00973 (v+.7692307692307692e-1); 00974 00975 case 10: 00976 return 34776774.98900612* 00977 (v+1.)*v* 00978 (v+.9230769230769231)* 00979 (v+.8461538461538462)* 00980 (v+.7692307692307692)* 00981 (v+.6923076923076923)* 00982 (v+.6153846153846154)* 00983 (v+.5384615384615385)* 00984 (v+.4615384615384615)* 00985 (v+.3846153846153846)* 00986 (v+.2307692307692308)* 00987 (v+.1538461538461538)* 00988 (v+.7692307692307692e-1); 00989 00990 case 11: 00991 return -13910709.99560244* 00992 (v+1.)*v* 00993 (v+.9230769230769231)* 00994 (v+.8461538461538462)* 00995 (v+.7692307692307692)* 00996 (v+.6923076923076923)* 00997 (v+.6153846153846154)* 00998 (v+.5384615384615385)* 00999 (v+.4615384615384615)* 01000 (v+.3846153846153846)* 01001 (v+.3076923076923077)* 01002 (v+.1538461538461538)* 01003 (v+.7692307692307692e-1); 01004 01005 case 12: 01006 return 3793829.998800668* 01007 (v+1.)*v* 01008 (v+.9230769230769231)* 01009 (v+.8461538461538462)* 01010 (v+.7692307692307692)* 01011 (v+.6923076923076923)* 01012 (v+.6153846153846154)* 01013 (v+.5384615384615385)* 01014 (v+.4615384615384615)* 01015 (v+.3846153846153846)* 01016 (v+.3076923076923077)* 01017 (v+.2307692307692308)* 01018 (v+.7692307692307692e-1); 01019 01020 case 13: 01021 return -632304.9998001105* 01022 (v+1.)*v* 01023 (v+.9230769230769231)* 01024 (v+.8461538461538462)* 01025 (v+.7692307692307692)* 01026 (v+.6923076923076923)* 01027 (v+.6153846153846154)* 01028 (v+.5384615384615385)* 01029 (v+.4615384615384615)* 01030 (v+.3846153846153846)* 01031 (v+.3076923076923077)* 01032 (v+.2307692307692308)* 01033 (v+.1538461538461538); 01034 01035 default: 01036 libMesh::err << "bad index i = " << i << std::endl; 01037 libmesh_error(); 01038 } 01039 01040 01041 case FOURTEENTH: 01042 switch (i) 01043 { 01044 case 0: 01045 return 127463.0033762123*v* 01046 (v+.9285714285714286)* 01047 (v+.8571428571428571)* 01048 (v+.7857142857142857)* 01049 (v+.7142857142857143)* 01050 (v+.6428571428571429)* 01051 (v+.5714285714285714)* 01052 (v+.5)* 01053 (v+.4285714285714286)* 01054 (v+.3571428571428571)* 01055 (v+.2857142857142857)* 01056 (v+.2142857142857143)* 01057 (v+.1428571428571429)* 01058 (v+.7142857142857143e-1); 01059 01060 case 1: 01061 return 127463.0033762123* 01062 (v+1.)* 01063 (v+.9285714285714286)* 01064 (v+.8571428571428571)* 01065 (v+.7857142857142857)* 01066 (v+.7142857142857143)* 01067 (v+.6428571428571429)* 01068 (v+.5714285714285714)* 01069 (v+.5)* 01070 (v+.4285714285714286)* 01071 (v+.3571428571428571)* 01072 (v+.2857142857142857)* 01073 (v+.2142857142857143)* 01074 (v+.1428571428571429)* 01075 (v+.7142857142857143e-1); 01076 01077 case 2: 01078 return -1784482.047266971* 01079 (v+1.)*v* 01080 (v+.8571428571428571)* 01081 (v+.7857142857142857)* 01082 (v+.7142857142857143)* 01083 (v+.6428571428571429)* 01084 (v+.5714285714285714)* 01085 (v+.5)* 01086 (v+.4285714285714286)* 01087 (v+.3571428571428571)* 01088 (v+.2857142857142857)* 01089 (v+.2142857142857143)* 01090 (v+.1428571428571429)* 01091 (v+.7142857142857143e-1); 01092 01093 case 3: 01094 return 11599133.30723529* 01095 (v+1.)*v* 01096 (v+.9285714285714286)* 01097 (v+.7857142857142857)* 01098 (v+.7142857142857143)* 01099 (v+.6428571428571429)* 01100 (v+.5714285714285714)* 01101 (v+.5)* 01102 (v+.4285714285714286)* 01103 (v+.3571428571428571)* 01104 (v+.2857142857142857)* 01105 (v+.2142857142857143)* 01106 (v+.1428571428571429)* 01107 (v+.7142857142857143e-1); 01108 01109 case 4: 01110 return -46396533.2289412* 01111 (v+1.)*v* 01112 (v+.9285714285714286)* 01113 (v+.8571428571428571)* 01114 (v+.7142857142857143)* 01115 (v+.6428571428571429)* 01116 (v+.5714285714285714)* 01117 (v+.5)* 01118 (v+.4285714285714286)* 01119 (v+.3571428571428571)* 01120 (v+.2857142857142857)* 01121 (v+.2142857142857143)* 01122 (v+.1428571428571429)* 01123 (v+.7142857142857143e-1); 01124 01125 case 5: 01126 return 127590466.3795883* 01127 (v+1.)*v* 01128 (v+.9285714285714286)* 01129 (v+.8571428571428571)* 01130 (v+.7857142857142857)* 01131 (v+.6428571428571429)* 01132 (v+.5714285714285714)* 01133 (v+.5)* 01134 (v+.4285714285714286)* 01135 (v+.3571428571428571)* 01136 (v+.2857142857142857)* 01137 (v+.2142857142857143)* 01138 (v+.1428571428571429)* 01139 (v+.7142857142857143e-1); 01140 01141 case 6: 01142 return -255180932.7591769* 01143 (v+1.)*v* 01144 (v+.9285714285714286)* 01145 (v+.8571428571428571)* 01146 (v+.7857142857142857)* 01147 (v+.7142857142857143)* 01148 (v+.5714285714285714)* 01149 (v+.5)* 01150 (v+.4285714285714286)* 01151 (v+.3571428571428571)* 01152 (v+.2857142857142857)* 01153 (v+.2142857142857143)* 01154 (v+.1428571428571429)* 01155 (v+.7142857142857143e-1); 01156 01157 case 7: 01158 return 382771399.1387658* 01159 (v+1.)*v* 01160 (v+.9285714285714286)* 01161 (v+.8571428571428571)* 01162 (v+.7857142857142857)* 01163 (v+.7142857142857143)* 01164 (v+.6428571428571429)* 01165 (v+.5)* 01166 (v+.4285714285714286)* 01167 (v+.3571428571428571)* 01168 (v+.2857142857142857)* 01169 (v+.2142857142857143)* 01170 (v+.1428571428571429)* 01171 (v+.7142857142857143e-1); 01172 01173 case 8: 01174 return -437453027.5871608* 01175 (v+1.)*v* 01176 (v+.9285714285714286)* 01177 (v+.8571428571428571)* 01178 (v+.7857142857142857)* 01179 (v+.7142857142857143)* 01180 (v+.6428571428571429)* 01181 (v+.5714285714285714)* 01182 (v+.4285714285714286)* 01183 (v+.3571428571428571)* 01184 (v+.2857142857142857)* 01185 (v+.2142857142857143)* 01186 (v+.1428571428571429)* 01187 (v+.7142857142857143e-1); 01188 01189 case 9: 01190 return 382771399.1387654* 01191 (v+1.)*v* 01192 (v+.9285714285714286)* 01193 (v+.8571428571428571)* 01194 (v+.7857142857142857)* 01195 (v+.7142857142857143)* 01196 (v+.6428571428571429)* 01197 (v+.5714285714285714)* 01198 (v+.5)* 01199 (v+.3571428571428571)* 01200 (v+.2857142857142857)* 01201 (v+.2142857142857143)* 01202 (v+.1428571428571429)* 01203 (v+.7142857142857143e-1); 01204 01205 case 10: 01206 return -255180932.7591768* 01207 (v+1.)*v* 01208 (v+.9285714285714286)* 01209 (v+.8571428571428571)* 01210 (v+.7857142857142857)* 01211 (v+.7142857142857143)* 01212 (v+.6428571428571429)* 01213 (v+.5714285714285714)* 01214 (v+.5)* 01215 (v+.4285714285714286)* 01216 (v+.2857142857142857)* 01217 (v+.2142857142857143)* 01218 (v+.1428571428571429)* 01219 (v+.7142857142857143e-1); 01220 01221 case 11: 01222 return 127590466.3795886* 01223 (v+1.)*v* 01224 (v+.9285714285714286)* 01225 (v+.8571428571428571)* 01226 (v+.7857142857142857)* 01227 (v+.7142857142857143)* 01228 (v+.6428571428571429)* 01229 (v+.5714285714285714)* 01230 (v+.5)* 01231 (v+.4285714285714286)* 01232 (v+.3571428571428571)* 01233 (v+.2142857142857143)* 01234 (v+.1428571428571429)* 01235 (v+.7142857142857143e-1); 01236 01237 case 12: 01238 return -46396533.22894132* 01239 (v+1.)*v* 01240 (v+.9285714285714286)* 01241 (v+.8571428571428571)* 01242 (v+.7857142857142857)* 01243 (v+.7142857142857143)* 01244 (v+.6428571428571429)* 01245 (v+.5714285714285714)* 01246 (v+.5)* 01247 (v+.4285714285714286)* 01248 (v+.3571428571428571)* 01249 (v+.2857142857142857)* 01250 (v+.1428571428571429)* 01251 (v+.7142857142857143e-1); 01252 01253 case 13: 01254 return 11599133.30723532* 01255 (v+1.)*v* 01256 (v+.9285714285714286)* 01257 (v+.8571428571428571)* 01258 (v+.7857142857142857)* 01259 (v+.7142857142857143)* 01260 (v+.6428571428571429)* 01261 (v+.5714285714285714)* 01262 (v+.5)* 01263 (v+.4285714285714286)* 01264 (v+.3571428571428571)* 01265 (v+.2857142857142857)* 01266 (v+.2142857142857143)* 01267 (v+.7142857142857143e-1); 01268 01269 case 14: 01270 return -1784482.047266969* 01271 (v+1.)*v* 01272 (v+.9285714285714286)* 01273 (v+.8571428571428571)* 01274 (v+.7857142857142857)* 01275 (v+.7142857142857143)* 01276 (v+.6428571428571429)* 01277 (v+.5714285714285714)* 01278 (v+.5)* 01279 (v+.4285714285714286)* 01280 (v+.3571428571428571)* 01281 (v+.2857142857142857)* 01282 (v+.2142857142857143)* 01283 (v+.1428571428571429); 01284 01285 default: 01286 libMesh::err << "bad index i = " << i << std::endl; 01287 libmesh_error(); 01288 } 01289 01290 01291 // provided the constructor worked fine, we should never end up here. 01292 default: 01293 libMesh::err << "Lagrange polynomials only defined up to 15. " 01294 << std::endl; 01295 libmesh_error(); 01296 } // switch (o_radial) 01297 01298 // we never end up here. 01299 libmesh_error(); 01300 return 0.; 01301 } // lagrange_eval() 01302 01303 01304 01305 01306 Real lagrange_eval_deriv(Real v, Order o_radial, unsigned i) 01307 { 01308 libmesh_assert (-1.-1.e-5 <= v && v < 1.); 01309 01310 switch (o_radial) 01311 { 01312 case CONSTANT: 01313 switch (i) 01314 { 01315 case 0: 01316 return 0.; 01317 01318 default: 01319 libMesh::err << "bad index i = " << i << std::endl; 01320 libmesh_error(); 01321 } 01322 01323 01324 case FIRST: 01325 switch (i) 01326 { 01327 case 0: 01328 return -1.; 01329 01330 case 1: 01331 return 1.; 01332 01333 default: 01334 libMesh::err << "bad index i = " << i << std::endl; 01335 libmesh_error(); 01336 } 01337 01338 01339 case SECOND: 01340 switch (i) 01341 { 01342 case 0: 01343 return 4.*v+1.; 01344 01345 case 1: 01346 return 4.*v+3.; 01347 01348 case 2: 01349 return -8.*v-4.; 01350 01351 default: 01352 libMesh::err << "bad index i = " << i << std::endl; 01353 libmesh_error(); 01354 } 01355 01356 01357 case THIRD: 01358 switch (i) 01359 { 01360 case 0: 01361 return -1.+(-9.-13.5*v)*v; 01362 01363 case 1: 01364 return 5.5+(18.+13.5*v)*v; 01365 01366 case 2: 01367 return 4.5+(36.+40.5*v)*v; 01368 01369 case 3: 01370 return -9.+(-45.-40.5*v)*v; 01371 01372 default: 01373 libMesh::err << "bad index i = " << i << std::endl; 01374 libmesh_error(); 01375 } 01376 01377 01378 case FOURTH: 01379 switch (i) 01380 { 01381 case 0: 01382 return 1.+(14.66666666666667+(48.+42.66666666666667*v)*v)*v; 01383 01384 case 1: 01385 return 8.333333333333333+(46.66666666666667+(80.+42.66666666666667*v)*v)*v; 01386 01387 case 2: 01388 return -5.333333333333333+(-74.66666666666667+(-224.-170.6666666666667*v)*v)*v; 01389 01390 case 3: 01391 return 12.+(152.+(384.+256.*v)*v)*v; 01392 01393 case 4: 01394 return -16.+(-138.6666666666667+(-288.-170.6666666666667*v)*v)*v; 01395 01396 default: 01397 libMesh::err << "bad index i = " << i << std::endl; 01398 libmesh_error(); 01399 } 01400 01401 01402 case FIFTH: 01403 switch (i) 01404 { 01405 case 0: 01406 return -1.+(-20.83333333333333+(-109.375+(-208.3333333333333-130.2083333333333*v)*v)*v)*v; 01407 01408 case 1: 01409 return 11.41666666666667+(93.75+(265.625+(312.5+130.2083333333333*v)*v)*v)*v; 01410 01411 case 2: 01412 return 6.25+(127.0833333333333+(640.625+(1145.833333333333+651.0416666666667*v)*v)*v)*v; 01413 01414 case 3: 01415 return -16.66666666666667+(-325.+(-1531.25+(-2500.-1302.083333333333*v)*v)*v)*v; 01416 01417 case 4: 01418 return 25.+(445.8333333333333+(1843.75+(2708.333333333333+1302.083333333333*v)*v)*v)*v; 01419 01420 case 5: 01421 return -25.+(-320.8333333333333+(-1109.375+(-1458.333333333333-651.0416666666667*v)*v)*v)*v; 01422 01423 default: 01424 libMesh::err << "bad index i = " << i << std::endl; 01425 libmesh_error(); 01426 } 01427 01428 01429 case SIXTH: 01430 switch (i) 01431 { 01432 case 0: 01433 return 1.+(27.4+(202.5+(612.+(810.+388.8*v)*v)*v)*v)*v; 01434 01435 case 1: 01436 return 14.7+(162.4+(661.5+(1260.+(1134.+388.8*v)*v)*v)*v)*v; 01437 01438 case 2: 01439 return -7.2+(-194.4+(-1404.+(-4104.+(-5184.-2332.8*v)*v)*v)*v)*v; 01440 01441 case 3: 01442 return 22.5+(594.+(4144.5+(11556.+(13770.+5832.*v)*v)*v)*v)*v; 01443 01444 case 4: 01445 return -40.+(-1016.+(-6696.+(-17424.+(-19440.-7776.*v)*v)*v)*v)*v; 01446 01447 case 5: 01448 return 45.+(1053.+(6223.5+(14796.+(15390.+5832.*v)*v)*v)*v)*v; 01449 01450 case 6: 01451 return -36.+(-626.4+(-3132.+(-6696.+(-6480.-2332.8*v)*v)*v)*v)*v; 01452 01453 default: 01454 libMesh::err << "bad index i = " << i << std::endl; 01455 libmesh_error(); 01456 } 01457 01458 01459 case SEVENTH: 01460 switch (i) 01461 { 01462 case 0: 01463 return -1.000000000000001+ 01464 (-34.30000000000002+ 01465 (-331.5666666666668+ 01466 (-1400.583333333334+ 01467 (-2917.881944444446+ 01468 (-2941.225000000002-1143.809722222223*v)*v)*v)*v)*v)*v; 01469 01470 case 1: 01471 return 18.14999999999999+ 01472 (255.3444444444444+ 01473 (1382.004166666666+ 01474 (3734.888888888888+ 01475 (5368.902777777776+ 01476 (3921.633333333332+1143.809722222222*v)*v)*v)*v)*v)*v; 01477 01478 case 2: 01479 return 8.166666666666662+ 01480 (277.3944444444443+ 01481 (2642.529166666665+ 01482 (10937.88888888888+ 01483 (22175.90277777776+ 01484 (21568.98333333332+8006.668055555551*v)*v)*v)*v)*v)*v; 01485 01486 case 3: 01487 return -29.39999999999998+ 01488 (-984.8999999999994+ 01489 (-9192.399999999994+ 01490 (-37015.41666666664+ 01491 (-72480.18749999995+ 01492 (-67648.17499999996-24020.00416666665*v)*v)*v)*v)*v)*v; 01493 01494 case 4: 01495 return 61.25000000000001+ 01496 (2009.+ 01497 (18186.14583333333+ 01498 (70429.33333333334+ 01499 (131888.2638888889+ 01500 (117649.+40033.34027777778*v)*v)*v)*v)*v)*v; 01501 01502 case 5: 01503 return -81.66666666666667+ 01504 (-2583.388888888889+ 01505 (-22237.83333333334+ 01506 (-81300.52777777778+ 01507 (-144143.3680555556+ 01508 (-122551.0416666667-40033.34027777778*v)*v)*v)*v)*v)*v; 01509 01510 case 6: 01511 return 73.49999999999999+ 01512 (2153.55+ 01513 (16845.5875+ 01514 (56823.66666666666+ 01515 (94539.37499999999+ 01516 (76471.84999999999+24020.00416666666*v)*v)*v)*v)*v)*v; 01517 01518 case 7: 01519 return -49.00000000000003+ 01520 (-1092.700000000001+ 01521 (-7294.466666666671+ 01522 (-22209.25000000001+ 01523 (-34431.00694444447+ 01524 (-26471.02500000002-8006.66805555556*v)*v)*v)*v)*v)*v; 01525 01526 default: 01527 libMesh::err << "bad index i = " << i << std::endl; 01528 libmesh_error(); 01529 } 01530 01531 01532 case EIGHTH: 01533 switch (i) 01534 { 01535 case 0: 01536 return 1.+ 01537 (41.48571428571429+ 01538 (500.2666666666667+ 01539 (2750.577777777778+ 01540 (7964.444444444444+ 01541 (12561.06666666667+ 01542 (10194.48888888889+3328.812698412698*v)*v)*v)*v)*v)*v)*v; 01543 01544 case 1: 01545 return 21.74285714285714+ 01546 (374.9968253968254+ 01547 (2563.2+ 01548 (9122.133333333333+ 01549 (18432.+ 01550 (21299.2+ 01551 (13107.2+3328.812698412698*v)*v)*v)*v)*v)*v)*v; 01552 01553 case 2: 01554 return -9.142857142857143+ 01555 (-376.6857142857143+ 01556 (-4497.066666666667+ 01557 (-24393.95555555556+ 01558 (-69404.44444444444+ 01559 (-107042.1333333333+ 01560 (-84468.62222222222-26630.50158730159*v)*v)*v)*v)*v)*v)*v; 01561 01562 case 3: 01563 return 37.33333333333333+ 01564 (1523.911111111111+ 01565 (17952.+ 01566 (95675.73333333333+ 01567 (266240.+ 01568 (399769.6+ 01569 (305834.6666666667+93206.75555555556*v)*v)*v)*v)*v)*v)*v; 01570 01571 case 4: 01572 return -89.6+ 01573 (-3609.6+ 01574 (-41736.53333333333+ 01575 (-217179.0222222222+ 01576 (-587320.8888888889+ 01577 (-854152.5333333333+ 01578 (-632058.3111111111-186413.5111111111*v)*v)*v)*v)*v)*v)*v; 01579 01580 case 5: 01581 return 140.+ 01582 (5528.+ 01583 (62165.33333333333+ 01584 (312689.7777777778+ 01585 (814648.8888888889+ 01586 (1141418.666666667+ 01587 (815559.1111111111+233016.8888888889*v)*v)*v)*v)*v)*v)*v; 01588 01589 case 6: 01590 return -149.3333333333333+ 01591 (-5697.422222222222+ 01592 (-61209.6+ 01593 (-292727.4666666667+ 01594 (-727040.+ 01595 (-976486.4+ 01596 (-672836.2666666667-186413.5111111111*v)*v)*v)*v)*v)*v)*v; 01597 01598 case 7: 01599 return 112.+ 01600 (3974.4+ 01601 (39153.06666666667+ 01602 (173954.8444444444+ 01603 (407324.4444444444+ 01604 (522103.4666666667+ 01605 (346612.6222222222+93206.75555555556*v)*v)*v)*v)*v)*v)*v; 01606 01607 case 8: 01608 return -64.+ 01609 (-1759.085714285714+ 01610 (-14890.66666666667+ 01611 (-59892.62222222222+ 01612 (-130844.4444444444+ 01613 (-159470.9333333333+ 01614 (-101944.8888888889-26630.50158730159*v)*v)*v)*v)*v)*v)*v; 01615 01616 default: 01617 libMesh::err << "bad index i = " << i << std::endl; 01618 libmesh_error(); 01619 } 01620 01621 01622 case NINTH: 01623 switch (i) 01624 { 01625 case 0: 01626 return -.9999999999999998+ 01627 (-48.92142857142856+ 01628 (-711.9080357142856+ 01629 (-4866.074999999999+ 01630 (-18264.8671875+ 01631 (-39858.07499999999+ 01632 (-50376.17812499999+ 01633 (-34164.06428571428-9608.643080357141*v)*v)*v)*v)*v)*v)*v)*v; 01634 01635 case 1: 01636 return 25.46071428571428+ 01637 (523.5267857142855+ 01638 (4361.464285714284+ 01639 (19477.96874999999+ 01640 (51479.92968749998+ 01641 (83037.65624999997+ 01642 (80269.73437499997+ 01643 (42705.08035714284+9608.643080357139*v)*v)*v)*v)*v)*v)*v)*v; 01644 01645 case 2: 01646 return 10.12500000000002+ 01647 (492.7982142857151+ 01648 (7119.466071428583+ 01649 (48200.56875000008+ 01650 (178735.9921875003+ 01651 (384187.5562500006+ 01652 (476636.1468750008+ 01653 (316017.5946428576+86477.78772321442*v)*v)*v)*v)*v)*v)*v)*v; 01654 01655 case 3: 01656 return -46.28571428571434+ 01657 (-2237.914285714288+ 01658 (-32031.73928571432+ 01659 (-214253.1000000003+ 01660 (-782604.2812500009+ 01661 (-1651895.775000002+ 01662 (-2006189.775000002+ 01663 (-1298234.442857144-345911.1508928576*v)*v)*v)*v)*v)*v)*v)*v; 01664 01665 case 4: 01666 return 126.+ 01667 (6038.1+ 01668 (85360.8375+ 01669 (562004.325+ 01670 (2014021.96875+ 01671 (4158525.825+ 01672 (4929115.275+ 01673 (3108929.85+807126.01875*v)*v)*v)*v)*v)*v)*v)*v; 01674 01675 case 5: 01676 return -226.7999999999999+ 01677 (-10732.49999999999+ 01678 (-149126.0624999999+ 01679 (-961004.2499999995+ 01680 (-3359744.578124998+ 01681 (-6753729.374999997+ 01682 (-7788932.156249996+ 01683 (-4782968.999999998-1210689.028124999*v)*v)*v)*v)*v)*v)*v)*v; 01684 01685 case 6: 01686 return 283.5+ 01687 (13160.475+ 01688 (178213.1625+ 01689 (1113994.0125+ 01690 (3769397.015624999+ 01691 (7336100.137499999+ 01692 (8207441.943749999+ 01693 (4902543.224999999+1210689.028125*v)*v)*v)*v)*v)*v)*v)*v; 01694 01695 case 7: 01696 return -252.0000000000001+ 01697 (-11320.2+ 01698 (-146952.2250000001+ 01699 (-877643.1000000003+ 01700 (-2844398.531250001+ 01701 (-5327696.025000002+ 01702 (-5766134.850000002+ 01703 (-3348078.300000001-807126.0187500003*v)*v)*v)*v)*v)*v)*v)*v; 01704 01705 case 8: 01706 return 162.+ 01707 (6791.271428571428+ 01708 (81375.92678571428+ 01709 (453820.725+ 01710 (1391547.09375+ 01711 (2493344.025+ 01712 (2604060.9+ 01713 (1469054.764285714+345911.1508928571*v)*v)*v)*v)*v)*v)*v)*v; 01714 01715 case 9: 01716 return -81.00000000000004+ 01717 (-2666.635714285716+ 01718 (-27608.92232142859+ 01719 (-139731.0750000001+ 01720 (-400169.7421875002+ 01721 (-682015.9500000004+ 01722 (-685891.0406250004+ 01723 (-375804.7071428573-86477.78772321433*v)*v)*v)*v)*v)*v)*v)*v; 01724 01725 default: 01726 libMesh::err << "bad index i = " << i << std::endl; 01727 libmesh_error(); 01728 } 01729 01730 01731 case TENTH: 01732 switch (i) 01733 { 01734 case 0: 01735 return 1.+ 01736 (56.57936507936509+ 01737 (969.4940476190478+ 01738 (7977.072310405645+ 01739 (37109.37500000001+ 01740 (104618.0555555556+ 01741 (182291.6666666667+ 01742 (191798.9417989418+ 01743 (111607.1428571429+27557.3192239859*v)*v)*v)*v)*v)*v)*v)*v)*v; 01744 01745 case 1: 01746 return 29.28968253968254+ 01747 (702.9087301587303+ 01748 (6952.298280423282+ 01749 (37664.57231040565+ 01750 (124291.087962963+ 01751 (260868.0555555556+ 01752 (350115.7407407408+ 01753 (291005.2910052911+ 01754 (136408.7301587302+27557.3192239859*v)*v)*v)*v)*v)*v)*v)*v)*v; 01755 01756 case 2: 01757 return -11.11111111111111+ 01758 (-626.190476190476+ 01759 (-10671.49470899471+ 01760 (-87187.38977072308+ 01761 (-402025.4629629629+ 01762 (-1121180.555555555+ 01763 (-1928240.74074074+ 01764 (-1997354.497354497+ 01765 (-1140873.015873016-275573.1922398588*v)*v)*v)*v)*v)*v)*v)*v)*v; 01766 01767 case 3: 01768 return 56.24999999999993+ 01769 (3154.464285714282+ 01770 (53393.30357142851+ 01771 (432433.5317460312+ 01772 (1972612.84722222+ 01773 (5430729.16666666+ 01774 (9199652.777777767+ 01775 (9365079.365079354+ 01776 (5245535.714285708+1240079.365079364*v)*v)*v)*v)*v)*v)*v)*v)*v; 01777 01778 case 4: 01779 return -171.4285714285714+ 01780 (-9552.380952380949+ 01781 (-160278.5714285714+ 01782 (-1283804.232804232+ 01783 (-5778472.22222222+ 01784 (-15662499.99999999+ 01785 (-26069444.44444444+ 01786 (-26031746.03174602+ 01787 (-14285714.28571428-3306878.306878306*v)*v)*v)*v)*v)*v)*v)*v)*v; 01788 01789 case 5: 01790 return 350.0000000000001+ 01791 (19336.11111111112+ 01792 (320686.8055555557+ 01793 (2531768.518518519+ 01794 (11203732.63888889+ 01795 (29794791.66666668+ 01796 (48586805.55555557+ 01797 (47500000.00000002+ 01798 (25520833.33333334+5787037.037037039*v)*v)*v)*v)*v)*v)*v)*v)*v; 01799 01800 case 6: 01801 return -504.0000000000003+ 01802 (-27508.00000000002+ 01803 (-448875.0000000003+ 01804 (-3474944.444444447+ 01805 (-15041319.44444445+ 01806 (-39072083.33333336+ 01807 (-62222222.22222226+ 01808 (-59444444.44444448+ 01809 (-31250000.00000002-6944444.444444449*v)*v)*v)*v)*v)*v)*v)*v)*v; 01810 01811 case 7: 01812 return 525.0000000000002+ 01813 (28129.16666666668+ 01814 (448056.2500000002+ 01815 (3373087.962962964+ 01816 (14176475.69444445+ 01817 (35773958.33333335+ 01818 (55440972.22222224+ 01819 (51666666.66666669+ 01820 (26562500.00000001+5787037.037037039*v)*v)*v)*v)*v)*v)*v)*v)*v; 01821 01822 case 8: 01823 return -399.9999999999999+ 01824 (-20765.07936507936+ 01825 (-317919.8412698412+ 01826 (-2294915.343915343+ 01827 (-9270138.888888886+ 01828 (-22579166.66666666+ 01829 (-33930555.55555554+ 01830 (-30793650.79365078+ 01831 (-15476190.47619047-3306878.306878306*v)*v)*v)*v)*v)*v)*v)*v)*v; 01832 01833 case 9: 01834 return 224.9999999999997+ 01835 (10930.35714285713+ 01836 (155254.0178571427+ 01837 (1050662.698412697+ 01838 (4026519.097222217+ 01839 (9399479.166666656+ 01840 (13647569.44444443+ 01841 (12043650.79365078+ 01842 (5915178.571428564+1240079.365079364*v)*v)*v)*v)*v)*v)*v)*v)*v; 01843 01844 case 10: 01845 return -99.99999999999998+ 01846 (-3857.936507936507+ 01847 (-47567.26190476189+ 01848 (-292742.9453262786+ 01849 (-1048784.722222222+ 01850 (-2329513.888888888+ 01851 (-3256944.444444444+ 01852 (-2791005.29100529+ 01853 (-1339285.714285714-275573.1922398588*v)*v)*v)*v)*v)*v)*v)*v)*v; 01854 01855 default: 01856 libMesh::err << "bad index i = " << i << std::endl; 01857 libmesh_error(); 01858 } 01859 01860 01861 case ELEVENTH: 01862 switch (i) 01863 { 01864 case 0: 01865 return -.9999999999999994+ 01866 (-64.43730158730155+ 01867 (-1275.779345238094+ 01868 (-12338.01201499117+ 01869 (-68930.87539958109+ 01870 (-240206.4480902776+ 01871 (-539167.6189293978+ 01872 (-779744.6068121688+ 01873 (-701770.1461309519+ 01874 (-357382.9447889107-78624.24785356036*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01875 01876 case 1: 01877 return 33.2186507936508+ 01878 (914.9568650793652+ 01879 (10529.28835648148+ 01880 (67482.7123346561+ 01881 (269102.9154748127+ 01882 (702350.1214583334+ 01883 (1221444.149890046+ 01884 (1403540.292261905+ 01885 (1023414.796440972+ 01886 (428859.5337466932+78624.24785356042*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01887 01888 case 2: 01889 return 12.1+ 01890 (777.2713492063492+ 01891 (15323.969375+ 01892 (147397.3637345679+ 01893 (818004.6489266424+ 01894 (2827608.196111111+ 01895 (6286078.696244213+ 01896 (8988328.740343915+ 01897 (7982635.412239583+ 01898 (4002688.981635802+864866.7263891644*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01899 01900 case 3: 01901 return -67.22222222222232+ 01902 (-4301.74206349207+ 01903 (-84371.62344576732+ 01904 (-806241.7181878318+ 01905 (-4438664.17533345+ 01906 (-15197594.39114585+ 01907 (-33411814.74551509+ 01908 (-47167460.12480165+ 01909 (-41287476.93070442+ 01910 (-20370827.85296795-4324333.631945828*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01911 01912 case 4: 01913 return 226.8750000000001+ 01914 (14449.05654761906+ 01915 (281570.0790178573+ 01916 (2668897.916302912+ 01917 (14550507.15751076+ 01918 (49254931.92812503+ 01919 (106890177.8054688+ 01920 (148732739.4557541+ 01921 (128160772.9371653+ 01922 (62184632.39327054+12973000.89583747*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01923 01924 case 5: 01925 return -518.5714285714285+ 01926 (-32822.69047619047+ 01927 (-634337.9624999999+ 01928 (-5951161.742195766+ 01929 (-32053476.18047288+ 01930 (-107015202.0322916+ 01931 (-228727286.4230902+ 01932 (-313117079.7464285+ 01933 (-265269115.2375+ 01934 (-126513562.4552744-25946001.79167493*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01935 01936 case 6: 01937 return 847.0000000000005+ 01938 (53166.72777777781+ 01939 (1016244.195694445+ 01940 (9406923.838888894+ 01941 (49889787.88686346+ 01942 (163758669.9375001+ 01943 (343777378.7658683+ 01944 (462062476.8222225+ 01945 (384394597.5432294+ 01946 (180121004.1736112+36324402.50834493*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01947 01948 case 7: 01949 return -1016.400000000001+ 01950 (-63054.71333333338+ 01951 (-1186862.682500001+ 01952 (-10787827.71203705+ 01953 (-56070259.81307875+ 01954 (-180193958.0397918+ 01955 (-370348948.3898267+ 01956 (-487666454.2750004+ 01957 (-397903672.8562503+ 01958 (-183123020.9098381-36324402.50834493*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01959 01960 case 8: 01961 return 907.4999999999995+ 01962 (55300.60119047616+ 01963 (1017370.052678571+ 01964 (9010082.051521159+ 01965 (45578544.75252147+ 01966 (142643877.2687499+ 01967 (285964084.8567707+ 01968 (368067808.7646823+ 01969 (294217133.7654016+ 01970 (132946455.4614748+25946001.79167492*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01971 01972 case 9: 01973 return -604.9999999999997+ 01974 (-35757.90079365078+ 01975 (-633654.9006944442+ 01976 (-5395757.537499998+ 01977 (-26303245.82287532+ 01978 (-79634435.01406247+ 01979 (-155083710.9469617+ 01980 (-194666785.3843253+ 01981 (-152284121.7104166+ 01982 (-67545376.56510414-12973000.89583746*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01983 01984 case 10: 01985 return 302.4999999999999+ 01986 (16769.78373015873+ 01987 (276810.9617559523+ 01988 (2216865.917570546+ 01989 (10275947.41824432+ 01990 (29863105.35694444+ 01991 (56249470.99094327+ 01992 (68702588.44748676+ 01993 (52545039.69155505+ 01994 (22872508.46649029+4324333.631945821*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 01995 01996 case 11: 01997 return -121.0000000000002+ 01998 (-5376.9134920635+ 01999 (-77345.59839285725+ 02000 (-564323.0784171084+ 02001 (-2447317.912381507+ 02002 (-6769146.883506954+ 02003 (-12277707.14086229+ 02004 (-14559958.38538362+ 02005 (-10877437.26502978+ 02006 (-4645978.282255849-864866.7263891657*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02007 02008 default: 02009 libMesh::err << "bad index i = " << i << std::endl; 02010 libmesh_error(); 02011 } 02012 02013 02014 case TWELFTH: 02015 switch (i) 02016 { 02017 case 0: 02018 return .9999999999999998+ 02019 (72.47705627705626+ 02020 (1633.311428571428+ 02021 (18226.50666666666+ 02022 (119469.4285714285+ 02023 (498933.257142857+ 02024 (1381121.28+ 02025 (2566761.325714285+ 02026 (3167275.885714285+ 02027 (2488319.999999999+ 02028 (1126142.537142857+223367.1148051948*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02029 02030 case 1: 02031 return 37.23852813852813+ 02032 (1161.351341991342+ 02033 (15303.19142857143+ 02034 (113802.0495238095+ 02035 (535247.1428571427+ 02036 (1682751.497142857+ 02037 (3627037.439999999+ 02038 (5382117.668571427+ 02039 (5406763.885714285+ 02040 (3512085.942857142+ 02041 (1330895.725714285+223367.1148051948*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02042 02043 case 2: 02044 return -13.09090909090911+ 02045 (-946.410389610391+ 02046 (-21256.04571428574+ 02047 (-236192.3657142861+ 02048 (-1540134.857142859+ 02049 (-6392069.485714295+ 02050 (-17564843.52000003+ 02051 (-32365222.76571433+ 02052 (-39542959.5428572+ 02053 (-30712978.28571433+ 02054 (-13718463.63428573-2680405.377662341*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02055 02056 case 3: 02057 return 79.19999999999997+ 02058 (5708.502857142855+ 02059 (127693.2342857142+ 02060 (1411707.84+ 02061 (9148841.14285714+ 02062 (37695557.21142856+ 02063 (102712458.24+ 02064 (187435903.2685714+ 02065 (226508214.8571428+ 02066 (173784268.7999999+ 02067 (76577692.52571426+14742229.57714285*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02068 02069 case 4: 02070 return -293.3333333333333+ 02071 (-21064.38095238095+ 02072 (-468865.8285714286+ 02073 (-5151708.952380953+ 02074 (-33141236.57142857+ 02075 (-135381015.7714286+ 02076 (-365282265.6+ 02077 (-659300527.5428572+ 02078 (-787148039.3142857+ 02079 (-596059282.2857143+ 02080 (-259012783.5428571-49140765.25714286*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02081 02082 case 5: 02083 return 742.4999999999988+ 02084 (53071.7142857142+ 02085 (1174043.699999998+ 02086 (12802072.11428569+ 02087 (81618641.99999987+ 02088 (329991648.6857138+ 02089 (880198099.1999986+ 02090 (1568889314.742855+ 02091 (1848249446.399997+ 02092 (1380164461.714284+ 02093 (591224831.9999991+110566721.8285713*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02094 02095 case 6: 02096 return -1357.714285714284+ 02097 (-96463.54285714276+ 02098 (-2117125.851428569+ 02099 (-22864004.02285712+ 02100 (-144144041.142857+ 02101 (-575530346.0571423+ 02102 (-1514417679.359998+ 02103 (-2660955375.908569+ 02104 (-3088957791.085711+ 02105 (-2272760393.142855+ 02106 (-959473441.6457133-176906754.9257141*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02107 02108 case 7: 02109 return 1848.+ 02110 (130241.6+ 02111 (2828541.120000001+ 02112 (30164287.36000001+ 02113 (187472016.+ 02114 (737031225.6000001+ 02115 (1908272701.44+ 02116 (3298536898.560001+ 02117 (3767714611.200001+ 02118 (2729189376.+ 02119 (1135151677.44+206391214.08*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02120 02121 case 8: 02122 return -1900.800000000001+ 02123 (-132442.1485714286+ 02124 (-2834453.211428572+ 02125 (-29714158.08000001+ 02126 (-181251195.4285715+ 02127 (-698873880.1371431+ 02128 (-1774822855.680001+ 02129 (-3011083328.365715+ 02130 (-3379195435.885715+ 02131 (-2407897497.600001+ 02132 (-986500862.5371432-176906754.9257143*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02133 02134 case 9: 02135 return 1485.000000000001+ 02136 (101688.4285714286+ 02137 (2129312.185714287+ 02138 (21783070.2857143+ 02139 (129558540.8571429+ 02140 (487399661.4857146+ 02141 (1209468153.600001+ 02142 (2008852728.685716+ 02143 (2211622370.742859+ 02144 (1549085842.285715+ 02145 (625009108.1142861+110566721.8285715*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02146 02147 case 10: 02148 return -879.9999999999996+ 02149 (-58499.8095238095+ 02150 (-1181984.914285714+ 02151 (-11651825.06666666+ 02152 (-66923129.14285712+ 02153 (-243989962.9714285+ 02154 (-589005043.1999998+ 02155 (-955168885.028571+ 02156 (-1030036509.257142+ 02157 (-708673535.9999997+ 02158 (-281535634.2857142-49140765.25714284*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02159 02160 case 11: 02161 return 395.9999999999998+ 02162 (24740.91428571427+ 02163 (467174.4685714284+ 02164 (4342689.325714284+ 02165 (23761844.57142856+ 02166 (83264161.37142853+ 02167 (194582062.0799999+ 02168 (307216518.582857+ 02169 (324021920.9142856+ 02170 (218829970.2857142+ 02171 (85586832.8228571+14742229.57714285*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02172 02173 case 12: 02174 return -144.0000000000002+ 02175 (-7268.696103896113+ 02176 (-120015.3600000001+ 02177 (-1017966.994285716+ 02178 (-5214864.000000006+ 02179 (-17396664.68571431+ 02180 (-39148945.92000005+ 02181 (-60006903.22285722+ 02182 (-61809868.80000008+ 02183 (-40950637.71428576+ 02184 (-15765995.52000002-2680405.377662341*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02185 02186 default: 02187 libMesh::err << "bad index i = " << i << std::endl; 02188 libmesh_error(); 02189 } 02190 02191 02192 case THIRTEENTH: 02193 switch (i) 02194 { 02195 case 0: 02196 return -1.+ 02197 (-80.68347763347765+ 02198 (-2044.462258297259+ 02199 (-25942.2157164903+ 02200 (-195933.4211304931+ 02201 (-958398.5214740412+ 02202 (-3173506.650750547+ 02203 (-7259032.308898811+ 02204 (-11486892.61199839+ 02205 (-12346784.01976549+ 02206 (-8601592.867103291+ 02207 (-3501996.921969848-632304.9998001114*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02208 02209 case 1: 02210 return 41.34173881673884+ 02211 (1443.658316498317+ 02212 (21501.124045665+ 02213 (182688.9526208849+ 02214 (994598.8556921946+ 02215 (3678547.079260226+ 02216 (9525159.921037011+ 02217 (17469603.51956405+ 02218 (22598998.22978734+ 02219 (20166413.89895031+ 02220 (11811756.71224232+ 02221 (4085663.075631491+632304.9998001117*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02222 02223 case 2: 02224 return 14.0833333333333+ 02225 (1133.945087782585+ 02226 (28654.62116838017+ 02227 (362353.3209476036+ 02228 (2725399.981313606+ 02229 (13265700.68549035+ 02230 (43674200.44979463+ 02231 (99236897.21980192+ 02232 (155839062.2764586+ 02233 (166048415.8555637+ 02234 (114536999.7566909+ 02235 (46109626.13926956+8219964.997401429*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02236 02237 case 3: 02238 return -92.18181818181805+ 02239 (-7404.029004328994+ 02240 (-186493.2485281383+ 02241 (-2348815.46078042+ 02242 (-17580908.74629903+ 02243 (-85087791.92399955+ 02244 (-278293001.5682587+ 02245 (-627605520.9915996+ 02246 (-977247224.5855008+ 02247 (-1031431341.958869+ 02248 (-704013624.8070271+ 02249 (-280159753.7575874-49319789.98440861*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02250 02251 case 4: 02252 return 371.8000000000002+ 02253 (29775.036984127+ 02254 (747066.9209920639+ 02255 (9363907.89718475+ 02256 (69688340.39763103+ 02257 (335036414.4353251+ 02258 (1087492542.853534+ 02259 (2431673317.636533+ 02260 (3750776185.102226+ 02261 (3918109445.780044+ 02262 (2644763448.927234+ 02263 (1040093085.825045+180839229.9428319*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02264 02265 case 5: 02266 return -1032.777777777779+ 02267 (-82410.07804232813+ 02268 (-2057912.1728836+ 02269 (-25644457.74177325+ 02270 (-189543869.9955658+ 02271 (-904096807.162213+ 02272 (-2908738078.894543+ 02273 (-6440986214.655237+ 02274 (-9830892990.478734+ 02275 (-10155071564.15431+ 02276 (-6774886171.378993+ 02277 (-2632334353.014005-452098074.8570801*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02278 02279 case 6: 02280 return 2091.375+ 02281 (166125.1892857143+ 02282 (4123916.218616072+ 02283 (51020732.59433532+ 02284 (373953022.277135+ 02285 (1766886624.747501+ 02286 (5625702404.785355+ 02287 (12318759910.9515+ 02288 (18582195606.11107+ 02289 (18963235625.43443+ 02290 (12496303574.24485+ 02291 (4795984784.637706+813776534.7427433*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02292 02293 case 7: 02294 return -3186.857142857142+ 02295 (-251663.5333333333+ 02296 (-6200036.526666666+ 02297 (-76008876.2598148+ 02298 (-551305314.9444829+ 02299 (-2574950087.743402+ 02300 (-8097779517.245471+ 02301 (-17504674905.19222+ 02302 (-26060004891.47182+ 02303 (-26247363320.78761+ 02304 (-17074614556.61409+ 02305 (-6471690311.800277-1085035379.656991*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02306 02307 case 8: 02308 return 3717.999999999998+ 02309 (291305.8365079364+ 02310 (7104538.462460314+ 02311 (86064016.71082448+ 02312 (615956862.0470787+ 02313 (2836014413.233886+ 02314 (8787496836.24099+ 02315 (18714249266.16391+ 02316 (27455001535.18193+ 02317 (27263598620.87599+ 02318 (17498356184.17243+ 02319 (6548734244.083612+1085035379.656991*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02320 02321 case 9: 02322 return -3346.199999999998+ 02323 (-259275.2128571427+ 02324 (-6234980.857857139+ 02325 (-74314814.73490075+ 02326 (-522619068.6865779+ 02327 (-2363180534.798538+ 02328 (-7192365653.835081+ 02329 (-15054787917.48891+ 02330 (-21728631050.65575+ 02331 (-21251474605.34373+ 02332 (-13449722236.25113+ 02333 (-4969333632.275211-813776534.7427428*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02334 02335 case 10: 02336 return 2323.75+ 02337 (177031.3561507936+ 02338 (4169023.658209325+ 02339 (48551880.14924492+ 02340 (333412303.9596687+ 02341 (1473130923.654975+ 02342 (4387072985.810989+ 02343 (9001260757.284597+ 02344 (12758505432.0885+ 02345 (12276977202.42297+ 02346 (7657681228.792217+ 02347 (2792842545.270953+452098074.8570795*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02348 02349 case 11: 02350 return -1239.333333333332+ 02351 (-91731.50105820099+ 02352 (-2087506.053492062+ 02353 (-23468266.89172691+ 02354 (-155895856.7716664+ 02355 (-668508962.9727646+ 02356 (-1939086147.461385+ 02357 (-3888161778.825734+ 02358 (-5402206035.376699+ 02359 (-5109035910.537828+ 02360 (-3139128681.07864+ 02361 (-1129977673.488937-180839229.9428317*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02362 02363 case 12: 02364 return 507.0000000000001+ 02365 (35329.52316017317+ 02366 (753439.2988852815+ 02367 (8004952.597863758+ 02368 (50738883.86584271+ 02369 (209350649.6495577+ 02370 (588284837.5399432+ 02371 (1149033869.66415+ 02372 (1561914935.552244+ 02373 (1450272246.013992+ 02374 (877362472.4445357+ 02375 (311677726.0553165+49319789.98440869*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02376 02377 case 13: 02378 return -168.9999999999998+ 02379 (-9579.507720057708+ 02380 (-179166.9826911975+ 02381 (-1739358.918309081+ 02382 (-10328458.8186393+ 02383 (-40580690.36360362+ 02384 (-109813061.9461516+ 02385 (-208208252.9774634+ 02386 (-276362669.3617079+ 02387 (-251684443.4798346+ 02388 (-149848802.0532203+ 02389 (-52529953.82954764-8219964.997401437*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02390 02391 default: 02392 libMesh::err << "bad index i = " << i << std::endl; 02393 libmesh_error(); 02394 } 02395 02396 02397 case FOURTEENTH: 02398 switch (i) 02399 { 02400 case 0: 02401 return 1.000000000000001+ 02402 (89.0437451437452+ 02403 (2511.452929292931+ 02404 (35805.84699214368+ 02405 (307157.435133745+ 02406 (1728831.305617285+ 02407 (6694701.358837453+ 02408 (18287612.31917697+ 02409 (35556011.50111113+ 02410 (48922521.07901238+ 02411 (46544481.35786011+ 02412 (29116191.77122336+ 02413 (10770623.78528994+1784482.047266973*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02414 02415 case 1: 02416 return 45.52187257187257+ 02417 (1763.345698005698+ 02418 (29365.83817340067+ 02419 (281531.7950991395+ 02420 (1747850.189814815+ 02421 (7467146.756049383+ 02422 (22696362.13811728+ 02423 (49892955.87572016+ 02424 (79586280.47222222+ 02425 (91235685.94979424+ 02426 (73234323.81481481+ 02427 (39058306.0345679+ 02428 (12427642.8291807+1784482.047266972*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02429 02430 case 2: 02431 return -15.07692307692307+ 02432 (-1340.186169386169+ 02433 (-37713.82505050504+ 02434 (-536175.4596184062+ 02435 (-4584016.86584362+ 02436 (-25698683.17679012+ 02437 (-99057107.66633743+ 02438 (-269159338.175144+ 02439 (-520164399.5644443+ 02440 (-710821314.4148147+ 02441 (-671058896.060576+ 02442 (-416148497.0228506+ 02443 (-152445752.0379498-24982748.6617376*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02444 02445 case 3: 02446 return 106.1666666666664+ 02447 (9418.0887205387+ 02448 (264331.1471464641+ 02449 (3745715.752540209+ 02450 (31899113.16882709+ 02451 (178017355.746049+ 02452 (682587693.1574368+ 02453 (1843708348.548309+ 02454 (3539222709.936659+ 02455 (4800352165.04608+ 02456 (4494355579.027644+ 02457 (2761777312.15335+ 02458 (1001668012.031962+162387866.3012941*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02459 02460 case 4: 02461 return -463.2727272727266+ 02462 (-40998.84444444439+ 02463 (-1147094.434747473+ 02464 (-16192604.75699212+ 02465 (-137271541.0485595+ 02466 (-762026508.285431+ 02467 (-2904385776.815469+ 02468 (-7792130969.395215+ 02469 (-14846386660.68442+ 02470 (-19971946670.39009+ 02471 (-18532980221.46894+ 02472 (-11280038782.78319+ 02473 (-4049754543.269010-649551465.2051768*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02474 02475 case 5: 02476 return 1401.399999999998+ 02477 (123664.7844444442+ 02478 (3447032.944444439+ 02479 (48436585.99197523+ 02480 (408409296.5789602+ 02481 (2253197088.95512+ 02482 (8528314129.288823+ 02483 (22705190993.54646+ 02484 (42899311094.9277+ 02485 (57192419912.08138+ 02486 (52567132654.44024+ 02487 (31676286194.03451+ 02488 (11255301855.62796+1786266529.314236*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02489 02490 case 6: 02491 return -3114.222222222221+ 02492 (-273841.7629629629+ 02493 (-7598211.423703702+ 02494 (-106176407.7618107+ 02495 (-889486589.4962961+ 02496 (-4871457715.624196+ 02497 (-18289286459.60543+ 02498 (-48264587628.2762+ 02499 (-90336942561.1022+ 02500 (-119250255953.088+ 02501 (-108490582744.8178+ 02502 (-64696178115.65826+ 02503 (-22747557434.53234-3572533058.628476*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02504 02505 case 7: 02506 return 5255.250000000005+ 02507 (460064.2666666671+ 02508 (12692565.01916668+ 02509 (176150443.0362965+ 02510 (1464070863.601545+ 02511 (7947918838.465933+ 02512 (29555009192.81537+ 02513 (77204332615.9018+ 02514 (142978921074.0568+ 02515 (186702987302.2742+ 02516 (168009721889.5444+ 02517 (99106545732.11268+ 02518 (34476766736.71312+5358799587.942721*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02519 02520 case 8: 02521 return -6864.000000000005+ 02522 (-597468.2666666671+ 02523 (-16363002.50666668+ 02524 (-225121477.611852+ 02525 (-1852739107.920989+ 02526 (-9950118584.456304+ 02527 (-36579967858.71213+ 02528 (-94431878855.5576+ 02529 (-172801677847.3068+ 02530 (-222974303851.9113+ 02531 (-198322454721.1221+ 02532 (-115675079151.9764+ 02533 (-39808225510.43164-6124342386.220252*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02534 02535 case 9: 02536 return 7007.+ 02537 (605244.1888888889+ 02538 (16415290.29777778+ 02539 (223285445.4038272+ 02540 (1814617394.563426+ 02541 (9615694831.261296+ 02542 (34866622054.4775+ 02543 (88774809190.10321+ 02544 (160266060424.7967+ 02545 (204118806975.1876+ 02546 (179312358692.2474+ 02547 (103371712751.0874+ 02548 (35187627906.54222+5358799587.942716*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02549 02550 case 10: 02551 return -5605.599999999996+ 02552 (-478963.4577777775+ 02553 (-12815269.44444444+ 02554 (-171640517.3604937+ 02555 (-1371951477.497941+ 02556 (-7147541864.43802+ 02557 (-25485507407.83126+ 02558 (-63848350696.57444+ 02559 (-113517642944.8444+ 02560 (-142532726188.3604+ 02561 (-123573040616.0328+ 02562 (-70383067474.29131+ 02563 (-23695372327.63784-3572533058.628475*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02564 02565 case 11: 02566 return 3503.500000000003+ 02567 (294447.2611111113+ 02568 (7720974.358611117+ 02569 (101146405.0471606+ 02570 (790417783.0809677+ 02571 (4028557079.079386+ 02572 (14071398696.88138+ 02573 (34590639213.49616+ 02574 (60449325371.26783+ 02575 (74730994261.10376+ 02576 (63894320392.36532+ 02577 (35941453213.00941+ 02578 (11966163025.45713+1786266529.31424*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02579 02580 case 12: 02581 return -1698.666666666669+ 02582 (-138798.752861953+ 02583 (-3521413.568484853+ 02584 (-44599342.83238314+ 02585 (-337623011.738272+ 02586 (-1672128961.184199+ 02587 (-5694412271.43013+ 02588 (-13691005583.17104+ 02589 (-23467659366.85336+ 02590 (-28527575611.29551+ 02591 (-24035365582.07213+ 02592 (-13347998549.55889+ 02593 (-4394414504.398299-649551465.2051785*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02594 02595 case 13: 02596 return 637.0000000000005+ 02597 (49076.86565656569+ 02598 (1169569.725050506+ 02599 (14025401.12147027+ 02600 (101447432.0348252+ 02601 (483898256.0019139+ 02602 (1597498806.855073+ 02603 (3742961181.708809+ 02604 (6278720198.481116+ 02605 (7494910301.597536+ 02606 (6218035822.71984+ 02607 (3408014739.270754+ 02608 (1109374249.884864+162387866.3012945*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02609 02610 case 14: 02611 return -195.9999999999997+ 02612 (-12356.57404817403+ 02613 (-258935.5802020198+ 02614 (-2840808.212210995+ 02615 (-19261146.08559668+ 02616 (-87507110.40641962+ 02617 (-278204754.9117691+ 02618 (-632709040.3499579+ 02619 (-1036229385.084443+ 02620 (-1212999534.859257+ 02621 (-990221053.9430438+ 02622 (-535453868.1829846+ 02623 (-172329980.5646387-24982748.66173757*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v)*v; 02624 02625 default: 02626 libMesh::err << "bad index i = " << i << std::endl; 02627 libmesh_error(); 02628 } 02629 02630 02631 // provided the constructor worked fine, we should never end up here. 02632 default: 02633 libMesh::err << "Lagrange polynomials only defined up to 15. " 02634 << std::endl; 02635 libmesh_error(); 02636 } // switch (o_radial) 02637 02638 // we never end up here. 02639 libmesh_error(); 02640 return 0.; 02641 } // lagrange_eval_deriv() 02642 02643 } // anonymous namespace 02644 02645 02646 02647 // Specialize the eval() function for 1, 2, and 3 dimensions and the CARTESIAN mapping type 02648 // to call the local helper function from the anonymous namespace. 02649 template <> Real InfFE<1,LAGRANGE,CARTESIAN>::eval(Real v, Order o, unsigned i) { return lagrange_eval(v, o, i); } 02650 template <> Real InfFE<2,LAGRANGE,CARTESIAN>::eval(Real v, Order o, unsigned i) { return lagrange_eval(v, o, i); } 02651 template <> Real InfFE<3,LAGRANGE,CARTESIAN>::eval(Real v, Order o, unsigned i) { return lagrange_eval(v, o, i); } 02652 02653 // Specialize the eval_deriv() function for 1, 2, and 3 dimensions and the CARTESIAN mapping type 02654 // to call the local helper function from the anonymous namespace. 02655 template <> Real InfFE<1,LAGRANGE,CARTESIAN>::eval_deriv(Real v, Order o, unsigned i) { return lagrange_eval_deriv(v, o, i); } 02656 template <> Real InfFE<2,LAGRANGE,CARTESIAN>::eval_deriv(Real v, Order o, unsigned i) { return lagrange_eval_deriv(v, o, i); } 02657 template <> Real InfFE<3,LAGRANGE,CARTESIAN>::eval_deriv(Real v, Order o, unsigned i) { return lagrange_eval_deriv(v, o, i); } 02658 02659 02660 } // namespace libMesh 02661 02662 #endif // LIBMESH_ENABLE_INFINITE_ELEMENTS 02663
Site Created By: libMesh Developers
Last modified: February 05 2013 19:54:47 UTC
Hosted By: