DENISE
编译
-bash-2.05b$:~/DENISE/libcseife> make
-bash-2.05b$:~/DENISE/src> make denise
参数设置
在 DENISE/par/DENISE.inp 下进行参数设置
反演时参数设置在 DENISE/par/FWI_workflow.inp 下
传感器发射和接收
运行DENISE/par/source/vpDefects_and_transducer_256.m 生成 receiver_OBC.dat 和 source_OBC_VSP.dat,需要将 receiver_OBC.dat 复制到 DENISE/par/receiver 中
初始模型和真实模型
运行 DENISE/par/start/Create_initial_and_true_model.m 需要设置初始的vp和vs,真实的vp和vs,以及初始和真实的rho。
正演过程只需要真实模型。
运行
在 DENISE/par 文件下,打开终端
mpirun -np 25 ../../../../work/Program/DENISE/bin/denise DENISE.inp
在 DENISE/par/denise.inp 下选择文件读取路径,包括初始模型和真实模型、MFILE;修改时间步长、总时间长度;
正演时: MFILE = start/marmousi_II_marine
反演时:MFILE = start/marmousi_II_start_1D
#--------------------- Model -------------------------------------
read_model_parameters_from_MFILE(yes=1)(READMOD) = 1
MFILE = start/marmousi_II_start_1D
write_model_files_(yes=1)_(WRITEMOD) = 1
#
结果
正演结果在 DENISE/par/su 中; 反演结果在 DENISE/par/model 中;
运行 DENISE/par/su/Import_DENISE_su_file_in_Matlab.m 读取数据。
snapshot的使用:
第一步:run par/strat/define_vp_rho_and_grid.m 生成vp、vs、rho和wavegrid。
第二步:修改 par/DENISE_marm_OBC.inp.snap 里面的参数。涉及到网格数,DH、DT。重点修改snapshot一栏,需要哪个时间输出哪个时间。
第三步: 运行,生成
cp -r DENISE_marm_OBC.inp.snap DENISE_marm_OBC.inp
mpirun -np 1 /home/hp/work/Program/DENISE/bin/denise DENISE_marm_OBC.inp
/home/hp/work/Program/DENISE/bin/snapmerge DENISE_marm_OBC.inp
第四步:生成的数据在 par/snap 路径下。run merge_wavefield.m,得到txt数据(train、test、grid)。