2017-01-18 10 views
5

私は、翻訳時間(すぐにはシミュレートされますが、翻訳には時間がかかります)が深刻な問題になっているモデルを開発しています。影響を与える要因

そこで質問です:

問題に対処するためのモデルやアイデアの変換時に影響を与える主な要因のいくつかは何ですか?

たとえば、影響を与える可能性があるもの:

  • forベクトル化法VSループ - このテストの基本的なモデルは、パラメータ
  • input変数を使用して、何も
  • に影響を与えていないようでした注釈の影響(Evaluate=true
  • またはこれはツールに依存します(Dymola、OMEditなど):(
  • 人の使用y connect() - これは翻訳者にすべての重い吊り上げをさせる要因となるようです(おそらく主な)。

何か洞察がありがとうございます。

+1

はい、それはツールに依存し

いくつかの関連資料は、以下に含まれているより多くの情報のために有用である可能性がある他の人が指摘しています。彼のPhDの間、Frenkelはいくつかのヒントを与えるベンチマークを発表した。 https://modelica.org/events/modelica2011/Proceedings/pages/papers/07_1_ID_183_a_fv.pdf –

+1

[ScalableTestSuite](https://github.com/casella/ScalableTestSuite)も興味深いかもしれません。 https://dx.doi.org/10.3384/ecp15118459 – matth

+0

両方の参考資料をありがとうございます。私はいくつかの追加の洞察のためにそれらを見てみましょう。 –

答えて

0

自然に開いていれば、明らかにこの質問に対する答えが終わった。計算時間が要因になる場合は、考慮すべき点がたくさんあります。

分散モデル(例えば、有限差分)の場合、単純なモデルを使用し、connect式を使用して適切な順序でそれらをリンクすることは、モデルを作成する最良の方法ではありません。経験によると、この方法は翻訳時間を耐え難いほどに長くします。 MSL Dynamicパイプと同じアプローチで分散モデルを作成する方が良いでしょう。

分散型要素の数が多いほど大きな値になるので、前述のアプローチを変更すると、connectステートメントを使用する場合よりも翻訳時間が大幅に短縮されます(大型モデルの場合は> 10万式以上)。これは、Dymola 2017および2017FD01を用いて試験した。

関連する問題