c语言追赶法求方程组的解,MATLAB-追赶法求解三对角方程组的算法原理例题与程序...

《MATLAB-追赶法求解三对角方程组的算法原理例题与程序》由会员分享,可在线阅读,更多相关《MATLAB-追赶法求解三对角方程组的算法原理例题与程序(4页珍藏版)》请在人人文库网上搜索。

1、3)三对角形线性方程组41 00000000x171 41 0000000x2501 41 000000x313001 41 00000x420001 41 0000x5600001 41 000x612000001 41 00x7140000001 41 0x8400000001 41x950000000 01 4x105x*(2,1,3,0,1,2,3,0,1,1)T二、数学原理设系数矩阵为三对角矩阵b1c10L000a2b2c2L0000a3b3L000AMMMMM M000 L an 1bn 1cn 1000L0anbn则方程组 Ax=f 称为三对角方程组。设矩阵 A 非奇异, A 有。

2、 Crout 分解 A=LU,其中 L 为下三角矩阵, U为单位上三角矩阵,记b100L00110L00220L00012L00033L00001L00LMMM,UMMMMM MM000Ln 10000L0n 1000Lnn000L L1可先依次求出 L,U 中的元素后,令 Ux=y,先求解下三角方程组Ly=f 得出 y,再求解上三角方程组Ux=y。事实上,求解三对角方程组的2 追赶法将矩阵三角分解的计算与求解两个三角方程组的计算放在一起,使算法更为紧凑。其计算公式为:1b1,1c1 ,y1f111对 i2,3,L, nai,ibiai i 1 ,ciiiiyifii yi1(*)ixnyn对。

3、 in1,n2,L,1xiyiixi1三、程序设计functionx=chase(a,b,c,f)%求解线性方程组 Ax=f, 其中 A 是三对角阵%a是矩阵 A 的下对角线元素a(1)=0%b是矩阵 A 的对角线元素%c是矩阵 A 的上对角线元素c(n)=0%f 是方程组的右端向量n=length(f);x=zeros(1,n);y=zeros(1,n);d=zeros(1,n);u= zeros(1,n);%预处理d(1)=b(1);for i=1:n-1u(i)=c(i)/d(i);d(i+1)=b(i+1)-a(i+1)*u(i);end%追的过程y(1)=f(1)/d(1);for 。

4、i=2:ny(i)=(f(i)-a(i)*y(i-1)/d(i);end%赶的过程x(n)=y(n);for i=n-1:-1:1x(i)=y(i)-u(i)*x(i+1);end a=0,-1,-1,-1,-1,-1,-1,-1,-1,-1; b=4,4,4,4,4,4,4,4,4,4; c=-1,-1,-1,-1,-1,-1,-1,-1,-1,0; f=7,5,-13,2,6,-12,14,-4,5,-5; x=chase(a,b,c,f)x =2.00001.0000-3.00000.00001.0000-2.00003.0000-0.00001.0000-1.0000四、结果分析和讨论追赶法求解的结果为 x=( 2,1 ,-3,0,1 ,-2,3,0,1 ,-1 )T。求解结果与精确解一样,这表明追赶法对于求解三对角方程组具有非常高的精度,误差非常小。算法次数也较少, 不选主元也可以有效的算出精确结果, 是一种计算量少而数值稳定的方法。五、完成题目的体会与收获通过本题的求解, 深刻的理解了追赶法求解三对角方程组的算法原理。 学会了追赶法的 matlab 编程,学会了又一种求解特殊方程组的方法。追赶法在计算量方面有着巨大的优势, 因此在可能的情况下应优先使用追赶法。 加深了对数值计算教材知识的理解,收获非常大。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值