数值分析计算实践一
一、生成参数
该部包括生成待解方程的参数
A
11
~A
510
,
b
11
~b
510
。主要程序在
data_create.m
中。
1.1 生成对角阵 D
1
~D
5
生成
5
个
100*100
的对角矩阵
D
1
~D
5
。为了让这些矩阵的最大、最小特征值
相等,但中间特征值分布不同,特意对特征值进行了设计。最终使得对角阵
D
1
~D
5
的特征分布均为
1~100
,具体见表
1.1
及图
1.1
。
表
1.1
对角矩阵
D1~D5
特征值设计
对角矩阵 分布特点 表达式
D
1
等差型
D
2
平方型
D
3
开方型
D
4
三角函数型
D
5
指数型
图
1.1
对角阵
D
1
~D
5
特征值分布图
1.2 生成正交阵 Q
1
~Q
10
首先随机生成
10
个矩阵
M
1
~M
10
,再将其进行
QR
分解得到正交矩阵
Q
1
~Q
10
。其中,生成的
M
1
~M
10
各具有不同的特征,如表
1.2
所示。
表
1.2
随机矩阵
M
1
~M
10
特点
随机矩阵 特点 生成方式
M
1
~M
3
随机 采用
rand
函数生成
M
4
~M
6
无近似零元素
随机矩阵
+
全
0.1
矩阵
M
7
~M
8
大量
0
元素 50%
、
80%
概率将某元素置
0
M
9
~M
10
`
不满秩
随机矩阵首行置
0
当然,按照上述特征生成
M
1
~M
10
,对于获得的
Q
1
~Q
10
的特征亦无法描述,
对于最后的解方程也不具有参考价值。因此,上述生成方式仅是自己设计的一
种方式而已,并不用于后续的分析。为了保证每一次使用后续的解方程程序能
够得出一致的结论,这里将随机矩阵生成函数写在
matrix_create.m
中,然后将
某一次生成的结果存入
matrix.mat
文件中。然后读取
matrix.mat
文件中的
M
1
~M
10
,将其进行
QR
分解即可得到
Q
1
~Q
10
十个正交矩阵。此时,可以观察同
时生成的
R
1
~R
10
,对比表
1.2
中各矩阵的特点。
1.3 生成对称正定矩阵 A
11
~A
510
将上述生成的对角阵与正交矩阵相乘,可以得到
50
个对称正定的矩阵,如
式
1
所示。
(式
1
)
式中, , 。
按照上述方法生成的对称正定矩阵
A
ij
,其特征值即为
D
i
的特征值,如表
1.1
及图
1.1
所示;其特征向量即为
Q
j
的各列向量,但该规律并未得知。
1.4 生成各待解方程组
为了方便后续的误差比较,需要知道每一组方程的精确解。因此,预先给
定精确解为 ,然后根据精确解就得每一组方程的向量,如式
2
。
因此,每组代求的方程为式
3
所示。
(式
2
)
(式
3
)
为了后续求解方程的程序减少运算量,在此步之后把所有变量存入
alldata.mat
,后面共最速下降法和共轭梯度法求解之前读取其中相关的变量即可。
二、最速下降法
该部分程序主要存于
grades.m
中。
求解时,初始向量 ;迭代
100
次。
2.1 不同特征值的对比
选取第一组特征向量族
Q
1
(因为都是随机,所以任选的)。
获得的收敛结果如
表
2.1
及图
2.1
所示。
表
2.1
特征值分布对最速下降法收敛性的影响
矩阵 特征值表达式
A
11
100 0.9802 0.9286 0.0027
A
21
100 0.9802 0.9406 0.0179
A
31
100 0.9802 0.9217 0.0011
A
41
100 0.9802 0.9250 0.0013
A
51
100 0.9802 0.9380 0.0193
图
2.1
最速下降法收敛速率
结合图
1.1
的特征值分布情况及表
2.1
的收敛性情况,大致可以看出,在条
件数相等时,平均特征值较大的
A
31
、
A
41
收敛性较好,平均特征值最小的
A
51
收
敛性最差。
2.2 不同特征向量的对比
选取第一组特征值的对角阵
D
1
,因为该组特征值分布均匀,收敛速度也是居中。
获得的收敛结果如表
2.2
及图
2.2
所示。
表
2.2
特征值分布对最速下降法收敛性的影响
矩阵 特征向量族
A
11
Q
1
100 0.9802 0.9286 0.0027
A
12
Q
2
100 0.9802 0.9406 0.0133
A
13
Q
3
100 0.9802 0.9365 0.0080
A
14
Q
4
100 0.9802 0.9427 0.0137
A
15
Q
5
100 0.9802 0.9341 0.0056
A
16
Q
6
100 0.9802 0.9431 0.0139
A
17
Q
7
100 0.9802 0.9348 0.0146
A
18
Q
8
100 0.9802 0.9341 0.0188
A
19
Q
9
100 0.9802 0.9603 0.1385
A
110
Q
10
100 0.9802 0.9610 0.1405
因为所用的特征向量族是随机的,所以并无明显规律。但通过表
2.2
可以看
出,即使特征值分布完全相同,不同的特征向量族下,迭代
100
次后的误差相
差可以达到上百倍。所以,特征向量族对收敛速率有明显影响。