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

📄 cg.m

📁 给出了线性方程组的CG法、Gauss_Seidel、SOR、Jacobi、fem求解
💻 M
字号:
% CG即共轭梯度法求解对称正定型线性方程组
clc
clear all

% u=4;v=4;a0=1;b0=1;
% [A,b]=fem(u,v,a0,b0);
tic
A=[2 -1 0 0;-1 3 -2 0;0 -2 4 -3;0 0 -3 5];
b=[6 1 -2 1]';
% A=[6 3;3 2];
% b=[0;-1];
n=length(b);
%%=========初始化=====================================
x1=zeros(n,1);
x2=zeros(n,1);
r1=zeros(n,1);
r2=zeros(n,1);
p1=zeros(n,1);
p2=zeros(n,1);

r1=b-A*x1;
p1=r1;

k=0;
jingdu=1;
while k<=n | jingdu>1e-6
    k=k+1;
    if r1==0
        break
    else
        alphi=(r1'*r1)/((A*p1)'*p1);
        x2=x1+alphi*p1;
        r2=r1-alphi*A*p1;
        beta=(r2'*r2)/(r1'*r1);
        p2=r2+beta*p1;
    end
    jingdu=norm(x2-x1,inf);
    x1=x2;
    r1=r2;
    p1=p2;
end
x2
toc    

⌨️ 快捷键说明

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