0 相关背景
1、开发平台vs+intel MKL + Eigen
2、正演方法为有限单元法
3、程序分为两部分:
网格剖分---使用Triangle程序进行
正演计算---使用任政勇教授开源的MT2D程序(https://sourceforge.net/projects/mt2d/)
1 程序大体流程
2 MT2D程序模块说明
em.h 中定义了一些常量,诸如 圆周率Π、复数的虚部i、介电常数、磁导率等参数
node.h 定义了 点的属性和运算规则
tri.h 定义了 三角形单元属性
mesh2d.h 读取由triangle程序所生成的网格信息(几个不同的输出文件),从而形成模型的单元信息
dofs.h 分析每个单元的自由度
fem.h 为单元分析模块
bc.h 利用一维 层状大地电磁正演公式 计算边界点处的 边界值 从而构成边界条件
gauss_1d.h gauss_tri.h 为求解积分的计算方法 详见 数值计算或计算方法的参考资料
2dmt.h 为 计算二维大地电磁正演模拟的 主体程序,其中有两种计算方法分别为:总场法和异常场法,根据不同要求可选择不同算法
post.h 为后处理程序,利用计算所得的TM/TE模式的结果,求解出其他参量(Ex,Ey,Hx,Hy,卡尼亚电阻率及其相位)