Input parameter file

The input parameter file is in the yaml format. The input parameter file should contain the following sections with parameters for the inversion:

data

  • src_rec_file_ph: path to the travel-time data file of phase velocity

  • src_rec_file_gr: path to the travel-time data file of group velocity

  • iwave: type of surface wave (1 Love wave (not included in the current version), 2 Rayleigh wave )

  • vel_type: Bool list with 2 elements, indicating the type of velocity model e.g., [True, False] for phase velocity only.

  • weights: Float list with 2 elements, indicating the weight of phase and group velocity data e.g., [1.0, 0.0] for phase velocity only.

domain

  • depth: List with 2 elements, indicating depth range of the model.

  • interval: List with 3 elements, indicating the interval of the model along longitude, latitude, and depth.

  • num_grid_margin: Int, indicating the grid number of margin area for the domain.

topo

  • is_consider_topo: Bool, indicating whether to consider the model with topography.

  • topo_file: path to the surface topography file in netcdf format.

  • wavelen_factor: Float, indicating the smoothing factor of the topography.

Note

We assume the wavelen_factor as \(\alpha\) and the wavelength of the surface wave is \(\lambda\). A gaussian smoothing filter with a standard deviation of \(\sigma = \alpha \lambda\) is applied to the topography.

output

  • output_path: path to the output files.

  • format: output format of the model file (available for hdf5 or csv).

  • log_level: log level of the output (available for 0: DEBUG, 1:INFO).

inversion

Initial model

  • init_model_type: type of initial model (0: 1D, 1: 3D).

    • 0: Increase from vel_range[0] to vel_range[1] linearly.

    • 1: Do 1-D inversion first using the average surface wave velocity data.

    • 2: Specify the 3-D initial model file with the same format as the output model file in hdf5 format.

  • vel_range: List with 2 elements, indicating the range of the initial model.

  • init_model_path: Path to the 3-D initial model file.

Kernel Regularization

  • kdensity_coe: Coefficient to rescale the final kernel

Note

we assume the kdensity_coe as \(\alpha\). The kernel \(K\) is rescaled as \(\frac{1}{K_{den}^\alpha}\), where the \(K_{den}\) is the total kernel density. The kdensity_coe is usually set between 0.0 and 1.0.

  • ncomponents: number of components of the inversion grids.

  • n_inv_grid: Int list with 3 elements, indicating number of inversion grids along longitude, latitude, and depth.

Inversion parameters

  • niter: maximum iteration number of the inversion.

  • min_derr: minimum error change of the inversion.

Optimization parameters

  • optim_method: Optimization method of the inversion (0: Grad_descent, 1: Non-linear Conjugate Gradient, 2: L-BFGS).

Note

The L-BFGS method is recommended, due to its fast convergence.

  • step_length: Step length of the inversion.

  • max_sub_niter: Maximum sub-iterations for line search.

  • maxshrink: Maximum step length descent.