36 int nQuadraturePoints_elementIn,
37 int nDOF_mesh_trial_elementIn,
38 int nDOF_trial_elementIn,
39 int nDOF_test_elementIn,
40 int nQuadraturePoints_elementBoundaryIn,
43 if (CompKernelFlag == 0)
47 if (nDOF_mesh_trial_elementIn == nDOF_trial_elementIn)
49 if (nDOF_mesh_trial_elementIn == 4)
51 if (nQuadraturePoints_elementIn == 5)
52 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,4,4>,3,5,4,4,4,4>());
53 else if (nQuadraturePoints_elementIn == 4)
54 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,4,4>,3,4,4,4,4,3>());
55 else if (nQuadraturePoints_elementIn == 15 && nQuadraturePoints_elementBoundaryIn == 3)
56 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,4,4>,3,15,4,4,4,3>());
57 else if (nQuadraturePoints_elementIn == 15 && nQuadraturePoints_elementBoundaryIn == 7)
58 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,4,4>,3,15,4,4,4,7>());
59 else if (nQuadraturePoints_elementIn == 24 && nQuadraturePoints_elementBoundaryIn == 12)
60 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,4,4>,3,24,4,4,4,12>());
67 else if (nDOF_mesh_trial_elementIn == 8)
69 if (nQuadraturePoints_elementIn == 8)
71 if ( nQuadraturePoints_elementBoundaryIn == 4)
72 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,8,8,8>,3,8,8,8,8,4>());
141 else if (nDOF_mesh_trial_elementIn == 4)
143 if (nDOF_trial_elementIn == 10)
145 if (nQuadraturePoints_elementIn == 4 && nQuadraturePoints_elementBoundaryIn == 3)
147 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,10,10>,3,4,4,10,10,3>());
157 else if (nQuadraturePoints_elementIn == 15 && nQuadraturePoints_elementBoundaryIn == 7)
159 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,10,10>,3,15,4,10,10,7>());
161 else if (nQuadraturePoints_elementIn == 24 && nQuadraturePoints_elementBoundaryIn == 12)
163 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,4,10,10>,3,24,4,10,10,12>());
181 else if (nDOF_mesh_trial_elementIn == 8)
183 if (nDOF_trial_elementIn == 27)
185 if (nQuadraturePoints_elementIn == 125)
186 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<3,8,27,27>,3,125,8,27,27,25>());
228 int nQuadraturePoints_elementIn,
229 int nDOF_mesh_trial_elementIn,
230 int nDOF_trial_elementIn,
231 int nDOF_test_elementIn,
232 int nQuadraturePoints_elementBoundaryIn,
235 if (CompKernelFlag == 0)
239 if (nDOF_mesh_trial_elementIn == nDOF_trial_elementIn)
241 if (nDOF_mesh_trial_elementIn == 3)
243 if (nQuadraturePoints_elementIn == 1)
245 if (nQuadraturePoints_elementBoundaryIn == 1)
246 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,3,3>,2,1,3,3,3,1>());
253 else if (nQuadraturePoints_elementIn == 3)
255 if (nQuadraturePoints_elementBoundaryIn == 2)
256 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,3,3>,2,3,3,3,3,2>());
263 else if (nQuadraturePoints_elementIn == 4)
265 if (nQuadraturePoints_elementBoundaryIn == 3)
266 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,3,3>,2,4,3,3,3,3>());
273 else if (nQuadraturePoints_elementIn == 6)
275 if (nQuadraturePoints_elementBoundaryIn == 4)
276 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,3,3>,2,6,3,3,3,4>());
283 else if (nQuadraturePoints_elementIn == 7)
285 if (nQuadraturePoints_elementBoundaryIn == 5)
286 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,3,3>,2,7,3,3,3,5>());
293 else if (nQuadraturePoints_elementIn == 12)
295 if (nQuadraturePoints_elementBoundaryIn == 6)
296 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,3,3>,2,12,3,3,3,6>());
357 else if(nDOF_mesh_trial_elementIn == 4)
359 if (nQuadraturePoints_elementIn == 4)
361 if (nQuadraturePoints_elementBoundaryIn == 2)
362 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,4,4,4>,2,4,4,4,4,2>());
381 else if (nDOF_mesh_trial_elementIn == 3)
383 if (nDOF_trial_elementIn == 6)
385 if (nQuadraturePoints_elementIn == 1)
387 if (nQuadraturePoints_elementBoundaryIn == 1)
388 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,6,6>,2,1,3,6,6,1>());
395 else if (nQuadraturePoints_elementIn == 3)
397 if (nQuadraturePoints_elementBoundaryIn == 2)
398 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,6,6>,2,3,3,6,6,2>());
405 else if (nQuadraturePoints_elementIn == 4)
407 if (nQuadraturePoints_elementBoundaryIn == 3)
408 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,6,6>,2,4,3,6,6,3>());
415 else if (nQuadraturePoints_elementIn == 6)
417 if (nQuadraturePoints_elementBoundaryIn == 4)
418 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,6,6>,2,6,3,6,6,4>());
425 else if (nQuadraturePoints_elementIn == 7)
427 if (nQuadraturePoints_elementBoundaryIn == 5)
429 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,6,6>,2,7,3,6,6,5>());
437 else if (nQuadraturePoints_elementIn == 12)
439 if (nQuadraturePoints_elementBoundaryIn == 6)
441 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<2,3,6,6>,2,12,3,6,6,6>());
503 int nQuadraturePoints_elementIn,
504 int nDOF_mesh_trial_elementIn,
505 int nDOF_trial_elementIn,
506 int nDOF_test_elementIn,
507 int nQuadraturePoints_elementBoundaryIn,
510 if (CompKernelFlag == 0)
514 if (nDOF_mesh_trial_elementIn == nDOF_trial_elementIn)
516 if (nDOF_mesh_trial_elementIn == 2)
518 if (nQuadraturePoints_elementIn == 2)
520 if (nQuadraturePoints_elementBoundaryIn == 1)
521 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<1,2,2,2>,1,2,2,2,2,1>());
528 else if (nQuadraturePoints_elementIn == 3)
530 if (nQuadraturePoints_elementBoundaryIn == 1)
531 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<1,2,2,2>,1,3,2,2,2,1>());
538 else if (nQuadraturePoints_elementIn == 4)
540 if (nQuadraturePoints_elementBoundaryIn == 1)
541 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<1,2,2,2>,1,4,2,2,2,1>());
548 else if (nQuadraturePoints_elementIn == 5)
550 if (nQuadraturePoints_elementBoundaryIn == 1)
551 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<1,2,2,2>,1,5,2,2,2,1>());
558 else if (nQuadraturePoints_elementIn == 7)
560 if (nQuadraturePoints_elementBoundaryIn == 1)
561 return static_cast<Model_Base*
>(
new ModelTemplate<CompKernelTemplate<1,2,2,2>,1,7,2,2,2,1>());