h-refinement (mesh refinement)

Category: Analysis | Integrated 2026-04-06
CAE visualization for h refinement theory - technical simulation diagram
h-Refinement (Mesh Refinement)

Theoretical Foundations of h-Refinement

h, p, r — Three Kinds of Refinement

Three routes reduce mesh-related discretization error. h-refinement shrinks the element size \( h \) (more elements); p-refinement raises the polynomial order of elements; r-refinement relocates nodes without changing their count. Of these, h is the universal route — it works with any element type and any solver — and it underpins mesh convergence verification (GCI and friends).

🙋

My senior colleague just says "make everything twice as fine" — but I don't really understand what that buys me, or how much…


🎓

There's clean theory behind it: the order of convergence — how fast error shrinks with element size — is set by the element's polynomial order. Knowing it gives you quantitative predictions like "halving h should quarter the error," and deviations from the prediction tell you something is wrong. Refinement isn't busywork; it's an instrument for prediction and verification.

A Priori Error Estimates and Convergence Order

For sufficiently smooth solutions, the error of a finite element solution with elements of order \( k \) (linear elements: \( k=1 \)) satisfies

$$ \| u - u_h \|_{E} \le C\, h^{k}, \qquad \| u - u_h \|_{L^2} \le C\, h^{k+1} $$

(\( \|\cdot\|_E \) is the energy norm). So with linear elements, strains and stresses converge at \( O(h) \) and displacements at \( O(h^2) \); with quadratic elements, \( O(h^2) \) and \( O(h^3) \). Displacements converging before stresses is a consequence of this order gap — "displacement has settled but stress is still moving" is not an anomaly.

Singularities Cap the Convergence Rate

That clean convergence assumes smoothness. Re-entrant corners, point loads, point constraints, and bimaterial corner interfaces carry stress singularities where the solution regularity drops to \( u \sim r^{\lambda} \) with \( \lambda < 1 \). Uniform refinement then converges at only \( \min(k, \lambda) \) regardless of element order — no amount of refinement, and no higher-order element, will converge the stress value at the singular point. The correct choices are: ① round the corner (model the real fillet), ② move the evaluation point away, or ③ treat it with graded refinement plus extrapolation. Knowing where h-refinement cannot help is step one of using it well.

Numerical Methods of Refinement

Uniform vs. Local Refinement

Uniform refinement subdivides every element equally, producing the systematic sequences that convergence verification (GCI, Richardson extrapolation) wants; the cost is ~8× elements per level in 3-D. Local refinement subdivides only where error is large and is the workhorse of production analysis. Two implementation families:

  • Element subdivision — split existing elements (quadtree/octree, red-green, bisection). The node mismatch at neighbors is handled with hanging-node constraints or transition elements
  • Remeshing — update a size field and regenerate the region. Element quality is easier to keep, but nonlinear/history problems then need solution mapping, whose transfer error must be watched

Either way, new boundary nodes must be projected back onto the CAD geometry. Refining a faceted approximation of a circle without reprojection caps accuracy with geometry error — the classic reason a hole's stress concentration factor refuses to converge to theory.

The Adaptive h-Refinement Loop

Adaptivity iterates SOLVE → ESTIMATE → MARK → REFINE:

  1. SOLVE — compute the solution on the current mesh
  2. ESTIMATE — per-element error indicators: recovery-based (Zienkiewicz-Zhu superconvergent patch recovery — smoothed minus element stress) or residual-based
  3. MARK — select the worst elements (e.g., Dörfler marking: the subset carrying a fixed fraction of total error)
  4. REFINE — subdivide the marked elements and repeat

Stop when estimated error meets target or the goal quantity stops moving. Indicators are estimates, not truth — the final mesh still deserves a classical convergence confirmation (one more refinement level, check the change).

CFD Boundary-Layer Refinement Is Not Isotropic

Wall boundary-layer resolution is managed by first-layer thickness (\( y^+ \)) and growth ratio — isotropic uniform refinement destroys that design. Refine boundary layers anisotropically: add layers at fixed first-layer thickness, or reduce growth ratio, and re-check the \( y^+ \) map afterward. With wall functions there's even a trap where refinement makes things worse: pushing \( y^+ \) below ~30 violates the wall-function assumptions.

Practical Guidelines

Where to Refine — Rules of Thumb

RegionGuidelineWhy
Stress concentrations (fillets, hole edges)≥3 elements per 90° of arc; ≥3 layers across the gradient1–2 elements systematically underestimate the peak
Through-thickness (solids in bending)≥2 layers of quadratic elementsResolves the linear bending stress distribution
Contact surfacesRefine toward pressure-patch edgesEdge singularity of contact pressure
Load/constraint application zonesCoarse is fine if not evaluated (keep distance)Saint-Venant; refining a singularity doesn't converge anyway
Far fieldKeep coarseSpend elements where gradients are

Building a Systematic Refinement Series

A verification series should be "the same meshing philosophy scaled by a constant factor." Two practical recipes: ① scale global and local size controls by the same factor (1.5–2× recommended); ② use a mechanical uniform-subdivision feature. Avoid mixed series like "coarse mesh automatic, fine mesh hand-tuned" — the effective ratio then varies in space and the observed order becomes meaningless. Track element quality metrics per level to confirm refinement isn't degrading quality.

Cost Estimates and the Submodeling Escape Hatch

One uniform 3-D refinement level multiplies elements by 8 and direct-solver cost by more. When "one more level" is impossible, build the series only around the evaluation region — including via submodeling: solve the coarse global model, cut displacement boundary conditions to a finely meshed submodel of the hotspot, and verify convergence there. Complete the exercise by confirming the submodel boundary is far enough that moving it doesn't change the answer.

Refinement Features in Major Tools

Tool Support

ToolRefinement featuresField notes
Ansys MechanicalConvergence objects (result-driven auto-adaptivity), Sphere of Influence sizingPointing Convergence at a singular stress diverges forever — watch for it
AbaqusAdaptive remeshing (indicator-driven size fields), ALE adaptivityCheck solution-transfer error for nonlinear remeshing
COMSOL MultiphysicsPhysics-controlled meshing + built-in adaptive refinementGoal-quantity (functional) driven adaptivity available
OpenFOAMrefineMesh, snappyHexMesh regions, dynamic AMR (dynamicRefineFvMesh)Hanging nodes handled via face splitting; run checkMesh after
Nastran familyLimited native adaptivity; preprocessor size control is the leverManage systematic series on the mesher side

Verification Points When Using Auto-Adaptivity

🙋

If the tool refines automatically until convergence, do I even need manual mesh studies anymore?


🎓

Auto-adaptivity is powerful, but two premises still need a human. First, what it converges: the default target is "the result item you selected," which may not be the quantity your design decision uses. Second, singularities: point it at a singular stress and it refines forever, stops at the iteration cap, and hands you that value as "converged." Always plot the refinement history — value vs. iteration — and judge asymptote vs. divergence with your own eyes. Do that, and auto-adaptivity is a superb time-saver.

Research Frontiers

Goal-Oriented (Adjoint-Based) Adaptivity

Classical indicators reduce global energy-norm error, but engineering wants error in a goal quantity — lift coefficient, stress at a point. Dual-weighted residual (DWR) methods solve an adjoint problem to weight local errors by their influence on the goal, delivering target accuracy with far fewer elements. CFD lift/drag grid convergence is where implementations are most mature; the principled win is never wasting refinement on vortices that don't affect the goal.

hp-Adaptivity and Exponential Convergence

Raising p where the solution is smooth and grading h geometrically toward singularities — hp-adaptivity — achieves exponential error convergence in the number of DOFs even with singularities present. Implementation complexity has limited commercial penetration, but with spectral-element and high-order DG solvers maturing, it is becoming the standard for high-accuracy computation.

Fusion with Machine Learning

Replacing ESTIMATE→MARK with learned models is active research: predicting optimal size fields directly from coarse solutions, or learning refinement policies via reinforcement learning, cutting the number of adaptive cycles (solver calls). Learned size fields carry no guarantees, so they do not replace the final classical convergence confirmation — the same discipline as for surrogates throughout ML×CAE.

Troubleshooting

Symptoms, Causes, and Fixes

SymptomLikely causeFix
Stress keeps rising with refinementSingularity (re-entrant corner, point load/constraint)Stop targeting it; add the fillet, move the evaluation point, or switch to nominal/hot-spot methods
Element quality degrades with refinementAccumulated subdivision distortion; no CAD reprojectionSwitch to remeshing; enable geometry reprojection; log quality per level
Refined a lot, nothing improvedError budget dominated by something else (BCs, material, geometry idealization)Re-examine the error budget; see boundary condition verification
Adaptivity refines irrelevant regionsGlobal indicator misaligned with your goal quantitySwitch to goal-oriented settings or add manual sizing at the evaluation region
CFD wall heat transfer/friction worsened after refinementy+ left the wall-function validity rangeManage boundary layers anisotropically; keep wall treatment consistent
Observed order doesn't match theoryNon-systematic series, pre-asymptotic range, loose iterative convergenceApply the GCI troubleshooting procedure
Out of memory/time3-D uniform refinement is 8× per levelLocal refinement + submodeling; iterative solvers + parallelism

Ask First: Should You Refine?

🙋

So when in doubt, refining is always the safe move… right?


🎓

Safe, yes — effective, not necessarily. Total error is discretization error plus modeling error (boundary conditions, material data, geometry idealization) plus input uncertainty, and h-refinement only shrinks the first. If discretization is 10% of your error budget, paying 8× compute to halve it barely moves the total. So the order is: ① size the discretization error with GCI; ② refine if it dominates; ③ otherwise invest in modeling error and input uncertainty. Refinement is one instrument inside an error budget — not the goal itself.

Related: the GCI (three-mesh) procedure, code verification with MMS, solver convergence checks.

Related Simulators

Feel the theory hands-on with the interactive simulators in this field

Simulator Library

Related Fields

Structural AnalysisFluid AnalysisThermal Analysis
Rate this article
Thanks for your feedback!
Helpful
More
detail
Report
error
Helpful
0
More detail
0
Report error
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — Sitemap
View profile