这个问题实际上有两个主要方面。刚开始的时候,我不得不承认,我对物理建模完全陌生,我也很乐意得到纠正,而不仅仅是得到答案。对于那些觉得太长而无法阅读的人,我可以给出的简短摘要。
1) Simulink vs Modelica
2) Simscape vs Modelica
1)第一种是建模方法的比较。按照惯例,我要比较的两种主要方法有不同的名称:
#信号流方法/基于块的建模/因果建模.:Simulink中的典型模型。在两者之间有输入和输出以及传递函数的盒子。
vs
#网络方法/基于组件的建模/分句(非因果)建模.有物理端口代替信号I/O,流动实体(电流、热量等)可以双向流动。
在这个比较中,我在网上阅读了一些观点,并搜索了一些论文。据我所知,这可以归结为基于Modelica的开发环境和Simulink (例如)的比较。我更清楚这两者的缺点和优点,而不是我想问的另一点。
2)在阅读了大量关于第一次比较的文章之后,我更倾向于使用基于组件的建模。然而,Modelica并不是这里唯一的选择。还有西姆布莱,您可以使用它(如Modelica中的组合物理端口 )对Simulink进行基于块的建模。
我想知道Simscape 与 Modelica比较的优缺点。为了避免误解,我需要强调Modelica是一种语言。因此,将任何Modelica环境与Simscape进行比较将更有意义,比方说,OpenModelica 与 Simscape
发布于 2017-09-13 07:21:22
对于此比较,冲突点可以是FMI导入/导出能力。
功能模拟接口是一个非常有前途的解决方案,用于不同建模环境之间的模型传递和共享。提取的功能模拟单元(FMU)可以导入到另一个环境中,也可以使用第三方工具进行数值模拟。
大多数Modelica平台提供了足够的FMI导入/导出功能。我至少可以对OpenModelica、JModelica.org和MapleSim这样说。有关可用性的进一步信息,请参阅请看这里。
Matlab/Simulink支持度如何?据说他们提供了这种可用性,但是没有官方的软件包可以从MathWorks下载。有像FMI工具箱和Simulink编码器的FMI目标这样的第三方软件包,但它们似乎是商业化的。我尝试了Modelon软件包的演示版本,FMI工具箱,但是使用演示版本只能在演示版本的模型上工作。
根据此链接的说法,实际上还有另一个官方的Simulink软件包。我联系了他们,问他们我能不能看一看,并尝试一个研究项目(这不是谎言,这是一个研究项目)。该工具只能通过电子邮件与链接中提到的团队一起获得,并且只有FMI Import (无导出)的功能。Simulink是一个商业工具,它不想让模型逃到其他环境中去。重要的注意事项,从评论中可以看到,这个软件包现在可以在官方发布的Simulink R2017b中找到,该版本于2017年9月20日发布。
总的来说,Modelica平台更支持FMI,它可以解决未来的许多问题。尽管我应该明确地说,到目前为止,我还没有很好地使用FMI来解决我的模型。它有时非常慢,而且OpenModelica的结果与使用从同一模型中提取的FMU的解决方案之间存在差异。模型交换的求解器选项受到限制。至于协同模拟,也许我做错了什么。然而,在我看来,这是一个需要改进的非常有希望的工具。
对2012年FMI标准存在的问题的研究可以是在这里发现的。在FMI2.0发布之后,大多数这些问题都被认为得到了解决。我在此感谢克里斯蒂安·伯茨对我发布的可能错误的信息进行了纠正。一般来说,FMI是一个很好的工具,在行业中变得越来越重要。它的优势和支持FMI的工具可以在其网站上找到。
https://stackoverflow.com/questions/46155030
复制相似问题