Plate with a circular hole under uniaxial tension — Kirsch#
Kirsch’s 1898 analytical solution gives the canonical stress-
concentration factor K_t = 3 for an infinite plate under
uniaxial tension σ_∞ containing a circular hole. The
stress peaks at the hole edge at the points perpendicular to
the applied tension (θ = ±π/2):
In Cartesian coordinates, at the hole top (x=0, y=a) the
local tangential direction is -x, so the peak stress shows
up as σ_xx = 3σ_∞. Traction-free hole edge: σ_rr = 0,
which in the same basis is σ_yy = 0 at the hole top.
The factor of 3 is the stress-concentration benchmark used across every structural FEA verification manual.
Problem#
Parameter |
Value |
|---|---|
Hole radius |
0.1 m |
Plate half-width |
1.0 m ( |
Out-of-plane thickness |
0.01 m (plane stress) |
Young’s modulus |
210 GPa |
Poisson’s ratio |
0.30 |
Remote tension |
10 MPa (in +x) |
Expected |
30 MPa ( |
femorph-solver result#
Ran by tests/validation/test_plate_with_hole.py using
the QUAD4_PLANE plane-stress kernel on a quarter-symmetry
mesh. Parametric grid: radial-graded mapping from the hole
boundary to the square outer boundary, with a geometric stretch
(q = 1.25) that concentrates nodes near the hole where the
stress gradient is steep.
Refinement |
|
|
Δ vs |
|---|---|---|---|
Coarse |
16 × 8 |
30.70 |
+2.32 % |
Medium |
32 × 12 |
31.50 |
+5.00 % |
Reference |
64 × 20 |
30.98 |
+3.25 % |
Converges to within ~3 % of K_t = 3 σ_∞ at the reference
mesh — inside the 10 % engineering tolerance that accommodates
the finite-width correction at a / W = 0.1 (Peterson gives
\(K_t \approx 3.04\) for this ratio).
σ_xx is recovered from forward-difference strain estimates
on the parametric grid: ε_xx = u_x(θ_idx) / x(θ_idx) (y-
axis symmetry forces u_x(0, y) = 0; the next θ-node has
x > 0) and ε_yy = (u_y(rad_idx) - u_y(hole_top)) / Δy.
The framework’s compute_nodal_stress helper doesn’t yet
cover plane-element kernels (tracked as VERIFY-BLOCKED task
#177); this benchmark uses the local FD extraction pending
that fix.
Cross-references#
Source |
Reported |
Problem ID / location |
|---|---|---|
Closed form (Kirsch 1898) |
30.00 |
|
Timoshenko & Goodier (1970) |
30.00 |
Theory of Elasticity §35 |
Peterson (2008) — finite width |
≈ 30.4 |
|
femorph-solver (reference mesh) |
30.98 |
|
MAPDL Verification Manual |
≈ 30.0 |
VM-74 Stress concentration around a hole |
Abaqus Verification Manual |
≈ 30.0 |
AVM 1.3.6 plate-with-hole family |
NAFEMS |
≈ 30.0 |
NL2 plate-with-hole (linear-elastic limit) |
Source#
Problem class:
femorph_solver.validation.problems.PlateWithHole.
Backing regression test:
tests/validation/test_plate_with_hole.py.