解线性代数方程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
解线性代数方程
————————————————————————————————作者:————————————————————————————————日期:
求解线性方程组的直接解法
5.3特殊矩阵的三角分解
①实对称矩阵的LDL T分解
设A是实对称阵,且A的所有顺序主子式均不为零,则LDR分解中R=L T, 故可用以作LDL T分解.这就是说,当A的对角元素非零时,我们可
以作LU分解,也就得到LDL T分解,L相同,是单位上三角阵,U的对角元素
构成D.不过没有利用对称性,存储量运算量都未能节省—预计是一半。试
用n=3的计算表格说明如何实现节省。
d1=u11 =a11
u12=a12
l21=u12/d1
u13=a13
l31=u13/d1
d2=u22=a22-l21u12u23=a23-l21u13
l32=u23/d2
u33=a33-l31u13-l32u23
这样,可用上半部元素逐列计算D,L T。也可用下半部元素逐行计算L,D。引进輔助量t1, t2代替u1j,u2j,并利用对称性得到:
d1=a11
t1=a21
l21= t1/d1
d2= a22-t1l21
t1=a31 l31=t1/d1t2=a32-t1l21
l32=t2/d2
d3=a33-t1l31-t2l32
据此不难写出LDL T分解A=LDL T的计算公式和程序(逐行计算L,D).
d1=a11
for i=2:n
for j=1:i-1
t j=a ij-l j1t1-l j2t2-…-l j,j-1t j-1
l ij=t j/d j
end
d i=a ii-l i1t1-l i2t2-…- l i,i-1t i-1
end
存储约n(n+1)/2单元,乘加运算各约n3/6.
利用LDL T分解解Ax=b分四步:
1.分解A=LDL T
2.解Lg=b 求g
3.解Dy=g 求y
4.解L T x=y 求x
②实对称正定矩阵的LL T分解
A实对称正定时顺序主子式皆正,可作LDL T,D的对角元素皆正,有正
的平方根。因此有LL T 分解A =LL T ,L 下三角阵,对角元素皆正,是LDL T 中的LD 1/2.乃可用上半部元素逐列计算L T .
l 11=a 111/2 l 21= a 12/l 11 l 31=a 13/l 11
l 22=(a 22-l 212)1/2 l 32=(a 23-l 21l 31)/l 22
l 33=a 33-l 312-l 322
也可用下半部元素逐行计算L .计算表格和算法安排如下:
l 11=a 111/2
l 21= a 21/l 11 l 22=(a 22-l 212)1/2
l 31= a 31/l 11 l 32=(a 32-l 31l 21)/l 22
l 33=(a 33-l 312-l 322)1/2
l 11=a 111/2 for i =2:n
for j =1:i -1
l ij =(a ij -l i 1l j 1-l i 2l j 2-…-l i ,j-1l j ,j-1)/d jj
end
2
/121
,2221)(-----=i i i i ii ii l l l a l Λ end
存储量,运算量同LDL T 分解,但要n 次求平方根.
利用LL T 分解解Ax =b 分三步:
1.分解A =LL T
2.解 Lg =b 求g 3.解 L T x =g 求x
③ 三对角方程组的追赶法
消去法或LU 分解用于三对角方程组有特殊形式,即称追赶法.设Ax =f : b 1x 1+ c 1x 2=f 1
a i x i-1+
b i x i +
c i x i+1=f i i=2,3,n -1 a n x n-1+b n x n =f n
A 是三对角阵,则L ,U 同样结构.L 的对角元素为α2,α3,…,αn ,U 的对角元素为β1,β2,…,βn ,上对角元素同A .
1.分解A =LU : β1= b 1,αi =a i /βi-1,βi = b i -αi c i -1, i=2,3,…,n 2.解 Lg =f 求g : g 1=f 1,g i =f i -αi f i -1, i=2,3,…,n 3.解 U x =g 求x : x n =g n /βn ,x i =(g i -c i x i +1)/βi , i=n -1,n -2,…,1
编程时,A 可用三个一维数组,f 用一个一维数组.L ,U 存入A 。g ,x
存入f 。
还有一种计算格式,消去时用主元素除主行元素,即分解A 为下三角矩阵和单位上三角矩阵之积,相当于对A T 作LU 分解.
⎥⎥⎥⎥⎥⎥⎦
⎤⎢⎢
⎢⎢⎢⎢
⎣
⎡→⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢
⎢
⎢⎢⎢
⎣
⎡--n n
n
n n n
n
n g g g a a f f f b a c c b a c b M M O O O O O M M O O O O O 2112221121122211)
()()(βγγβγβ
括号中是单位上三角矩阵的上对角元素.计算步骤:
1.分解A =LU : β1=b 1,γ1=c 1/β1,βi =b i -a i γi -1,γi =c i /βi , i=2,3,…,n 2.解 Lg =f 求g : g 1=f 1/β1,g i =(f i -a i g i -1)/βi , i=2,3,…,n 3.解 U x =g 求x : x n =g n ,x i =g i -γi x i +1, i=n -1,n -2,…,1 三对角矩阵是带形矩阵的特例.所谓带形矩阵是那些主对角线附近几条对角线以外元素皆零的矩阵,即a ij ≠0,仅当-m 1 5.4 向量和矩阵的范数 引入实数的绝对值和复数的模(也称绝对值)来表示实数和复数的”大 小”,从而带来许多用处.例如,数列收敛的概念就是通过绝对值来表示的.范数这个概念就是这些表示”大小”的数值普遍化.它在研究数值计算方法的收敛性和稳定性中有着重要的应用. ① 向量的范数 定义1. 如果向量)(n n C R x 或∈的某个实值函数x x N =)( ,满足条件: 1. 正定性:║x ║≥0,║x ║=0 iff x =0 2. 齐次性:║c x ║=│c │║x ║, C c ∈∀ 3. 三角不等式:①║x +y ║≤║x ║+║y ║ ② | y x - |y x -≤ 则称C n 中定义了向量范数║x ║为向量x 的范数。 可见向量范数是向量的一种具有特殊性质的实值函数。 常用向量范数有:(令x =( x 1,x 2,…,x n )T ) 1-范数: ║x ║1=│x 1│+│x 2│+…+│x n │ 2-范数: ║x ║2=(│x 1│2+│x 2│2+…+│x n │2)1/2 ∞-范数: ║x ║∞=max(│x 1│,│x 2│,…,│x n │) 易得 ║x ║∞≤║x ║2≤║x ║1≤n 1/2║x ║2≤n ║x ║∞ P -范数: ).,1[,)(1 1∞∈=∑=P x x n i P P i P 其中 定理1.C n 中任意两种向量范数║x ║α,║x ║β是等价的,即m ,M >0使 m ║x ║α≤║x ║β≤M ║x ║