Discrete Differential & Computational Geometry

discrete mean curvature

Mean curvature on a smooth surface measures how much the surface bows in or out on average — it is the quantity a soap film makes zero. To get an honest discrete version on a triangle mesh, the trick is not to fit a smooth surface and differentiate, but to ask: in which direction, and how strongly, does the surface want to move to shrink its area fastest? That direction-and-strength is the discrete mean curvature normal, and it falls out of the cotangent formula.

The cleanest definition uses the gradient of surface area. For a vertex v_i with neighbors v_j, the discrete mean-curvature normal is H(v_i) * N = (1 / (2*A_i)) * sum over neighbors j of (cot(alpha_ij) + cot(beta_ij)) * (v_i - v_j), where alpha_ij and beta_ij are the two angles opposite the edge (i, j) in the two triangles sharing it, and A_i is the area of the dual cell around v_i (often the Voronoi or mixed area). This vector points along the surface normal, its length is the mean curvature magnitude, and — crucially — it is exactly minus the gradient of total area with respect to v_i. So mean-curvature flow, which moves each vertex in the direction that decreases area fastest, is literally d v_i / dt = -H(v_i)*N, and this same cotangent expression is the cotangent Laplacian applied to the coordinate functions.

Discrete mean curvature is the engine of mesh smoothing, fairing, and minimal-surface computation: a mesh is discretely minimal exactly when this vector vanishes at every vertex, the discrete soap-film condition. Two honesty points matter. First, mean curvature is extrinsic — unlike the intrinsic angle defect, it depends on how the surface sits in R^3, so it is not determined by edge lengths alone but by the actual vertex positions. Second, there are several competing discretizations (cotangent/area-gradient, the Steiner/edge-based normal-cycle approach, and others) that agree in the refinement limit but differ on coarse meshes; do not assume two codes' 'mean curvature' fields are the same object.

On a flat region of a mesh, every cot(alpha) + cot(beta) weighted sum of (v_i - v_j) cancels and H = 0 — a plane is discretely minimal, as a soap film should be. Run the flow d v_i/dt = -H(v_i)*N on a noisy scan and the high-frequency bumps, which have large |H|, are smoothed away first; this is exactly mean-curvature (Laplacian) mesh smoothing.

The mean-curvature normal is minus the area gradient, so following it shrinks area and smooths the mesh.

Mean curvature is extrinsic and sign-convention sensitive: whether H is positive on a sphere depends on the outward-vs-inward normal choice, and the leading factor (H vs 2H, mean vs sum of principal curvatures) varies between sources. Always pin down the normal orientation and the normalization before comparing numbers.

Also called
mean curvature normalcotangent mean-curvature vector平均曲率法向量離散平均曲率向量