错误扩展变量失败

Error failed to expand the variable

我有一个模型可以读取文件并对其执行一些操作并将输出打印到文件中。我收到一个无法解决的错误。下面的代码显示了输入数据到二维数组的声明和赋值。

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;

我收到以下错误"Failed to expand the vairable Data_2D"

如果我得到解决方案,那将非常有帮助。

Modelica 工具通常不喜欢编译期间的未知维度。 Modelica 规范说所有数组大小都应该在编译时知道。

在您的案例中,Data_2D 的尺寸未知。此外,从您的代码中我看不到长度和 Data_2D 是什么类型的组件。它们是参数、常量吗?

在您的情况下,可以使用 Modelica.Blocks.Tables.CombiTable2D 从文件中读取 table。