Visualization for Model
This document outlines the usage of visualization scripts for plotting slices of the resulting model. These scripts are located in the plots/plot_model directory. To use them, please ensure that GMT version 6.0 or higher is installed.
Parameter File
This section outlines the parameters used for visualizing slices and event kernels in the cube2sph utility. The template is as below:
#!/bin/bash
specfem_dir="${HOME}/specfem3d-cube2sph/"
cube2sph_dir=$specfem_dir/utils/cube2sph/
NPROC=80
# horizontal slice
NSLICE_HORIZ=1
DEPTH_H=(225) # add more if you want
LON0_H=114; LON1_H=132;
LAT0_H=41; LAT1_H=46
# vertical slice
NSLICE_VERTI=1
MAX_DEP=400 # in km
# start points
LON0_V=(115 )
LAT0_V=(44)
#end points
LON1_V=(132 )
LAT1_V=(44)
# database_dir
DATABASE_DIR=../../DATABASES_MPI/
MODEL_DIR=../../optimize/
SOLVER_DIR=../../solver/
#parameters to interpolate
MODEL_SET="G0"
KERNEL_SET="dGsp dGcp"
# plot event kernels
PLOT_EVT_KERNEL=0
MDTYPE=dtti
KLTYPE=1
# interpolate options
INTP_KL=0 # if =1 interplate models
INTP_LS=0
run_indx=`seq 0 0`
Specified Directories
specfem_dir: The directory wherespecfem3d-cube2sphis installed.cube2sph_dir: Directory containing thecube2sphutility.
Process Configuration
NPROC: Total number of MPI processes, it should be the same as theNPROCinPar_file.
Horizontal Slice Parameters
NSLICE_HORIZ: Number of horizontal slices to be visualized.DEPTH_H: Depths for horizontal slices (in kilometers).LON0_H: Starting longitude for horizontal slices.LON1_H: Ending longitude for horizontal slices.LAT0_H: Starting latitude for horizontal slices.LAT1_H: Ending latitude for horizontal slices.
Vertical Slice Parameters
NSLICE_VERTI: Number of vertical slices to be visualized.MAX_DEP: Maximum depth for vertical slices (in kilometers).
Start and End Points for Vertical Slices
LON0_V: Starting longitude for vertical slices.LAT0_V: Starting latitude for vertical slices.LON1_V: Ending longitude for vertical slices.LAT1_V: Ending latitude for vertical slices.
File Directories
DATABASE_DIR: Path to the database directory.MODEL_DIR: Path to the model directory.SOLVER_DIR: Path to the solver directory.
Interpolation Parameters
MODEL_SET: Model set to use for visualization.KERNEL_SET: Kernel parameters to interpolate for visualization.
Additional Visualization Options
PLOT_EVT_KERNEL: Flag to indicate whether to plot event kernels (0 = no, 1 = yes).MDTYPE: Model type used for visualization.KLTYPE: Kernel type definition for visualization.
Interpolation Options
INTP_KL: Interpolate models flag (0 = no, 1 = yes).INTP_LS: Interpolate line sources flag.
Run Index
run_indx: Sequence of model indices (0 =M00) for visualization tasks.
Configuration File
Before running any scripts, ensure that you modify your module_env and module_env_gmt files to load the correct packages and environment variables. For module_env, please enable all modules used to compile cube2sph, including gcc, gfortran, mpi, and netcdf-serial. In module_env_gmt, load all packages that are dependencies for GMT.
Step 0: Run MPI Interpolation
This script, step0_get_gll_from_sem_mpi.sh, requires MPI to interpolate the slices defined in parameters.sh. Run it on your cluster.
After completing the MPI interpolation, you can run step0_get_mask.sh. This script will mask (or not, depending on your input variables) the oceans and lakes with NaN values and generate a .grd file for further use.
Step 1: Interpolate Model
Run step1_interp_model.sh. This script will loop through all MODEL_SET and KERNEL_SET values, as well as all slices and run_indx defined in parameters.sh. It will generate text files in the profiles/ directory.
Step 2: Generate GRD File
Run step2_get_grd. This script will convert all text files generated in Step 1 into GMT .grd files for further use.
Step 3: Plotting
Run step3_plot_abs.sh to plot all models and kernels with their true values. If you prefer to visualize the relative values, run step3_plot_dm.sh; this will produce figures showing the relative change for all run_indx except for 0.
Please note that Step 2 must be executed for model 0 to generate a .grd file necessary for computing relative changes.