为什么要用列主元消去法

一个2*2的矩阵(a11a12)*(x1=(b1x2b2(a21a22)x3)b3)为什么要用列主元消去法要用到误差的传递,假设a12的误差为epsilon,这个误差在下... 一个2*2的矩阵(a11 a12)*(x1 =(b1
x2 b2
(a21 a22) x3) b3)

为什么要用列主元消去法
要用到误差的传递,假设a12的误差为epsilon,这个误差在下一句话里面变成了多少了呢?
刚学数值分析,线性代数有学的很烂,希望好心人详解一下
那个式子排版有点问题,就是一个2*2的矩阵 和两个未知数做的乘法运算,为什么不能直接用高斯消去法,而要用列主元消去法
展开
lca001
2009-04-21 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2493
采纳率:0%
帮助的人:1273万
展开全部
针对你给的二元方程,谈谈为什么要用列主元消去法.
通常高斯消去法有两个过程:消元过程和回代过程. 如果不选主元,消元过程第1步需要进行下面运算,a22-(a21/a11)*a12
这是消元后所得新的第2个方程的x2的系数,如果a11较a21小的多,则a21/a11就很大,由于在计算机上编程计算或手算时,舍入误差难以避免,如a12=1/3,计算时需舍入为有限小数,比如保留8位有效数字,1/3用0.33333333代替,误差很小,但是当a21/a11很大,比如a21=10,a11=0.000001,则a21/a11=10000000,此时计算a22-(a21/a11)*a12的值,由于a12有10^(-8)的误差,则(a21/a11)*a12的误差却变为了10^(-1),误差被大大的放大了,这在数值分析中称这种现象是算法不稳定,不稳定的算法计算出的结果就不可靠了,所以消元时要选主元,列主元消去法是调换方程的次序,使调换后方程的a11较a21大,此时a21/a11的绝对值小于1,这样做的结果,在以后的计算中,误差不但不被放大,反而缩小,这种算法称为稳定的算法,只有用稳定的算法计算,计算结果才可能可靠,列主元消去法是稳定算法,但通常的高斯消去法不是稳定的算法,这就是为什么要用列主元消去法.
后翰抄雁风
2019-05-24 · TA获得超过3600个赞
知道小有建树答主
回答量:3084
采纳率:26%
帮助的人:186万
展开全部
function
x=gauss_lie(a,b)
%采用高斯列主元法求解方程组ax=b
n=length(b);
p=1:n;lu=a;
y=[];
for
k=1:n
[c,i]=max(abs(lu(k:n,k)));
ik=i+k-1;
if
ik~=k
m=p(k);p(k)=p(ik);p(ik)=m;
ck=lu(k,:);lu(k,:)=lu(ik,:);lu(ik,:)=ck;
end
if
k==n
break;
end
lu(k+1:n,k)=lu(k+1:n,k)/lu(k,k);
lu(k+1:n,k+1:n)=lu(k+1:n,k+1:n)-lu(k+1:n,k)*lu(k,k+1:n);
end
l=diag(ones(n,1))+tril(lu,-1);
u=triu(lu);
y(1)=b(p(1));
for
i=2:n
y(i)=b(p(i))-l(i,1:i-1)*y(1:i-1)';
end
x(n)=y(n)/u(n,n);
for
i=n-1:-1:1
x(i)=(y(i)-u(i,i+1:n)*x(i+1:n)')/u(i,i);
end
x=x';
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式