# 瞬变电磁一维模拟退火反演 (Simulated Annealling inversion for Transient Electromagnetic data) ## Table of contents ### [0.写在前面](#0) ### [1.开发环境与代码说明](#1) ### [2. 程序安装及使用](#2) ### [3. 修改说明](#3) ### [4. 如何引用](#4) ## 0.写在前面 ### 0.1 开发者 * 本程序是由山东大学地球电磁探测研究所开发的瞬变电磁一维模拟退火反演程序,基于本程序及相关程序撰写我文章列表请[参考本说明文件的最后给出的论文引用格式](#4)。 * 如有问题,请在本git仓库提交issue或与作者联系。但作者不保证处理issue以及回答的时间。 ### 0.2 程序使用 * 学术研究和非盈利性用途,请遵循[MIT协议](https://opensource.org/licenses/MIT); * 商业与盈利用途,请与作者联系。 ### 0.3 引用 * 使用本程序或基于本程序修改完成的论文、资料、手册请引用[下列文献列表](#4),谢谢。 ## 1.开发环境与代码说明 * 开发语言:Fortran * 开发环境及编译器:项目使用Visual Studio 2017 Community版本创建,编译器使用Intel Visual Fortran学生版。 * 操作系统: * Windows: 使用Windows操作系统时,请直接Git clone后,使用Visual Studio打开sln项目文件即可。 * Linux: 当使用Linux及Unix操作系统时,请忽略Visual Studio的项目文件,自行建立makefile,包含相应的程序源文件,文件列表请参考[程序使用](#2)部分,然后make即可。 * 本程序已经测试,可以同时在Windows和Linux (CentOS 6)上运行。 * 论文中给出的结果中,数值实验部分是在个人笔记本电脑上运行的,使用Windows操作系统,实测数据部分在研究小组拥有的Dell R720服务器上运行,目前使用CentOS 6操作系统。 ## 2. 程序安装及使用 ### 2.1安装开发环境 * Windows:请自行安装Visual Studio和Fortran编译器。 * Linux:请自行安装编译器及make。 ### 2.2程序使用 * Windows:直接打开tem.sln工程项目文件即可,相关内容已经添加。直接通过Visual Studio可以生成Debug或Release文件,用于运行。 * Linux:自行建立makefile,包含tem.f90、main.f90、inv_tem.f90、get.f90、out.f90,make之后再运行。 ### 2.3改变反演数据及模型 * 反演数据存储在uu.txt中,如需反演自己的数据,请修改该文件。 ## 3. 修改说明 ### 3.1 代码版本 当前是论文写作过程中使用的代码,如果后期进行改进和维护会在此处增加相关修改说明和记录。 ## 4. 如何引用 请使用如下方式引用本程序及相关研究: * 孙怀凤,张诺亚,柳尚斌等,基于L1范数的瞬变电磁非线性反演,地球物理学报,2019,62(12): 4860-4873. * https://gitee.com/sduem/TEM1dSAinv 论文原文可以通过地球物理学报官网免费下载: http://www.geophy.cn/CN/abstract/abstract15278.shtml 或访问本仓库根目录下的pdf文件。