我需要一些帮助来初始化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;
Run Code Online (Sandbox Code Playgroud)
在Modelica中,您不能在运行时使用具有可变大小的数组.所有数组大小都需要在编译时知道,因此大小需要是参数或常量.
您可以拥有包含未知数组大小的组件的函数(或记录),但它们需要在调用时绑定(在编译期间仍然可以知道).
这样的东西会起作用:
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;
Run Code Online (Sandbox Code Playgroud)