Fracture Mechanics — When Materials Fail
Why does a cracked windshield grow catastrophically while a scratch in steel stays put? Fracture mechanics answers this with energy arguments, stress intensity factors and the Paris law — giving engineers quantitative tools to predict when a crack will propagate.
▶ Open Fracture Simulation1. Griffith's Energy Criterion
In 1921, Alan Griffith observed that real materials fracture at stresses far below their theoretical strength. His insight: a crack introduces a stress concentration but also releases elastic strain energy. A crack grows when the energy released exceeds the energy needed to create new fracture surfaces.
For a through-crack of half-length a in an infinite plate under remote stress σ, the strain energy release rate is:
The surface energy per unit area is γ (J/m²). The crack propagates when G ≥ Gc, where Gc = 2γ is the critical energy release rate:
This Griffith criterion reveals the key insight: fracture stress scales as 1/√a. Double the crack length → fracture at 71% of the original stress.
2. Stress Intensity Factor K
Griffith's energy approach works globally, but we need a local description of the stress field near a crack tip. Irwin (1957) showed that for any crack geometry, the singular stress field has the form:
where r is the distance from the crack tip, θ is the angle, and fij(θ) are dimensionless angular functions. The stress intensity factor K captures everything about the loading and geometry:
Here Y is a dimensionless geometry factor (Y = 1 for an infinite plate, tabulated for other geometries). The singular 1/√r stress field is universal — only its amplitude K changes.
3. Crack Opening Modes
There are three fundamental ways a crack can open, each with its own K:
- Mode I (Opening) — tensile stress normal to the crack plane. Most critical for brittle materials. KI = σ√(πa).
- Mode II (In-plane Shear) — shear parallel to crack plane, perpendicular to crack front. KII = τ√(πa).
- Mode III (Out-of-plane Shear / Tearing) — shear parallel to crack front. Common in twisted shafts.
Real cracks are usually mixed-mode. The effective K is written as an equivalent Keff = √(KI² + KII² + KIII²/(1-ν)).
4. Irwin's Plastic Zone
The K-based stress field predicts infinite stress at r = 0 — physically impossible. In ductile materials, yielding limits the stress. Irwin estimated the plastic zone radius by setting σyy = σyield:
For plane strain (thick specimens), the plastic zone is smaller by a factor of ~3: rp,plane strain = rp/3. The condition for valid K-based LEFM (linear elastic fracture mechanics) is that the plastic zone is much smaller than other dimensions — specimen size requirements drive standard fracture toughness tests.
5. Fracture Toughness KIc
The material property that resists fracture is the critical stress intensity factor KIc (plane strain fracture toughness). A crack propagates when:
KIc has units of MPa·√m. The relationship to Griffith's Gc is:
6. Fatigue Crack Growth — Paris Law
Under cyclic loading, cracks grow at stress levels well below KIc. Paris and Erdogan (1963) found empirically that crack growth per cycle follows a power law:
where ΔK = Kmax − Kmin = Y · Δσ · √(πa) is the stress intensity range, and C, m are material constants (typically m ≈ 2–4 for metals).
The Paris law gives three regimes on a log(da/dN) vs log(ΔK) plot:
- Region I (threshold) — ΔK < ΔKth, crack does not grow. Important for infinite life design.
- Region II (Paris regime) — linear log-log relationship, crack grows steadily. Most fatigue life is spent here.
- Region III (fast fracture) — Kmax → KIc, rapid acceleration to final fracture.
Integrating the Paris law from initial crack size a0 to critical crack size ac = (KIc/Yσ)²/π gives the number of cycles to failure:
For m ≠ 2, this integral has a closed form:
7. 2D Implementation
A simple 2D fracture simulation can use a spring-lattice model: particles on a grid connected by springs. Each spring breaks when its strain exceeds a threshold εc = σy/E.
// Spring-lattice fracture (2D, canvas)
const N = 64;
const springs = buildLatticeConnections(particles, N);
function update(dt) {
// Verlet integration
for (const p of particles) {
const acc = computeForces(p, springs) / p.mass;
p.vel.add(acc.scale(dt));
p.pos.add(p.vel.scale(dt));
}
// Break springs that exceed strain threshold
for (const s of springs) {
const currentLen = dist(s.a.pos, s.b.pos);
const strain = (currentLen - s.restLen) / s.restLen;
if (Math.abs(strain) > STRAIN_THRESHOLD) {
s.broken = true;
}
}
}
function computeForces(p, springs) {
const f = new Vec2(0, 0);
for (const s of springs) {
if (s.broken) continue;
const other = s.a === p ? s.b : s.a;
const delta = other.pos.sub(p.pos);
const len = delta.length();
const extension = len - s.restLen;
f.add(delta.normalized().scale(s.stiffness * extension));
}
return f;
}
For more physically accurate fracture, XFEM (Extended FEM) enriches standard finite element shape functions with discontinuous functions across crack surfaces and singular crack-tip functions — avoiding re-meshing as cracks grow.
8. Material Comparison
| Material | KIc (MPa√m) | Paris m | Fracture type |
|---|---|---|---|
| Soda-lime glass | 0.7–0.8 | — | Brittle (Griffith) |
| Alumina (Al₂O₃) | 3–5 | ~15 | Brittle |
| Aluminium 2024-T3 | 26–35 | 3.0 | Ductile |
| Structural steel (A36) | 40–100 | 3.3 | Ductile |
| Ti-6Al-4V | 44–66 | 3 | Mixed |
| Polycarbonate | 1–2.5 | ~5 | Quasi-brittle |
Key insight: Crack length a appears under a square root in K = Yσ√(πa). This means doubling the crack length only increases K by ~41%, but once KIc is exceeded, fracture is instantaneous — giving brittle materials their characteristic sudden failure.