大地电磁二维正演对每一个频率分别进行计算,各频率对应的电磁场值间相互独立,根据这一特点可以将程序按频率划分粒度,将每个频点计算分配到各个进程同时进行计算,并行执行。文中给出了大地电磁二维有限元正演的并行算法,它结合了MPI的优点,采用主从并行模式、分频并行计算的并行方案来执行。为了检验编写的并行程序,对设计的2个模型进行试算,并与串行程序对比验证了该算法的可行性、正确性,为二维反演、三维正反演的并行计算提供了研究基础。
Nowadays, the 2-D inversion of magnetotelluric data has been put into practice, however, the 3-D inversion is still in its infancy, not because of the backward inversion methods or theories from the real yield but the lag of the hardware development. It is the huge amount of time to calculate in 2-D and 3-D inversion processes that traditional single-computer calculation speed is unacceptable. The most time-consuming part of the inversion is forward calculation, so it is of great significance to take parallel processing technology to improve the efficiency of parallel calculation. The program for 2-D magnetotelluric forward problems presented in this paper is based on the classic finite element method put forward by Wannamaker. It combines FORTRAN and MPICH 2 on Linux system in compilation. The forward computing for two-dimensional magnetotellurics is done separately in each frequency, and the value of electromagnetic field in the corresponding frequency is independent, therefore it is fit for frequency-decomposing parallel computing. This paper presents the two-dimensional magnetotelluric forward parallel algorithm, based on the finite element. Using the development tools of Fortran and MPICH 2,we write a parallel program that combines the advantages of MPI,and adopt the master-slave parallel mode and the parallel program of frequency-decomposing parallel computing. In order to verify the program, we designed two models, and compared with the serial program to validate the feasibility and accuracy of this algorithm,the result provides a research base for the parallel computation for two-dimensional inversion and three-dimensional forward and inversion.