0 相关背景信息
见大地电磁二维正演程序--详细介绍(https://blog.csdn.net/spvfly/article/details/92795423)。
程序的框架如下图
1 主程序MT2D.cpp代码分析
01 头文件部分
包含四个建好的类
#include "mesh2d.h" //网格处理类 包含读入网格数据等功能
#include "dofs.h" //有限单元的自由度计算
#include "2dmt.h" //有限单元的计算 如 Ke = p的大型稀疏矩阵 计算出全局的电场(e)和磁场(h)
#include "post.h" //后处理 提取地面测量点出的 电场(e)或 磁场(h)的值以及相位 以便利用matlab可视化作图
02 全局变量/函数
/*
全局变量region_table存储 人为划分的 网格区域属性(config文件中 设置,mesh2d.h类中有相应的读入方法),其格式如下:
config文件中的区域信息格式如下
2D-1.1 网格文件名(无后缀的)
6 有6个区域
标号 σ ε μ
-1 1E-10 1 1