Understanding Abaqus Standard Negative Eigenvalue Messages

Negative eigenvalue messages are generated during the solution process when the system matrix is being decomposed. The messages can be issued for a variety of reasons, some associated with the physics of the model and others associated with numerical issues. An example of the message that is issued is:

***WARNING: THE SYSTEM MATRIX HAS 16 NEGATIVE EIGENVALUES.

IN AN EIGENVALUE EXTRACTION STEP THE NUMBER OF NEGATIVE EIGENVALUES IS

THIS MAY BE USED TO CHECK THAT EIGENVALUES HAVE NOT BEEN MISSED.

NOTE: THE LANCZOS EIGENSOLVER APPLIES AN INTERNAL SHIFT WHICH WILL

RESULT IN NEGATIVE EIGENVALUES.

IN A DIRECT-SOLUTION STEADY-STATE DYNAMIC ANALYSIS, NEGATIVE

EIGENVALUES ARE EXPECTED. A STATIC ANALYSIS CAN BE USED TO VERIFY THAT THE

SYSTEM IS STABLE.

IN OTHER CASES, NEGATIVE EIGENVALUES MEAN THAT THE SYSTEM MATRIX IS NOT

POSITIVE DEFINITE:

FOR EXAMPLE, A BIFURCATION (BUCKLING) LOAD MAY HAVE BEEN EXCEEDED.

NEGATIVE EIGENVALUES MAY ALSO OCCUR IF QUADRATIC ELEMENTS ARE

USED TO DEFINE CONTACT SURFACES.

Physically, negative eigenvalue messages are often associated with a loss of stiffness or solution uniqueness, either in the form of a material instability or the application of loading beyond a bifurcation point (possibly caused by a modelling error). During the iteration process, the stiffness matrix can then be assembled in a state which is far from equilibrium, which can cause the warnings to be issued.

Numerically, negative eigenvalues can be associated with modelling techniques that make use of Lagrange multipliers to enforce constraints, or local numerical instabilities that result in the loss of stiffness for a particular degree of freedom. Most negative eigenvalue warnings associated with Lagrange multipliers are suppressed; the exceptions are when quadratic three dimensional elements are used to define contact surfaces, or when hybrid elements are used in a geometrically nonlinear simulation and undergo large deformations.

Mathematically, the appearance of a negative eigenvalue means that the system matrix is not positive definite. If the basic statement of the finite element problem is written as:

{F} = [K] {x},

then a positive definite system matrix [K] will be non-singular and satisfy

{x}T [K] {x} > 0 for all non-zero {x}. Thus, when the system matrix is positive definite, any displacement that the model experiences will produce positive strain energy.

In addition to the causes shown in the warning message, some situations in which negative eigenvalue messages can appear include:

  • Certain applications of connector elements: Negative eigenvalue warnings associated with connector elements are sometimes related to the ordering of the system equations and are spurious. If the iteration in which the warnings appear converges, check the magnitudes of the time average force and residual. If the time average force is physically reasonable and the solver controls have not been relaxed, the solution is likely acceptable.
  • Buckling analyses in which the pre-buckling response is not stiff and linear elastic. In this case, the negative eigenvalues often point to spurious modes. Remember that the formulation of the buckling problem is predicated on the response of the structure being stiff and linear elastic prior to buckling.
  • Unstable material response:
  • A hyper elastic material going unstable at high values of strain
  • Onset of perfect plasticity
  • Cracking of concrete or other material failure that causes softening of the material response
  • The use of anisotropic elasticity with shear moduli that is unrealistically very much lower than the direct moduli. In this case, ill-conditioning may occur triggering negative eigenvalues during shearing deformation.
  • Non-positive definite shell section stiffness defined in a UGENS routine.
  • The use of a pre-tension node that is not controlled by using the *BOUNDARY option, and the components of the structure are not kinematically constrained. In this case, the structure could fall apart due to the presence of rigid body modes. The warning messages that result may include one related to negative eigenvalues.
  • Some applications of hydrostatic fluid elements.
  • Rigid body motion modes due to errors in modelling.
  • The presence of trivial equations in the system matrix. In general, Abaqus will strip out trivial equations before they are sent to the solver; however, in some instances numerical tolerances allow them to proceed and the system matrix may become numerically ill-conditioned.  You may see numerical singularities or zero pivots in addition to negative eigenvalues.

Truss and membrane elements are sometimes the source of such issues. Consider for example a truss element aligned with the global X-axis and carrying a tensile axial load. The stiffness and loading in the transverse direction are zero and will not be sent to the solver. If the same truss is oriented arbitrarily in space and a transformed coordinate system is used to load the truss axially, it is physically the same situation; however, it is possible that the transverse stiffness and load terms may be numerically large enough to not be trivial but not large enough to provide sufficient resistance to load. Subsequently it can cause numerical issues. The addition of small initial stresses to trusses and membranes are strongly recommended to avoid these situations.

Negative eigenvalue warnings will sometimes be accompanied by other warnings, addressing such things as excessive element distortion, magnitude of the current strain increment, numerical singularities, or zero pivots. In cases where the analysis will not converge, resolution of the non-convergence will often eliminate the negative eigenvalue warnings as well.

For analyses that do converge, carefully check the results if the warnings appear in converged iterations. A common cause of negative eigenvalue warnings is the assembly of the stiffness matrix about a non-equilibrium state. In these instances, the warnings will normally disappear with continued iteration, and, if there are no warnings in any iteration that have converged, warnings that appear in non-converged iterations may safely be neglected. If the warnings appear in converged iterations however, the solution must be checked to make sure it is physically realistic and acceptable. It may be the case that a solution satisfying the convergence tolerance has been found for the model while it is in a non-equilibrium state. If a model is overconstrained, it may be the case that the time average force reported in the message file is as large as to be physically meaningless; the default solution tolerances in this case will permit convergence to a solution that is not correct.