gpt4 book ai didi

arrays - 在 modelica 中初始化未知大小的数组

转载 作者:行者123 更新时间:2023-12-02 02:23:25 25 4
gpt4 key购买 nike

我需要一些关于在 openmodelica 中初始化数组的帮助。我创建了一个 modelica 类,它应该生成一个可变大小的数组。大小将被设置为参数并且是整数类型。下面是我想做的一个例子。我不断收到错误消息,并很乐意收到任何提示!谢谢。

parameter Integer f_min;
parameter Integer f_max;
Integer Freq_steigerung;
Integer array_size;
Integer Freq[:];

equation
array_size = ceil((f_max-f_min)/Freq_steigerung);
Freq[array_size] = f_min: Freq_steigerung: f_max;

最佳答案

在 Modelica 中,您不能在运行时拥有可变大小的数组。所有数组大小都需要在编译时知道,因此大小需要是参数或常量。

您可以拥有包含数组大小未知的组件的函数(或记录),但它们需要在调用时绑定(bind)(因此在编译期间仍然已知)。

这样的事情会起作用:

model T
parameter Integer f_min;
parameter Integer f_max;
parameter Integer Freq_steigerung;
parameter Integer array_size = integer(ceil((f_max-f_min)/Freq_steigerung));
Integer Freq[array_size];
equation
Freq = f_min: Freq_steigerung: f_max;
end T;

关于arrays - 在 modelica 中初始化未知大小的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42457828/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com