第二章 线性方程组的数值解法
线性代数方程组的数值解法讨论
线性代数方程组的数值解法讨论解线性方程组的方法,主要分为直接方法和迭代方法两种。
直接法是在没有舍入误差的假设下能在预定的运算次数内求得精确解。
而实际上,原始数据的误差和运算的舍入误差是不可以避免的,实际上获得的也是近似解。
迭代法是构造一定的递推格式,产生逼近精确解的序列。
对于高阶方程组,如一些偏微分方程数值求解中出现的方程组,采用直接法计算代价比较高,迭代法则简单又实用,因此比较受工程人员青睐。
小组成员本着工程应用,讨论将学习的理论知识转变为matlab 代码。
讨论的成果也以各种代码的形式在下面展现。
1 Jacobi 迭代法使用Jacobi 迭代法,首先必须给定初始值,其计算过程可以用以下步骤描述: 步骤1 输入系数矩阵A ,常熟向量b ,初值(0)x ,误差限ε,正整数N ,令1k =.步骤2 (0)11ni i ij jj ii j i x b a x a =≠⎡⎤⎢⎥=-⎢⎥⎢⎥⎣⎦∑,(0)j x 代表(0)x 的第j 个分量。
步骤3 计算11ni i ij j j ii j i y b a x a =≠⎡⎤⎢⎥=-⎢⎥⎢⎥⎣⎦∑,判断1max i i i n x y ε≤≤-<,如果是,则结束迭代,转入步骤5;否则,转入步骤4。
步骤4 判断k N =?如果是,则输出失败标志;否则,置1k k =+,i i x y ⇐,1,2,,i n =,转入步骤2。
步骤5 输出12,,n y y y 。
雅可比迭代代码function [x,k]=Fjacobi(A,b,x0,tol)% jacobi 迭代法 计算线性方程组% tol 为输入误差容限,x0为迭代初值max1= 300; %默认最多迭代300,超过要300次给出警告 D=diag(diag(A)); L=-tril(A,-1);U=-triu(A,1); B=D\(L+U); f=D\b; x=B*x0+f;k=1; %迭代次数while norm(x-x0)>=tol x0=x;x=B*x0+f; k=k+1;if(k>=max1)disp('迭代超过300次,方程组可能不收敛'); return; end%[k x'] %显示每一步迭代的结果 End2 高斯赛德尔迭代由Jacobi 迭代法中,每一次的迭代只用到前一次的迭代值,若每一次迭代充分利用当前最新的迭代值,即在计算第i 个分量(1)k i x +时,用最新分量11()k x +,12()k x +…(1)1k i x +-代替旧分量)1(k x ', )2(k x …)3(k x 就得到高斯赛德尔迭代格式,其数学表达式为:1(1)(1)()111(1,2,,)i n k k k ii ij j ij j j j i ii xb a x a x i n a -++==+⎛⎫=--= ⎪⎝⎭∑∑具体形式如下:()()()(1)()()()11221331111(1)(1)()()22112332222(1)(1)(1)(1)(1)112233,11111k k k k n n k k k k n n k k k k k n n n n n n n n nnx a x a x a x b a x a x a x a x b a x a x a x a x a x b a ++++++++--=----+=----+⋯⋯⋯⋯⋯⋯=-----+矩阵形式表示为:()(1)1(1)()(0,1,2,,),k k k k n +-+=++=x D Lx Ux b将(1)(1)()(0,1,2,,)k k k k n ++=++=Dx Lx Ux b 移项整理得: (1)1()1()()(0,1,2,,))k k x D L Ux D L b k n +--=-+-=记11(),()--=-=-M D L U g D L b ,则(1)()k k x x +=+M g高斯塞德尔迭代function [x,k]=Fgseid(A,b,x0,tol)%高斯-塞德尔迭代法 计算线性方程组 % tol 为误差容限max1= 300; %默认最高迭代300次D=diag(diag(A)); L=-tril(A,-1); U=-triu(A,1); G=(D-L)\U; f=(D-L)\b; x=G*x0+f;k=1; while norm(x-x0)>=tol x0=x;x=G*x0+f; k=k+1;if(k>=max1)disp('迭代次数太多,可能不收敛'); return; end% [k,x'] %显示每一步迭代结果 End3 超松弛迭代法在工程中最常遇到的问题便是线性代数方程组的求解,而线性代数方程组的求解一般可以分为两类,一类是直接法(精确法),包括克莱姆法则方法、LD 分解法等,另一类是迭代法(近似法),包括雅克比迭代法、高斯迭代法、超松弛迭代法等。
浅谈线性方程组的数值解法及其应用
浅谈线性方程组的数值解法及其应用1、相关定义1.1、分形油藏基本概念定义3.1[32]:维数为的分形渗透网嵌入到d(d=2,3)维岩块中,即整个导流系统是一个分形体,称具有这种特性的油藏为分形油藏。
df 3.1.1 分形孔隙度θf和渗透率Kf (r) 假设分形体内流体储集在体积为的座点处(设每个座点体积相同),座点密度为。
分形体中,座点孔隙体积为常数。
用描述某种相应对称性(如, Vs N( r ) Vs B B= A 2π h和4π 分别描述直线对称,圆柱面对称和球对称),a为位置-浓度参数[33], 为岩块的欧几里德维数,定义分形孔隙度d θf有: θf= aBVs rdf ?d (3-1) 这说明分形网格的θf 不再是常数,而是随波及半径r 成幂律关系。
取,则有: w r =r df d f w w r θ θr θw=aVBs rwd f ? d,得到分形孔隙度= ,θw 为r = rw 处的孔隙度。
同样渗透率定义为:Kf( r)= aVsB m rd f ?d ? θ (3-2) ( ) r= rw处的渗透率Kw=aVs Bm r wdf ?d ?θ ,得到渗透率Kf r= Kw rrw d f? d ?θ 。
3.1.2 分形参数的物理意义(1)分形维数df 分形维数df 严格地是一个分形体的几何特征,是分形体复杂程度的重要标志。
一般认为,d f值不同,复杂程度也不一样。
随复杂程度加剧,d f 值会愈高。
151.2、分数阶的基本定义从十七世纪分数阶微积分诞生之日起,数学家们就不断的探讨分数阶算子的理论体系。
后经多位数学家的努力,从不同的角度入手,建立了多种不同形式的分数阶算子定义,现在主要通用的三种定义[1]形式为: (1). Grümwald-Letnikov 定义:对于任意的实数α ,记α 的整数部分为[α ] ([α ] 为小于α 的最大整数),假如函数f ( t ) 在区间[α,t ]上有m+ 1 阶连续的导数,α > 0 时, m 至少取[α ],则定义分数阶α 阶导数为: ( ) li0m 0 ( ) n G aD tα f tΔ nhh→ =t ?a h ?α i =∑ ??? ?iα ??? f t ? ih (1-1) ( )( 1)( 2) ( 1) ! i i i 其中,?α = ?α ?α + ?α + L ?α + ? 。
数值分析复习资料
数值分析复习资料一、重点公式第一章 非线性方程和方程组的数值解法 1)二分法的基本原理,误差:~12k b ax α+--<2)迭代法收敛阶:1lim0i pi ic εε+→∞=≠,若1p =则要求01c <<3)单点迭代收敛定理:定理一:若当[],x a b ∈时,[](),x a b ϕ∈且'()1x l ϕ≤<,[],x a b ∀∈,则迭代格式收敛于唯一的根;定理二:设()x ϕ满足:①[],x a b ∈时,[](),x a b ϕ∈, ②[]121212,,, ()(),01x x a b x x l x x l ϕϕ∀∈-≤-<<有 则对任意初值[]0,x a b ∈迭代收敛,且:110111i i iii x x x llx x x lαα+-≤---≤-- 定理三:设()x ϕ在α的邻域内具有连续的一阶导数,且'()1ϕα<,则迭代格式具有局部收敛性;定理四:假设()x ϕ在根α的邻域内充分可导,则迭代格式1()i i x x ϕ+=是P 阶收敛的 ()()()0,1,,1,()0j P j P ϕαϕα==-≠ (Taylor 展开证明)4)Newton 迭代法:1'()()i i i i f x x x f x +=-,平方收敛 5)Newton 迭代法收敛定理:设()f x 在有根区间[],a b 上有二阶导数,且满足: ①:()()0f a f b <; ②:[]'()0,,f x x a b ≠∈;③:[]'',,f x a b ∈不变号④:初值[]0,x a b ∈使得''()()0f x f x <;则Newton 迭代法收敛于根α。
6)多点迭代法:1111111()()()()()()()()()i i i i i i i i i i i i i i i f x f x f x x x x x f x f x f x f x f x f x x x -+-----=-=+----收敛阶:P =7)Newton 迭代法求重根(收敛仍为线性收敛),对Newton 法进行修改 ①:已知根的重数r ,1'()()i i i i f x x x rf x +=-(平方收敛) ②:未知根的重数:1''()(),()()()i i i i u x f x x x u x u x f x +=-=,α为()f x 的重根,则α为()u x 的单根。
第2章 线性方程组的数值解法
第2章 线性方程组的数值解法2.1 引言在自然科学研究和工程技术的应用中,许多问题的解决,诸如非线性问题线性化、求微分方程的数值解最终都归结为线性方程组的求解问题. 我们在后面章节中的样条插值、曲线拟合、数值代数等,也需要求解线性方程组。
一般地,设n 阶线性方程组(linear system of equations of order n )为11112211211222221122,,,n n n n n n nn n n a x a x a x b a x a x a x b a x a x a x b +++=⎧⎪+++=⎪⎨⎪⎪+++=⎩ (2.1.1) 表示成矩阵形式=Ax b , (2.1.2)其中()111212122212n n ij n nn n nn a a a a a a a a a a ⨯⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎣⎦ A ,12n x x x ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦ x ,12n b b b ⎡⎤⎢⎥⎢⎥=⎢⎥⎢⎥⎣⎦b , (2.1.3) A 为系数矩阵(coefficient matrix).目前在计算机上经常使用的、简单有效的线性方程组的数值解法大致分为两类:直接法(direct method)和迭代法(iterative method). 其中直接法适用于以稠密矩阵为系数矩阵的中低阶线性方程组,而迭代法主要用于求解以稀疏矩阵为系数矩阵的高阶线性方程组。
本章首先介绍解线性方程组的两种常用的直接法:Gauss 消去法与矩阵三角分解法;然后介绍解线性方程组的三种常用的迭代法:Jacobi 迭代法、Gauss-Seidel 迭代法、超松弛法(SOR 法),并讨论它们的收敛性。
最后,讨论了线性方程组的性态。
2.2 Gauss 消去法Gauss 消去法(Gaussian elimination method )的基本思想是使用初等行变换将方程组转化为一个同解的上三角形方程组,再通过回代,求出该三角形方程组的解.2.2.1 Gauss 消去法Gauss 消去法包括消元和回代两个过程. 下面先举例说明Gauss 消去法求解线性方程组的主要过程.例2.2.1 求解线性方程组123123123471,2581,3611 1.x x x x x x x x x ++=⎧⎪++=⎨⎪++=⎩ 解 将该线性方程组写成增广矩阵(augmented matrix)的形式1471258136111⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦用Gauss 消去法求解过程如下:1.消元过程12213323323214711471147125810361036136111061020020r r r r r r r r r -+→-+→-+→⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥−−−−→---−−−−→---⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥---⎣⎦⎣⎦⎣⎦,从而原方程组等价地变为上三角形方程组123233471,361,20.x x x x x x ++=⎧⎪--=-⎨⎪=⎩2.回代过程从第3 个方程解出30x =,将其代入第2 个方程得()2216/31/3x x =--+=,再将30x =及21/3x =回代到第1个方程,解出1231471/3x x x =--=-. 从而得到原方程组的解123113,0.x x x =-==对于一般线性方程组(2.1.1),使用Gauss 消去法求解分为以下两步:1.消元过程为方便起见,记()(0)(0),ijn na ⨯==A A ()T(0)(0)(0)(0)1,12,1,1,,,n n n n a a a +++== b b ,则方程组(2.1.1)为()()()()()()()()()()()()000011112211,1000021122222,100001122,1,,.n n n n n n n n nn n n n a x a x a x a a x a x a x a a x a x a x a +++⎧+++=⎪+++=⎪⎨⎪⎪+++=⎩ (2.2.1) 第1次消元:若()0110a ≠,对方程组(2.2.1) 执行初等行变换11i i i r l r r -→, 2,3,,i n = ,得第1个导出方程组——————————————————————————高斯 (Carl Friedrich Gauss 1777年4月30 日 – 1855年2月23 ) 是德国数学家、天文学家,在许多科学领域都做出了杰出的贡献,他为现代数论、微分几何(曲面论)、误差理论等许多数学分支奠定了基础. 他的数学研究以简明、严谨、完美而著称于世. 他在数学上与阿基米德、牛顿和欧拉齐名,被称为“数学王子”,被公认为有史以来最伟大的数学家之一.()()()()()()()()()()000011112211,111122222,111122,1,,,n nn n n n n nn n n n a x a x a x a a x a x a a x a x a +++⎧+++=⎪⎪++=⎨⎪⎪++=⎩(2.2.2)其中()()1111/i i l a a =,()()()10011,2,3,,;2,3,, 1.ij ij i j a a l a i n j n =-==+第2次消元:若()1220a ≠,对方程组(2.2.2)执行初等行变换22,i i i r l r r -→ 3,4,,i n = ,得第2个导出方程组()()()()()()()()()()()()()()()0000011112213311,1111122223322,122233333,122233,1,,,,n nn n n n n nn n nn nn n a x a x a x a x a a x a x a x a a x a x a a x a x a ++++⎧++++=⎪⎪+++=⎪⎪++=⎨⎪⎪⎪++=⎪⎩(2.2.3)其中()()112222/i i l a a =,()()()21122,3,4,,;3,4,, 1.ij ij i j a a l a i n j n =-==+第k 次消元:若()10k kka -≠,对第1k -个导出方程组执行初等行变换i ik k i r l r r -→,1,2,,i k k n =++ , 得第k 个导出方程组()()()()()()()()()()()()()()()000001111221,1111,110112221,1122,11,111,1,1,11,1,,,,k k n nn k k n n n k k k k k k k n nk n k k k n k k nn n n n a x a x a x a x a a x a x a x a a x a x a a x a x a +++++++++++++++⎧+++++=⎪⎪++++=⎪⎪⎨++=⎪⎪⎪⎪++=⎩(2.2.4)其中()()11k k ik ikkkl a a --=,()()()11,k k k ij ij ik kj a a l a --=- 1,,;1,, 1.i k n j k n =+=++ 重复上述过程1n -次,得到第1n -个导出方程组()()()()()()()()()()()()()()0000011112213311,1111122223322,122233333,111,1,,,.n n n n n n n nn n n nn nn n a x a x a x a x a a x a x a x a a x a x a a x a +++--+⎧++++=⎪⎪+++=⎪⎪++=⎨⎪⎪⎪=⎪⎩(2.2.5)其中()()()()()1111,,1,2,,1;1,,;1,, 1.k k kk k ik ikkkij ijik kjl a a a a l a k n i k n j k n ----==-=-=+=++ (2.2.6)这样,通过消元过程就将方程组(2.1.1)化成了等价的上三角形方程组(2.2.5).2.回代过程回代过程就是求上三角形方程组(2.2.5)的解. 若()10n nna -≠,则从最后一个方程开始,先求出()()11,1,/n n n n n n n x a a --+=,再由第1n -个方程解出1n x -,依此类推可解出221,,,n x x x - . 一般(2.2.7)定义 2.2.1 由式(2.2.2)-(2.2.7)确定的求解线性方程组的算法称为Gauss 消去法(Gaussian elimination method),包括消元(elimination)和回代(backward substitution)两个过程。
线性方程组的四种数值解法
线性方程组的四种数值解法(电子科技大学物理电子学院,四川 成都 610054)摘要:本文介绍了四种求解线性方程组的数值解法: 雅克比迭代法、高斯赛德尔迭代法、高斯消去法和改进的平方根法的基本原理和算法流程,通过求解具体方程,对四种求解方法进行了对比。
对于雅克比迭代法和高斯赛德尔迭代法,研究了两种算法对求解同一方程组的迭代效率差异,结果表明高斯赛德尔迭代法达到同样精度所需迭代次数较少。
对于高斯消去法,通过选择列主元的方法提高算法的准确度,计算结果表明高斯消去法计算精确,且运算复杂度也不是很高。
对于改进的平方根法,其运算复杂度低,但对于给定的方程组有着严苛的要求。
关键词:雅克比迭代法;高斯赛德尔迭代法;高斯消去法;改进的平方根法;线性方程组引言线性方程组的求解在日常生活和科研中有着极其重要的应用,但在实际运算中,当矩阵的维数较高时,用初等方法求解的计算复杂度随维数的增长非常快,因此,用数值方法求解线性方程组的重要性便显现出来。
经典的求解线性方程组的方法一般分为两类:直接法和迭代法。
前者例如高斯消去法,改进的平方根法等,后者的例子包括雅克比迭代法,高斯赛德尔迭代法等。
这些方法的计算复杂度在可以接受的范围内,因此被广泛采用。
一般来说,直接法对于阶数比较低的方程组比较有效;而后者对于比较大的方程组更有效。
在实际计算中,几十万甚至几百万个未知数的方程组并不少见。
在这些情况下,迭代法有无可比拟的优势。
另外,使用迭代法可以根据不同的精度要求选择终止时间,因此比较灵活。
在问题特别大的时候,计算机内存可能无法容纳被操作的矩阵,这给直接法带来很大的挑战。
而对于迭代法,则可以将矩阵的某一部分读入内存进行操作,然后再操作另外部分。
本文使用上述四种算法求解对应的方程组,验证各种算法的精确度和计算速度。
1 算法介绍1.1 雅克比迭代法 1.1.1 算法理论设线性方程组(1)b Ax的系数矩阵A 可逆且主对角元素 均不为零,令并将A 分解成(2)从而(1)可写成令其中. (3)以B 1为迭代矩阵的迭代法(公式)(4)称为雅克比(Jacobi)迭代法(公式),用向量的分量来表示,(4)为(5)其中为初始向量.1.1.2 算法描述 1给定迭代初始向量X 0以及误差要求delta 2根据雅克比迭代公式计算出下一组向量3判断X 是否满足误差要求,即||X k+1 – X k || < delta4若误差满足要求,则停止迭代返回结果;若否,则返回第二步进行下一轮迭代1.2 高斯赛德尔迭代法nna ,...,a ,a 2211()nna ,...,a ,a diag D 2211=()D D A A +-=()b x A D Dx +-=11f x B x +=b D f ,A D I B 1111--=-=()()111f x B x k k +=+⎩⎨⎧[],...,,k ,n ,...,i x a ba xnij j )k (j j i iii)k (i21021111==∑-=≠=+()()()()()Tn x ,...x ,x x 002010=1.2.1 算法理论由雅克比迭代公式可知,在迭代的每一步计算过程中是用的全部分量来计算的所有分量,显然在计算第i 个分量时,已经计算出的最新分量没有被利用,从直观上看,最新计算出的分量可能比旧的分量要好些.因此,对这些最新计算出来的第次近似的分量加以利用,就得到所谓解方程组的高斯—塞德尔(Gauss-Seidel )迭代法.把矩阵A 分解成(6)其中,分别为的主对角元除外的下三角和上三角部分,于是,方程组(1)便可以写成即其中(7)以为迭代矩阵构成的迭代法(公式)(8)称为高斯—塞德尔迭代法(公式),用变量表示的形式为(9)1.2.2 算法描述 1给定迭代初始向量X 0以及误差要求delta2根据高斯赛德尔迭代公式计算出下一组向量()k x ()1+k x ()1+k ix ()()1111+-+k i k x ,...,x 1+k()1+k x()1+k jx U L D A --=()nna ,...,a ,a diag D 2211=U ,L --A ()b Ux x L D +=-22f x B x +=()()b L D f ,U L D B 1212---=-=2B ()()221f x B x k k +=+⎩⎨⎧[],...,,k ,n ,,i x a x a b a xi j n i j )k (j ij )k (j ij i ii)k (i21021111111==∑∑--=-=+=++3判断X是否满足误差要求,即||X k+1– X k|| < delta4若误差满足要求,则停止迭代返回结果;若否,则返回第二步进行下一轮迭代1.3 高斯消去法1.3.1 算法理论下面三种变换称为初等行变换:1.对调两行;2.以数k≠0乘某一行中的所有元素;3.把某一行所有元素的k倍加到另一行对应的元素上去。
线性方程组的解法例题线性方程组的解法
线性方程组的解法例题线性方程组的解法第二章线性方程组的解法n阶线性方程组的一般形式为:a11x1,a12x2, ,a1nxn b1 ax,ax, ,ax b 2112222nn2(2.0.1)an1x1,an2x2, ,annxn bnAx b用矩阵表示为: 其中A称为系数矩阵,x称为解向量,b称为常数向量(简称方程组自由项),它们分别为:x1 b1 a11a12a1nx b aa2122a2n x 2 b 21,, Axn bn an1an2ann如果矩阵A非奇异,即A的行列式值det(A) 0,则根据克莱姆(Cramer)规则,方程组有唯一解:Di,i 1,2, ,n xi D其中D det(A),Di表示D中等i列换b后所得的行列式值。
但克莱姆规则不适用于求解线性代数方程组,因为计算工作量大得难以容忍。
实际用于求解线性代数方程组的计算方法主要有两种:一是消去法,它属于直接解法;二是迭代解法。
消去法的优点是可以预先估计计算工作量,并且根据消去法的基本原理,可以得到矩阵运算(如矩阵求逆等)的求解方法。
但是,由于实际计算过程总存在有误差,由消去法得到的结果并不是绝对精确的,存在数值计算的稳定性问题。
迭代解法的优点是简单,便于编制计算机程序。
在迭代解法中,必须考虑迭收敛速度快慢的问题。
?2.1 线性方程组的直接计算求解线性代数方程组的直接解法主要是消去法(或称消元2法)。
消去法的基本思想是通过初等行变换:将一个方程乘以某个常数,以及将两个方程相加或相减,减少方程中的未知数数目,最终使每个方程中含一个未知数,从而得到所需要的解。
2.1.1 三角形方程组的计算对下三角形方程组:a11x1 b1ax,ax b 2112222(2.1.1)an1x1,an2x2, ,annxn bn可以通过前代的方法求解:先从第1个方程求出x1,代入第2个方程求出x2,依次类推,可以逐次前代求出所有xi(i 1,2, ,n),计算公式如下:b1x1 a11i~1bi~ aij xj(2.1.2)j 13xi , i 2, 3, , n aii对上三角形方程组:a11x1,a12x2, ,a1nxn b1ax, ,ax b 2222nn2annxn bn(2.1.3)可以通过回代的方法求解:先从第n个方程求出xn,代入第n~1个方程求出xn~1,依次类推,可以逐次回代求出所有xi(i n,n~1, ,1),计算公式如下:bnxn annnbi~ aij xj(2.1.4)j i,1xi , i n~1, n~2, , 1 aii2n 前代法和回代法的计算量都是次四则运算。
数值分析第二章解线性方程组的直接方法
a2(22) x2 ... a2(2n) xn b2(2) ,
..............
an(nn) xn bn(n) .
对此方程组进行回代,就可求出方程组的解.
xn
xiΒιβλιοθήκη bn(n) (bi(i )
an(nn) ,
n
ai(ji ) x
j i 1
j
)
ai(ii ) ,
i n 1,n 2,,1.
x3 x3
1 1
4x1 2x2 2x3 3
消去后两个方程中的x1得
x1
2 x2 5 x2
x3 1 2x3 2
6x2 6x3 1
再消去最后一个方程的x2得
x1
2 x2 5 x2
x3 1 2x3 2
42 5
x3
7 5
消元结束.
x1
1 2
经过回代得解:
x2
1 3
互换, 因而程序比较复杂, 计算时间较长.
• 列主元素法的精度虽然稍低于全主元素法, 但其
计算简单, 工作量大为减少, 且计算经验与理论实
践均表明, 它与全主元素法同样具有良好的数值稳
定性.
• 列主元素法是求解中小型稠密线性方程组的最好
方法之一.
27
§2 直接三角分解法
Gauss消元法的矩阵表示
a12
a13
a 1 0 a21 a22 a23 a21 aa11 a22 aa12 a23 aa13
b 0 1 a31 a32 a33 a31 ba11 a32 ba12 a33 ba13
28
n=3时Gauss消元法的矩阵表示
a11 a12 a13 A a21 a22 a23
线性方程组的数值解法详解演示文稿
n
非行零交判换断的次元数素最个多数为为::kn1(1nnk1()n12kn)(n
k 1
1)
1 2
n(n
1)
二、矩阵三角分解法
设有线性方程组:AX=b
a11 a12 a1n
x1
b1
A
a21
a22
a2
n
,
X
x2
,
b
b2
.
an1 an2 ann
xn
bn
矩阵三角分解法包括不选主元和选主元两种方法。
1、不选主元三角分解算法 当A非奇异时,可以将A作LU分解:
1 0
0 u11 u12 u1n
A
LU
l21
1
0
0
u22
,
ln1 ln,n1 1 0 0 unn
其中:(矩阵LU分解)
(1) u1 j a1 j (i 1,2,,n), li1 ai1 / u11(i 2,,n),
1
0 0
1
2,y
2 ,
x
0
.
1 1 1 0 0 1
1 1
§3 解线性方程组的迭代法
考虑线性方程组
a11x1 a12x2 a1nxn b1
a21x1
a22x2
a2n xn
b2
an1x1 an2x2 annxn bn
也就是
Ax=b.
进行矩阵分裂
A=M-N,
(2.1) (2.2)
其中
a1(11)
0
0
a1(12) a2(22)
an(22)
a1(1n) a2(2n)
an(2n)
数值分析第二章 线性方程组的数值解法
(2.2)
a11 x1 a12 x2 a1n xn b1 a22 x2 a2 n xn b2 ann xn bn
(2.3)
2.顺序高斯消去法
a11 x1 a12 x2 a13 x3 a1n xn a1, n 1 a 21 x1 a 22 x2 a 23 x3 a 2 n xn a 2, n 1 a n1 x1 a n 2 x2 a n 3 x3 a nn xn a n , n 1
(1) a12 (1) a 22
(1) an 2
0
(1) a1 n (1) a2 n (1) a nn
?
A( 1 )
(1) (1) (1) a11 a12 a1 n (1) (1) (1) a21 a22 a2 n (1) (1) (1) an 2 ann a n1
(k ) (k ) m a 用 ik ik / akk 乘第k行
加到第i行中,得到
a (1) a (1) 1k 11 (k ) akk 0 0
(1) (1) x a1 b 1 n 1 (k ) (k ) (k ) akk 1 akn xk bk ( k 1) . ( k 1) ( k 1) x ak 1k 1 ak 1n k 1 bk 1 ( k 1) ( k 1) x ( k 1) ank 1 ann n b n (1) a1 k 1
写出原方程组的增广矩阵:
0.0120 0.0100 0.1670 0.6781 1.000 0.8334 5.910 12.10 1200 4.200 981.0 3200
线性方程组与矩阵特征值求解的数值方法
(m-k)次乘法运算
A(k与1) A前(k)k行元素相同, A(k的1)左上角k阶阵
a (1) 11
A(k) 11
a1(kk )
为上三角阵。
a
(k kk
)
第k步约化公式:
Lk A(k ) A(k1)
Lk
b
(k
)
b(k 1)
(3)继续上述约化过程,且设a
(k kk
)
0(k
1,2,
, s),
(2.1)
A~
1 2
4 5
7 8
1
1
( (
E2 E3
) )
2( 3(
E1 E1
) )
E E
2 3
1 0
4 3
7 6
1(E3 ) 2(E2 ) E3 1
1
0
4 3
7 6
11,
3
6
11
1
0
6
10
2
0
0
2
0
(2)回代求解,得:x1
1, 3
x
2
1, 3
x
3
0。
结论:
整个计算过程可分为两部分:(1)消元:把原 方程组转化为系数矩阵为上三角矩阵的方程组; (2)回代:由系数矩阵为上三角矩阵的方程组求解
0, 计算乘数
m ik
a(k) ik
a
(k kk
)
,(i
(m-k)次除法运算 k 1, , m),
k)
)进行行初等变换,使
A( k )第k列
a(k kk
) 以下元素约为零,
即 ri mikrk ri (i k 1,L , m) ,得到与原方程组等价的方程组 A(k 1) x b(k 1)
数值分析Ch2
∆ (1) =A
为Ax = b的 增广 矩阵 , 对 增广 矩阵 进行 初等 行变 换, 实现 下述 过程 A(1) → A(2) → · · · → A(k) → A(k+1) → · · · → A(n) ,
Numerical Analysis
M. H. Xu
(2)
A(k)
··· ···
ak−1k akk . . . ank
(k )
ak−1n akn . . .
(k )
(k−1)
···
(1)
0
···
ann
(k )
说明 : 用 [a1n+1 , · · · , ann+1 ]T 表示 [b1 , · · · , bn ]T , 可 方便 编程 .
···
···
Numerical Analysis
M. H. Xu
三 Cramer法则 解线 性 方程 组的 工作 量及 存在 问题 若 n阶 行 列 式 通 过 行 列 式 的 展 开 定 理 来 计 算 , 则 • 计 算 一 个 n阶 行 列 式 的 工 作 量 不 低 于 n ! 次 乘 法 . • Cramer法则 解一 n阶方 程组 的工 作量 不少 于(n + 1)!次 乘法 .
( i)
( i)
Numerical Analysis
M. H. Xu
三 Gauss消 元法 的算 法分析 1. 中 断分 析 定理 2. 1 在Gauss消元 法的 消元 过程 中, aii = 0, i = 1, 2, · · · , k , 即Gauss消元 法不 会中 断的充分 必要 条件 是矩 阵A的 顺序 主子 式 Di = 0, i = 1, 2, · · · , k . 定理 2. 2 设方 程组 的系 数矩 阵A非 奇异 , 若 在消 元过 程中 允许 交换 方程 组中 的任 两个 方程 , 则 Gauss消 元法 解此 方程 组不 会中 断. 2. 计 算量 定理 2. 3 Gauss消 元法 解n阶 线性 方程 组所 需乘 除法 和加 减法 次数 均约 为n3 /3.
线性方程组的数值解法与非线性方程求解
淮海工学院实验报告书
课程名称:数学实验
实验名称:线性方程组的数值解法与非线性方程求解班级数学091
姓名:耿萍学号:090911107
日期:2012.4.27 地点数学实验室
指导教师:曹卫平成绩:
数理科学系
-259.49
x3 =
13467.74
7580.65
5564.52
3951.61
1870.97
从x1可以看出,第5年龄段:x5=140.5>100=h5 ,说明收获量h5可以达到100。
从x2可以看出,x5为-259.49,但种群数量不可能为负数,在本题所给条件下,无法使h1~h5均为500。
从x3可以看出,x5=1870>500=h5,说明收获量h5可达到500,从而h1~h5均可达到500。
(3)
1)由题目已知条件,假设第i月月初待还贷款为,贷款月利率为r,则可列出:
=150000 =*(1+r)-1000 …=1000/r+(-1000/r)
2) 记第一家银行月利率为s,第二家银行年利率为t,则:
=4500/s+(-4500/r)。
数值分析-第二章小结
第二章 线性方程组的数值解法-------学习小结姓名 班级 学号 一、本章学习体会通过本章的学习,我了解了线性方程组的不同解法,切实体会到了不同的计算方法对计算结果的影响。
求解线性方程组的方法可分为两大类:直接方法和迭代方法。
直接方法在解一般的线性方程组的时候比较简便,使用此方法经过有限次运算就可得到方程组的解。
然而迭代法是要构造一个无限的向量序列,其极限是方程组的解向量,它适用于求解大型稀疏线性方程组。
总的来说,直接方法和迭代法各有优点与不足,在解线性方程组的时候,我们要根据具体的线性方程组的特点来选择合适的解法,这样我们才能快速准确的得到方程组的解。
因此,我们要熟悉书中介绍的各类线性方程组的解法,同时要善于思考、总结,在使用各种方法求解的同时尽量提出自己独特的见解,通过不断练习计算,使自己的能力得到提高。
二、本章知识梳理线性方程组的求解方法分为直接法和迭代法两种,Gramer (克莱姆)法是直接法的一种,但由于其计算量比较大,在世界工作中其效率比较低、经济效益差,所以此方法我们很少使用,本章主要介绍其他的计算方法。
2.1 Gauss 消去法Gauss (高斯)消去法由消元和回代两个过程组成。
消元过程就是对方程组的增广矩阵做有限次的初等行变换,使它的系数矩阵部分变换为上三角阵。
所用的初等行变换主要有两种:第一种,交换两行的位置;第二种,用一个数乘某一行加到另一行上。
回代过程就是先由方程组的最后一个方程解出n x ,然后通过逐步回代,依次求出1n x -,2n x -,…,1x 。
这种Gauss 消去法可分为Gauss 消去法和列主元素Gauss 消去法两种。
2.1.1 顺序Gauss 消去法在Gauss 消去法的消元过程中对方程组的增广矩阵只做前述的第二种初等行变换就形成了顺序Gauss 消去法,其算法如下:记(1)ij ij a a = (i ,j=1,2,…,n )i i 1、 消元过程对于k=1,2,…,n-1执行 (1)如果()0k kka =,则算法失效,停止计算;否则转(2)。
线性方程组的数值解法-安振华-2012011837
实验5:线性方程组的数值解法化学工程系分2 安振华2012011837【实验目的】1、掌握线性方程组的常用数值解法,包括高斯消去法、LU分解法以及校正法。
2、体验数值计算的时间复杂度和计算规模的关系。
3、加深对数值计算误差的理解。
4、学习使用迭代法等算法,求解非线性方程。
5、学习如何使用MATLAB解非线性方程组和方程组。
【实验容】【实验五:习题9】种群的繁殖与稳定收获:种群的数量因繁殖而增加,因自然死亡而减少,对于人工饲养的种群(比如家畜)而言,为了保证稳定的收获,各个年龄的种群数量应保持不变,种群因雌性个体的繁殖而改变,为方便起见以下种群数量均指其中的雌性。
种群年龄记作k=1,2,…,n,当年年龄k的种群数量记作x k,繁殖率记作b k(每个雌性个体在1年繁殖的数量),自然存活率记作s k(s k=1-d k,d k为1年的死亡率),收获量记作h k,则来年年龄k的种群数量k x应为:111,(1,2,,1)n k k k k k k k x b x x s x h k n +===-=⋅⋅⋅-∑要求各个年龄的种群数量每年维持不变就是要使(1,2,,)k k x x k n ==⋅⋅⋅(1) 若b k ,s k 已知,给定收获量h k ,建立求各年龄的稳定种群数量x k 的模型(用矩阵向量表示)(2) 设n=5,b 1=b 2=b 5=0,b 3=5,b 4=3,s 1=s 4=0.4,s 2=s 3=0.6,如果要求h 1~h 5为500,400,200,100,100,求x 1~x 5 (3) 要使h 1~h 5均为500,如何达到? 【分析】为方便起见以下种群数量均指其中的雌性。
我们并且有以下的假设:(1)雌性个体的繁殖率和存活率在特定的时间是不变的。
(2)人工饲养的种群在质量和数量上是不受外界环境和资源的限制的。
(3)模型中不考虑人为的或是自然的灾害所造成的种群数量、繁殖率和存活率的变动。
计算方法的课后答案
《计算方法》习题答案第一章 数值计算中的误差1.什么是计算方法?(狭义解释)答:计算方法就是将所求的的数学问题简化为一系列的算术运算和逻辑运算,以便在计算机上编程上机,求出问题的数值解,并对算法的收敛性、稳定性和误差进行分析、计算。
2.一个实际问题利用计算机解决所采取的五个步骤是什么?答:一个实际问题当利用计算机来解决时,应采取以下五个步骤: 实际问题→建立数学模型→构造数值算法→编程上机→获得近似结果 4.利用秦九韶算法计算多项式4)(53-+-=x x x x P 在3-=x 处的值,并编程获得解。
解:400)(2345-+⋅+-⋅+=x x x x x x P ,从而所以,多项式4)(53-+-=x x x x P 在3-=x 处的值223)3(-=-P 。
5.叙述误差的种类及来源。
答:误差的种类及来源有如下四个方面:(1)模型误差:数学模型是对实际问题进行抽象,忽略一些次要因素简化得到的,它是原始问题的近似,即使数学模型能求出准确解,也与实际问题的真解不同,我们把数学模型与实际问题之间存在的误差称为模型误差。
(2)观测误差:在建模和具体运算过程中所用的一些原始数据往往都是通过观测、实验得来的,由于仪器的精密性,实验手段的局限性,周围环境的变化以及人们的工作态度和能力等因素,而使数据必然带有误差,这种误差称为观测误差。
(3)截断误差:理论上的精确值往往要求用无限次的运算才能得到,而实际运算时只能用有限次运算的结果来近似,这样引起的误差称为截断误差(或方法误差)。
(4)舍入误差:在数值计算过程中还会用到一些无穷小数,而计算机受机器字长的限制,它所能表示的数据只能是一定的有限数位,需要把数据按四舍五入成一定位数的近似的有理数来代替。
这样引起的误差称为舍入误差。
6.掌握绝对误差(限)和相对误差(限)的定义公式。
答:设*x 是某个量的精确值,x 是其近似值,则称差x x e -=*为近似值x 的绝对误差(简称误差)。
第2章 - 线性方程组求解的数值方法ppt课件
) a 1(1 n (2) a 2n (2) a mn
x1 x2 xm
b 1( 1 ) (2) b2 b (2) m
,
( 2 ) 记为 Ax b
( 2 )
1 , 2 , , s , s min( m 1 , n ) (2)第k步( k )
设已完成上述消元过程第1步,第2步,„,第k-1步,且
( 1 ) ( k 1 ) a 0 , , a 0 11 k 1 , k 1
(E )2 (E) E
2 1 2 1 4 7 1 ( 1 4 7 1 1 4 7 1 (E )3 E ) 2 ( E ) E ( E ) E 3 2 3 1 3 3 ~ A 2 5 8 1 0 3 6 1, 0 3 6 1 0 0 6 10 2 3 6 11 1 0 2 0
(1 ) b 1 1( 1 ) x 2 b 2 x m b m( 1 )
x
(1) a11 (1) a 21 a (1) m1
(1) a12 (1) a 22 (1) am 2
第2章 - 线性 方程组求解的 数值方法
题的解决都需要 用到线性方程组的求解。因此,求解线性方程组的问题 是一个在科学技术中常见的普遍问题。 一般地,这些线性方程组的系数矩阵大致可分为两类: 1)低阶稠密矩阵 2)大型稀疏矩阵 解线性方程组的数值解法:有直接法和迭代法两类。 直接法:计算过程没有舍入误差,经过有限次四则运算 可求得方程组的精确解。(实际计算有舍入误差) 高斯消元法,矩阵分解法 迭代法:核心是迭代求解的收敛条件和收敛速度。 雅可比(Jacobi)迭代,高斯-赛德尔(Gauss-Seidel) 迭代
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章 线性方程组的数值解法在科技、工程技术、社会经济等各个领域中很多问题常常归结到求解线性方程组。
例如电学中的网络问题,样条函数问题,构造求解微分方程的差分格式和工程力学中用有限元方法解连续介质力学问题,以及经济学中求解投入产出模型等都导致求解线性方程组。
n 阶线性方程组的一般形式为⎪⎪⎩⎪⎪⎨⎧=+++=+++=+++nn nn n n n n n n b x a x a x a b x a x a x a b x a x a x a L K K K K L L 22112222212********* (1.1) 其矩阵形式为b Ax = (1.2) 其中⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=n n nn n n n n b b b b x x x x a a a a a a a a a A M M L K K K K L L 2121212222111211),,2,1,(n j i a ij L =,),,2,1(n i b i L =均为实数,i b 不全为0,且A 为非奇异。
关于线性方程组的数值解法一般分为两类:1.直接法 就是不考虑计算机过程中的舍入误差时,经有限次的四则运算得到方程组准确解的方法。
而实际中由于计算机字长的限制,舍入误差的存在和影响,这种算法也只能求得线性方程组的近似解。
本章将阐述这类算法中最基本的消去法及其某些变形。
这些方法主要用于求解低阶稠密系数矩阵方程组。
2.迭代法 从某个解的近似值出发,通过构造一个无穷序列,用某种极限过程去逐步逼近线性方程组的精确解的方法。
本章主要介绍迭代法与迭代法。
迭代法是解大型稀疏矩阵(矩阵阶数高而且零元素较多)的线性方程组的重要方法。
§1 高斯)(Gauss 消去法1.1 Gauss 消去法Gauss 消去法是将线性方程组化成等价的三角形方程组求解。
首先举例说明Gauss消去法的基本思想和过程。
例1 解线性方程组⎪⎩⎪⎨⎧=−+=+−=−+224056242321321321x x x x x x x x x (1.3)解 用 21−乘第一个方程的两端并加至第二个方程,然后用2−乘第一个方程两端加至第三个方程,得同解方程组⎪⎩⎪⎨⎧−=+−−=+−=−+102736362423232321x x x x x x x (1.4) 再消去第三个方程中的变量2x ,又可得到与(1.4)等价的方程组⎪⎩⎪⎨⎧−=−−=+−=−+3123636242332321x x x x x x (1.5)这是一个三角形方程组。
这时,我们可从(1.5)的第三个方程解出3x ,然后回代第二个方程解出2x ,继续回代到第一个方程,则解为T x )41,23,41(=上述解方程组的方法就是Gauss 消去法。
一般地求解n 阶线性方程组(1.1)的步骤由如下1−n 步组成将( 1.2)记为)0()0(b x A=,)(0)0(ij a A =,0)0(i b b =。
其中)0()0()0()|()|(A b A b A ==第一步 设0)0(11≠a,记),,3,2()0(11)0(11n i a a l i i L ==。
用1i l −乘)0(A 的第一行加到第i 行上,将第一列的元素13121,,,n a a a L 消为零,得⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡==)1()1()1(2)1(2)1(2)1(22)0(1)0(1)0(12)0(11)1()1(00)|(n nn n nn b a a b a a b a a a b AA L L LL L LL L (1.6) 式中)0(1)0()1(ij i ij ij a l a a −=,),,3,2,()0(1)0()1(n j i b l b b i i i iL =−=。
第二步 设0)1(22≠a,记),,4,3()1(22)1(22n i a a l i i L ==,将)1(A 的第二列元素)1(2)1(42)1(32,,,n a a a L 消为零,完成第二次消元。
仿此继续进行消元,假设进行了1−k 步,得到⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡==−−−−−−−)1()1()1()1()1()1(2)1(2)1(2)1(22)0(1)0(2)0(1)0(12)0(11)1()1()1(0000000)|(n k nn k nk k kn k kk n kn k k k k b a a a a b a a a b a a a a b AALLL L LLL L LL L L L L L L L L L L L (1.7)一般第k 步)11(−≤≤n k设0)1(≠−k kka ,计算乘数),,1()1()1(n k i a a l k kkk ik ik L +==−−,将)1(−k A 的第k 列的元素)1()1(1,,−−+k nkk k k a a L 消为零,完成1−n 次消元后,我们可得到上梯形矩阵⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡==−−−−−)1()1()1(2)1(2)1(22)0(1)0(1)0(12)0(11)1()1(1)|(n n n nnnn n n n b a b a a b a a a b AAL L LL L LL L (1.8) 其中,⎪⎩⎪⎨⎧−=−===−−−−−−)1()1()()1()1()()()1()1(,0,/k k ik k ik i k kj ik k ij k ij k ik k kk k ik ik b l b b a l a a a a a l n k j i ,,1,L += (1.9) 式中的元素)1(−k kka 称为(第k 步)的约化主元素,显然第k 步消元可以进行的条件是0)1(≠−k kk a ,可以证明0)1(≠−k kk a 的充要条件是A 的各阶顺序主子式)1,,2,1(0212222111211−=≠⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=n k a a a a a a a a a A kk k k k k k L L K K K K L L 。
若0)1(=−k kk a ,由于A 为n 阶非奇异矩阵,所以)1()1(1,,−−+k nk k k k a a L 中至少有一不为零。
例如)(0)1(k r a k rk>=−,于是可交换第r 行和第k 行,然后进行消元计算。
(1.8)式中)1(−n A对应的上三角形方程组与(1.1)同解⎪⎪⎩⎪⎪⎨⎧==++=+++−−)1()1()1(2122)1(22)0(1)0(12)0(121)0(11n n n n nn n n n n b x a b x a x a b x a x a x a L L L L L L (1.10) Gauss 消去法的回代过程是解三角形方程组(1.10),可以从下到上逐次把11,,,x x x n n L −的值计算出来,容易得到解的计算公式为⎪⎩⎪⎨⎧−==−+=−−−−∑)1(11)1(1)1(/][/k kk n k j j k kj k k kn nn n n n a x a b x a b x 1,,2,1L −−=n n k (1.11)1.2 Gauss 消去法的计算量由消去法步骤可知,消去第一列1−n 个系数所需要的乘法运算次数为n n )1(−,消去第二列2−n 个系数需要)1)(2(−−n n 次乘法运算。
最后,消去第1−n 列中的一个系数需要1*2次乘法运算。
所以,共需乘法运算总次数为n n n n n n n k k k k nk n k n k 3131]1)1(21[1)12)(1(61)1(32221−=−+−−++=−=−∑∑∑=== 其次,生成ij l 时还需要除法运算,总数为n nn n k n k 2121)1(21211−=−=∑−= 在回代求解时,需要作乘法运算,次数为n n k n k 2121211−=∑−= 同时,还需要进行n 次除法。
因此,求解过程共需乘除法运算的次数为n n n n n n n n 3131]2121[231312323−+=+−+− 对于较大的n ,所需运算的工作量可用331n 来估计,因为相对来讲低阶项微不足道,而加减法运算所需时间远少于乘除法,所以分析算法有效性时往往只统计乘除法次数。
由上面的公式容易求出,求解30阶线性方程组时,用Gauss 消去法只需要9890次乘除法运算,在第一章第 节中我们曾指出,若用Cramer 法则求解则需要 次乘除法运算。
§2 Gauss 主元素消去法2.1 主元的选取对求解的影响在Gauss 消去法的消元过程中,只要求保证0)1(≠−k kk a )1,,2,1(−=n k L ,但主元素的选取对结果会产生很大影响。
例如0)1(≠−k kka 而绝对值很小时,用其作除数,会导致其它元素的数量级急剧增加因而舍入误差也增大,最后会使计算结果不可靠。
例1 解方程组⎪⎩⎪⎨⎧=++=++=++96.05.696.00.5020.036.05.40.20.61.31.15.0321321321x x x x x x x x x (2.1)用3位浮点数进行计算。
解 若按自然顺序选取主元,则消元结果如下⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡−−−−→⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡−−−−−→⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=24601220000.240.12100.0000.610.310.1500.05905.240.1000.240.12100.0000.610.310.1500.0960.050.6960.000.5020.0360.050.400.200.610.310.1500.0)|()0()0(b A回代求解便得02.2,40.2,80.5*3*2*1==−=x x x但是满足方程组(2.1)的精确解为00.2,00.1,60.2321==−=x x x显然,近似解是一个很坏的结果。
为了改善计算结果,在消元时可选取绝对值较大的系数作为主元。
例如,在消元的第一步可选第三个方程中1x 的系数5.00作为主元,这时消元结果则为⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡−−→⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡−−→⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡↔99.599.200364.024.212.40960.050.6960.0500.090.545.200.10364.024.212.40960.050.6960.0500.000.610.310.1500.0020.0360.050.40.2960.050.6960.00.5)|(31)0()0(r r b A 最后回代求解得00.2,00.1,60.2*3*2*1==−=x x x该解与精确解一样。