错误:索引超出了长方程中的矩阵维数

时间:2014-02-27 19:41:40

标签: matlab debugging

我一直坚持这个错误很长一段时间,并认为我错过了一些简单的事情。错误在下面的代码中(我没有显示为代码,因为它将全部显示为一行,我认为这可能更容易查看)。对于等式的长度我很抱歉,MATLAB中的简化函数没有帮助减小尺寸。所有矩阵的大小均为1 x 300,WY是标量。但是,我似乎得到错误:Index exceeds matrix dimensions

X1n = (A12(1,:).^2.*A1S13(1,:).*W + A13(1,:).^2.*A1S12(1,:).*Y -  ...
       A12(1,:).*A13(1,:).*A1S12(1,:).*W - A11(1,:).*A22(1,:).*A1S13(1,:).*W + ...
       A11(1,:).*A23(1,:).*A1S12(1,:).*W - A12(1,:).*A23(1,:).*A1S11(1,:).*W + ...
       A13(1,:)*A22(1,:).*A1S11(1,:).*W - A12(1,:).*A13(1,:).*A1S13(1,:).*Y + ...
       A11(1,:).*A23(1,:).*A1S13(1,:).*Y - A13(1,:).*A23(1,:).*A1S11(1,:).*Y - ...
       A11(1,:).*A33(1,:).*A1S12(1,:).*Y + A12(1,:).*A33(1,:).*A1S11(1,:).*Y + ...
       A23(1,:).^2.*A1S11(1,:).*W.*Y - A12(1,:).*A23(1,:).*A1S13(1,:).*W.*Y + ...
       A13(1,:).*A22(1,:).*A1S13(1,:).*W.*Y - ...
       A13(1,:).*A23(1,:).*A1S12(1,:).*W.*Y + ...
       A12(1,:).*A33(1,:).*A1S12(1,:).*W.*Y - ...
       A22(1,:).*A33(1,:).*A1S11(1,:).*W.*Y)./(Y.*(A33(1,:).*A12(1,:).^2 - ...
       2*A12(1,:).*A13(1,:).*A23(1,:) + ...
       A22(1,:).*A13(1,:).^2 + A11(1,:).*A23(1,:).^2 - ...
       A11(1,:).*A22(1,:).*A33(1,:)))

1 个答案:

答案 0 :(得分:1)

这是你的错误(第4行):

A13(1,:)*A22(1,:)

将其更改为:

A13(1,:).*A22(1,:)