3

時変変数の以前の値を使用することは可能ですか?

例: 指定された均一な質量流量 (m_flow) で入口温度が 298K のパイプがあるとします。次に、100 ワットのヒーターを使用してパイプを加熱しているとします。出口温度は 302K と仮定すると、より高い温度に達します。この出口温度を入口温度として使用する必要がある場合 (水を再循環させているという意味で)、どのようにすればよいでしょうか?

前のタイムステップでの出口温度に基づいて入口温度の値を更新することは可能ですか? 次の反復では、入口温度が前の反復の出口温度と同じになるようにします (つまり、流体は再循環します)。

ありがとう

4

3 に答える 3

3

前のタイム ステップの値にアクセスすることはできません。Modelica で取得できる最も近いのはdelay(exp,T)、T 単位前の値を取得するために使用することです。

于 2013-03-20T12:27:51.903 に答える
3

タイムステップはまったく入りません。タイムステップに関する情報を使用するモデルは間違っています。自然は統合時間ステップを知らないか、気にしません。モデルはそれを反映する必要があります。

あなたが捉えたいのは、輸送の遅延です。輸送遅延は、システムを通過する分子、電子などにかかる時間によって導入される遅延です。したがって、おそらくモデル化したいのは、入口の流体が出口に到達するのにかかる時間です。繰り返しますが、これは積分時間ステップとは関係がなく、流体の速度と移動距離に関係しています。どれくらいの時間がかかるかがわかったら (シミュレーション結果自体を見て、システムのアプリオリな知識によって)、遅延演算子を使用するというマルコの提案に従うことができます。

于 2013-03-21T12:44:53.363 に答える
2

説明したシステムに適切なモデルを設定するために、例を確認することをお勧めします。

Modelica.Thermal.FluidHeatFlow.Examples.IndirectCooling

Modelica.Thermal.FluidHeatFlow.Examples.IndirectCoolingスキーマ

modelica標準ライブラリver。3.2。1本のパイプの代わりに、必要に応じてアンビエントまたはコントロールボリュームコンポーネントを配置できます。さらに、連続的で微分可能な方程式を使用すると(遅延関数はそうではありません)、Modelicaコードの利点のいくつかを利用できます。たとえば、モデルをより広範囲のケースで再利用したり、逆問題を解決したり、初期値を解決したりできます。問題、..。

これがお役に立てば幸いです、マルコ

于 2013-03-20T14:54:17.707 に答える