Kerry key可控源有限元二维正反演源程序安装和使用教程

    科技2025-04-26  8

    Kerry key可控源有限元二维正反演源程序安装和使用教程

    所写教程是在win10 Ubuntu子系统下安装(Ubuntu系统安装操作一样)1. 在win10上安装ubuntu子系统2. 在Ubuntu子系统上安装必要更新和所需基本配置3. 在ubuntu子系统上安装图形界面(非必须,可自行决定是否安装)4. 在ubuntu子系统下安装lapack和blas(后面编译ModEM时需要)5. 在ubuntu下安装好intel fortran的编译器:6. 安装我修改好的源程序文件7. 运行自带的demo例子7. 安装自带的matlab界面交互程序(可以生成反演的模型文件) 详细操作使用教程1. matlab交互生成模型文件

    所写教程是在win10 Ubuntu子系统下安装(Ubuntu系统安装操作一样)

    以下安装包的下载链接

    1. 在win10上安装ubuntu子系统

    可以参考以下链接: 安装win10 Ubuntu子系统链接

    2. 在Ubuntu子系统上安装必要更新和所需基本配置

    在子系统终端输入如下命令:

    sudo apt-get update sudo apt-get install build-essential sudo apt-get install alsa sudo apt-get install xorg openbox

    如图所示:

    3. 在ubuntu子系统上安装图形界面(非必须,可自行决定是否安装)

    同样在终端输入如下操作:

    sudo apt-get install xfce4 sudo apt-get install xrdp

    安装完成后,输入如下命令:

    sudo sed -i 's/port=3389/port=3390/g' /etc/xrdp/xrdp.ini sudo echo xfce4-session >~/.xsession sudo service xrdp restart

    都完成后,就可以在win10上远程登录子系统的图形界面了。操作如下:

    首先在win10电脑搜索远程桌面连接: 然后在用户名中输入localhost:3390

    然后输入子系统的用户名和你设置的密码即可登录 登录后是这样:

    4. 在ubuntu子系统下安装lapack和blas(后面编译ModEM时需要)

    不用从源码安装,那样编译又慢而且操作很复杂容易出错,在ubuntu上一条命令就可以解决安装问题:

    sudo apt-get install liblapack-dev libblas-dev

    安装完后用下面fortan程序进行验证是否安装好了lapack和blas

    program main implicit none INTEGER :: N, LDA, LDB INTEGER :: NRHS INTEGER :: INFO INTEGER :: IPIV(4) REAL(8) :: A(4,4), B(4,1) N=4;LDA=4;LDB=4 NRHS=1 A=reshape((/1.80,2.88,2.05,-0.89,& 5.25,-2.95,-0.95,-3.80,& 1.58,-2.69,-2.90,-1.04,& -1.11,-0.66,-0.59,0.80/),(/4,4/)) B=reshape((/9.52,24.35,0.77,-6.22/),(/4,1/)) call DGESV( N, NRHS, A, LDA, IPIV, B, LDB, INFO ) write(*,*) "Solution:" write(*,'(f8.3)') B write(*,*) "INFO=", INFO end program

    编译和运行:

    gfortran test1.f90 -o test1 -llapack -lblas ./test1

    正确的运行结果如下:

    5. 在ubuntu下安装好intel fortran的编译器:

    前面准备工作做好了,其实安装很简单,推荐在图形界面下安装,因为这样可以选择模块进行安装,不然就只能全部进行安装了,占用空间比较大。

    把intel fortran安装包进行解压,解压后输入如下命令进行图形界面安装: sudo ./install_GUI.sh

    然后就会出现如下安装界面,全部下一步即可,提供的下载包有永久使用的license: 安装完成后需要设置下环境路径: sudo vim /etc/profile # 用vim打开进行编辑

    在文件最后加好如下路径设置:

    #intel 2019 export INTEL=/opt/intel # the install directory of intel export PATH=$INTEL/bin:$PATH export LD_LIBRARY_PATH=$INTEL/lib/intel64:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=$INTEL/mkl/lib/intel64:$LD_LIBRARY_PATH export LIBRARY_PATH=$INTEL/lib/intel64:LIBRARY_PATH source /opt/intel/bin/ifortvars.sh intel64 source /opt/intel/bin/iccvars.sh intel64 source /opt/intel/bin/compilervars.sh intel64

    添加好后,关闭ubuntu子系统,然后再打开,使得环境变量生效,然后测试一个例子,看看是否ifort命令可以用了。 program first print *, 'Hello World!' print *, sin(123.4) end program first

    编译和运行:

    ifort first.f90 –o first ./first

    运行出如上结果就表示ifort安装成功。

    6. 安装我修改好的源程序文件

    把我提供源程序文件Examples_2014_3_10和Source文件夹拷贝到你的Ubuntu子系统里面,cd切换进入Source文件夹,结果如下: 输入如下命令进行编译: make -j12 # 你的电脑多少线程就输入多少个数字,我的是12线程,所以写为-j12

    最后编译成功的图就是下面这样,会生成MARE2DEM的可执行文件。

    然后把可执行程序的路径加入系统路径: 例如我的电脑上的可执行程序的路径是: /home/think/fortran/kerry

    添加系统路径方法为:

    sudo vim /etc/profile # 用vim打开 export Kerry=/home/think/fortran export PATH=$PATH:$Kerry/kerry

    效果为:

    7. 运行自带的demo例子

    进入Examples_2014_3_10下面任意一个文件夹,然后输入如下命令:

    mpirun -np 12 MARE2DEM Demo.0.resistivity

    到这里就算安装成功了。

    7. 安装自带的matlab界面交互程序(可以生成反演的模型文件)

    该matlab程序只能在matlab2010到2013版本上正常运行,推荐matlab 2013b版本,找到我提供的matlab程序文件夹,然后添加到matlab 2013b的系统路径,操作如下: 这样就安装好了,可以打开任意一个demo文件进行测试,测试如下:

    详细操作使用教程

    1. matlab交互生成模型文件

    Processed: 0.008, SQL: 8