如何解决使用JModelica将数组设置为fmu参数时出现问题-“ FMUException:valueref和值的长度不一致”
我有一个代数方程,偏微分和常微分的模型。我用有限差分法离散化了偏微分方程,例如Tiller例6.9,《 Modelica的物理建模入门》。我的模型的初始条件是在零时离散的所有不同点的数组。在我的模型中是一个输入:
问题是我需要在模型外部设置此数组,并且出现以下错误:'FMUException:valueref的长度和值不一致。'
有人知道导致此错误的原因以及如何解决该错误吗? 有人可以给我提供一个示例或一段代码来显示如何在JModelica中实现吗?
谢谢, 卡琳(Karinne)
解决方法
在FMI 1.0和2.0中,没有数组,只有结构化的命名约定。 因此x0 [1],x0 [2] ... x [50]都是单独的标量变量。 FMI导入工具仍可以使用结构化命名约定来支持某些数组操作。但是,jModelica似乎不支持此功能,这会导致错误。
因此,您必须将输入视为几个标量变量。
阵列将在FMI 3.0中可用,请参阅https://fmi-standard.org/docs/3.0-dev/#definition-of-model-variables
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。