hermit.fenics.stress ==================== .. py:module:: hermit.fenics.stress .. autoapi-nested-parse:: Through-thickness stress recovery for the R-M shell (isotropic). Port of ``ShellStressRM`` from femo dev_coupling. Used only for stress postprocessing; needs the isotropic ``E``, ``nu`` (so composite stress recovery is a separate future concern). All gradients are plain ``ufl.grad``. .. !! processed by numpydoc !! Classes ------- .. autoapisummary:: hermit.fenics.stress.ShellStressRM Module Contents --------------- .. py:class:: ShellStressRM(mesh, w, h_th, E, nu, *, strains=None) Build isotropic through-thickness stress recovery. ``strains=(eps_mid, kappa, gamma)`` lets the shell form supply its own kinematics. The fallback preserves the existing constructor surface while using the same constant-normal definitions. .. !! processed by numpydoc !! .. py:method:: cauchy(xi2) .. py:method:: eps(xi2) .. py:method:: gamma_2(xi2) Transverse shear, constant through the thickness for RM kinematics. When the shell form supplies its strains, use its ``gamma`` rather than recomputing: the local form here differentiates ``u(xi2)``, which carries a ``xi2 * grad(E2)`` term that is non-zero on a warped cell under rigid-body motion -- the same defect as issue #7, in the shear slot. The supplied ``gamma`` is built from ``grad(u_mid)`` and cancels exactly. .. !! processed by numpydoc !! .. py:method:: inplane_stress(xi2) .. py:method:: u(xi2) .. py:method:: von_mises(xi2) .. py:attribute:: Dmat .. py:attribute:: E01 .. py:attribute:: E012 .. py:attribute:: G .. py:attribute:: mesh