私はDymola(モデルベースの市販ソフトウェア)でシステムモデルを実行しています。モデルは、強制対流下での多孔質物質からの熱および物質移動に関するモデルである。この質問をする私の問題は、モデルのシミュレーション中に発生したエラーに関するものです。Modelica Modelロバストネスの問題:ODE-Jacobianのモデル評価に失敗しました
モデルの現在の設定は、特定のシミュレーション時間(7200秒)で正常に実行されます。しかし、それは(実行時間全体で断続的に)ログファイルに次のプロンプトを生成します。
ERROR: Failed to solve non-linear system using Newton solver.
To get more information: Turn on Simulation/Setup/Debug/Nonlinear solver diagnostics/Details
Solution to systems of equations not found at time = 882.457
Nonlinear system of equations number = 4
Infinity-norm of residue = 154.849
Iteration is not making good progress.
Accumulated number of residue calculations: 25279
Last values of solution vector:
drum.T_e = 306.346
drum.X_e = 0.0413446
Last values of residual vector:
{ -0.000157014, 154.849 }
私は私の一番の問題は、私はこれを見たとき、私は一般的に私のモデルについて理解しておくべきものですと仮定します。これは、方程式や事象のシステムを定義したやり方で、特定の欠陥を暗示していますか?この問題は、ある範囲にわたっていくつかの重要なパラメータを変更することによって、モデルのロバストネス研究を実行すると明らかになります。モデルはこのエラーのためにパラメータ値のランダムな組み合わせで終了時刻より前に失敗します。エラーメッセージで示唆したように、私がチェック診断ディテールでモデルを実行しなかったし、それは次の手順で、大アマ配列を与える:あなたはそれを見るためにアマを(プロットする方向を与える見ることができるように
Failed to evaluate model for ODE-Jacobian
Too many slow iterations with no progress
Line search: DX-norm scaled-residua-norm residual (unscaled)
Search direction{ -0.000634251, 6.52346E-006 }
To investigate the properties of the function, you can plot the
function in the search direction by pasting the following
commands in the Dymola command window:
Amat={<...>};
plotArray(Amat[:,1],Amat[:,2],-1);
If the graph has discontinuities, local minima above zero,
and/or knees this explains the problem.
不連続性および極小値が存在する場合)。繰り返しますが、これらの不規則性が私のモデル(方程式)に加えるべき変化の観点から何を求めているのでしょうか?
答えが不十分である可能性があることはわかっていますが、ランタイム全体で同じ繰り返しエラーが発生する巨大なログがあります。だから誰かがこれについていくつかのアイデアを持っているなら、回答が簡単になるように私のモデルやシミュレーションについて追加する可能性のある細部を提案してください。
こんにちは、ありがとうございました。モデルの.mofを生成し、非線形性が存在するかどうかをチェックします(そして、なぜそれが原因で障害が発生する可能性があるかを示す場合)。私はこの種の視点を探していました。質問に答えました。 (私はそれが今のところ開いたままにしておきます、もし私が数日の間にそれ以上の答え/ヒントを得なければ、私はこの答えを受け入れます)。 – user1768201
こんにちは、私は一貫して動作するモデルの変化を発見しました。フラットなモデルのコード* .mofは問題を抱えていた方程式の非線形システムに私を導いた。 (それには5つのシステムがあり、うち1つに問題があった)。さまざまな変更を行った後、グラディエント変数の1つが与えられた初期化で負になることがわかりました。解決策は、既存のコンポーネントモデルを単純なフローコンポーネントからボリュームコンポーネントに変換することでした。 – user1768201