1. 程式人生 > >modelica變數初始值的定義

modelica變數初始值的定義

在初次使用modelic不知道如何定義一個變數的初值,一般系統會預設其初值為0,導致有些模擬不能進行,學習了一會之後發現是個很簡單的事。
常見的錯誤格式
theta= if time=0 then 0.1;
theta(0)=0.1;
系統預設時間是一個維度,但是不會將隨著時間變化的值用時間引數來呼叫。。。。。

  1. 程式碼
    model Model4model Model4
    annotation (Diagram(coordinateSystem(extent = {{-140.0, -100.0}, {140.0, 100.0}},
    preserveAspectRatio = false,
    grid = {2.0, 2.0})),
    Icon(coordinateSystem(extent = {{-100.0, -100.0}, {100.0, 100.0}},
    preserveAspectRatio = false,
    grid = {2.0, 2.0})),
    experiment(StartTime = 0, StopTime = 10, NumberOfIntervals = 500, Algorithm = “Dassl”, Tolerance = 0.0001, DoublePrecision = true));

parameter Real L = 2;
constant Real g = 9.8;
Real theta(start = 0.1);
Real omega;
// theta(0)=0.1;
equation
der(theta) = omega;
der(omega) = -(g / L) * theta;

end Model4;`

在這裡插入圖片描述