The ContactUtility allows to control the solution of a contact problem by using a python strategy. For further information on the implemented Contact algorithm see ContactLink3D.
Provided python methods
- SetUpContactConditions Setting up the contact conditions. This function performs the contact search and creates temporary, virtual linking conditions for each integration point on the slave surfaces.
- Update Updates the lagrangian multipliers after the solution of the problem by Newton's method, to prepare the model for the next Uzawa iteration
- IsConverged here the convergence of the (outer) Uzawa loop is controlled, it checks the fulfillment of the constraints, the penalty energies and the incremental update of the lagrange multipliers
- Clean this function cleans/deletes all contact links after the solution of the time step
How to use
- ContactUtility( EchoLevel ) initialise the Contact Utility in python
- SetUpContactConditions(model_part, penalty value for penetration, penalty value for friction, false ) Perform contact search and set up the contact links. Returns the number of the last (real) condition, the last condition that is not a virtual contact link
- Update( model_part, number of the last (real) condition, friction coefficient,... different parameters for the adaptation of the penalty value) This method is called after the successful Newton Iteration, it updates the Lagrangian Multipliers
- IsConverged( model_part, 0, number of the last (real) condition, friction coefficient) Checks whether the Uzawa iteration is converged