Contents
Validation
Examples

Validation / 10 of 10

Cook's membrane

Cook's membrane (1974) is a tapered panel, clamped on one edge and sheared on the other. It has no closed-form solution. The finite element literature uses it because it combines bending and shear on a mesh that cannot be rectangular, which exposes elements that lock or lose accuracy when distorted.

Cook's membrane: displacement magnitude |u| on the deformed shape, displacements drawn 0.2 times enlarged
0.0029.9
Displacement magnitude |U|, deformed shape, displacements drawn 0.2 times enlarged. Drawn from the analysis file that Open in KoFEM loads.
Top-corner deflection; reference converged ≈ 23.9
Reference KoFEM Difference
23.900 24.042 +0.59 %
within ±6 %

Open in KoFEMOpens the solved model in the app.

The problem

𝐹 C (48, 60) (0, 0) (0, 44) (48, 44) 𝑥𝑦
Trapezoid (0, 0)–(48, 44)–(48, 60)–(0, 44), thickness t. Sketch, not to scale; thin lines show the element mesh.
t1
E1
ν0.333333
F1
Supportsx = 0 face fixed (Ux, Uy, Uz).
LoadF in +y as a force on the x = 48 face.
Measuredy-displacement of the corner (48, 60).

Analytical solution

The panel is the quadrilateral with corners (0, 0), (48, 44), (48, 60) and (0, 44), of unit thickness, with E=1 and ν=1/3. A total shear force F=1 is spread uniformly over the right edge, and the left edge is clamped. All quantities are dimensionless. The result compared is the vertical displacement of the top-right corner C.

Without an analytical solution, the reference is the converged value of very fine plane-stress meshes reported in the literature, about 23.9.

The panel behaves like a short, tapered cantilever: span 48, depth tapering from 44 to 16. Linear elements lock in its bending, as in the cantilever, and every element is skewed, so elements whose accuracy depends on rectangular shapes do poorly. Coarse meshes of simple elements land far below 23.9.

Finite element model

Mesh16 × 16 grid, 1 through t: 256 linear 8-node hexahedra (P1)
Unknowns578 nodes, 1,734 degrees of freedom
MaterialLinear elastic, isotropic
SolverKoFEM engine (MFEM), the WebAssembly build the app runs: engine-5ceb743373dd

KoFEM is a 3-D solver, so the panel is a slab of thickness t=1 with one element through the thickness, clamped over the whole x=0 face. The load F is a force on the x=48 face, integrated as a uniform traction, and the result is the mean vertical displacement of the two nodes at C.

Results

Quantitytop-corner deflection
Referenceconverged ≈ 23.9 (Cook (1974))
KoFEM24.042
Difference+0.59 % within ±6 %

Finer meshes move past the reference (see the convergence study): a regression check, not evidence of accuracy.

Mesh convergence: Cook's membrane

P1 (linear)P2 (quadratic)below the referenceabove
|difference| % 100 1k 10k 100k 0.1 1 10 100 tolerance ±6 % P1 (linear), 4 × 4: 150 DOFs, difference −26.27 %P1 (linear), 8 × 8: 486 DOFs, difference −7.40 %P1 (linear), 16 × 16: 1,734 DOFs, difference +0.59 % (the example's mesh)P1 (linear), 32 × 32: 6,534 DOFs, difference +3.49 %P1 (linear), 64 × 64: 25,350 DOFs, difference +4.56 %P2 (quadratic), 2 × 2: 225 DOFs, difference −1.93 %P2 (quadratic), 4 × 4: 729 DOFs, difference +2.43 %P2 (quadratic), 8 × 8: 2,601 DOFs, difference +4.27 %P2 (quadratic), 16 × 16: 9,801 DOFs, difference +5.30 % degrees of freedom
Difference from the reference on refined meshes, logarithmic axes. The ringed point is this example's mesh.

Both orders rise past the 23.9 reference under refinement, so the pass on the 16 × 16 CI mesh is a cancellation of errors; treat this case as a regression check until the reference is reconciled.

Data
Order Mesh DOFs KoFEM Difference
P1 (linear) 4 × 4 150 17.621 −26.27 %
P1 (linear) 8 × 8 486 22.132 −7.40 %
P1 (linear) 16 × 16 (this example) 1,734 24.042 +0.59 %
P1 (linear) 32 × 32 6,534 24.734 +3.49 %
P1 (linear) 64 × 64 25,350 24.989 +4.56 %
P2 (quadratic) 2 × 2 225 23.439 −1.93 %
P2 (quadratic) 4 × 4 729 24.481 +2.43 %
P2 (quadratic) 8 × 8 2,601 24.920 +4.27 %
P2 (quadratic) 16 × 16 9,801 25.166 +5.30 %

Discussion

On the 16 × 16 case mesh KoFEM gives 24.04, which differs from 23.9 by +0.59 %. The convergence study shows that this agreement is partly coincidence. Under refinement both linear and quadratic elements move past the reference, to 24.99 (linear, 64 × 64) and 25.17 (quadratic, 16 × 16), and they have not yet levelled off at a common value.

A converging discretisation of the same problem would approach one value from both element orders. So the 3-D model here is not yet the problem the 23.9 reference solves. Possible causes, not yet resolved, are the 3-D slab clamped over a face versus the 2-D plane-stress model, and the clamp itself, which fixes all three displacement components along the edge rather than the in-plane ones only. Until this is reconciled the example is a regression check: it catches a change in the solver's answer, but it is not evidence of accuracy.

Reproduce

In the app: open the model, then Studies → Static 1 → Run static solve, select the result plot and set Field to Uy. The Result summary shows Max Uy 2.404e+1 mm.

From a clone (Node.js 20+, bash, curl), this solves the model with the same engine and prints its line:

git clone https://github.com/mkofler96/KoFEM.git && cd KoFEM
bash scripts/fetch-wasm-engine.sh
node examples/validation/run.mjs --case cooks-membrane
Case                                  Quantity                                  FE   Reference     Err%  Tol%  Status
Cook's membrane                       top-corner deflection                 24.042      23.900    +0.59     6  PASS

References

  1. R. D. Cook, “Improved two-dimensional finite element”, Journal of the Structural Division (ASCE) 100 (1974) 1851–1863.
  2. R. D. Cook, D. S. Malkus, M. E. Plesha and R. J. Witt, Concepts and Applications of Finite Element Analysis, 4th ed., Wiley, 2002.

KoFEM is research software and is not certified for safety-critical design. It solves linear-static, linear-elastic problems. Check results that matter against your own references.