gprMax 3.1.5 安装以及在pycharm或VScode中运行的方法

gprMax 3.1.5 安装以及在pycharm或VScode中运行的方法

常规的gprMax运行需要在cmd终端中输入命令,这样操作很不方便,文件难以管理。参照CSDN上的一些资料和gprMAX官网link,本人总结出此方法,希望对gprMax学习者提供帮助。此方法适合python版本为python 3.9和gprMax 3.1.5。

文章目录

  • gprMax 3.1.5 安装以及在pycharm或VScode中运行的方法
    • 下载并安装Miniconda
    • 下载并安装 Build Tools for Visual Studio 2019
    • 安装并运行gprMax
    • Pycharm和VScode环境下运行gprMax

下载并安装Miniconda

在Conda官网link下载与你电脑版本配对的Miniconda并安装。注意添加环境变量到系统(安装过程中勾选install Miniconda only for your user account; add Miniconda to your PATH environment variable;)

安装完成后,打开cmd(要检查一下conda是否添加到你的电脑的环境变量中,如果没有添加,需要手动添加),输入

$ conda update conda
$ conda install git
$ git clone https://github.com/gprMax/gprMax.git
$ cd gprMax
$ conda env create -f conda_env.yml

这些命令使你电脑上的conda是最新的,并且安装一些所需的python库,在这个过程中,gprMax也会作为一个python库被安装。

下载并安装 Build Tools for Visual Studio 2019

访问link并下载Build Tools for Visual Studio 2019,选择“Tools for Visual Studio 2019”,并安装“Build Tools for Visual Studio 2019”,在安装页面勾选‘C++ build tools’,在子选项中只需要勾选“MSVC v142”和“Windows 10 SDK”,然后一路点击‘下一步’直至安装完成。

配置系统环境变量,点击你的电脑-高级系统设置-环境变量-path,选择新建环境变量,添加路径“C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC\14.23.28105\bin\Hostx64\x64”,如果你的Build Tools for Visual Studio 2019安装在其他路径,就将你自己安装的路径添加到环境变量。

安装并运行gprMax

打开电脑的cmd,输入命令 conda activate gprmax,激活gprmax,然后输入以下命令:

(gprMax)$ python setup.py build
(gprMax)$ python setup.py install

gprMax就安装完成了。输入命令:

(gprMax)$ python -m gprMax path_to/name_of_input_file

运行完会在In文件的目录中出现.out文件。可以检查gprMax是否正确运行。

Pycharm和VScode环境下运行gprMax

由于gprMax目前还没有用户界面,作为脚本的方式运行每次都要打开cmd,很不方便管理目前和设置命令,在Pycharm或VScode中可以通过写代码来解决这个问题。在编译器中导入gprMax模块:from gprMax.gprMax import api,就可以实现与cmd中相同的功能。

可参照下面代码:

import os
import numpy as np
import matplotlib.pyplot as plt
from gprMax.gprMax import api
from tools.outputfiles_merge import get_output_data, merge_files

# 文件路径+文件名
dmax = r".\GprmaxCode"  # 项目目录
filename = os.path.join(dmax, 'cylinder_Bscan_2D.in')

# 正演  n:仿真次数(A扫描次数)->B扫描
api(filename, n=60, geometry_only=True)  # geometry_only:仅几何图形
merge_files(r".\GprmaxCode\cylinder_Bscan_2D", removefiles=False)

# 获取回波数据
# A B扫描时out文件名不一样
filename = os.path.join(r".\GprmaxCode\cylinder_Bscan_2D_merged.out")
rxnumber = 1
rxcomponent = 'Ez'
outputdata, dt = get_output_data(filename, rxnumber, rxcomponent)

# 保存回波数据
np.savetxt('cylinder_Bscan_2D.txt', outputdata, delimiter=' ')

# B扫描绘图
from tools.plot_Bscan import mpl_plot
plt = mpl_plot(filename, outputdata, dt*1e9, rxnumber, rxcomponent)
plt.ylabel('Time [ns]')
plt.show()

运行结果:
gprMax 3.1.5 安装以及在pycharm或VScode中运行的方法_第1张图片

你可能感兴趣的:(python)