你认为将数据(例如测量日期)输入模型(dymola)的最佳方法是什么?是否有可能将数据从python导入modelica (例如,导入组合式时刻表)?我的想法如下:
如有任何建议,我将不胜感激。
发布于 2015-09-25 06:46:16
这可能是个意见问题。但是,由于您必须用Python进行大量的数据后处理和预处理,所以我肯定会从Dymola导出我的(工厂)模型,作为一个共同模拟FMU,并在Python中运行它。
在Dymola中,您可以导出FMU并在持有Dymola许可文件的同一台pc上“执行”它们。如果您需要在另一台pc上运行FMU,则必须购买特殊的二进制导出许可证。
有一个名为PyFMI (www.pyfmi.org)的免费package,它可以方便地在Python中运行FMU。参见http://www.jmodelica.org/page/4924中的示例。
PyFMI的启动和运行可能有点棘手(使用正确的package依赖项等等)。因此,如果您不是一个经验丰富的Python用户,我建议您下载JModelica.org的安装程序,这将为您完成大量的设置工作。
诚挚的问候,
雷内·尼尔森
发布于 2019-09-10 06:39:33
正如Rene Just Nielsen所指出的,这主要是基于观点。
要给出另一种实现目标的方法,请尝试DymolaInterface。您可以通过python中的Interface设置表参数,我们使用在python中创建和修改的..txt文件,而Modelica只知道文件的路径。这个接口是在Modelica\Library\python_interface\dymola.egg下安装Dymola的,在这里您还可以找到函数的文档。
另一个使用FMU的python包是FMPy。我认为FMPy和PyFMI都有各自的优点和缺点。
最后一个不需要任何外部python包的选项是使用mos-file执行模拟,并使用..txt文件读取数据。如果您所描述的任务是您想要完成的唯一事情,那么mos-脚本就足够了。
https://stackoverflow.com/questions/32761800
复制相似问题