📄 gsdddy.m
字号:
function X=gsdddy(A,b,X0,P,wucha,max1)
D=diag(diag(A));U=-triu(A,1);
L=-tril(A,-1);dD=det(D);
if dD==0
disp('请注意:因为对角矩阵D奇异,所以次方程组无解。')
else
disp('请注意:因为对角矩阵D非奇异,所以次方程组有解。')
iD=inv(D-L);B2=iD*U;f2=iD*b;jX=A\b;
X=X0;[n,m]=size(A);
for k=1:max1
X1=B2.*X+f2;djwcX=norm(X1-X,P);
xdwcX=djwcX/(norm(X,P)+eps);
if(djwcX<wucha)|(xdwcX<wucha)
return
else
k,X1',k=k+1;X=X1;
end
end
if (djwcX<wucha)|(xdwcX<wucha)
disp('请注意:高斯塞格尔迭代收敛A的分解矩阵D,U,L和方程组的精确解jX和近似解X如下:')
else
disp('请注意:高斯塞格尔迭代的结果没有达到给定的精度,并且迭代次数已经达到最大,方程组的精确解jX和近似解X如下:')
X=X';
jX=jX'
end
end
X=X';D,U,L,jX=jX'
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -