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

조회 수: 10 (최근 30일)
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?

채택된 답변

Torsten
Torsten 2022년 11월 23일
편집: Torsten 2022년 11월 23일
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.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Discrete Events and Mode Charts에 대해 자세히 알아보기

제품


릴리스

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by