论文部分内容阅读
海洋在地球上占有大量面积,而现代通信遥感等技术离不开对海面电磁问题的研究。考虑到海上实地测量的成本与难度等因素,电磁仿真方法是一个很有研究价值的方案。FDTD方法可以很好地对各种电磁场问题进行数值仿真,但是在处理电大尺寸问题时,计算难度较大。针对上述问题,本文基于OpenCL接口,采用GPU实现并行滑动窗FDTD算法,完成了对海面上电波传播过程的模拟,得到了电波传播过程中的损耗情况。主要内容包括,基于OpenCL通过GPU快速生成海面高度数据、基于OpenCL实现并行三维FDTD算法及边界条件、对典型参数海面进行仿真,分析信号衰减特性。本文在AMD A8 6600K CPU及AMD R7 260X GPU上完成了上述内容的代码编写与调试,运算速度相比CPU获得了较大提升,仿真结果与理论相符,具体研究如下:首先,论述了线性海面的生成方法并推导了基于快速傅里叶变换产生二维随机海面的公式。考虑到在处理较大尺寸海面时,需要进行大量计算,本文基于OpenCL,在GPU上实现了海浪谱的并行生成以及并行快速傅里叶变换,节约了海面生成的时间。通过生成结果与理论数据对比,验证了所生成海面的准确性。其次,本文基于OpenCL在GPU上实现了并行FDTD算法。分别采用直接计算、基于向量类型、三维网格内存共享这三种不同的并行方案,实现了 FDTD算法中的普通更新方程的迭代过程,并对比了这三种方法的性能表现。然后分别在GPU上实现了一阶吸收边界的并行计算以及CPML边界的并行计算。最后,实现了滑动窗FDTD算法,并采用并行计算能量分布的方法,快速准确地获取了电波脉冲传播过程中的脉冲宽度,完成了对电波的跟踪仿真。最后,使用上述方法,以海面电磁传播计算为例,完成了网格划分、激励源选择、计算区域设置,并对几种典型参数的海面进行了电波传播的仿真计算,得到了电波传播过程中的衰减情况。