
Simulinkのシミュレーション実行中に発生するゼロ割を回避するにはどのようにモデリングすればよいですか?
57 ビュー (過去 30 日間)
古いコメントを表示
MathWorks Support Team
2013 年 10 月 25 日
回答済み: MathWorks Support Team
2013 年 10 月 25 日
Simulinkのシミュレーション実行中に発生するゼロ割を回避するにはどのようにモデリングすればよいですか?
採用された回答
MathWorks Support Team
2013 年 10 月 25 日
シミュレーションの実行中に生じるゼロ割現象を回避するには様々な方法が考えられますが、その一例として、比較演算子を利用して、0の値が入る場合に例外処理を行う(ここではepsに置き換えています)方法を紹介します。

Compare To Zeroブロックにゼロ以外の信号が入力された場合、演算「==」は「偽」となり「0」が出力され、Switchブロックの閾値「0.5」より小さいためSwitchブロックの下の信号が出力されますが、Compare To Zeroブロックにゼロ信号が入力された場合、演算「==」が「真」となり「1」が出力され、Switchブロックの閾値「0.5」より大きくなりSwitchブロックの上の信号のConstat1ブロックの値「eps」が出力されます。
なお、epsは1.0 からつぎに大きな倍精度の数までの距離です。詳細はオンラインヘルプを参照ください。
0 件のコメント
その他の回答 (0 件)
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!