清华大学高等数值计算(李津)实践题目一(共轭梯度CG法_Lanczos算法与MINRES算法)

高等数值计算实践题目一

1. 实践目的

本次计算实践主要是在掌握共轭梯度法,Lanczos 算法与MINRES 算法的基础上,进一步探讨这3种算法的数值性质,主要研究特征值特征向量对算法收敛性的影响。

2. 实践过程

(一)生成矩阵

(1)作5个100阶对角阵i D 如下:

1D 对角元:1,1,...,20,1+0.1(-20),21,...,100j j d j d j j ====

2D 对角元:1,1,...,20,1+(-20),21,...,100j j d j d j j ==== 3D 对角元:,1,...,80,81,81,...,100j j d j j d j ====

4D 对角元:,1,...,40,41,41,...,60,41+(60),61,...,100j j j d j j d j d j j =====-= 5D 对角元:,1,...,100j d j j ==

记i D 的最大模特征值和最小模特征值分别为1i

λ和i

n λ,则i D 特征值分布有如下特点:

1D 的特征值有较多接近于i n λ,并且1/i i n λλ较小,

2D 的特征值有较多接近于i n λ,并且1/i i n λλ较大, 3D 的特征值有较多接近于1i λ,并且1/i i n λλ较大,

4D 的特征值有较多接近于中间模特征值,并且1/i i n λλ较大, 5D 的特征值均匀分布,并且1/i i n λλ较大

(2)随机生成10个100阶矩阵j M :

(100(100))j M fix rand =g

并作它们的QR 分解,得j Q 和j R ,这样可得50个对称的矩阵T

ij j i j A Q DQ =,其中i D 的对角元就是ij A 的特征值,若它们都大于0,则ij A 正定,j Q 的列就是相应的特征向量。结合(1)可知,ij A 都是对称正定阵。

(二)计算结果

以下计算,均选定精确解(100,1)exact x ones =,初值0(100,1)x zeros =由ij exact k

A x b =计算得到k b (算法中要求解的精度为10e -)。Lanczos 算法和MINRES 算法均分别使用不带m 循环和有带m 循环进行计算,其中带m 循环时,取15m =进行计算。

(1) 特征值分布对3种算法的影响

特征值分布对共轭梯度法的影响

Lanczos m算法的影响特征值分布对()

m算法的影响

MINRES

特征值分布对()

(2)特征向量矩阵对3种算法的影响

D)

特征向量对共轭梯度法的影响(取定

2

特征向量对Lanczos算法的影响(取定2D)

特征向量对()Lanczos m 算法的影响(取定2D )

特征向量对MINRES 算法的影响(取定2D )

特征向量对()MINRES m 算法的影响(取定2D )

(3)从ij A 选取5个画出收敛率曲线 1.共轭梯度法的

1

k A k A

e k e -:曲线以及k

A

e k :曲线

(当迭代步数()j j k n n >表示在步收敛,

1

k A k

A

k A

e e e -和由于初始化均为零)

https://www.360docs.net/doc/30642859.html,nczos 算法的

1

k A k A

e k e -:曲线以及k

A

e k :曲线

(当迭代步数()j j k n n >表示在步收敛,

1

k A k

A

k A

e e e -和由于初始化均为零)

3.()Lanczos m 算法的

1

k A k A

k e -:曲线以及k

A

e k :曲线

(当迭代步数()j j k n n >表示在步收敛,

1

k A k

A

k A

e e e -和由于初始化均为零)

4.MINRES 算法的

1

k A k A

k e -:曲线以及k

A

e k :曲线

(当迭代步数()j j k n n >表示在步收敛,

1

k A k

A

k A

e e e -和由于初始化均为零)

相关文档
最新文档