Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2011-09-08
年龄: 35
帖子: 2
声望力: 0 ![]() |
![]()
求教高手,下面是我自己写的一个简单gauss消元法的程序,完成LU分解之后的逆推运算中对矩阵中的元素调用显示有error:Index exceeds matrix dimensions.
Error in ==> gauss at 17 X(n)=A(n,n+1)/A(n,n); function [X] = gauss(A,b) %function [X] =gauss(A,b) %线性方程组的Gauss消元法求解 %A为系数矩阵,b为常数向量,X为解向量 n=size(A); L=eye(n); for k=1:n-1 L1=[zeros(n-k,k-1),-A(k+1:n,k)/A(k,k),zeros(n-k,n-k)]; L1=[zeros(k,n);L1]; L1=L1+eye(n); A=L1*A; L=L1*L; end b=L*b A=[A,b] n=size(A); X(n)=A(n,n+1)/A(n,n); for k=2:n suma=0; for j=n-k+2:n suma=suma+A(n-k+1,j)*X(j); end X(n-k+1)=(A(n-k+1,n+1)-suma)/A(n-k+1,n-k+1); end X; end |
![]() |
![]() |