如下面的例子:Modelica的特殊操作的源代碼
model HelloWorld "A Simple Model"
Real x(start = 1);
equation
**der(x) = -x;**
annotation (uses(Modelica(version="3.2")));
end HelloWorld;
我計劃寫一些代碼轉換Modelica
源成Java格式。但是,我找不到像der()
等特殊運算符的源代碼。
我的意思是:在java中的例子可以寫入格式爲:
class HelloWorld{
ModelicaReal x = new ModelicaReal(start,1);
public void run(){
while(time...){
...der(x)...
}
}
}
我想處理der(x)
作爲Java函數調用。但我必須先找到der()
運算符源代碼,然後我才能將der()
運算符轉換爲java函數。但Modelica
運營商源代碼不在Modelica
標準庫中?
讚賞您的詳細答案?如果是這樣,我可以通過一些方法從Java調用Modelica運算符嗎?如果有這樣的方法? 是否可以通過OMC或某些腳本? – xing 2013-05-13 07:57:36
對於Dymola而言,API可以用作調用Dymola的Java方法,編譯模型並獲得結果,也許與OMC類似。真正的問題是你無法逐行解決問題,但你必須在編譯之前對模型的所有方程進行排序,並應用你的集成器和ODE求解器。 – 2013-05-13 14:28:18
@xing請參閱Marcos評論。我認爲OMC也有類似的java界面。檢查這個。 http://www.ep.liu.se/ecp/043/020/ecp09430121.pdf,你也可以隨時詢問formus。這是一個類似的問題。 https://www.openmodelica.org/index.php/forum/topic?id=51 – stardust 2013-05-13 15:25:17