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

📄 t3_4.m

📁 用matlab编写的追赶法程序
💻 M
字号:
function [k,flage]=lanczos1(n,m)
lin1=linspace(-2,-2,n-1);
lin2=linspace(3,3,n);
lin3=linspace(-1,-1,n-1);
A=diag(lin2);
B=diag(lin1,1);
C=diag(lin3,-1);
A=A+B+C;
x0=zeros(n,1);
b=zeros(n,1);
b(1)=1;
b(n)=2;
r0=b-A*x0;
r=zeros(n,1);
rr(1)=norm(r0);
flage=0;
for i=1:m
    e=zeros(n,1);
    e(i)=1;
    if i==1
        W=e;
    else
        W=[W,e];
    end
    V=W;
    T=W'*A*V;
    k=i;
    if det(T)==0
        flage=1;
        break;
    end
    y=T\W'*r0;
    x=x0+V*y;
    r=b-A*(x);
    rr(k+1)=norm(r);
end
if flage==0
    mx=1:1:k+1;
    rr(k+1)
else
    mx=1:1:k;
    rr(k)
end
flage
plot(mx,rr),xlabel('k'),ylabel('||r||'),title('||r||收敛曲线')

⌨️ 快捷键说明

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