Minimal Surfaces & Catenaries
Minimal Surface Principles:
H = 0 everywhere across the 2-manifold interior. 2. Negative Gaussian Curvature: K = κ_1 κ_2 = -κ_1^2 ≤ 0 produces pure saddle (anticlastic) geometry. 3. Uniform Stress Tensor: Surface tension is constant and isotropic in every tangent direction.1import numpy as np23def solve_minimal_surface_dirichlet(vertices, fixed_boundary_indices, L_cot, max_iter=30):4 """5 Solves Plateau's problem for minimal surfaces (zero mean curvature H = 0).6 Minimizes Dirichlet energy E(V) = 0.5 * Tr(V^T * L_cot * V) by iteratively7 relaxing interior vertices to the cotangent-weighted average of their 1-ring neighbors.8 """9 V = np.array(vertices, dtype=float, copy=True)10 fixed_set = set(fixed_boundary_indices)11 free_ids = [i for i in range(len(V)) if i not in fixed_set]1213 for _ in range(max_iter):14 for i in free_ids:15 # Off-diagonal entries of L_cot hold negative cotangent weights -w_ij16 row = L_cot[i].copy()17 diag = row[i]18 row[i] = 0.019 if abs(diag) > 1e-12:20 V[i] = -np.dot(row, V) / diag21 return V
Minimal Surfaces (Plateau's Problem & Soap Films): A soap film spanning a wire boundary naturally contracts to minimize its surface area due to isotropic surface tension. Mathematically, this satisfies Plateau's problem: the mean curvature vanishes everywhere (H = (1 / 2)(κ_1 + κ_2) = 0), creating saddle geometry where principal curvatures are equal and opposite. Frei Otto utilized physical soap films to pioneer lightweight tensile membrane architecture (e.g. 1972 Munich Olympic Stadium).
Catenary Principles:
y = a cosh(x/a). 2. Zero Bending Moment: Line of thrust coincides exactly with the centroidal axis of the structure. 3. Inversion Duality: Pure gravity tension transforms into pure structural compression.1import math23def catenary_curve(x_span=4.0, sag=1.5, num_nodes=25):4 """5 Computes exact hyperbolic cosine catenary curve y(x) = a * (cosh(x / a) - 1)6 by solving a * (cosh(span / (2a)) - 1) = sag via Newton-Raphson iteration.7 Inverted (-y), this produces Hooke & Gaudi's pure compression arch (M = 0).8 """9 half_l = 0.5 * x_span10 # Initial guess for catenary parameter a = H / w from parabolic approximation11 a = (half_l ** 2) / (2.0 * max(sag, 1e-5))12 for _ in range(15):13 u = half_l / a14 f_val = a * (math.cosh(u) - 1.0) - sag15 df_da = math.cosh(u) - 1.0 - u * math.sinh(u)16 a -= f_val / (df_da - 1e-12)1718 y_anchor = a * (math.cosh(half_l / a) - 1.0)19 coords = []20 for i in range(num_nodes):21 x = -half_l + (i / (num_nodes - 1)) * x_span22 y_hang = a * (math.cosh(x / a) - 1.0) - y_anchor23 coords.append((x, y_hang, -y_hang)) # (x, hanging_y, inverted_arch_y)24 return coords
Inverted Catenary Chains (Hooke & Gaudí): In 1675, Robert Hooke formulated his famous principle: "As hangs a flexible cable, so inverted stands the rigid arch." Because a flexible chain cannot resist bending, it self-organizes under gravity into a state of pure axial tension. Flipping this geometry 180° vertically yields the ideal structural arch where every cross-section is in pure compression with zero bending moments (M = 0). Antoni Gaudí used multi-tier stereostatic hanging models to design the Crypt of Colònia Güell and the Sagrada Família.
Related Concepts
Thrust Network Analysis, graphic statics, minimal surfaces, and catenary arches.
Interactive geometrical visualization of No-Fit Polygons and Bottom-Left-Fill sheet packing.
Planar quad meshes, conical offsets, developable unrolling, and geodesic grids.