论文部分内容阅读
随着电子科学技术的发展,电磁问题变得越来越复杂。为了在有限的计算机资源条件下求解大规模复杂电磁问题,许多计算电磁学家致力于快速算法的研究,并且已经发展了许多高效率的快速算法。无论哪种快速算法都必须在一定的计算机环境中实现,因此,计算机技术的快速发展无疑是各种快速电磁算法的基础。目前,计算机集群(Cluster)系统的发展非常迅速,这为发展具有更加强大计算能力的快速电磁算法提供了机遇。为了大力提升电磁算法的计算能力,适应当今信息科技发展的需求,将原来适用于单机运行的串行快速电磁算法发展到各种并行环境是非常重要的工作,但并不能简单的获得高效率的并行版本。各类复杂电磁问题产生的数学模型有其不同的结构特征,只有将并行程序设计的基本原理与数学模型的结构特征相结合,才能设计出高效率的并行程序。
在计算机集群上实现并行计算还依赖于并行软件平台,消息传递库MPI是利用多台个人计算机搭建集群系统来进行分布式并行计算的一个国际标准,MPICH是MPI的一个具体实现。本文针对两类电磁散射问题开展并行算法在计算电磁学中的应用研究,以MPICH结合C++语言作为并行程序设计基础,选择基于电磁场积分方程的矩量法作为电磁问题的分析建模方法。研究的两类问题是:一维随机粗糙表面的散射问题和大型振子天线阵列散射问题。根据各个问题的数学模型结构特征,提出了相应的并行算法设计方案。本文的核心工作概括如下:
第一部分:研究一维随机粗糙表面散射问题的并行快速算法。随机粗糙表面的散射特性是一个统计量,在数值仿真时需要对足够多的表面样本进行计算,然后再作估计。为了避免直接填充高阶稠密的矩量法矩阵和加快矩阵向量积的计算,本文采用BMIA/CAG算法结合Green函数的Taylor级数展开法来处理一维随机粗糙表面散射问题的分析模型,充分利用展开项的特殊形式结构,设计了一个基于消息传递库MPI的并行算法。文中给出了数值算例和并行算法的加速比,验证了本文算法的正确性和高效率。
第二部分:研究大型有限振子天线阵列散射的并行快速算法。通过采用适当的矩量法来分析这个问题,得到的矩量法矩阵是一个多重Toeplitz矩阵。这一结构特征不仅有利于构造有效的循环预条件器,而且无论是其本身结构,还是相应的循环预条件器,都非常适合于并行计算。本文利用这些结构特征,设计了一个基于消息传递库MPI的并行算法。文中给出了数值算例和并行算法的加速比,验证了本文算法的正确性和高效率。