Jacobi迭代法和GaussSeidel迭代法 ppt课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

卡尔.雅可比
以 上 迭 代 法 称 为 J a c o b i 迭 代 法 .
卡尔g雅可比(Carl GustavJacobi, 1804--1851) 是一位德国数学家. 1804年生于波茨坦.
Jacobi是历史上最伟大的数学家之一,他在数学 方面的突出成就是和挪威数学家Abel 相互独立地奠 定了椭圆函数论的基础.Jacobi的工作还包括代数学、 变分法、复变函数论、微分方程和数学史等方面.
从而得到Jacobi迭代法的分量形式:
x ik 1a 1 ii j 1 n ,j ia ijxjk b i ,i 1 ,2 ,L,n .
(3.2.2)
下面推导Jacobi迭代法的矩阵形式:
把系数矩阵A分解成三部分:
ADLU,
其中
D d i a g ( a 1 1 , a 2 2 , L , a n n ) ,
精 度 , 最 大 迭 代 次 数 N . 令 k 1 .
步 骤 2 当 k N 时 , 执 行 步 骤 2 . 1 2 . 2 .
步 骤 2 . 1 对 i 1 , 2 , L , n , 计 算
xik1a1ii j1n,jiaijxkj
bi .
算法3.1的 Matlab 程序
步 骤 2 .2若 x k 1 x k , 则 算 法 停 止 , 输 出
其 精 确 解 为 x * 1 , 1 , 1 T .
【解】 把 线 性 方 程 组 改 写 为
10x1 x2
9
x1 10x2 2x3 7
2x2 10x3 8
进一步改写为
x1
1 10
x2
9 10
x
2
1 10
x1
1 5
x3
7 10
x
3
1 5
x2
4 5
取 x 0 = [ 0 , 0 , 0 ] T , 由 上 式 可 构 造 迭 代 公 式 如 下
disp([' 迭代次数= ', num2str(k)]) x end
例3.2.2
用Jacobi迭代法程序Jacobi.m求解线性方程组:
10 1 2 0 x1 6
1 11
(3.2.3) (3.2.4)
0
a21
0
L M M O
,
an1,1 an1,2 L
0
an1 an2 L an,n1 0
0 a12 L
0L
a1,n1 a2,n1
a1n
a2n
U
O M M
0
an1,n
0
(3.2.5)
于 是 方 程 组 (3 .2 .1 )改 写 为
D x(LU )xb

xD 1(LU )xD 1 b .
任取向量 x 0 ,则Jacobi迭代法可写成如下的矩阵形式: x k 1 D 1 ( L U ) x k D 1 b , k 0 , 1 , 2 , L
若 记 B D 1 ( L U ) I D 1 A J , f D 1 b , 则 有
xk1 Jxk f
称矩阵J 为Jacobi迭代法的迭代矩阵.
(3.2.8)
J D 1 (L U ) I D 1 A
3.2.2 算法与程序
算法3.1 Jacobi迭代法
说明:为简单起见,假定系数矩阵A非奇异,且 a ii 0 ( i 1 ,2 ,L ,n ),且假设Jacobi迭代法收敛.
步骤1 输入系数矩阵A,右端向量b,以及初始向量 x 0 ,
J a c o b i在 数 值 计 算 方 面 的 主 要 贡 献 是 提 出 求 解 线 性 方 程 组 的 迭 代 法 以 及 求 解 矩 阵 的 特 征 值 和 特 征 向 量 的 方 法 等 .
a ii 0 ( i 1 ,2 ,L ,n )
下 面 考 虑 一 般 的 情 形 :
Ax b,
( 3 .2 .1)
其中A是n阶非奇异矩阵. 且其主对角元素 aii 0 (i 1 , 2 , L , n ).
方 程 组 (3 .2 .1 ) 的 分 量 形 式 为
n
aijxj bi , i1, 2, L,n.
j1
因 aii 0, 所 以 有
xia 1 ii j 1 n ,j ia ijxjb i , i 1 ,2 ,L,n .
x1k1
1 10
x2k
9 10
x2k1
1 10
x1k
1 5
x3k
7, 10
x3k1
15x2k
4 5
k 0, 1, 2, L
x kk 132
直 到xk1xk 103.
计 算 结 果 见 下 表 :
k
x
k 1
00
x
k 2
x
k 3
k
x
k 1
x
k 2
x
k 3
0
0
3 0.9950 0.9850 0.9900
3.2 Jacobi迭代法和Gauss-Seidel 迭代法
本节主要内容
➢ Jacobi迭代法 ➢ Gauss-Seidel迭代法
3.2.1 Jacobi迭代法
先 看 下 面 一 个 简 单 的 例 子 .
例 3 .2 .1考 虑 线 性 方 程 组
10 1 0 x1 9
1 10
2
x2
7,
0 2 ቤተ መጻሕፍቲ ባይዱ0x3 8
1 0.9000 0.7000 0.8000 4 0.9985 0.9975 0.9970
2 0.9700 0.9500 0.9400 5 0.9998 0.9992 0.9995
从 计 算 结 果 看 出 , 向 量 序 列 收 敛 到 方 程 组 的 精 确 解 x * 1 , 1 , 1 T .
方 程 组 的 近 似 解 x k 1 ; 否 则 , 令 x k: x k 1 ,k: k 1 . 步 骤 3 输 出 信 息 “ 算 法 超 出 最 大 迭 代 次 数 ! ” , 算 法 终 止 .
M atlab程 序 如 下 :
%Jacobi.m function x = Jacobi (A, b, x0, eps, N) % 功能:用Jacobi迭代法解n 阶线性方程组 Ax=b n=length(b); x=ones(n,1); k=0;
while k<=N for i=1:n % 步骤 2 x(i)=(b(i)-A(i,[1:i-1,i+1:n])*x0([1:i-1,i+1:n]))/A(i,i); end k=k+1 If norm(x-x0,inf)<eps, break; end x0=x;
end if k>N
warning(‘算法超出最大迭代次数!’); else
相关文档
最新文档