第三章 线性方程组的迭代解法教学目标:1.了解线性代数方程组迭代解法的基本思想,向量序列和矩阵序列收敛的基本思想及相关定理;2.掌握迭代法的构造思想、收敛性和速度(率)以及相关定理;3.在理解Jacobi 迭代法和Gauss-Seidel 迭代法的原理的基础上,掌握两种迭代法的计算步骤和相互关系,并掌握两种迭代法的收敛性相关定理。
4.初步了解超松弛(SOR )迭代法的基本思想。
教学重点:1.迭代法的原理、基本思想和序列收敛的概念;2.迭代法的构造、收敛和速率;3. Jacobi 迭代法和Gauss-Seidel 迭代法的原理、实现步骤和收敛性; 教学难点:1.迭代法的构造、收敛和速率;2. Jacobi 迭代法和Gauss-Seidel 迭代法的原理、实现步骤和收敛性;线性方程组的直接解法,用于阶数不太高的线性方程组效果较好。
实际工作中有的线性方程组的阶数很高,用直接法求解效果不是很好。
而迭代法与直接法不同,它是通过从某些初始向量出发,用设计好的步骤逐次计算出近似解向量()k x ,从而得到向量序列(0)(1)(2){,,,}x x x 。
一般(1)k x +的计算公式为(1)()(1)()(,,,),0,1,k k k k m k x F x x x k +--==式中(1)k x +与()(1)(),,,k k k m x x x --有关,称为多步迭代法。
若(1)k x +只与()k x 有关,即(1)()(),0,1,k k k x F x k +==则称为单步迭代法。
现再设k F 是线性的,即(1)(),0,1,k k k k x B x f k +=+=其中n n k B R ⨯∈,称为单步线性迭代法,k B 称为迭代矩阵。
若k B 和k f 与k 无关,即(1)(),0,1,k k x Bx f k +=+=称为单步定常线性迭代法。
迭代法的基本思想是用逐次逼近的方法去求线性代数方程组的解。
迭代法的关键有:(1)如何构造迭代公式(1)()k k x Bx f +=+?(2)迭代法产生的向量序列的收敛条件是什么?收敛速度如何?§3.1 迭代法的基本概念3.1.1 向量序列和矩阵序列的极限为分析迭代法的收敛性,先讨论向量和矩阵序列极限的概念。
n R 中向量序列(0)(1)(2){,,,}x x x 记为()0{}k k x ∞=,在不引起混淆时就简记为(){}k x 。
同理,n n R ⨯中矩阵的序列记为()0{}k k A ∞=或(){}k A 。
定义 3.1 定义了范数•的向量空间n R 中,若存在n x R ∈满足()lim 0k k x x →∞-=,则称(){}k x 收敛于x ,记为()lim k k x x →∞=。
不难看出,上述向量序列极限的定义形式上依赖于所选择的范数,注意到向量范数的等价性,若(){}k x 对一种范数而言收敛于x ,则可证明对其它范数而言也是收敛于x 的,这说明(){}k x 的收敛性与所选择的范数无关。
设()()()()12(,,,)k k k k Tn x x x x =,12(,,,)T n x x x x =,若(){}k x 收敛于x ,且选用∞-范数,则有()1lim max 0k i i k i nx x →∞≤≤-=从而有()lim 0,1,2,,k i i k x x i n →∞-==即()lim k k x x →∞=等价于()lim ,1,2,,k i i k x x i n →∞==。
向量序列的收敛性等价于由向量分量构成的n 个数列的收敛性,此时也称(){}k x 按分量收敛。
定义3.2 定义了范数•的空间n n R ⨯中,若存在n n A R ⨯∈使()lim 0k k A A →∞-=,则称(){}k A 收敛于A ,记为()lim k k A A →∞=。
同理,(){}k A 的收敛性与所选择的范数无关,而且若记()()()k k ij n nA a ⨯=,()ij n nA a ⨯=,则有()()lim lim k k ij ij k k A A a a →∞→∞=⇔=,,1,2,,i j n =定理3.1 ()()1lim 0lim 0k k n n n k k A A x ⨯⨯→∞→∞=⇔=,n x R ∀∈。
证明:必要性 只要注意到对任一种矩阵从属范数都有()()k k A x A x ≤⋅即可。
充分性 若取x 为单位向量j e ,其第j 个分量为1,其它分量为零。
则()lim 0k j k A e →∞=意味着()k A 第j 列各元素极限为零,依次取1,2,,j n =即可。
证毕下面讨论有矩阵的幂所构成的矩阵序列,即序列{}k B ,其中n n B R ⨯∈。
定理3.2 设n n B R ⨯∈,则下面三个命题等价: (1)lim 0k k B →∞=;(2)()1B ρ<,其中1()max ||i i nB ρλ≤≤=为B 的谱半径;(3)至少存在一种从属的矩阵范数•,使1B <。
证明:(1)(2)⇒ 用反证法,假设B 有一个特征值λ,满足||1λ≥,则存在特征向量0x ≠,使得Bx x λ=。
由此可得||k k B x x λ=,当k →∞时向量序列{}k B x 不收敛于零向量,据定理3.1有{}k B 不收敛于零矩阵,与命题(1)矛盾。
(2)(3)⇒ 若()1B ρ<,则0ε∀>,存在一种从属的矩阵范数•,使()B B ρε≤+,适当选择1()2B ρε-=,便可使1B <。
(3)(1)⇒ 若1B <,则由kk B B <可得lim 0k k B →∞=,从而lim 0k k B →∞=。
定理3.3设n nB R⨯∈,•为任一种范数,则1lim ()k kk BB ρ→∞=。
证明:由定理知()B B ρ≤,从而()k kB B ρ≤,而1()[()]kkB B ρρ=,所以有11()[()]kk k kB B Bρρ=≤,对k 一切成立另一方面,0ε∀>,记()BB B ερε=+,显然有()1B ερ<。
由定理3.2有lim 0k k B ε→∞=,所以存在()N N Z ε=∈,使得当k N >时,有1[()]kk kB B B ερε=<+即当k N >时1()()k kB B B ρρε≤≤+,而ε是任意的,即得定理结论。
证毕3.1.2 迭代公式的构造设n n A R ⨯∈,n b R ∈,A 非奇异,n x R ∈满足方程组Ax b =。
如果能找到矩阵n n B R ⨯∈,向量n f R ∈,使I B -可逆,而且方程组x Bx f =+的唯一解就是Ax b =的解,则可以从x Bx f =+构造一个定常的线性迭代公式(1)()k k x Bx f +=+ (3.1)给出(0)n x R ∈,由(3.1)式可以产生(){}k x ,若它有极限*x ,显然*x 就是x Bx f =+和Ax b =的解。
定义3.3 若迭代公式(3.1)产生的序列(){}k x 满足()*lim k k x x →∞=,(0)n x R ∀∈则称迭代法(3.1)是收敛的。
从Ax b =出发可以由不同的途径得到各种不同的等价方程组x Bx f =+,从而得到不同的迭代法(3.1)。
例如,设A 可以分解为A M N =-,其中M 非奇异,则有11Ax b Mx Nx b Mx Nx b x M Nx M b --=⇒-=⇒=+⇒=+令111,B M N I M A f M b ---==-=,则有x Bx f =+,这里的B 和f 依赖不同的分解方法A M N =-。
3.1.3 迭代法的收敛性设*x 是x Bx f =+的解,即有**x Bx f =+,用(1)()k k x Bx f +=+与其相减得(1)*()*()k k x x B x x +-=-若记误差向量为()()*k k e x x =-,则有(1)(),0,1,k k e Be k +==由此可推得()(0)k k e B e =其中(0)(0)*e x x =-与k 无关,所以迭代法(3.1)收敛就意味着()(0)(0)lim lim 0,k k n k k e B e e R →∞→∞==∀∈定理3.4 下面三个命题等价:(1)迭代法(1)()k k x Bx f +=+收敛; (2)()1B ρ<;(3)至少存在一种从属的矩阵范数•,使1B <。
证明:从以上分析,命题(1)中迭代法收敛等价于(0)(0)lim 0,k n k B e e R →∞=∀∈,有定理3.1,上式成立的充要条件是lim 0k k B →∞=,再由定理3.2即可。
证毕有时实际判别一个迭代法是否收敛,条件()1B ρ<是较难检验的。
由于1B ,B ∞,F B 等可以用B 的元素来表示,故我们可以考虑用11B <,1B ∞<或1FB<来作为收敛的判定,这就是下面的定理:定理 3.5 设*x 是方程x Bx f =+的唯一解,ν•是一种向量范数,对应的从属矩阵范数1B ν<,则由(3.1)产生的向量序列(){}k x 满足()*()(1)1k k k B x x x x B νννν--≤⋅-- (3.2)()*(1)(0)1kk B x x x x B νννν-≤⋅-- (3.3)证明:因为()*(1)*()()k k x x Bx f Bx f --=+-+(1)*()k B x x -=-(1)()()*()()k k k B x x B x x -=-+-所以有()*(1)()()()()k k k I B x x B x x ---=-。
因为1B ν<,由定理3.4知迭代法是收敛的,()*lim k k x x →∞=。
从1B ν<可得I B -是非奇异的,且()*1(1)()(1)()()()1k k k k k B xxI B B xx x x B ννννν----=--≤⋅--即得(3.2)式。
由于()(1)(1)(2)(1)(2)()()()k k k k k k x x Bx f Bx f B x x ------=+-+=-再反复运用()(1)(1)(2)(1)(2)()k k k k k k x x B x x B x x νννν------=-≤⋅-即可得(3.3)。
证毕利用定理3.5做误差估计,一般可取1,2,ν=∞。
从(3.2)式可以看到,只要B ν不是很接近1,若相邻两次迭代向量(1)k x -与()k x 已近很接近,则()k x 与*x 已经相当接近,所以可以用()(1)k k x x νε--<来控制迭代终止。