一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于ADMM预条件的DGMRES双迭代高维电磁仿真方法及系统

2022-04-13 18:48:37 来源:中国专利 TAG:

一种基于admm预条件的dgmres双迭代高维电磁仿真方法及系统
技术领域
1.本发明属于工程应用中的电磁仿真技术领域,具体涉及一种基于admm预条件的dgmres双迭代高维电磁仿真方法及系统。


背景技术:

2.目前,通常采用矩量法(mom)结合电磁场积分方程来研究任意外形金属、简单介质及其混合目标的电磁特性,比如金属球体的散射特性和波导缝隙天线的辐射特性的计算以及导弹模型和飞机模型的雷达散射截面(rcs)的求解。在电磁学工程领域中,矩量法(mom)可以把非常复杂的电场积分或者磁场积分问题转化为线性方程组求解问题。
3.如何快速、准确地求解矩量法(mom)生成的大规模电磁仿真线性方程组是矩量法的难点问题。
4.当前,矩量法(mom)生成的大规模电磁仿真线性方程组的求解主要采用直接法和迭代法。直接法是基于系数矩阵直接分解来求解线性系统的最基本方法,以gauss消去法为代表的直接法对阶数较低的线性系统求解获得了很好的效果。直接法求解所需计算复杂度为o(n3),n为未知量个数,使得直接法在求解大规模线性方程组时,由于舍入误差的积累以及存储困难等因素可能导致计算时间过长、计算结果精确度不高,且使用并行化直接法求解问题,需要借助高昂的计算设备,不具备普遍应用价值。相比直接法,迭代法能将计算复杂度降为o(n2)且存储要求更低,只需知道系数矩阵与向量乘积的计算法则就能求解相应的线性方程组,且该过程主要涉及矩阵和向量间运算,数据相关性弱,具有良好并行特性,适合于处理大规模电磁仿真线性方程组。
5.迭代法主要分为古典迭代法和krylov子空间迭代法两类。由于古典迭代法收敛性较差,目前普遍使用具有优良收敛性和数值稳定性的krylov子空间迭代法,已在计算电磁学等领域得到应用。针对矩量法(mom)得到的电磁仿真刚度矩阵,常采用的krylov子空间法为通缩广义最小残差法(dgmres),dgmres算法通过子空间中矢量的最小残量来迭代求解,可较精确实现矩量法(mom)电磁场方程组的快速求解,且具有良好的收敛性,所需存储空间和运算量都较少,已在高维电磁场方程的求解中得到了应用。但采用dgmres算法求解矩量法(mom)电磁仿真方程组时,需要对刚度矩阵进行预处理,调整原系数矩阵的特征值分布,从而提高迭代算法的收敛性。而预条件子的设计目前仍是制约dgmres法应用于电磁场方程并行计算的一个瓶颈。


技术实现要素:

6.本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种基于admm预条件的dgmres双迭代高维电磁仿真方法及系统,通过利用多核平台的计算优势,提升多参数admm预条件dgmres双迭代法的计算速度,满足对矩量法(mom)电磁场线性系统的求解规模和速度的要求。
7.本发明采用以下技术方案:
8.一种基于admm预条件的dgmres双迭代高维电磁仿真方法,包括以下步骤:
9.s1、使用矩量法电磁计算软件生成电磁仿真线性方程组,得到电磁仿真系数矩阵和块向量;
10.s2、将步骤s1得到的系数矩阵和块向量分布到并行计算节点上,创建分布式阵列;
11.s3、使用admm算法对步骤s2获得的分布式阵列并行求解,得到预条件子和预条件解;
12.s4、将步骤s3得到的预条件子和预条件解带入右预条件dgmres双迭代算法,并行求解电磁仿真线性方程组的近似解;
13.s5、将步骤s4得到的近似解传递回本地工作区间,得到原始系数矩阵的近似解,完成电磁系统仿真。
14.具体的,步骤s2具体为:
15.创建矩量法电磁仿真线性系统中系数矩阵a和向量b的分布式阵列,将数据内容分布在若干个计算节点上,得到的分布式阵列和
16.具体的,步骤s3具体为:
17.s301、针对系数矩阵a的每个特征值建立多参数优化模型;
18.s302、对多参数优化模型采用admm算法进行求解,确定迭代过程;
19.s303、对步骤s302中迭代过程进行求解;将系数矩阵和向量分布在不同计算节点,同时计算,最终汇总在本地,得到预条件向量σ和预条件解x。
20.进一步的,步骤s301中,多参数优化模型的增广拉格朗日函数为:
[0021][0022]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,x为待求解n维预条件解,σ为多参数预条件矩阵,σi为每行系数矩阵a对应预条件参数,p为拉格朗日乘子,ε为右侧向量b与(a σ)x的误差,λ为正则化参数,η为罚参数。
[0023]
进一步的,步骤s302中,迭代过程具体为:
[0024][0025][0026][0027]
p
k 1
=pk η[(a σ
k 1
)x
k 1-b-ε
k 1
]
[0028]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,x
k 1
为新预条件解,为每行系数矩阵a的对应新预条件参数,ε
k 1
为新误差,p
k 1
为新预条件拉格朗日乘子,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解
电磁仿真线性方程组右侧向量,xk表示第k次预条件迭代所得的预条件解,表示第k次预条件迭代所得的预条件参数,i=1,

,n,εk表示第k次预条件迭代所得的预条件误差,pk表示第k次预条件迭代所得的预条件拉格朗日乘子,η为罚参数。
[0029]
进一步的,步骤s303具体为:
[0030]
s3031、固定多参数矩阵σk,误差εk和拉格朗日乘子pk对待求解n维预条件解x求偏导,当得到新预条件解x
k 1

[0031]
s3032、固定新预条件解x
k 1
,误差εk和拉格朗日乘子pk关于σi求偏导,当得到新预条件参数
[0032]
s3033、固定新预条件解x
k 1
,σ,新预条件矩阵σ
k 1
和拉格朗日乘子pk关于误差ε求偏导,当得到新误差ε
k 1

[0033]
s3034、将更新的新预条件解x
k 1
,新预条件矩阵σ
k 1
和新误差ε
k 1
更新拉格朗日乘子p,算法迭代收敛之后得到多参数预条件向量σ以及预条件解x。
[0034]
具体的,步骤s4中,计算电磁仿真线性方程组的近似解具体为:
[0035]
s401、并行计算r0=b-ax0,β=‖r0‖2和v1=r0/β,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,x0为步骤s303得到的预条件迭代初始解,r0为残差向量,v1为相对误差向量;
[0036]
s402、如果j≤m-p,使用dgmres双迭代算法原始算法计算(a σ)zj=vj,得到zj,令wj=zj,其中,a为待求解电磁仿真线性方程组的刚度矩阵,σ为步骤s303中得到的新预条件矩阵,vj为剩余向量,当j=1,vj为相对误差向量v1;否则,令wj=u
j-m p
,其中,u
j-m p
为特征向量;
[0037]
s403、并行计算w∶=azj,其中,a为待求解电磁仿真线性方程组的刚度矩阵,zj为dgmres原始算法计算结果;
[0038]
s404、end do,计算得到hessenberg上三角矩阵,其中,h
i,j
为hessenberg上三角矩阵的i行j列元素,通过向量w和向量vi相乘得到,每计算得到一个hessenberg上三角矩阵元素,对向量w进行一次更新;
[0039]
s405、计算h
j 1,j
=‖w‖2和v
j 1
=w/h
j 1,j
,根据步骤s404迭代更新得到的向量w,计算得到hessenberg上三角矩阵的最后一个元素,更新剩余向量v
j 1

[0040]
s406、定义v
m 1
∶=[v1,

,v
m 1
],zm∶=[z1,

,zm],将每一步迭代更新的剩余向量vi和使用预条件矩阵(a σ)迭代计算得到的向量zi,分别放入矩阵v
m 1
和zm中;
[0041]
s407、计算xm=x0 zmym,其中e1=[1,0,

,0]
t
,zm为步骤s406填充得到的矩阵,x0预条件迭代初始解,计算得到的xm为电磁仿真模拟值;
[0042]
s408、并行计算rm=b-axm,如果‖rm‖2/β《tol,则退出循环;否则转入步骤s409;
[0043]
s410、计算广义特征值问题;
[0044]
s411、计算p个特征向量u1,

,u
p
,u=zmy,zm为步骤s406填充得到的矩阵,y为步骤s407计算所得m维向量;如果残差rm满足‖rm‖2/β《tol的条件,输出xm,得到电磁仿真线性方
程组的近似解
[0045]
进一步的,步骤s402中,向量wj具体为:
[0046][0047]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,σ为预条件矩阵,zj为迭代待求解向量,与wj相同,vj为剩余向量,j为当前迭代次数,m为krylov特征空间维数,p为需要使用的特征值个数,u
j-m p
为待添加特征向量。
[0048]
本发明的另一技术方案是,一种基于admm预条件的dgmres双迭代高维电磁仿真系统,包括:
[0049]
生成模块,使用矩量法电磁计算软件生成电磁仿真线性方程组,得到电磁仿真系数矩阵和块向量;
[0050]
分布模块,将生成模块得到的系数矩阵和块向量分布到并行计算节点上,创建分布式阵列;
[0051]
计算模块,使用admm算法对分布模块获得的分布式阵列并行求解,得到预条件子和预条件解;
[0052]
迭代模块,将计算模块得到的预条件子和预条件解带入右预条件dgmres双迭代算法,并行求解电磁仿真线性方程组的近似解;
[0053]
仿真模块,将迭代模块得到的近似解传递回本地工作区间,得到原始系数矩阵的近似解,完成电磁系统仿真。
[0054]
与现有技术相比,本发明至少具有以下有益效果:
[0055]
本发明一种基于admm预条件的dgmres双迭代高维电磁仿真方法,将大规模电磁仿真线性方程组分布在不同计算节点,减少单机存储,加快电磁仿真线性方程组的求解速度;借助admm预条件算法计算得到的预条件子σ和预条件解x,减少求解电磁仿真模拟值的迭代次数,提升电磁仿真模拟值的精确度;改进的dgmres双迭代算法,减少预条件矩阵求逆的计算量,节省预条件矩阵的存储空间。
[0056]
进一步的,步骤s2将生成的大规模电磁仿真线性方程组分布在若干计算节点,减少单机存储负担,有利于加速求解大规模电磁仿真线性方程组。
[0057]
进一步的,步骤s3为了得到预条件子以及预条件解,建立多参数优化模型。使用admm算法对该模型进行求解是因为该算法可以将一个较大的全局优化问题分解为多个较小、较容易求解的局部子问题,并通过协调子问题的解而得到大的全局问题的解,同时该算法较容易进行并行计算,可以加速求解多参数优化模型。
[0058]
进一步的,步骤s301中的增广拉格朗日函数是根据多参数优化模型得到,该多参数优化模型目的在于在系数矩阵a的对角线上添加较小的参数,改善原始矩阵a的特征分布,有利于迭代算法加速求解电磁仿真解。该多参数优化模型的增广拉格朗日函数在朴素拉格朗日形式上加上一个惩罚项,它可以增加admm算法中对偶上升法的鲁棒性和目标函数的强凸约束,使得转换后的问题能够更容易求解。
[0059]
进一步的,步骤s302展示了admm预条件算法所有参数的迭代过程,将一个求解n维的多参数预条件矩阵的问题,分解为较小、较容易求解的n个预条件参数的局部子问题,将
这些子问题的解汇总在一起而得到多参数预条件矩阵的全局解;将求解n个预条件参数的局部子问题分布在不同计算节点计算,可以加速模型的求解速度。
[0060]
进一步的,步骤s303中根据步骤s301和步骤s302构造的增广拉格朗日函数来求预条件参数以及预条件解的条件极值,为了得到预条件参数以及预条件解的局部最优解,分别对其求偏导,将其偏导为0的表达式来更新预条件参数以及预条件解,逐步迭代得到其最优解。
[0061]
进一步的,步骤s4并行迭代求解电磁仿真值,步骤s3中计算得到的预条件子与预条件解可以加速步骤s4中的大规模矩阵与向量的计算速度;内迭代部分,相比预条件矩阵直接求逆,减少了计算量,同时也节省了预条件矩阵的存储空间。
[0062]
进一步的,设置krylov子空间维度m,增加特征向量个数p,最大迭代次数均远小于电磁仿真刚度矩阵的维度,减少计算矩阵和向量的存储空间,利于快速迭代计算。
[0063]
进一步的,步骤s402中使用原始dgmres并行求解wj,相比直接使用矩阵求逆得到wj,使用dgmres迭代算法求解wj减少矩阵求逆的计算量,同时也减少预条件矩阵的存储空间。
[0064]
综上所述,本方法不仅建立一种易于并行的预条件算法,更进一步地提出了一种不用求预条件矩阵逆的dgmres双迭代方法,所得预条件子不会额外占用过多内存空间,也节省了预条件矩阵求逆的计算时间,而且该方法计算速度快、精度高。
[0065]
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
[0066]
图1为本发明的方法流程图;
[0067]
图2为本发明的并行原理示意图;
[0068]
图3为本发明的矩量法(mom)方程电磁场分布示意图。
具体实施方式
[0069]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0070]
在本发明的描述中,需要理解的是,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0071]
还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0072]
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0073]
在附图中示出了根据本发明公开实施例的各种结构示意图。这些图并非是按比例绘制的,其中为了清楚表达的目的,放大了某些细节,并且可能省略了某些细节。图中所示
出的各种区域、层的形状及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
[0074]
本发明提供了一种基于admm预条件的dgmres双迭代高维电磁仿真方法,首先使用多参数admm预条件算法得到系数矩阵的预条件向量,然后使用右预条件dgmres双迭代算法得到大规模矩量法(mom)电磁仿真方程的数值解。
[0075]
请参阅图1,本发明一种基于admm预条件的dgmres双迭代高维电磁仿真方法,包括以下步骤:
[0076]
s1、使用矩量法(mom)电磁计算软件生成电磁仿真线性方程组,并转化为mat文件存储;
[0077]
s2、计算准备;具体步骤如下:
[0078]
创建矩量法(mom)电磁仿真线性系统中系数矩阵a和向量b的分布式阵列,将数据内容分布在48个计算节点上;
[0079]
s3、将步骤s202得到的分布式阵列和带入多参数admm预条件算法,得到预条件向量;具体步骤如下:
[0080]
s301、针对系数矩阵a的每个特征值建立多参数优化模型;
[0081][0082]
s.t.(a σ)x=b ε
[0083]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,x为待求解n维预条件解,σ为多参数矩阵,σi(i=1,2,

,n)为每行系数矩阵a对应预条件参数,为右侧向量b与(a σ)x的误差,λ为正则化参数。模型(1)的增广拉格朗日函数为:
[0084][0085]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,x为待求解n维预条件解,σ为多参数预条件矩阵,σi(i=1,2,

,n)为系数矩阵a的每行特征值对应预条件参数,p为拉格朗日乘子,ε为右侧向量b与(a σ)x的误差,λ为正则化参数,为罚参数;
[0086]
s302、对式(2)采用admm算法求解,迭代过程如下所示:
[0087][0088]
[0089][0090]
p
k 1
=pk η[(a σ
k 1
)x
k 1-b-ε
k 1
]
ꢀꢀ
(6)
[0091]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,xk表示第k次预条件迭代所得的预条件解,表示第k次预条件迭代所得的预条件参数(i=1,

,n),εk表示第k次预条件迭代所得的预条件误差,pk表示第k次预条件迭代所得的预条件拉格朗日乘子,η为罚参数;
[0092]
s303、对步骤s302中迭代过程进行求解;整个计算过程的并行原理如图2所示,将系数矩阵和向量分布在不同计算节点,同时计算,最终汇总在本地,具体如下:
[0093]
s3031、固定多参数矩阵σk,误差εk和拉格朗日乘子pk对待求解n维预条件解x求偏导,当得到
[0094]
(a σk)x=b ε
k-pk/η
ꢀꢀ
(7)
[0095]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,x为待求解n维预条件解,σk表示第k次预条件迭代所得的预条件矩阵,εk表示第k次预条件迭代所得的预条件误差,pk表示第k次预条件迭代所得的预条件拉格朗日乘子,η为罚参数。这里使用通缩广义最小残差(dgmres)算法对式(7)进行求解,得到x
k 1
;具体算法步骤如表1所示。
[0096]
表1dgmres算法
[0097][0098]
通缩广义最小残差(dgmres)算法以广义最小残差(gmres)算法作为基础,向
krylov子空间中增加特征向量减少迭代计算量,设置krylov子空间维度m为500,增加特征向量个数p设置为30,最大迭代次数为1000,迭代终止条件设为10-3
,计算得到x
k 1

[0099]
使用的dgmres算法为dgmres双迭代算法原始算法,具体计算步骤大体与步骤s4相似,主要区别在于,原始右预条件dgmres算法中步骤s402直接用矩阵求逆计算。
[0100]
s3032、固定新预条件解x
k 1
,误差εk和拉格朗日乘子pk对式(2)关于σi求偏导,当得到
[0101][0102]
其中,ai·
表示刚度矩阵的第i行,bi,和分别表示表示向量b,εk,x
k 1
和pk的第i个分量,ei表示在第i个分量有值的单位向量(0,

,1,

,0),η为罚参数;
[0103]
涉及到系数矩阵a和任意向量的并行计算,将系数矩阵a分布在不同计算节点,同时计算,然后汇总在本地。
[0104]
s3033、固定新预条件解x
k 1
,σ,新预条件矩阵σ
k 1
和拉格朗日乘子pk对式(2)关于误差ε求偏导,当得到
[0105][0106]
其中,a为待求解电磁仿真线性方程组的刚度矩阵,b为待求解电磁仿真线性方程组右侧向量,ε
k 1
表示第k 1次预条件迭代基于新预条件解x
k 1
和新预条件矩阵σ
k 1
所得的新预条件误差,x
k 1
表示第k 1次预条件迭代所得的新预条件解,σ
k 1
表示第k 1次预条件迭代所得的新预条件矩阵,pk表示第k次预条件迭代所得的预条件拉格朗日乘子,η为罚参数,λ为正则化参数;
[0107]
s3034、将更新的新预条件解x
k 1
,新预条件矩阵σ
k 1
和新误差ε
k 1
带入式(6)更新拉格朗日乘子p,算法迭代收敛之后得到多参数预条件矩阵σ,从而得到预条件向量σ以及预条件解x。
[0108]
s3034中涉及到系数矩阵a和任意向量的并行计算,将系数矩阵a分布在不同计算节点,同时计算,然后汇总在本地。
[0109]
s4、将步骤s3得到预条件向量σ和预条件解x带入右预条件dgmres双迭代算法,并行求解电磁仿真线性方程组的近似解设置krylov子空间维度m,增加特征向量个数p,设置最大迭代次数,迭代终止条件tol设,具体计算步骤如下:
[0110]
s401、并行计算r0=b-ax0,β=‖r0‖2和v1=r0/β;
[0111]
for j=1,

,m do
[0112]
s401中涉及到系数矩阵a和任意向量的并行计算,将系数矩阵分布在不同计算节点,同时计算,然后汇总在本地。
[0113]
s402、使用dgmres双迭代算法原始算法,具体为:
[0114]
[0115]
s402中涉及到系数矩阵a和任意向量的并行计算,将系数矩阵分布在不同计算节点,同时计算,然后汇总在本地。
[0116]
s403、并行计算w:=azj;
[0117]
s403中涉及到系数矩阵a和任意向量的并行计算,将系数矩阵分布在不同计算节点,同时计算,然后汇总在本地。
[0118]
s404、
[0119]
s405、计算h
j 1,j
=‖w‖2和v
j 1
=w/h
j 1,j

[0120]
end do
[0121]
s406、定义v
m 1
∶=[v1,

,v
m 1
],zm∶=[z1,

,zm];
[0122]
s407、计算xm=x0 zmym,其中e1=[1,0,

,0]
t

[0123]
s408、并行计算rm=b-axm,如果‖rm‖2/β《tol,则退出循环;否则转入步骤s409;
[0124]
s408中涉及到系数矩阵a和任意向量的并行计算,将系数矩阵分布在不同计算节点,同时计算,然后汇总在本地。
[0125]
s409、设x0←
xm,p为需要使用的特征值个数;
[0126]
s410、计算广义特征值问题
[0127][0128]
其中,hm为(m 1)
×
m上hessenberg矩阵,θ为特征值,v
m 1
为n
×
(m 1)维矩阵,zm为n
×
m维矩阵,得到m-维向量y;
[0129]
s411、使用下述式(11)计算p个特征向量u1,

,u
p

[0130]
u=zmy
ꢀꢀ
(11)
[0131]
其中,zm为n
×
m维矩阵,y为式(11)计算所得m维向量,然后转入步骤s401。
[0132]
s5、将近似解传递回本地工作区间,得到原始系数矩阵a的近似解x,得到该电磁系统仿真结果如图3所示。
[0133]
本发明再一个实施例中,提供一种基于admm预条件的dgmres双迭代高维电磁仿真系统,该系统能够用于实现上述基于admm预条件的dgmres双迭代高维电磁仿真方法,具体的,该基于admm预条件的dgmres双迭代高维电磁仿真系统包括生成模块、分布模块、计算模块、迭代模块以及仿真模块。
[0134]
其中,生成模块,使用矩量法电磁计算软件生成电磁仿真线性方程组,得到电磁仿真系数矩阵a和块向量b;
[0135]
分布模块,将生成模块得到的系数矩阵a和块向量b分布到并行计算节点上,创建分布式阵列和
[0136]
计算模块,使用admm算法对分布模块获得的分布式阵列和并行求解,得到预条件子σ和预条件解x;
[0137]
迭代模块,将计算模块得到的预条件子σ和预条件解x带入右预条件dgmres双迭代算法,并行求解电磁仿真线性方程组的近似解
[0138]
仿真模块,将迭代模块得到的近似解传递回本地工作区间,得到原始系数矩阵a
的近似解x,完成电磁系统仿真。
[0139]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中的描述和所示的本发明实施例的组件可以通过各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0140]
使用基于admm预条件的dgmres双迭代高维电磁仿真系统进行具体数值实验,生成40000
×
40000维电磁仿真矩阵a和40000维右侧向量b,启动48个计算子节点,对该电磁仿真线性方程组进行并行求解。该实验中,krylov子空间维度m设置为500,增加特征向量个数p设置为30,罚参数η取10-10
,最大迭代次数为1000,预条件计算终止条件设为10-3
,迭代计算终止条件设为10-8

[0141]
利用本发明方法求解高维矩量法(mom)电磁仿真线性系统得到该电磁系统仿真结果如图3所示。实验结果表明,相对误差为7.3317
×
10-14
,相比传统预条件迭代算法的相对误差提升94.4%以上,admm预条件运行时间加速比为19.6323,总运行时间的加速比为10.8735,相较于传统预条件方法有较大提升。
[0142]
本发明大规模线性方程组求解方法可用于工程应用中电磁仿真计算模拟,石油地震数据的处理,核爆数值模拟,电力系统的优化设计。
[0143]
综上所述,本发明一种基于admm预条件的dgmres双迭代高维电磁仿真方法及系统,能够生成大规模电磁仿真线性方程组,并且可以将其快速、准确求解,在生成40000维电磁仿真矩阵进行并行实验时,计算所得相对误差、运行时间加速比,总运行时间加速比,相较于传统预条件方法有较大提升。
[0144]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0145]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0146]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0147]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计
算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0148]
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献