⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gauseseidelthree8.m

📁 数值分析方法,主要里面涵盖了计算方法方面matlab程序!
💻 M
字号:
clear
clc
%function GauseSeidel(A,b,max,eps)
max=50;
eps=1.0E-6;
Ab=xlsread('data3_8.xls');
[m,nb]=size(Ab);
n=nb-1;
A=Ab(:,1:n);
b=Ab(:,nb);
x=zeros(n,1);x1=zeros(n,1);k=0;
while(1)
    x1(1)=(b(1)-A(1,2:n)*x(2:n,1))/A(1,1);
    for i=2:n-1
        x1(i)=(b(i)-A(i,1:i-1)*x1(1:i-1,1)-A(i,i+1:n)*x(i+1:n,1))/A(i,i);
    end
    x1(n)=(b(n)-A(n,1:n-1)*x1(1:n-1,1))/A(n,n);
    k=k+1;
    if sum(abs(x1-x))<eps
        fprintf('已迭代次数为%d\n',k);
        break;
    end
    if k>=max
        fprintf('The Method is disconvergent\n');
        break;
    end
    x=x1;
end
if k<max
    for i=1:n
        fprintf('x[%d]=%f\n',i,x1(i));
    end
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -