Frictional Contact on Material Particles
Previously, we discussed applying boundary conditions directly on the Eulerian grid nodes. While this approach is natural due to the grid nodes being the true degrees of freedom (DOFs) where Newton's second law is enforced, it suffers from several inherent issues:
- Normal Estimation Error: For coarse grids, estimating accurate surface normals becomes challenging, potentially resulting in incorrect contact responses.
- Contact gap (dx gap): Grid-based collision handling responds even when grid nodes are within approximately one grid cell spacing from collision surfaces, leading to visible gaps and earlier collision responses.
Given that the Material Point Method (MPM) discretizes solids directly into a set of material particles, it is more intuitive—and potentially more accurate—to handle frictional contact directly at the particle level. However, it is not physically consistent to simply compute collision forces and friction at particles and then directly transfer them (via P2G) to the grid, because this naïve approach bypasses the correct enforcement of Newton’s second law on the grid DOFs, potentially resulting in unphysical responses, particularly failing to properly enforce static friction constraints.
Instead, a more robust strategy is to formulate the frictional contact problem at the grid level explicitly as an optimization problem, taking advantage of the particle-based definition of collision energies or penalty functions. This leads us to adopt a two-stage time-splitting numerical scheme.
Two-Stage Time-splitting Optimization Scheme
Stage 1: Free-motion velocity
In the first stage, we ignore contact constraints entirely and compute the intermediate "free-motion" nodal velocity on grid nodes, which would occur in the absence of any contact forces. These velocities can be conveniently obtained via a standard symplectic Euler time integration step.
Stage 2: Frictional Contact via Optimization
In the second stage, frictional contact is enforced by solving a constrained linearized momentum balance around the free-motion velocity :
Here:
-
is the mass matrix.
-
is the contact Jacobian defined at the particle level, it maps grid nodal velocities to particle-level contact velocities. Specifically, each contacting particle contributes a local Jacobian matrix: Stacking all these individual Jacobians produces the global contact Jacobian , which collectively relates all particle contact velocities to grid velocities as: Intuitively, can be understood as a special Grid-to-Particle (G2P) transfer operator linearized at the current configuration, directly encoding how infinitesimal changes in grid nodal velocities affect the particle velocities (normal and tangential components) at contact points.
-
represents contact forces (normal and tangential) subject to friction cone constraints.
This linear system can be reformulated into an unconstrained optimization problem:
Possible contact energy formulations for include the Logarithm Barrier Potential and Semi-Implicit Friction.