Model Reduction for Nonlinear Systems
Linear modal analysis is remarkably efficient, but its underlying assumption of small deformations is a major limitation. For simulating visually rich phenomena like buckling, large bending, or twisting, a linear model produces severe visual artifacts. As shown in the previous section, a simple linear model fails to capture the natural foreshortening that occurs when an object bends, resulting in an unrealistic extension of length and volume. To correctly capture these essential nonlinear effects, we must apply model reduction to the full nonlinear equations of motion.
Projecting the Nonlinear Equations
The equation of motion for a general hyperelastic object, including damping, is:
Here, the linear elastic force is replaced by a general internal force function , which can be a complex nonlinear function of the displacements . This nonlinearity can arise from the material model (stress-strain relationship) or from the strain measure itself (geometric nonlinearity).
We follow the same projection-based procedure as in the linear case. We assume the existence of a suitable basis matrix (where )—more on the choice of basis in the next section-and approximate the full-space displacements using the reduced coordinates :
Substituting this into (26.3.1) and pre-multiplying by to project the dynamics onto the subspace yields the reduced nonlinear equation of motion:
Assuming we have constructed a mass-orthonormal basis such that , this simplifies to:
where:
- is the reduced damping matrix.
- is the reduced internal force vector.
- is the reduced external force vector.
Unlike the linear case, the reduced system in (26.3.2) is no longer a set of independent 1D oscillators. The reduced internal force is a nonlinear function that couples all the components of . This introduces two critical questions:
- How do we efficiently time-step this coupled, nonlinear system?
- How do we choose an effective basis that can represent nonlinear deformations? (next section)
Timestepping and the Evaluation Bottleneck
To solve (26.3.2) we typically use an implicit time integration scheme, which is necessary to handle the high-frequency stiffness common in elastic systems. An implicit step requires solving a linear system involving the derivative of the forces. For our reduced system, this means we need the reduced tangent stiffness matrix, :
Using the chain rule, we can relate this to the full-space tangent stiffness matrix :
At each time step, an implicit integrator will solve a dense linear system involving . Since , this is a monumental improvement over solving the original sparse system.
However, a major computational challenge emerges: how do we compute and efficiently? The naive approach is to:
- Take the current reduced coordinates .
- De-project to find the full-space deformation: .
- Evaluate the full-space forces and stiffness by looping over all elements in the high-resolution mesh.
- Project back to the reduced space: and .
This process is extremely slow because step 3 still requires a full pass over the high-resolution mesh, completely defeating the purpose of model reduction. Even worse, computing the matrix products is both computation and memory intensive.
Accelerating Force Evaluation
To make nonlinear model reduction practical, we need a way to evaluate the reduced forces and stiffness matrices without ever forming their full-space counterparts.
Polynomial Fitting (for specific materials)
For certain material models, a highly efficient analytical approach is possible. For instance, in a geometrically nonlinear but materially linear model (e.g., St. Venant-Kirchhoff), each component of the full-space internal force vector is a cubic polynomial in the components of .
Since , it follows that the reduced force is also a cubic polynomial, but in the reduced coordinates . We can precompute the coefficients of this -variate cubic polynomial. At runtime, evaluating and its derivative simply involves evaluating these precomputed polynomials. The evaluation cost is for the forces and for implicit integration, which is manageable for small (e.g., ) and completely independent of the mesh size . Unfortunately, this approach is limited to materials where forces are low-degree polynomials.
Cubature (for general materials)
A more general and powerful solution is cubature [An et al. 2008]. The core insight is to re-examine how the reduced force is calculated.
The reduced energy is the full energy evaluated within the subspace:
The reduced internal force is the gradient of this reduced energy with respect to the reduced coordinates . By moving the derivative inside the integral, we find:
This shows that the reduced force is the integral of the reduced energy density gradient over the object's volume. The projection is implicitly included within the derivative via the chain rule.
Instead of computing this integral exactly by summing contributions from all finite elements, cubature approximates it with a weighted sum over a very small number, , of pre-selected sample points (or "quadrature points") :
The number of cubature points can be surprisingly small (often on the order of ) while still yielding a highly accurate approximation. The points and their non-negative weights are optimized in a precomputation step to best match the true reduced forces over a set of representative "training" poses.
At runtime, evaluating the reduced forces and stiffness only requires looping over these points. The cost becomes independent of the original mesh resolution , making fast simulation of complex, nonlinear materials feasible.
You can notice that it might be very important how we choose the basis s.t. we can most effecitvely represent the space of non-linear deformations. This will be discussed in the following section!