What does it mean by "stiff" and "non-stiff" when choosing a solver?

Problem description: 

What is stiffness and the difference between the two types of solvers?

Solution: 

Stiffness, as shown in a simulation tool's solver settings, is not a physical phenonema that you would see in your hardware system, but rather a numerical issue found when simulating a continuous system on a computer. Generally stiffness can be discribed as having time constants in a model that vary by several orders of magnitude. Different algorithms are used for stiff and non-stiff solvers and they each have their own unique stability regions. Stiff differential equations are best solved by a stiff solver, and vice-versa.

There is not a standard rule of thumb for what is a stiff and non-stiff system, but using the wrong type for a model can produce slow and/or inaccurate results.  One suggestion, if you are not sure whether or not your model is stiff, is to try applying both a non-stiff and stiff solver with the same settings and make a determination of the general accuracy and speed of the results. Obvious indicators of stiffness are the use of very small parameter values or the dynamic switch components in the PLECS library such as the diode model with reverse recovery.

Categories: