5
Modelicaで明示的に時間依存の微分方程式をモデル化したいと思います。モデルの時間変数にアクセスするには
は、私がModelicaに
Real x(start=1);
der(x) = t;
をモデル化したいと言います。時間変数tにアクセスする正しい方法は何ですか?
Modelicaで明示的に時間依存の微分方程式をモデル化したいと思います。モデルの時間変数にアクセスするには
は、私がModelicaに
Real x(start=1);
der(x) = t;
をモデル化したいと言います。時間変数tにアクセスする正しい方法は何ですか?
Modelicaの時間変数はtime
と呼ばれ、モデル、ブロック(パッケージ、レコード、コネクタ、関数ではありません)からアクセスできます。
また、start
属性を使用する代わりに、初期方程式を使用することをお勧めします。だからあなたの完全なモデルは次のようになります。initial equation
セクションで
model FirstOrder
Real x;
initial equation
x = 1;
equation
der(x) = time;
end FirstOrder;
方程式は状態の初期値を解くために適用されます。上記の式は簡単ですが、あなたのような面白いものを行うことができます。
model FirstOrder_IC2
Real x;
initial equation
x*x*x = 3.0*time+7.0;
equation
der(x) = time;
end FirstOrder_IC2;
ここでのポイントは、あなたが直接、状態の値を指定するもの以外の他の式を使用することができるということです。上記の初期方程式は「物理的に」興味深いものではないが、数学的には非線形で時間変化する(すなわち、シミュレーションの開始時間に敏感である)ためである。