Han*_*ans 7 differential-equations modelica
我想在Modelica中建立一个明确的时间依赖微分方程.
说我想建模
Real x(start=1);
der(x) = t;
Run Code Online (Sandbox Code Playgroud)
在Modelica.访问时间变量t的正确方法是什么?
Mic*_*ler 13
调用Modelica中的时间变量,time可以在任何模型或块中访问它(但不能访问包,记录,连接器或函数).
此外,而不是使用start我建议使用初始方程的属性.所以你的完整模型看起来像这样:
model FirstOrder
Real x;
initial equation
x = 1;
equation
der(x) = time;
end FirstOrder;
Run Code Online (Sandbox Code Playgroud)
该initial equation部分中的方程仅适用于求解状态的初始值.上面显示的等式是微不足道的,但你可以做有趣的事情,如:
model FirstOrder_IC2
Real x;
initial equation
x*x*x = 3.0*time+7.0;
equation
der(x) = time;
end FirstOrder_IC2;
Run Code Online (Sandbox Code Playgroud)
这里的要点是除了直接指定状态值的方程之外,您还可以使用其他方程.上面的初始方程不是"物理上"有趣的,但在数学上是因为它既是非线性的又是时变的(即对模拟的开始时间敏感).
| 归档时间: |
|
| 查看次数: |
4635 次 |
| 最近记录: |