C4. Convergence issues? Symptoms and solutions
C4. Convergence issues? Symptoms and solutions
As opposed to linear elastic calculations, non-linear calculations can perform iterations indefinitely, never verifying the stopping criterion, but they can also be interrupted abruptly at a given load increment (after the first one), with the warning “zero-pivot”.
Let us examine the causes of this type of errors.
-
Non-convergence of iterations
This phenomenon is almost always a direct consequence of the inadequacy of the used iterative method: the problem to be solved certainly does not satisfy the mathematic conditions, which ensure convergence (non-contracting operator, non-positive operator, non-convex operator, insufficient restrictions in the interval in which one looks for the solution, etc.).
This phenomenon may be a consequence of accumulated round off numerical errors that can be attributed to the algorithm itself; however, it does not happen often.
The evaluation of the residuals over the iterations may provide information about the nature of the problem:
-
The residuals tend to zero, but more slowly. This behavior indicates that the mesh is not adequate to calculate the equilibrium: it is the case of the localized phenomenon, where the non-linearities are concentrated in certain parts of the structure. In that case, it is better to restart the calculations with a mesh that is better adapted to the structural mechanism.
-
The residuals become larger and larger. It means characteristic instability: there is no longer, for this structure, a possible equilibrium configuration at this loading level.
After a given state, the residuals increase abruptly to a certain value and then start decreasing again, etc. This behavior appears when the algorithm finds multiple possible solutions: it converges to one of them, then “bounces” towards another one. In other words, there are multiple possible equilibrium configurations!
-
Abrupt stop
The abrupt stop of the algorithm in a non-linear calculation is often reported as a “zero-pivot” warning when solving a linear system. This expression refers to the “pivot” in the Gaussian elimination method, which is the algorithm used (with small variations) to solve linear systems. Most parts of iterative algorithms replace the problem with a linear system.
This situation corresponds to the structure becoming unstable; in elastoplasticity or damage, it means that the structure lost its cohesion. For large displacements or contact problems, it reflects the formation of a mechanism, especially, the possibility of rigid body movement: all interface nodes slide, and the restraints are not enough to reach equilibrium.
It may also happen that the algorithm stops for reasons not connected to the state of the structure whatsoever: disk space overflow or programming bug. The first one is easy to solve.
-
When nothing works
If a non-linear calculation does not converge, and one cannot find in the explanations above the reason, it is recommended to ask oneself the following questions:
-
Is the initial configuration of the structure in elastic equilibrium?
-
Is the meshing adapted to the problem one wants to solve? Is the mesh sufficiently refined in the zones where the plastic deformations take place? Is the mesh not too deformed?
-
Does your model mix solid elements with structural elements (beams, plates, shells)? Do the zones with plastic deformation/damage affect the nodes shared with those ‘Strength of Materials’ type elements?
-
Are the finite elements well-adapted to the problem? Are there stress oscillations?