您好,欢迎来到筏尚旅游网。
搜索
您的当前位置:首页稀疏矩阵快速回代的Cholesky分解法

稀疏矩阵快速回代的Cholesky分解法

来源:筏尚旅游网
第35卷第3期 物探化探计算技术 2013年5月 文章编号:1OO1—1749(2013)03—0293—04 稀疏矩阵快速回代的Cholesky分解法 宋 滔,王绪本 (成都理工大学摘地球物理学院,成都610059) 要:采用一维压缩存储正演计算中的对称稀疏矩阵,进行Cholesky分解,利用分解后二个 矩阵的对称性和稀疏性,对占用时间较多的回代过程采用先消去列的方法,实现快速回代。算例 表明,采用该方法,对于点源场的求解与传统顺代回代求解法对比可以提高五倍的速度,对于大 地电磁的正演问题,提高了二倍的速度。 关键词:对称稀疏矩阵;Cholesky分解;快速回代 中图分类号:O 151.21 文献标识码:A DOI: 0前言 在使用有限单元法进行地球物理的数值模拟 时,最终需要求解一个大型稀疏线型方程组Ax— B,而这个线性方程组往往是对称正定的。在解点 源问题时,如果采用齐次边界条件,那么矩阵A只 和地下电性参数有关,不包含源信息,这个时候只 有列向量B包含有源信息。如果使用高斯消元法 求解,那么对于每一个电源点都要进行消元和迭 51 代,这大大增加了计算量。阮百尧Ⅲ使用Chol— esky分解法,首先将矩阵A分解为两个对称矩阵, 对于不同的列向量B只需要进行一次顺代和一次 回代便可以求解方程组。但是通过对计算过程的 _1 ) (2) 2 Cholesky分解法 矩阵A是正定对称的,那么可以使用Chol— esky分解法进行计算,即可以得到 A=LL 分析发现,其算法的回代过程几乎占用了整个求解 过程时间的一半,没有充分利用分解后矩阵的对称 性和稀疏性。在此基础上,作者对该算法进行了一 定的改进。 其中 1 大型对称稀疏矩阵的变带宽存储 一r Z1 O O  ILI z2 Z220 对于变带宽的对称稀疏矩阵,采用二个一维数 组来存储Ⅲ,用一个一维数组G存储矩阵的下三 ,一l J/ 2 … 基金项目:国家高技术研究发展计划(863计划)资助(2O09AA06Z108) 收稿日期:2O12一O9—19 改回日期:2O12—12—16 294 i 1 物探化探计算技术 35卷 i=j (4) 高的 如下矩阵 所示。 ,广l (aij-- likljk) ∥> I 2 1 L—J 0 0 1 1 2 l 0 Io, < 从式(3)与式(4)中可以看出,下三角矩阵L 中的元素对应矩阵A中下三角的元素,所以分解 O (8) 1 1 1 0 1 2 L 1 1 1 , 2 1 0 0 O ]●● ,● 0 0 的结果矩阵L可以使用存储A的二个一维数组来 存储索引。由于 是L的转置,所以 中的元 素也可以使用这二个一维数组来访问。 由于A是稀疏的,含有大量的零元素,所以L 和L 中也含有大量零元素,在顺代和回代的过程 中应该充分利用这一特性。 上式(2)中矩阵A分解得到: L—I 『 L —....................。.。...一.. ..... G===(1 2 2 1 C ID一(1,3,4,7,9) 对于线型方程组Ax—B,即LLT32===B,进行顺 代和回代便可求解。]  3顺代和回代 顺代的求解过程很简单,对于Ly—B,L是下 三角矩阵,只需要依次求解Y 、Y 、…、Y 即可。下 一步是求解L 一 ,由于L 是L的转置,同时共 用一个存储空间: 0 0 0]  Iz L= 0 0 1 (6) ‘’‘ ‘‘‘ ’I Z 2 … Z l 那么 厂Z11 Z21 0 Z 1_ Lr ̄--iLL  0:0  012z … J 0 l  (7) L 是上三角矩阵,通过回代便可完成方程求 解。方法(1):按行依次求解z 、z 一 、…、 ,矩阵 元素均可通过矩阵L的索引方式得到;方法(2): 回带的同时,消去方程组中包含当前求解的JC 。 这两个方法在L非稀疏时,计算时间是一样的,但 是当L是稀疏矩阵时,方法(2)的计算效率是非常 L 2 ) 0 1 1 2 (9) 1 使用方法(2)回带时,首先解出z ,然后消去 方程组中的zs,即将第5列中的元素消去,因为 / 5 中的列是L中的行,在数组G中是按行存储的,所 以这一步骤是很容易实现的。同时,G是压缩存储 的,所以在此例中,消去最后一列,仅需要计算一步 (消去 中的l )。在大型稀疏矩阵中,这种消去 列的实现方法,对计算速度的提升是非常可观的。 4 Cholesky分解法的求解程序 !N整变量,输入参数,方程组的阶数。 !N P整变量,输入参数,为系数矩阵A压缩存 储的元素个数。 !A输入、输出参数,N P个元素的一维实数组, 输入时存放系数矩阵的压缩存储元素;输出时存 放。 !Cho lesky分解得到的下三角阵中变带宽内的 元素。 !B输入、输出参数,N个元素的一维实数组。 输入时存放方程组右端的n维常向量;输出时,存 放解。 !向量。 !ID输入参数,N个元素的一维整数组。存放 系数矩阵A的各个对角线元素在压缩的一维数组 中的。 !位置坐标。 SUBROUT1NE CHOLESKY(N,NP,A,B,ID) IMPLICIT NONE INTEGER N,NP,ID(N) REAL A(NP),B(N) INTEGER 10,I,IM,JM,J0,JT,J,KT,K, JK,IN,K0,KM,KI,NN,IJ !分解 10=1 3期 宋滔等:稀疏矩阵快速回代的Cholesky分解法 295 IM—ID(1) A(IM)一SQRT(A(IM)) 10=::IM+1 Do I一2.N IM—ID(I) JM—I—IM+IO一1 IF(JM.LT.1)THEN Jo==1 ELSE J0=ID(JM)+1 END IF DO JT—10,IM一1 J==:I—IM+JT JM—ID(J) Do KT—10.JT一1 K—I—lM+KT JK—JM一(J—K) IF(JK.LT.J0)CYCLE A(JT)一A(JT)一A(K]1) A(JK) END DO Jo=JM+1 A(JT)一A(JT)/A(JM) END DO Do K—10。IM一1 A(IM)一A(IM)一A(K) A(K) END Do A(IM)一SQRT(A(IM)) 10—1M+1 END Do !顺代 10=1 Do I一1.N IM—ID(I) J一1 D0 KT—IM一1,IO,一1 B(I)一B(I)一A(KT) B(I—J) J=J+1 END Do B(I)一B(I)/A(IM) 10=IM+1 END DO !回代 IN—ID(N) B(N)==:B(N)/A(IN) DO i_-_N,2,一1 NN:=:ID(I)一ID(1—1)一1 D0 J::=1.NN IJ—I—J B(U)一B(IJ)一A(Ⅱ×1)一J) B(I) END DO B(I—1)一B(I一1)/A(ID(1—1)) END DO RETURN END 5算例分析 作者将本算法分别用于点源二维电场和二维 大地电磁的计算,与传统的cholesky分解算法还 有不带平方根的cholesky算法进行对比。在以下 计算分析中,所使用的计算机为CPU:T6600, 2.2 GHz,内存2 G。 5.1点源二维电场的计算 作者采用矩形网格剖分,电导率分块均匀变 化,双线性插值有限元进行模拟。z方向(水平沿测 线方向)包括100个测区网格,两边分别有12个稀 疏网格;Y方向(垂直方向)一共设置20个网格,点 源点移动100次,即分解后,进行100次回代和顺 带。地下空间设置为均匀半空间,分别使用本方法 和cholesky分解法求解,如下页表1所示。 从计算结果中可以看出,快速回代的cholesky 方法对于点电源场求解速度的提升是非常大的,与 传统的顺带回代方法相对比,提升了五倍左右,而 且单元数越多,其提升越明显。 5.2二维大地电磁正演模拟 地面测线长4 km,测点间距100 1TI,频率范围 为1 000 Hz~O.01 Hz,对数等间隔采样,一共41 个频点。 作者采用矩形网格剖分,电导率分块均匀变 化,双二次插值有限元进行模拟。z方向(水平沿测 线方向)包括41个测区网格,两边分别有18个稀 疏网格;Y方向(垂直方向)一共设置56个网格, TE模式下空气网格设置14个。地下空间设置为 均匀半空间,分别使用本方法和不带平方根的 cholesky分解法求解,如下页表2、表3所示。 从表2、表3可以看出,使用快速回代的cholesky 算法的速度,要比传统的cholesky分解法 借。 6结论 通过算例分析,快速回代的方法充分利用了 296 物探化探计算技术 表1点源场求解时间对比 Tab.1 The solution time of point source field 35卷 求解方法 快速回代的cholesky Cholesky分解 单元数 2480 2480 节点数 2625 2625 回代次数 100 1O0 平均计算时间/s 0.012 0.066 总时间/s 1.21 6.64 表2 TE模式求解时间对比 Tab.2 The solution time of TE mode TE模式 快速回代的cholesky 单元数 5390 节点数 16465 频点数 41 平均计算时间/s 2.3 总时间/s 93.8 Cholesky分解 5390 16465 41 4.7 193.5 表3 TM模式求解时间对比 Tab.3 The solution time of TM mode TM模式 快速回代的cholesky Cholesky分解 单元数 4312 4312 节点数 13203 13203 频点数 41 41 平均计算时间/s 1.2 2.5 总时间/s 49.7 101.9 Cholesky分解后矩阵的对称性和稀疏性,大大加 元法正演模拟EJ].地球物理学报,1997,4O(3):421. E83刘云,王绪本.大地电磁二维自适应地形有限元正演 模拟EJ3.地震地质,2010,32(3):382. 快了整体求解的速度。该方法对于使用有限元进 行点源场和大地电磁模拟,所形成的大型对称稀疏 线性方程组的求解是有效的。 参考文献: [1]阮百尧,熊彬.大型对称变带宽方程组的Cholesky分 [9]徐世浙.地球物理中的有限单元法[M].北京:科学 出版社,1994. [1O]罗延钟,张桂青.电子计算机在电法勘探中的应用 EM3.武汉:武汉地质学院出版社,1987. [11]朴化荣.电磁测深法原理[M].北京:地质出版社, 1990. 解法[J].物探化探计算技术,2000,22(4):361. E2]刘德贵,费景高,于江永,等.F()RTRAN算法汇编第 一分册FM].北京:国防工业出版社,1980. 国电力出版社,2002. [12]曾国.大地电磁二维有限元正演数值模拟[D].湖 南:中南大学,2008. E133王绪本,李永年,高永才.大地电磁测深二维地形影 [3]彭国伦.Fortran 95程序设计(第一版)EM3.北京:中 E43徐士良.计算机常用算法(第二版)[M].北京:清华大 学出版社,1995. 响及其校正方法研究[J].物探化探计算技术,1999, 21(4):327. [5]阮百尧,徐世浙.电导率分块线性变化二维地电断面 [14]徐世浙.点电源二维电场问题的付氏变换的波数k 的选择口].物探化探计算技术,1988,10(3):235. E153强建科,罗延钟.三维地形直流电阻率有限元法模拟 [J].地球物理学报,2007,50(5):1606. 电阻率测深有限元数值模拟EJ3.地球科学一中国地 质大学学报,1998,23(3):303. [6]熊彬,阮百尧.电位双二次变化二维地电断面电阻率 测深有限元数值模拟[J].地球物理学报,2002,45 (2):285. 作者简介:宋滔(1988一),男(汉),四川什邡人,硕 士,研究方向为地球物理电磁法的数值模拟。 E73史明娟,徐世浙,刘斌.大地电磁二次函数插值的有限 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- efsc.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务