7.11 Nonlinear Constraints¶
Nonlinear constraints are equations of the form \(f\left(x_{i}\right)=0\), where \(x_{i}\) represent nodal degrees of freedom. These constraints may be enforced using the penalty method, with or without augmented Lagrangian, or the method of Lagrange multipliers. Each method has its own advantages and disadvantages.
Penalty Method with Augmented Lagrangian¶
The penalty method employs the penalty parameter \(\varepsilon\) to add \(W_{p}=\frac{1}{2}\varepsilon f^{2}\) to the total work, where \(\varepsilon\) serves as the 'stiffness' or spring constant in the 'spring' whose 'elongation' is \(f\), such that \(W_{p}\) represents the stored energy in the spring. The contribution to the virtual work for this type of analysis is \(\delta W_{p}=\varepsilon f\,\delta f\), where
If we are concerned that the value of \(\varepsilon\) may become too large to produce good numerical convergence, we may augment this expression by using \(\delta W_{p}=\left(\lambda+\varepsilon f\right)\delta f\), where \(\lambda\) is the Lagrangian augmentation parameter, which gets updated at each iteration to help us avoid using a value of \(\varepsilon\) that's too large. We may let \(c=\lambda+\varepsilon f\) represent the constraint that needs to be satisfied. Substituing eq.\eqref{eq:nlc-virtual-force} into this relation allows us to express \(\delta W_{p}\) in matrix form,
The linearization of \(\delta W_{p}\) along increments \(\Delta x_{i}\) of the degrees of freedom employs
and takes the form
The stiffness matrix for the penalty constraint is symmetric.
Lagrangian augmentation is performed after the (quasi-)Newton method has converged. At that time, the augmented Lagrangians are updated as follows
The penalty method with augmented Lagrangian does not increase the number of equations that need to be solved globally. However, it does require users to specify the parameter \(\varepsilon\), and to provide a convergence tolerance for Lagrange augmentation.
Example 1. For linear constraints of the form
we find that \(\frac{\partial f}{\partial x_{i}}=a_{i}\) and the second derivatives are all zero, so that the constributions to the global system of equations take the form
Method of Lagrange Multipliers¶
When using the method of Lagrange multipliers we have to include equations that solve for the multipliers. We let the work done by the constraint be represented by \(W_{c}=\lambda f\), where \(\lambda\) is the multiplier (if \(f\) is a vector equation, we can use \(W_{c}=\boldsymbol{\lambda}\cdot\mathbf{f}\)). The total work is then \(\widetilde{W}=W+W_{c}\) where \(W\) is the work of the unconstrained problem (i.e. the contributions from the internal and external forces.) Then, we evaulate the first varition of \(\delta\widetilde{W}=\delta W+\delta W_{c}=0\), where \(\delta W_{c}=\delta f+\delta\lambda\,f\). Since \(\delta f\) is given as per eq.\eqref{eq:nlc-virtual-force}, \(\delta W_{c}\) may be written in matrix form as
The linearization of \(\delta W_{c}\) along increments \(\Delta x_{j}\) and \(\Delta\lambda\) takes the form
The corresponding stiffness matrix is
This resulting system of equations requires \(\lambda\) to part of the solution, and to be updated at each iteration \(k\) according to \(\lambda^{\left(k+1\right)}\leftarrow\lambda^{\left(k\right)}+\Delta\lambda\). The stiffness matrix is symmetric for this analysis.
The method of Lagrange multipliers increases the number of equations that need to be solved globally. However, it does not require users to specify additional parameters. Note that the contribution to the stiffness matrix introduces a zero coefficient on the diagonal of the stiffness matrix for the equation corresponding to \(\Delta\lambda\). This means that these equations can only be solved with linear solvers that support pivoting. (Most linear solvers in FEBio, including the default pardiso solver, can handle zero-diagonal elements.)
Example 2. For linear constraints of the form
we find that \(\frac{\partial f}{\partial x_{i}}=a_{i}\) and second derivatives are all zero, so that the contributions to the global residual and stiffness matrix take the form