このエラーは、モデルが表現する微分代数方程式(DAE)を解くのが数値的に困難な場合に出力されます。
たとえば、
・従属なダイナミック状態量が存在する場合
・システムがスティッフ性が強い場合
・本来動かない方向を無理やり動かそうとするなど非現実的な挙動をシミュレーションしようとした場合
などに生じます。
ここで、従属なダイナミック状態量とは、たとえば、電気回路の場合、キャパシタに平行に結合した電圧源、あるいは、電流源に連続に接続したインダクタ、などを含んでいる場合です。
他のドメインの例としては、直接繋げた速度ソースと質量、力ソースとバネ、圧力ソースと油圧アキュムレータ、流量ソースとfluid inertiaなどがあります。
英語になってしまいますが、従属なダイナミック状態量の詳細は、ドキュメントをご参照ください。
このようなエラーや警告が発生した場合、上記ドキュメントの[Step-Size-Related Errors — Dependent States — High Stiffness]にも記載がありますが、次の対策があります。
・ソルバのトレランスを厳しくする
[コンフィグレーションパラメータ]ダイアログボックスの"相対許容誤差"を小さくします。
[コンフィグレーションパラメータ]ダイアログボックスの"絶対許容誤差のautoに小さな値を指定します。
・Residual Toleranceを厳しくする
SimscapeのSolver ConfigurationブロックのConstraint Residual Toleranceパラメータ値を小さくします。
・[コンフィグレーションパラメータ]ダイアログボックスの"連続的な最小ステップ数"の値を大きくする
・回路の単純化を行ってみる。また、従属なダイナミック状態量を避けるために、回路に小さなダミー項を追加する。
・Solver Configurationブロックのローカルソルバーを使用する。
ローカルソルバーを使用すると、"Use fixed-cost runtime consistency iterations"で繰り返し計算の際の最大繰り返し回数を設定できます。繰り返し計算がここで設定した値に達すると、収束していない場合でも次のステップに計算が進みます。