Erf是一个向量。
y=(-0.3725*(Erf)^2)+(1.2144*(Erf))+(0.0006);
你有Erf^2。但在MATLAB中,^运算符是重复的矩阵乘法——因此Erf^2是(Erf*Erf),其中*是代数矩阵乘法运算符,也称为内积。对于内积A*B,A(第一个操作数)的列数必须与B(第二个操作数)的行数相同。有一个1 x 3的向量,因此实际上有(1 x 3)*(1 x 3),但第一个操作数中的列数3与第二个操作数(1)中的行数不匹配。
您可能需要逐元素幂运算符,它在MATLAB中是.^运算符
y=(-0.3725*(Erf)。^2)+(1.2144*(Erf))+(0.0006);
注意:第19行完全覆盖了y,覆盖了第18行中赋给y的值。
注意:如果你发布代码,志愿者会更容易帮助你,而不是发布代码的图片。不要为了测试代码或指出代码的哪些部分有困难而让志愿者手工输入代码。