Singularity error - Simulink

조회 수: 35 (최근 30일)
Harvijay Raj
Harvijay Raj 2018년 2월 13일
댓글: Walter Roberson 2025년 2월 1일
An error occurred while running the simulation and the simulation was terminated Caused by: Derivative of state '1' in block 'XXXXXX/Receiver/pre-amp/CTLE mode 2/Transfer Fcn15' at time 3.3003349235944607E-9 is not finite. The simulation will be stopped. There may be a singularity in the solution. If not, try reducing the step size (either by reducing the fixed step size or by tightening the error tolerances)
Please help.
  댓글 수: 7
Herman
Herman 2025년 1월 31일
이동: Walter Roberson 2025년 2월 1일
Which kind of filter do I put for the simulink model with an error of :
Walter Roberson
Walter Roberson 2025년 2월 1일
Typically, putting in a filter will not solve the problem.
Sometimes reducing the step size solves the problem. However, typically when reducing the step size would solve the problem, the problem is not occuring at a round time such as 0.0002 .
More likely your problem is either in how you initialized your components, or else the problem is in your model not being set up correctly. If you have algebraic loops then your model is probably not correct.

댓글을 달려면 로그인하십시오.

답변 (1개)

Suhan
Suhan 2018년 2월 19일
Hi,
The singularity issues occur due to model instabilities. Instabilities may occur in a model due to a wide variety of reasons and one of them is the reference is too quick that the plant does not have enough time to respond and runs into singularities. This can be eliminated by putting in a filter on the reference signal.
Below is information on three tools that may assist you in further improving the model stability, if you are not already familiar with them:
1. Solver Profiler: The Solver Profiler can help you visualize your model dynamics and see where they may be unstable. Using the Solver Profile is described at this link: https://www.mathworks.com/help/simulink/ug/examine-solver-behavior-using-solver-profiler.html
2. Log the Simulink states, so you may view their values after running the simulation (perhaps stop the simulation before the error or use the above approach to remove the error): https://www.mathworks.com/help/simulink/examples/logging-states-in-structure-format.html
3. Use Stepping Options to pause the simulation and view signal values before the error occurs: https://www.mathworks.com/help/simulink/ug/simulation-stepper-interface.html

카테고리

Help CenterFile Exchange에서 Modeling에 대해 자세히 알아보기

태그

제품

Community Treasure Hunt

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

Start Hunting!

Translated by