Files
jyvikoandClaude Opus 5.5 8ca2dddeec verification: nonlinear oracle cases and the nonlinear solver's documentation
Theory cases for the nonlinear solver, each frozen as a fixture: uniaxial
stretch of a neo-Hookean block to twice its length (closed form), the
nonlinear patch test on a distorted hex8 mesh, a quarter turn of the same
mesh (objectivity: zero stress), the elastica of a hex20 cantilever at
P L²/(E I) = 1, 2, 5, 10 against Bisshopp–Drucker (0.2–0.5 %), and the
inflation of a thick neo-Hookean tube by a follower pressure against
Rivlin's closed form (0.08 % at the bore). A finite-strain Cook's membrane
is pending its transcribed reference. docs/fem.md describes the
formulation, the material point interface, the follower-pressure choice and
what nonlinear steps refuse; the literature, parity and roadmap pages
follow.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NmAttHhUZTokgPeEJia8sm
2026-10-14 04:00:21 -04:00

84 lines
2.0 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"title": "A quarter turn strains and stresses nothing (objectivity)",
"kind": "theory",
"source": "Objectivity of the total Lagrangian formulation and of the hyperelastic stress: a rigid motion x = R X + c gives C = I and σ = 0 whatever the rotation (Bonet & Wood 2008, §3.4 and §5.2; T. Belytschko, W. K. Liu, B. Moran, Nonlinear Finite Elements for Continua and Structures, 2nd ed., Wiley 2014, §5.5)",
"quantities": [
{
"id": "ux",
"quantity": "u_x at inner node 22: the rotation's",
"measure": {
"command": "solve.probe",
"params": {
"step": "Turn",
"nodes": [
22
]
},
"pointer": "/nodes/0/displacement/0"
},
"value": -0.011149180525904245,
"tolerance": {
"absolute": 1e-09
},
"reason": "the inner nodes follow the rigid rotation exactly"
},
{
"id": "uy",
"quantity": "u_y at inner node 22: the rotation's",
"measure": {
"command": "solve.probe",
"params": {
"step": "Turn",
"nodes": [
22
]
},
"pointer": "/nodes/0/displacement/1"
},
"value": 0.07859051161172886,
"tolerance": {
"absolute": 1e-09
},
"reason": "the inner nodes follow the rigid rotation exactly"
},
{
"id": "uz",
"quantity": "u_z at inner node 22: the rotation's",
"measure": {
"command": "solve.probe",
"params": {
"step": "Turn",
"nodes": [
22
]
},
"pointer": "/nodes/0/displacement/2"
},
"value": -0.06744133108582467,
"tolerance": {
"absolute": 1e-09
},
"reason": "the inner nodes follow the rigid rotation exactly"
},
{
"id": "von_mises",
"quantity": "von Mises stress at inner node 22",
"measure": {
"command": "solve.probe",
"params": {
"step": "Turn",
"nodes": [
22
]
},
"pointer": "/nodes/0/von_mises"
},
"value": 0.0,
"tolerance": {
"absolute": 1e-08
},
"reason": "zero up to rounding of stresses of order E = 1000: a 90° turn leaves no strain"
}
]
}