现在时间是:
当前位置:首 页 >> 矩阵计算>> 教学区>> 文章列表

实验二130213018 缪鹏翱

作者:130213018缪鹏翱   发布时间:2015-06-23 16:28:40   浏览次数:151

题目:书上39页第一题

过程:function b=gauss(A,b)
n=size(A,1);
tol=10^(-16);
for k=1:n-1
    if abs(A(k,k))>tol
        A(k+1:n,k)=A(k+1:n,k)/A(k,k);
        A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-A(k+1:n,k)*A(k,k+1:n);
    else
        stop;
    end
end
L=zeros(n,n);
 L=eye(n)+tril(A,-1)
 U=triu(A,0);
 n=size(b,1);
 x=zeros(n,1);
 b(1)=b(1)/L(1,1);
 for j=2:n
    b(j)=(b(j)-L(j,1:j-1)*b(1:j-1))/L(j,j);
 end
b(n)=b(n)/U(n,n);
 for j=n-1:-1:1
b(j)=(b(j)-U(j,j+1:n)*b(j+1:n))/U(j,j);
 end

 

检验:

clear all
format long
A=diag(6*ones(84,1),0)+diag(8*ones(83,1),1)+diag(ones(83,1),-1);
n=zeros(A,1);
b=zeros(84,1);
b(1)=7;
b(84)=14;
b(2:83)=15;
a=rank(A);
 if n==a
x=gauss(A,b);
err=abs(A*x-b)
 else
     'matrix A is sigular matrix! can not use the ways of gauss. '
 end

结果:

ans =

matrix A is sigular matrix! can not use the ways of gauss.







上一篇:没有了    下一篇:没有了

Copyright ©2019    计算数学达人 All Right Reserved.

技术支持:自助建站 | 领地网站建设 |短信接口 |燕窝 版权所有 © 2005-2019 lingw.net.粤ICP备16125321号 -5