在FMI 2.0中,数组参数被序列化为标量变量。导入工具可以将它们显示为数组,但是它们的大小是固定的,它们的处理效率很低。FMI项目的一个工作组目前正在开发更好的数组支持,但我想知道解决办法--同时如何处理数组参数。
思想是
还有其他的想法/解决办法吗?提前谢谢。
发布于 2017-08-25 11:08:13
在你的问题中概述的想法的组合也是可能的。
带有选择器参数的硬代码
这里的想法是硬编码几个变体的数组,并允许用户选择一个参数。
我是在最近的一个项目中这样做的,在这个项目中,用户需要在不同的空间解析初始条件(例如温度剖面)之间进行选择。我们使用一个模型生成100多组空间解析初始条件(每个初始条件表示建模对象的不同“历史”),将它们硬编码为FORTRAN数组( FMU的内核在FORTRAN中),并使用一个整数参数来选择他想要使用的配置文件。
它工作得很好,用户没有办法破坏它。
缩短数组并进行插值
如果数组中的数据是平滑的,则可能会显着地减少实际需要传递到模拟中的值的数量--这将使序列化成标量参数的痛苦更少。在FMU中,插值以获得所需的分辨率。
字符串参数选择csv文件。
可以使用字符串参数为用户提供的csv-文件提供路径。我不建议这样做,因为用户很可能会破坏它。
https://stackoverflow.com/questions/45089310
复制相似问题