我有一个模型来读取文件并对其进行操作并将输出打印到文件中。我收到一个错误,我无法解决它。下面的代码显示了输入数据到二维数组的声明和赋值。
Real Data_2D[:,:]"data from input file as 2D matrix";
length := Streams.countLines(Infile)"length of the input file";
/*collect the data from input file in to 2D matrix */
for i in 1:length loop
currentLine := Streams.readLine(Infile, indexDataStart+i-1);
nextIndex := 1;
for j in 1:noColumns loop
(Data_2D[i,j],nextIndex) := Strings.scanReal(currentLine, startIndex=nextIndex,unsigned=false, message="readCoefficientsHawc2.mo c[i,j] : Real scan not successful");
end for;
end for;
我收到以下错误“无法扩展可修改的Data_2D”
如果我得到一个解决方案,那将非常有用。
答案 0 :(得分:2)
Modelica工具通常在编译期间不喜欢未知的尺寸。 Modelica规范说,所有数组大小都应该在编译时知道。
在您的情况下,Data_2D的尺寸未知。此外,从您的代码我不知道什么类型的组件是长度和Data_2D。它们是参数,常量吗?
在您的情况下,可以使用Modelica.Blocks.Tables.CombiTable2D从文件中读取表。