码迷,mamicode.com
首页 > 其他好文 > 详细

数值分析实验之线性方程组的迭代求解(MATLAB实现)

时间:2020-05-04 21:05:54      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:实验   gauss   matlab   abs   str   inf   info   printf   bsp   

 详细实验指导见上上一篇,此处只写内容啦

  实验内容: 求解如下4元线性方程组的近似解。

       技术图片

 

Gauss-Seidel迭代

A=[10,-1,2,0;-1,11,-1,3;2,-1,10,-1;0,3,-1,8];
b=[6;25;-11;15];
x=zeros(4,1);
temp=zeros(4,1);
x0=[1;2;-1;1];
for k=1:100
for l=1:4
    temp(l,1)=abs(x(l,1)-x0(l,1));
end
    if max(max(temp))>0.00001
for i=1:4
    x(i,1)=1/A(i,i)*b(i,1);
    for j=1:i-1
        if i-1~=0
        x(i,1)=x(i,1)-1/A(i,i)*A(i,j)*x(j,1);
        end
    end
    for j=i+1:4
        if j<=4
        x(i,1)=x(i,1)-1/A(i,i)*A(i,j)*x(j,1);
        end
    end
end
    else
        break
    end
end
fprintf(‘迭代次数为%g\n‘,k);

  运行结果:

       技术图片

 

数值分析实验之线性方程组的迭代求解(MATLAB实现)

标签:实验   gauss   matlab   abs   str   inf   info   printf   bsp   

原文地址:https://www.cnblogs.com/ynly/p/12828129.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!