我是共同模拟主题的新手。我熟悉这些定义(基于Trcka"用于建筑和/或系统仿真的共模拟副本的比较"):
我的问题:FMI /协同仿真是一种松耦合方法吗?什么是FMI /模型交换?根据我的理解,它不是一种强有力的耦合方法。我理解它是正确的,在模型交换中,导入FMU的工具正在收集所有ODE和代数方程,并且该工具使用单个求解器求解整个系统。因此,以统一的方式描述模型更为标准,以便它们可以集成到不同的模拟环境中?
非常感谢您的帮助
答案 0 :(得分:0)
我不是模拟求解器方面的专家,但我参与了FMI协同仿真从站的实现。 首先,你对模特交换是完全正确的。
关于协同仿真,求解器设置输入值,执行步骤并读取输出值。在时间步长内没有相互作用。我会说这更像是一种准动态耦合。 但是解算器有可能取消前一步骤以细化时间步长和重做计算,......等等,直到误差估计值落在预定义的容差范围内。这更接近于完全动态的耦合。
因为求解器(协同仿真主控)负责设置/获取输入/输出值并执行步骤(以及精炼时间步长),所以与其他模型的耦合定义将取决于求解器。
的问候,
答案 1 :(得分:0)
FMI /模型交换的目标是模型的分布(微分代数方程组),而FMI / Co-Simulation的目标是模型的分布以及适当的求解器。
由于编码求解器存在许多挑战并且具有适当的回滚支持,因此很难通过可用于强耦合协同仿真的导出FMU来实现。
所以,回答你的问题:这取决于场景。如果您希望使用FMI / Co仿真来模拟强耦合物理系统,并且您希望使用多个FMU进行仿真,那么最好是这些支持回滚,以避免稳定性问题。例如,如果您有一个FMU模拟物理系统,另一个FMU模拟控制器的情况,那么您可以使用松散耦合方法。
在您需要应用稳定技术之前,很难准确确定两个FMU之间需要的强耦合程度。 看看下面的实验,它将强耦合母版和松耦合母版进行了比较。 两个主控都用于强耦合机械系统的协同仿真: https://github.com/into-cps/case-study_mass-springer-damper
另外,请参阅以下报告(披露:我为此做出了贡献:))以了解这些概念: https://arxiv.org/pdf/1702.00686v1