Jacobi 和 Gauss-Seidel 原理与实现研究
一、 Jacobi 和 Gauss-Seidel 原理
1 基本迭代法
设方程组
𝐴𝑥
=
𝑏
,其中
𝐴
=
(
𝑎
𝑖𝑗
)
𝑛𝑥𝑛
为 n 阶非奇异矩阵,x 和 b 为 n 维列向量。
将
𝐴𝑥
=
𝑏
等价转化为
𝑥
=
𝐵𝑥
+
𝑓
,其中 B 为 n 阶矩阵,f 为 n 维常向量,迭
代格式
𝑥
(𝑘
+
1)
=
𝐵
𝑥
(𝑘)
+
𝑓,(𝑘
=
0,1,2,
……
)
称为求解
𝐴𝑥
=
𝑏
的简单迭代法,B 称为迭代矩阵。特别地,有 Jacobi 迭代法
𝑎
𝑖𝑗
+
0,𝑖
=
0,1,2
……
,n
𝑥
(𝑘
+
1)
=
(𝐼
―
𝐷
―
1
𝐴)
𝑥
(𝑘)
+
𝐷
―
1
𝑏
其中,
𝐷
=
𝑑𝑖𝑎𝑔
(
𝑎
11
,
𝑎
22
,
……
,
𝑎
𝑚𝑚
)
,其分量形式为
𝑥
(𝑘
+
1)
𝑖
=
1
𝑎
𝑖𝑖
(
𝑏
𝑖
―
𝑛
𝑗
=
1
𝑗
≠
𝑖
𝑎
𝑖𝑗
𝑥
(𝑘)
𝑗
)(𝑖
=
1,2,…,𝑛)(𝑘
=
0,1,2,…)
2 Jacobi 迭代法
设有方程组
∑
𝑛
𝑗
=
1
𝑎
𝑖𝑗
𝑥
𝑗
=
𝑏
𝑗
(𝑖
=
1,2,…,𝑛)
,记为
𝐴𝑥
=
𝑏
。
其中 A 为非奇异矩阵且
𝑎
𝑖𝑖
≠
0(𝑖
=
1,2,…,𝑚)
。考虑由
𝐴
𝑥
=
𝑏
第 i 个方程解出
𝑥
𝑖
,
将得到
𝑥
𝑖
=
1
𝑎
𝑖𝑖
(
𝑏
𝑖
―
𝑛
𝑗
=
1
𝑗
≠
𝑖
𝑎
𝑖𝑗
𝑥
𝑗
)(𝑖
=
1,2,…,𝑛)
对该方程组用迭代法,可得解方程组
𝐴
𝑥
=
𝑏
的 Jacobi 迭代公式(分量形式)
𝑥
(𝑘
+
1)
𝑖
=
1
𝑎
𝑖𝑖
(
𝑏
𝑖
―
∑
𝑛
𝑗
=
1
𝑗
≠
𝑖
𝑎
𝑖𝑗
𝑥
(
𝑘
)
𝑗
)(𝑖
=
1,2,…,𝑛;𝑘
=
0,1,2,…)
(公式 2)
其中
𝑥
(
𝑘
)
=
(
𝑥
(
𝑘
)
1
,
𝑥
(
𝑘
)
2
,…,
𝑥
(
𝑘
)
𝑛
)
𝑟
。
公式 2 可写为矩阵形式
𝑋
(𝑘
+
1)
=
𝐷
―
1
(
𝐿
+
𝑈
)
𝑋
(𝑘)
+
𝐷
―
1
𝑏
𝐵
=
𝐷
―
1
(
𝐿
+
𝑈
)
,𝑓
=
𝐷
―
1
𝑏