将Dymola生成的DF FMU转为NDF以实现Simulink多线程协同仿真
Simulink多线程仿真:Dymola生成NDF FMU的优化方案与步长适配延迟问题
我在Simulink中使用Dymola生成的多个协同仿真FMU,希望借助Simulink的多线程仿真功能加速仿真进程。官方文档明确:若模型包含非直接馈通(NDF)模块后接直接馈通(DF)模块,即可实现多线程运行。
根据Dymola生成FMU时的提示信息,我判断当前生成的是DF类型FMU,因此需要将其转换为NDF类型。目前查到的方法是在输入后添加延迟模块来生成NDF FMU,但有两个疑问:
问题1:是否有更优的方法生成NDF FMU?
问题2:能否在Dymola中定义基于求解器实际步长而非固定延迟时间的单位延迟?
这种步长适配的延迟有助于提升仿真性能。常规延迟模块不适用,我考虑用pre()算子创建模块,但相关问题的旧回答年代久远,不确定是否仍然有效。
内容的提问来源于stack exchange,提问作者PYF
相关产品推荐
相关产品推荐

