一种电大目标散射快速扫角方法论文和设计-何林

全文摘要

本发明公开了一种电大目标散射快速扫角方法,通过将右端项矩阵拆分成若干个子矩阵,针对每个子矩阵采用MPI并行的插值分解计算每个子矩阵的解矩阵,再按照预设的组合规则将前一层次计算得到的子矩阵组合成若干个新的子矩阵,针对组合成的新的子矩阵采用MPI并行的方式计算新的子矩阵的解矩阵,重复前述组合‑计算过程,直至组合后的子矩阵数量为1,结合最终得到的子矩阵的解矩阵计算右端项矩阵的解矩阵,有效加快了计算速度;另外,通过采用多层multi‑interval方法计算解矩阵,有效降低每次计算过程中的峰值内存,提升运算能力。

主设计要求

1.一种电大目标散射快速扫角方法,其特征在于,所述方法包括:S1:建立多右端项矩阵,其中矩阵为的阻抗矩阵,矩阵为的右端项矩阵,矩阵为的解矩阵,为未知数的个数,为激励个数,即右端项矩阵的列数;S2:根据内存约束而确定的规则以获取最底层间隔数,将右端项矩阵V拆分成个子矩阵,,每个子矩阵的维度为;采用个MPI进程并行低秩分解计算每个子矩阵的骨元右端项矩阵和投影矩阵,每个骨元右端项矩阵的骨元右端项的个数为,前述过程被定义成最底层次的骨元化过程;S3:定义,;S4:收集前一层次所有子矩阵的骨元右端项,按照预设的组合规则将收集的前一层次所有子矩阵的骨元右端项组合成个新的矩阵,按内存约束,将其分为个骨元右端项矩阵,采用个进程MPI并行低秩分解,得到对应的投影矩阵,每个骨元右端项矩阵的骨元右端项的个数为,前述过程被定义成中间层次的骨元化过程,;S5:加1,重复步骤S4,直至,将各个进程的骨元收集生成右端项矩阵,采用MPI并行的低秩分解执行最高层次的骨元化过程,获取骨元右端项矩阵和投影矩阵。

设计方案

1.一种电大目标散射快速扫角方法,其特征在于,所述方法包括:

S1:建立多右端项矩阵Z·I=V,其中矩阵Z为m×m的阻抗矩阵,矩阵V为m×n的右端项矩阵,矩阵I为m×n的解矩阵,m为未知数的个数,n为激励个数,即右端项矩阵的列数;

S2:根据内存约束而确定的规则以获取最底层间隔数Nintv,0<\/sub>,将右端项矩阵V拆分成Nintv,0<\/sub>个子矩阵设计说明书

技术领域

本发明涉及骨元化技术领域,具体而言涉及一种电大目标散射快速扫角方法。

背景技术

在多右端项问题的研究中,常常利用基于随机性的低秩分解方法来加速该类问题的求解。利用低秩分解加速多右端项问题的过程如下:首先,多右端项问题的矩阵形式可以表示为:

Z·I=V

其中,矩阵Z为m×m的阻抗矩阵,矩阵V为m×n的右端项矩阵,矩阵I为m×n的解矩阵;m为未知数的个数,n为右端项的个数。对右端项矩阵V进行低秩分解V=VS<\/sup>·P,则右端项问题的解为:

I=IS<\/sup>·P and Z·I S<\/sup>=VS<\/sup>

其中,矩阵P为Nskel<\/sub>×n的投影矩阵,矩阵VS<\/sup>为m×Nskel<\/sub>的骨元右端项矩阵,其中每一个列向量都是一个骨元右端项,矩阵I为m×Nskel<\/sub>的骨元解矩阵,其中每一个列向量都是一个骨元右端项向量的解;Nskel<\/sub>是骨元右端项的数目;在这里,Nskel<\/sub><n。采用低秩分解技术之后,待求解的右端项数量由n降为Nskel<\/sub>,大大提高了右端项问题的求解速度。

然而,当目标的规模增加,低秩分解部分的峰值内存也随之增长,成为了该问题的一个瓶颈。目前针对这一问题的解决方案包括多段(multi-interval)方案,使用骨元 Rao-Wilton-Glisson(RWG)方案以及并行低秩分解方案。其中,采用并行低秩分解与并行快速多极子算法(Parallel multilevel fast multipole algorithm,PMLFMA)相结合,能够有效解决大规模问题。因为这一方案可以通过增加计算节点从而增加可以使用的总内存。然而,并行低秩分解方案中单个进程的峰值内存大约(32×m×n)\/n p<\/sub>bytes(使用了复数双精度数据类型,np<\/sub>为进程数),该峰值内存要远大于PMLFMA部分的峰值内存。

针对这一问题提出了一种解决方案,详述如下。首先采用并行低秩分解方案的流程图如图1所示。这一方案的峰值内存出现在重新分配部分,原因在于右端项矩阵 V在PMLFMA中是按行保存到每个进程中,而并行低秩分解算法要求右端项矩阵V按列分配到各个进程中,因此右端项矩阵V需要进行重新分配,要保存两次。为了降低重新分配部分的峰值内存,可以将右端项矩阵V按列分为n b<\/sub>块,每次只对一块进行重新分配操作。这样一来,重新分配部分的峰值内存大约降低为(32×m×n\/np<\/sub>)\/nb<\/sub>bytes(nb<\/sub>为块数,实际使用的内存要略大,还有一部分临时内存)。这一方案可以大大降低重新分配部分的峰值内存,但是仍然存在缺陷。如图 1 所示,随着重新分配部分峰值内存的降低(增加块数n b<\/sub>,可以降低峰值内存),低秩分解部分的峰值内存32×m2<\/sub>×n\/np<\/sub>(m2<\/sub>是小于m的最大的2的幂次)没有变化。因此,当重新分配部分的峰值内存降低至小于低秩分解部分的峰值内存时,即(32×m×n\/np<\/sub>)\/nb<\/sub><32×m2<\/sub>×n\/np<\/sub>时,总算法的峰值内存变为出现在ID分解部分,大约为32×m2<\/sub>×n\/np<\/sub>bytes。

采用multi-interval技术可以有效减少低秩分解的峰值内存,并且可以根据现有的内存空间来灵活选择子矩阵的个数Nintv<\/sub>。Multi-interval技术的缺点在于低秩分解作用在一个子矩阵上,每一次的分解不能获取右端项矩阵的完整信息,所以最终得到的骨元个数要大于直接对右端项矩阵做分解得到的骨元个数。

发明内容

本发明目的在于提供一种电大目标散射快速扫角方法,通过将右端项矩阵拆分成若干个子矩阵,针对每个子矩阵采用MPI并行的插值分解计算每个子矩阵的解矩阵,再按照预设的组合规则将前一层次计算得到的子矩阵组合成若干个新的子矩阵,针对组合成的新的子矩阵采用MPI并行的方式计算新的子矩阵的解矩阵,重复前述组合-计算过程,直至组合后的子矩阵数量为1,结合最终得到的子矩阵的解矩阵计算右端项矩阵的解矩阵,有效加快了计算速度;另外,通过采用多层multi-interval方法计算解矩阵,有效降低每次计算过程中的峰值内存,提升运算能力,同时,使得最终得到的骨元个数与直接对右端项矩阵做分解得到的骨元个数相同;只对各个层次的骨元右端项矩阵在矩阵V中的序号进行存储,在骨元化过程中,实时获取下一时刻计算所需骨元右端项矩阵序号,生成对应的骨元右端项矩阵,有序安排计算过程,减少单位时间运算量和计算过程中的峰值内存。

为达成上述目的,结合图2,本发明提出一种电大目标散射快速扫角方法,所述方法包括:

S1:建立多右端项矩阵Z·I=V,其中矩阵Z为m×m的阻抗矩阵,矩阵V为m×n的右端项矩阵,矩阵I为m×n的解矩阵,m为未知数的个数,n为激励个数,即右端项矩阵的列数;

S2:根据内存约束而确定的规则以获取最底层间隔数Nintv,0<\/sub>,将右端项矩阵V拆分成 N intv,0<\/sub>个子矩阵设计图

一种电大目标散射快速扫角方法论文和设计

相关信息详情

申请码:申请号:CN201910868284.9

申请日:2019-09-16

公开号:CN110377878A

公开日:2019-10-25

国家:CN

国家/省市:84(南京)

授权编号:CN110377878B

授权时间:20191231

主分类号:G06F 17/16

专利分类号:G06F17/16

范畴分类:40B;

申请人:南京鲲瑜信息科技有限公司

第一申请人:南京鲲瑜信息科技有限公司

申请人地址:210022 江苏省南京市秦淮区双龙街2号夹岗科技园2栋617

发明人:何林

第一发明人:何林

当前权利人:南京鲲瑜信息科技有限公司

代理人:戴朝荣

代理机构:32252

代理机构编号:南京钟山专利代理有限公司

优先权:关键词:当前状态:审核中

类型名称:外观设计

标签:;  ;  

一种电大目标散射快速扫角方法论文和设计-何林
下载Doc文档

猜你喜欢