NAFEMS LE1 — elliptic membrane under outward pressure ======================================================= One of the classical NAFEMS linear-elastic benchmarks. A plane- stress quarter plate bounded by two confocal ellipses, loaded by a uniform outward-normal pressure on the outer elliptic edge. The benchmark reports the hoop stress :math:`\sigma_{yy}` at point D (``x = 2, y = 0`` — the x-axis stub of the inner ellipse), which NAFEMS gives as the cross-solver reference value for this geometry. Problem ------- .. list-table:: :header-rows: 1 :widths: 30 70 * - Parameter - Value * - Inner ellipse semi-axes - ``a = 2.00 m``, ``b = 1.00 m`` * - Outer ellipse semi-axes - ``a = 3.25 m``, ``b = 2.75 m`` * - Out-of-plane thickness - 0.1 m (plane stress) * - Young's modulus ``E`` - 210 GPa * - Poisson's ratio ``ν`` - 0.30 * - Outer-edge pressure - 10 MPa (outward normal) * - Symmetry BCs - ``UY = 0`` on x-axis, ``UX = 0`` on y-axis * - Reference point D - ``(2, 0)`` — inner-ellipse stub * - Published ``σ_yy`` at D - 92.7 MPa Analytical reference -------------------- No closed-form solution exists; the benchmark value is the converged cross-solver result NAFEMS published in 1988 after an inter-comparison exercise across multiple commercial codes. femorph-solver result --------------------- Ran by :file:`tests/validation/test_nafems_le1.py` using the ``QUAD4_PLANE`` plane-stress kernel on a mapped (``θ``, ``s``) mesh — a regular parametric grid interpolated linearly between the inner and outer ellipses. Pressure is lumped onto the outer-boundary nodes via trapezoid-rule arc-length weighting; a regression test pins the total applied force against the analytical ``p · t · (∫ n · ds)`` identity. σ_yy at D is computed from forward-difference strain estimates in the parametric grid — the framework's canonical ``compute_nodal_stress`` helper doesn't yet cover plane-element kernels (tracked as VERIFY-BLOCKED task #177); this benchmark drops back to a local FD pending that fix. .. list-table:: :header-rows: 1 :widths: 25 25 25 25 * - Refinement - ``n_θ × n_r`` - ``σ_yy`` at D (MPa) - Error vs NAFEMS * - Coarse - 16 × 4 - 91.77 - −1.01 % * - Medium - 32 × 8 - 94.70 - +2.16 % * - Reference - 64 × 16 - 94.84 - +2.31 % * - Refined - 128 × 32 - 94.15 - +1.56 % Converges to within 2 % of the NAFEMS reference at every refinement beyond the coarsest — comfortably inside the 8 % engineering tolerance. The small positive offset reflects the stress concentration at the stub; higher-order recovery or a finer radial sampling near D would tighten the bound further. Cross-references ---------------- .. list-table:: :header-rows: 1 :widths: 35 30 35 * - Source - Reported ``σ_yy`` at D (MPa) - Problem ID / location * - NAFEMS R0015 §2.1 - 92.7 - LE1 *Elliptic membrane under outward pressure* * - NAFEMS R0013 (methodology) - 92.7 - *Background to Benchmarks* companion * - femorph-solver (refined) - 94.15 - :file:`test_nafems_le1.py` * - MAPDL Verification Manual - ≈ 92.7 - NAFEMS LE1 plane-stress membrane entry * - Abaqus Verification Manual - ≈ 92.7 - AVM 1.3.x elliptic-membrane family Source ------ Problem class: :class:`femorph_solver.validation.problems.NafemsLE1`. Backing regression test: :file:`tests/validation/test_nafems_le1.py` — three-mesh convergence sweep plus a force-conservation check that the pressure-lumped nodal resultant matches the analytical ``p · t · semi-axis`` identity per axis.