5. Additional benefit#
In this paragraph, we will show that the « double Lagrange » technique can make it possible to solve economically a series of problems that would differ only in their kinematic boundary conditions (for example a variable contact zone).
Note:
This option is not currently used in the code.
Let’s be a system with \(\text{KX}=F\) constraints:
Let’s write this system by highlighting a particular constraint (this calculation obviously remains valid when there are several constraints) \(\text{Cu}-d=0\). To simplify writing, we choose \(\alpha =1\).
Let |
\({\lambda }^{1}\) be the first Lagrange degree of freedom associated with the constraint |
\({\lambda }^{2}\) Lagrange’s second degree of freedom associated with constraint |
|
\(U=X-\left\{{\lambda }^{1},{\lambda }^{2}\right\}\) |
|
\(\tilde{K}\) = matrix \(K\) projected onto \(U\); \(b\) = vector \(F\) projected onto \(U\) |
The system is written with these variables:
\(\left[\begin{array}{ccc}\tilde{K}& {C}^{T}& {C}^{T}\\ C& -1& 1\\ C& 1& -1\end{array}\right]\left[\begin{array}{c}U\\ {\lambda }^{1}\\ {\lambda }^{2}\end{array}\right]=\left[\begin{array}{c}b\\ d\\ d\end{array}\right]\)
Let’s change the coefficient \(({\lambda }^{2},{\lambda }^{2})\): \(-1\to 3\) and write the new system:
\((S)\{\begin{array}{cccccc}\tilde{K}U+({\lambda }^{1}+{\lambda }^{2}){C}^{T}=b& & ({\lambda }^{1}+{\lambda }^{2})=0& & & \text{éq 5-1}\\ \mathrm{CU}-{\lambda }^{1}+{\lambda }^{2}=d& \iff & \mathrm{CU}-{\lambda }^{1}+{\lambda }^{2}=d& & & \text{éq 5-2}\\ \mathrm{CU}+{\lambda }^{1}+{\mathrm{3\lambda }}^{2}=d& & \tilde{K}U=b& & & \text{éq 5-3}\end{array}\)
The latter system is decoupled: we can solve [éq5-3] to obtain \(U\) and then calculate \({\lambda }^{1}\) and \({\lambda }^{2}\).
Note that the resolution of [éq5-3] corresponds to the initial problem without the \(\text{Cu}-d=0\) constraint. The values of \({\lambda }^{1}\) and \({\lambda }^{2}\) then no longer have the same physical meaning. In other words, system \((S)\) has the same solution in \(U\) as subsystem \(\tilde{K}U=b\); the 2 additional unknowns \({\lambda }^{1}\) and \({\lambda }^{2}\) do not interfere with the solution in \(U\). The total system may seem larger than what is needed, but computationally, this can be very convenient. \((+2)\)
Indeed, let’s now imagine that we know in advance that some kinematic relationships are likely to be relaxed. Let’s number the \({\lambda }^{2}\) associated with these relationships at the end of the system. We can then partially triangulate the system once and for all by stopping before these ddls. The part of the triangulated matrix is the largest in volume: all physical degrees of freedom and all \({\lambda }^{1}\). When a concrete problem arises, i.e. when you know the list of active linear relationships, all you have to do is update the last rows of the matrix (\(-\alpha\) if the relationship is active, \(+\mathrm{3\alpha }\) if it is not). We can then complete the triangulation and solve the problem economically.