导航:首页 > 源码编译 > 矩阵的lu分解算法

矩阵的lu分解算法

发布时间:2023-06-02 04:07:54

Ⅰ 矩阵A 的LU 分解

将矩阵A分解为单位下三角阵L和上三角阵U,就是找出L的元素lij以及U的元素uij与A的元素aij的关系式。下面说明矩阵L,U的元素可以通过n步由矩阵A的元素计算出来,其中第k步求出U的第k行和L的第k列元素。

根据式(4-1)中,由矩阵乘法可知:

(1)由L的第1行和U的第j列元素对应相乘后与A的对应元素相等,即

a1j=u1j

同理可知U的第1行元素:

u1j=a1j (j=1,2,…,n)

由L的第i行和U的第1列元素对应相乘后与A的对应元素相等,即

ai1=li1·u11

从而得到L的第一列元素

li1=ai1/u11 (i=2,3,…,n)

这样就确定了U的第1行元素及L的第1列元素。类似地,用矩阵乘法再确定U的第2行及L的第2列,如此继续。

假设已经得出了U的前k-1行及L的前k-1列(1≤k≤n)的全部元素,现在来确定U的第k行元素和L的第k列元素。

(2)在式(4-1)中,由矩阵乘法知

地球物理数据处理基础

注意,由于L是单位下三角阵,当r>k时,lkr=0,而lkk=1,所以

地球物理数据处理基础

从而有

地球物理数据处理基础

如此即可得到上三角矩阵U的第k行元素。

同理,可确定L的第k列元素。

由 并且当r>k时,urk=0,则有

地球物理数据处理基础

从而有

地球物理数据处理基础

即可计算出矩阵L的第k列元素。

上述步骤进行,就可以定出L及U的全部元素,完成矩阵A的LU分解,即对k=1,2,…,n,计算A=LU分解的公式为

地球物理数据处理基础

这里约定

上述这种矩阵A的LU分解计算顺序也可按图4-1所示逐步进行。

由于以上计算公式(4-7)中不含消去法的中间结果a(k)ij,可直接逐框计算,所以称为紧凑格式。

从计算过程中可以看出,对A进行LU分解时,在求出u1j(j=1,2,…,n)后不再需要a1j(j=1,2,…,n),求出li1(i=2,3,…,n)后不再需要ai1(i=2,3,…,n)。同样求出ukj和lik后不再需要akj和aik(j=k,k+1,…,n;i=k+1,k+2,…,n;k=1,2,…,n),因此,在计算过程中可以不另设存放L和U的数组,而是将ukj和lik算出后直接存入矩阵A对应元素akj和aik的存贮单元中。这也称为动态算法,它可节省大量内存。

图4-1 矩阵LU分解顺序图

对A进行LU分解后,可按式(4-5)和式(4-6)求解线性方程组。

同样,求解线性方程组时,由式(4-5)和式(4-6)式可知,在求yi(i=1,2,…,n)时,只用到对应的bi(i=1,2,…,n),故可不另设存放y的数组,而将y的元素存入列向量b对应元素bi的存贮单元中。但应注意,这时的b已变成y。同理求x时,也不用另设存放单元,计算结果直接存入b中,因而在求解线性方程组的最后结果中,b存储的是x。

另外,由于求yi的顺代公式(4-5)与求ukj的公式(4-7)形式完全相同,故可合并到k循环之内进行,这样可以简化程序结构。所以,在进行LU分解的同时,Ly=b的求解也完成了。

[例1]用直接三角分解法求解线性方程组

解:(1)分解A=LU,

地球物理数据处理基础

地球物理数据处理基础

(2)求解Ly=b,

地球物理数据处理基础

得到y=(3,-5,6)T

(3)求解

得到x=(2,-2,1)T

阅读全文

与矩阵的lu分解算法相关的资料

热点内容
51单片机控制的超声波 浏览:827
2021去水印最新源码 浏览:232
ug编程刀具号重复 浏览:959
空当接龙算法 浏览:609
可压缩流体非恒定二维流动 浏览:695
天龙八部网单没有找到技能文件夹 浏览:861
android串口程序 浏览:833
上海机器人程序员 浏览:914
两台阿里云服务器如何拷贝 浏览:170
阿里妈妈淘宝联盟需要什么app 浏览:368
什么人可以做编程员 浏览:358
网盘会员加速是在线解压嘛 浏览:109
单片机按键汇编程序 浏览:728
传播学纲要pdf第二版 浏览:385
乐友进销存有什么app 浏览:554
显示器维修pdf 浏览:618
qq支付时怎么双层加密 浏览:943
2008服务器如何做安全 浏览:310
戴尔系统加密怎么解密 浏览:469
手机app企业办税子账户是什么 浏览:660