AgentFEM 0.2.3¶
AgentFEM 0.2.3 adds a native small-strain axisymmetric solid route and strengthens the scientific controls around implicit creep. A revolved solid is now declared through the ordinary public workflow:
study = studies.static_solid(dimension=2, assumption="axisymmetric")
model = models.FEMProblem("thick-cylinder", study=study)
The meridian unknown remains readable as (u_r, u_z), while the formulation
retains full (r, theta, z) strain and stress components and lowers physical
integrals with the full-revolution 2*pi*r measure. The same semantics apply
to stiffness, pressure and total-force loading, energy, result integrals,
standard field projection, J2 plasticity, and global power-law creep.
Verification evidence¶
- The analytical Lamé thick-cylinder benchmark exercises the native
axisymmetric kinematics, full tensor recovery, loading, and result measures.
Four quadratic radial cells keep the sampled radial, hoop, and axial stress
errors below
0.03%. - The NAFEMS R0027 Test 7 route now uses the native axisymmetric formulation.
Its
0.5%endpoint-integration contract is an AgentFEM acceptance criterion, not a tolerance prescribed by NAFEMS. The public Abaqus comparison reports differences rather than a pass/fail threshold: up to1.84%radial stress for CAX8R (1.85%for CCL24R) and1.00%hoop stress in its tabulated locations. - The stateful thick-cylinder J2 path exercises first yield, quadrature state, nonlinear equilibrium, and serial/two-rank equivalence.
- The global implicit creep step now separates Newton convergence, accepted CEEQ increment control, and endpoint creep-rate time-integration accuracy. Every rejected attempt restores displacement, quadrature state, stress, tangent, load, temperature, and time atomically.
Public modeling semantics¶
Models whose meridian reaches the axis register
constraints.axisymmetric_axis(...), making radial regularity visible to
validation and agents. The long-cylinder specialization can declare
constraints.axisymmetric_plane_strain(...). Negative radii are rejected, and
unsupported axisymmetric remote/distributing coupling semantics fail explicitly
instead of silently treating a revolved ring as a Cartesian face.
Release boundary¶
This release establishes small-strain axisymmetric elasticity, J2 plasticity, and power-law creep. It does not yet claim finite-strain axisymmetry, axisymmetric contact, general ring/reference-point coupling, or a universal acceptance tolerance for NAFEMS benchmarks.
The release candidate is accepted only after the complete serial suite, distributed MPI tests, scientific-knowledge audit, strict documentation build, distribution inspection, installed-wheel identity check, project-template loop, and release workflow smoke tests pass.