5.9. Singular Matrices

A singular matrix exists in an analysis whenever an indeterminate or non-unique solution is possible. A negative or zero equation solver pivot value may indicate such a scenario. In some instances, it may be desirable to continue the analysis, even though a negative or zero pivot value is encountered. You can use the PIVCHECK command to specify whether or not to stop the analysis when this occurs.

The default behavior is to check for negative and zero pivot values (PIVCHECK,AUTO). When a negative or zero pivot value is encountered, the analysis may stop with an error message or may continue with a warning message, depending on the various criteria pertaining to the type of analysis being solved. You can further control this behavior with other options on the PIVCHECK command (see the command description for details). If PIVCHECK,OFF is issued, the pivots are not checked; use this command if you want your analysis to continue in spite of a negative or zero pivot value.

Currently, the program only checks for negative and zero pivot values when the sparse or PCG solver is used. If a negative or zero pivot value is encountered when using the sparse solver, the appropriate message is displayed indicating the particular node and degree of freedom where the negative or zero pivot value occurred. You can then review that part of the model to determine what caused the negative or zero pivot value (see possible causes listed below).

Note that negative pivots corresponding to Lagrange multiplier based mixed u-P elements are not checked or reported. Negative pivots arising from the u-P element formulation and related analyses can occur and lead to correct solutions.

The following conditions may cause a singular matrix in the solution process:

  • Insufficient constraints

  • Contact elements in a model If the contact conditions are not properly defined, a portion of the model may “break loose” or become separated before coming into contact and essentially be partially unconstrained. In this situation, adding weak springs to the unconstrained bodies or activating contact damping usually helps to prevent potential rigid body motions.

  • Nonlinear elements in a model (such as gaps, sliders, hinges, cables, etc.). A portion of the structure may have collapsed or may have "broken loose" or become “too soft.”

  • Hourglass modes Higher-order elements (such as SOLID186) that use a reduced integration scheme may produce hourglass modes when used in a coarse mesh. This can result in a zero pivot value.

  • Negative values of material properties , such as DENS or C, specified in a transient thermal analysis.

  • Unconstrained joints The element arrangements may cause singularities. For example, two horizontal spar elements have an unconstrained degree of freedom in the vertical direction at the joint. A linear analysis ignores a vertical load applied at that point. Also, consider a shell element with no in-plane rotational stiffness connected perpendicularly to a beam or pipe element. There is no in-plane rotational stiffness at the joint. A linear analysis ignores an in-plane moment applied at that joint.

  • Buckling When stress stiffening effects are negative (compressive) the structure weakens under load. If the structure weakens enough to effectively reduce the stiffness to zero or less, a singularity exists and the structure has buckled. The "NEGATIVE PIVOT VALUE - " message is generated.

  • Zero Stiffness Matrix (on row or column). Both linear and nonlinear analyses ignore an applied load if the stiffness is exactly zero.

  • Overconstraint As an example, overconstraint can happen when a few joint elements are defined on the same node if the joint elements are not orthogonal to each other. (See Addressing Overconstraint Issues During Modeling for additional examples.) Overconstraint can also happen when an excessive number of MPC bonded contact elements are defined at a juncture where multiple parts meet. There are ever-increasing cases of overconstraint due to increased usage of automatic model-creation tools.

    When overconstraint occurs, the following phenomena often occur as well:

    • Negative pivot or zero pivot values are present.

    • For a nonlinear solution, the solution may converge to a (slightly) different solution each time the job is executed under the same conditions.

If the above conditions do not apply or do not help to identify the problem area, the following suggestions may help determine which (if any) part of the model is unconstrained:

  • Solve the system as a modal analysis, if applicable, and look for the presence of any eigenvectors associated with zero-value eigenvalues (an indication of rigid body motion). Plotting such eigenvectors may help determine the unconstrained portions of the model.

  • Review the boundary conditions in the model (including any contact pair definitions) and add arbitrary boundary conditions until any such zero pivot value messages are eliminated.