Why should I tighten error tolerances if I am violating minimum stepsize?

8 views (last 30 days)
The followiing is a typical warning message of Simulink that can be displayed after a model has been simulated:
"Solver was unable to reduce the step size without violating minimum step size of [...]"
The Diagnostic Viewer then proposes some fixing actions, most of which I understand. However I cannot grasp the following one:
"Try tightening the error tolerances, and/or the tolerances for computing consistent conditions"
If I tighten the error tolerances, I expect the solver to take even smaller steps, and so to violate the minimum step size even more easily.
What am I missing?

Accepted Answer

Torsten on 23 Nov 2022
Edited: Torsten on 23 Nov 2022
The stepsize reduction down to the minimum stepsize often occurs because in previous time steps, the solver was not exact enough in computing the solution variables. This may lead to unphysical results. The errors in previous steps cannot be repaired later, and the solver quits when the minimum stepsize is reached. Tightening the error tolerances can lead to longer computation times and smaller step sizes, but can often prevent the solver from reaching out because of accumulated inaccuracies in computation.

More Answers (0)


Find more on Configure Simulation Conditions in Help Center and File Exchange




Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!