当前位置: 首页 > 专利查询>方成玲专利>正文

基于矩阵分解的带状线性系统并行迭代方法技术方案

技术编号:38762463 阅读:7 留言:0更新日期:2023-09-10 10:35
本发明专利技术公开了基于矩阵分解的带状线性系统并行迭代方法,属于计算机矩阵求解领域,包括以下步骤:S1:把当前矩阵分割为不交的分块矩阵;S2:并行地对指定位置分块进行Cholesky或LDLH分解;S3:并行地计算下三角矩阵的逆矩阵;S4:并行地通过左乘下三角矩阵的逆矩阵以及右乘该逆矩阵的共轭转置将指定位置的矩阵块变为单位矩阵块或对角矩阵块;S5:并行地消去指定位置的非零分块;S6:重复步骤S1到S5直到得到单位矩阵或对角型分块矩阵为止;S7:并行求解带状线性系统.本发明专利技术可实现对数次迭代求解带状线性系统,对现有的线性系统高斯求解方法与共轭梯度方法都有指数加速效果,具有高效、高精度的优点。高精度的优点。高精度的优点。

【技术实现步骤摘要】
基于矩阵分解的带状线性系统并行迭代方法


[0001]专利技术涉及基于矩阵分解的带状线性系统并行迭代方法,属于计算机矩阵求解领域,尤其适用于高性能计算、仿真模拟等诸多
中的带状系统快速求解。

技术介绍

[0002]仿真模拟领域(如计算流体力学)的问题通常被规约为求解线性方程组Ax=b,A是尺寸为n
×
n的大型稀疏线性矩阵,x是n
×
1的由未知变元构成的列向量,b为n
×
1的偏置向量。此外,由实际问题规约而成的系数矩阵A通常具有特殊的属性与非零结构,如在计算流体力学领域,应用有限元方法离散化偏微分方程而得来的矩阵往往是正定厄米特矩阵(Positive Hermitian Definite,SPD);带状矩阵(Banded matrix)通常出现在计算力学、计量经济学、人工智能、与纳米电子学领域,其带宽d通常远小于矩阵维度n,即d<<n。直接解法,比如高斯消去、QR方法,LU方法、Cholesky方法通常应用于低维或稠密系数矩阵线性系统。在高维稀疏线性系统中,由于直接法难以并行求解同时舍入误差导致累计误差不可忽略,且在实际问题中往往不追求方程的精确解,所以通常用迭代解法以求解上述由实际问题引出的方程组Ax=b的近似解。共轭梯度迭代法(Conjugate Gradient,CG)通常用于迭代求解对称正定系数矩阵的方程组,双共轭梯度(BiCG)方法通常用于一般系数线性方程组的迭代求解,在精确计算下这两个方法都最终在第n步收敛。由于数值计算的精度会影响共轭方法中空间基的正交性,这通常导致CG与BiCG方法在大规模问题求解时失效。为此,研究者提出了一系列的预处理方法来逼近所求系统的解。通常,预处理过程中蕴含求解一个带状系统解的问题。目前带状系统求解方法要么是串行求解,比如,带状系统高斯消去,迭代次数为O(n),要么是一般的迭代方法,精确计算下从非特殊初值开始迭代到得到精确解的次数至少为n。本专利基于带状系统结构提出一种专用于该类系统的并行求解方法:一种基于矩阵分解的带状线性系统并行迭代方法。该方法既可以直接求解带状系统,也可以作为带状系统的预解算子,其并行迭代次数为O(log2n),相对串行方法与传统迭代方法该方法具有指数加速效果。另外,也可以使用该方法以同样计算复杂度并行求解带状矩阵的逆矩阵。
[0003]综上所述,本专利所提方法可以广泛应用于科学计算与过程计算的各个领域,比如可计算流体力学、博弈论、计量经济学、人工智能、计算生物学、分子动力计算、仿真模拟等等领域,加速计算过程、降低计算能耗,为低碳绿色计算提供新的技术支撑。

技术实现思路

[0004]有鉴于此,本专利技术提供基于矩阵分解的带状线性系统并行迭代方法,通过对矩阵进行分块,然后迭代地并行消去矩阵中的非零块,最终得到一个对角型分块矩阵,对最后矩阵并行求逆,根据这些矩阵直接的递归关系可得到原带状矩阵的逆矩阵为O(log2n)个稀疏矩阵的乘积,再使用矩阵向量乘积的并行计算求解带状线性系统。
[0005]为达到上述目的,本专利技术提供如下技术方案:
[0006]基于矩阵分解的带状线性系统并行迭代方法,其特征在于,针对带宽为d的带状线性系统Ax=b,其中,A为n
×
n的正定带状厄米特矩阵,当所给带状矩阵不是正定厄米特矩阵时,可通过求解A
H
Ax=A
H
b来求解Ax=b,此处A
H
表示A的共轭转置矩阵;x为n
×
1的未知数向量;b为n
×
1的偏置向量;d≥1是带状矩阵非零半区域的对角线条数,结合图1,该方法包含以下步骤,结合图1,该方法包含以下步骤:
[0007]S1:从A0=A开始进行矩阵分块,按照d
×
d的大小将矩阵A
i
分割为不相交的分块矩阵;其中,i=0,1,2,...为迭代次数;
[0008]S2:计算分块矩阵对角线上指定位置第个对角分块D
i,j
的Cholesky分解或者LDL
H
分解;
[0009]S3:计算步骤S2中所有Cholesky分解或者LDL
H
分解中的下三角矩阵L
j
的逆矩阵保存所有
[0010]S4:使用步骤S3中的逆矩阵并行地通过左乘三角矩阵的逆矩阵以及右乘该逆矩阵的共轭转置到A
i
的方式把第个对角块矩阵变为单位矩阵或者对角矩阵,保存该矩阵变换P
i

[0011]S5:消去步骤S4所得分块矩阵的第行与列中非对角线上的非零分块,得更新矩阵分块矩阵A
i+1
,保存该消去变换Q
i

[0012]S6:如果步骤S5所得矩阵A
i+1
不是单位矩阵或者对角矩阵,则重复步骤S1到S5,直到A
i+1
是一个单位矩阵或者对角矩阵分块矩阵;
[0013]S7:根据步骤S4与S5计算的带状矩阵的所有变换P
l
与Q
l
,0≤l≤i,得到带状矩阵的消去变换关系其中与分别是矩阵P
i

l
与Q
i

l
的共轭转置矩阵,由此可得:基于Cholesky分解下的逆矩阵计算公式基于LDL
H
分解下的逆矩阵计算公式为最后,根据所使用的分解使用公式的分解使用公式或者求解Ax=b。
[0014]所述的是集合Ind0={1,2,...,n}的子集,其元素按从小到大排列,用来表示第i次迭代时A
i
需要消去的行与列,满足其具体的递归计算步骤为:从i=0开始,将Ind
i
中所有处于奇数位置的元素提取出来,按从小到大排列构成新的集合将中所有处于偶数位置的元素提取出来,按从小到大排列构成新的集合Ind
i+1

[0015]所述D
i,j
的Cholesky分解为D
i,j
的LDL
H
分解为其中,L
j
是上三角矩阵,D
j
为对角矩阵;与分别是矩阵P
i

l
与Q
i

l
的共轭转置矩阵。
[0016]所述的消去矩阵A
i
的某个分块的意思是通过矩阵行变换或者列变换把指定分块变换为0分块。
[0017]进一步,步骤S1所述矩阵分块具体为:按照d
×
d的大小将矩阵A
i
分割为不相交的个分块矩阵;其中,A
i
的每一行和每一列至多有三个分块非零;当n/d不是整数时,无需对不足分块进行补充,最后的对角块D
k,k
大小为d
′×
d

,最后一行除D
k,k
以外的分块大小为d...

【技术保护点】

【技术特征摘要】
1.基于矩阵分解的带状线性系统并行迭代方法,针对带宽为d的带状线性系统Ax=b,其中,A为n
×
n的正定带状厄米特矩阵,x为n
×
1的未知数向量;b为n
×
1的偏置向量;当所给带状矩阵不是正定厄米特矩阵时,可通过求解A
H
Ax=A
H
b来求解Ax=b,此处A
H
表示A的共轭转置矩阵;其特征在于,该方法包含以下步骤:S1:从A0=A开始进行矩阵分块,按照d
×
d的大小将矩阵A
i
分割为不相交的分块矩阵;其中,i=0,1,2,

为迭代次数;S2:计算分块矩阵对角线上指定位置第个对角分块D
i,j
的Cholesky分解或者LDL
H
分解;S3:计算步骤S2中所有Cholesky分解或者LDL
H
分解中的下三角矩阵L
j
的逆矩阵保存所有S4:通过左乘以及右乘的共轭转置的矩阵变换方式作用到A
i
上,把A
i
中第个对角块矩阵变为单位矩阵或对角矩阵,并保存该矩阵变换P
i
;S5:消去中所有行与列中非对角线上的非零块,得到更新矩阵分块矩阵A
i+1
,保存该消去变换Q
i
;S6:如果矩阵A
i+1
不是单位矩阵或对角矩阵,则重复步骤S1到S5,直到A
i+1
是一个单位矩阵或对角矩阵分块矩阵;S7:根据步骤S4与S5计算的带状矩阵的所有变换P
l
与Q
l
,0≤l≤i,得到带状矩阵的消去变换关系并求解x;其中,d≥1是带状矩阵非零半区域的对角线条数;D
i,j
的Cholesky分解为D
i,j
的LDL
H
分解为L
j
是上三角矩阵,D
j
为对角矩阵;与分别是矩阵P
i

l
与Q
i

l
的共轭转置矩阵;所述的是集合Ind0={1,2,

,n}的子集,其元素按从小到大排列,用来表示第i次迭代时A
i
需要消去的行与列,满足其具体的递归计算...

【专利技术属性】
技术研发人员:刘江方成玲
申请(专利权)人:方成玲
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1