Comprehensive doctest-based unit tests for element traits and shape functions.
More...
|
| | TEST_CASE ("ElementTraits: basic identification fields are consistent") |
| |
| | TEST_CASE ("ElementTraits: standard coordinates have correct dimensions") |
| |
| | TEST_CASE ("ElementTraits: face definitions are consistent for 2D elements") |
| |
| | TEST_CASE ("ElementTraits: face definitions are consistent for 3D elements") |
| |
| | TEST_CASE ("ElementTraits: ExtractFaceNodes works correctly") |
| |
| | TEST_CASE ("ElementTraits: order elevation data is consistent for O1 elements") |
| |
| | TEST_CASE ("ElementTraits: order elevation data for specific elements") |
| |
| | TEST_CASE ("ElementTraits: O2 elements do not have further elevation") |
| |
| | TEST_CASE ("ElementTraits: ExtractElevNodeSpanNodes works correctly") |
| |
| | TEST_CASE ("ElementTraits: bisection data is valid for O2 elements") |
| |
| | TEST_CASE ("ElementTraits: VTK conversion works correctly") |
| |
| | TEST_CASE ("ElementTraits: VTK node order is a valid permutation for simple elements") |
| |
| | TEST_CASE ("Shape functions: partition of unity") |
| |
Comprehensive doctest-based unit tests for element traits and shape functions.
Tests cover: A. ElementTraits data integrity:
- Basic identification fields (elemType, dim, order, etc.)
- Standard coordinates consistency
- Face definitions (GetFaceType, faceNodes)
- Order elevation (elevatedType, elevSpans, elevNodeSpanTypes)
- Bisection refinement (numBisect, bisectElements)
- VTK compatibility (vtkCellType, vtkNodeOrder)
B. Shape function correctness:
- Partition of unity: sum_j N_j(p) == 1
- Nodal interpolation: N_i(node_j) == delta_ij
- First derivative consistency (FD vs analytic)
- Second derivative consistency (FD of D1)
This is a serial test (no MPI required).
Definition in file test_Elements.cpp.