Self-Contact

With triangle discretization, the boundary of the domain is approximated as a polyline formed by a set of edges. Let us denote this set of boundary edges as , and the barrier potential becomes:

Here, is the set of edges that contain . Completely ignoring these edges is a specific choice of under the current discretization. The term is simply the point-edge distance , which can be calculated as either a point-point distance or a point-line distance depending on the relative positions of the point and the edge.

As we know, the barrier energy density function is already a smooth approximation to the discontinuous normal contact forces that prevent interpenetration between two colliding points. However, when considering self-contact between discrete surfaces (piecewise linear here), the non-smooth operator on point-edge distances is inevitable. This non-smoothness can still pose challenges for optimization time integrators.

To obtain a smooth barrier potential even in the case of piecewise linear boundaries, we first transform the operator to a operator, as the energy density function is a non-ascending function everywhere in the domain. This gives us:

Next, we need to smoothly approximate the operator. A straightforward choice is to use the smooth max function, such as the -norm function:

with sufficiently large. However, the exponent will couple multiple inputs together, increasing the stencil size and making the Hessian less sparse, which will make the simulation more computationally expensive.

Fortunately, due to the local support of , where the contact force only exists for distances smaller than , using is sufficient. With a relatively small , there will only be some redundant contact forces at the interface of boundary elements (Figure 20.3.1).

Figure 20.3.1. In this simple two-edge illustration, the yellow and green regions are only counted once by the summation, but the blue region and the yellow-green overlap are counted twice. If we subtract once the blue region, then for the right-top boundary (convex), it becomes perfect, but for the left-bottom boundary (concave), we can still see some overlap that are counted twice.

Since the overlapping supports of from multiple boundary elements can be clearly identified, it is also possible to subtract the redundant barrier potentials in those regions, as discussed in detail in [Li et al. 2023]. For this book, let us keep it simple by using with the -norm formulation, which is just summation:

Approximating the integral under triangle discretization and picking the end points of each boundary edge as the quadrature points, we obtain the fully discrete form:

Similar to the solid-obstacle contact cases, can be derived by taking the derivative of the whole contact potential with respect to the nodal degrees of freedom (DOFs).