Error during computations

During computations I get error as below:

*ERROR in add_sm_st: coefficient should be 0

any idea what cause error ?

Check all constraints/interactions and boundary conditions for underconstraint and overconstraint. Frequency analysis will help with the former.

I understand underconstraint but overocnstraint ?

Overconstraint means that there are redundant constraints applied to particular degrees of freedom of some nodes. Likely the most common example in CalculiX is a rigid body constraint together with a boundary condition applied to the same nodes but there can be more tricky cases.

As i understand over constrained condition is different things in solver problem due to conflict. For examples are in rigid body compared to coupling type distributing, knot generation due to offset of shell or beam element in CalculiX, unreduced integration of element, etc. These model may give over stiffening results and categories as disadvantages due to over constrained conditions but still solvable. However, a nodes with assignment of both tie constraint and rigid body or knot lead to conflict.

Reading error messages, below some notify in subroutine files.

stores the stiffness coefficient (i,j) with value “value” in the stiffness matrix stored in spare matrix format

In Abaqus, some overconstraints can be automatically resolved by the solver but others cause errors and require manual correction. Unfortunately, CalculiX is less capable of resolving overconstraints automatically and often shows rather vague error messages like this one. For example, if you apply a boundary condition to nodes involved in rigid body constraint, Abaqus/Standard will try to move that boundary condition to the reference node of a rigid body constraint and issue a warning that it did so (Abaqus/Explicit just ignores such BCs). CalculiX at least shows an error message in such a case but not necessarily in other cases.

In conclusions of constraint conflict in FE solver.

  • Abaqus Standard, continue with some tricky modification equivalency for limited case.
  • Abaqus Explicit, continue with ignoring and warning message
  • CalculiX, stop with some error messages and unsolved.

Probably the last one always given guaranteed to the user to check the models, modification equivalency may disappointing user expected since it’s not always work for any case. Continue by ignoring also may lead to unexpected results since the boundary not defined as is.

Any possibility to do some treatment of model modification e.g add reference point could be benefit. SAP is look better at this, less conflict and no reference point definition is required.