以二维静电场泊松方程数值求解的串行算法(雅可比迭代、超松弛迭代)为基础,提出了五点差分格式超松弛迭代(SOR)求解二维静电场泊松方程的并行算法,通过与雅可比迭代(Jacobi)并行算法的时间复杂度、加速比和空间复杂度进行对比,得出超松弛迭代的并行算法具有更低的时间复杂度、空间复杂度和更高的加速比与效率。通过实验验证,CHIPIC软件的泊松模块宜采用超松弛迭代并行算法。关 键 词 雅可比迭代; 并行算法; 泊松; 超松弛迭代CHIPIC[1]是我国自行开发的电磁粒子模拟[2]软件,其模拟计算通常花费大量的时间,因此有必要开发其并行版本。作为这一工作的前期实践,本文对其静电场计算模块即泊松模块的并行计算进行了研究。1 二维静电场泊松方程的串行算法[3]为简单明了地说明算法的设计思想,本文采用一个最简单求解二维场域内电位的例子。如图1所示,一个长直接地金属矩形槽,其侧壁与底面电位均为0,顶盖电位为100。则求解场域内电位ϕ的方程为泊松方程(退化为拉普拉斯方程):2 二维静电场泊松方程的并行算法当今国外的电磁粒子模拟软件[6-7]并行版本大都是基于消息传递机制[8](MPI)的。MPI被当前所有高性能并行机所支持,程序设计方便,并具有良好的扩展性,非常适合于机群系统。通用的求解泊松方程的并行模块大都采用Jacobi并行迭代算法[8-9],因为Jacobi迭代算法中各个更新操作是完全并行的,可以采用分块策略。一般有一维分块和二维分块两种,二维分块的优越性主要在于更好的扩展性。由于在通常的实际问题中网格数非常巨大,而PC机比较有限,目前的通用电磁粒子模拟软件中采用一维分块。SOR迭代算法每次计算第n+1次的U[i][j]时,都需要n+1次的U[i−1][j]和U[i][j−1],初略看不适合分块并行迭代。目前关于SOR的并行迭代算法主要有着色法[10],但着色法可扩展性差,不适合通用的电磁粒子模拟软件,因此有必要开发出基于SOR分块并行迭代算法。
猜您喜欢
推荐内容
开源项目推荐 更多
热门活动
热门器件
用户搜过
随便看看
热门下载
评论