Singularity error - Simulink
76 ビュー (過去 30 日間)
古いコメントを表示
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.
5 件のコメント
回答 (1 件)
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
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で General Applications についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!