produce_HH_G_param#

PySeismoSoil.helper_hh_calibration.produce_HH_G_param(Vs: ndarray, Gmax: ndarray, Tmax: ndarray, OCR: ndarray, sigma_v0: ndarray, K0: numpy.ndarray | float, curves: numpy.ndarray | None = None, PI: float | numpy.ndarray | None = None, phi: float | numpy.ndarray | None = None, show_fig: bool = False, save_fig: bool = False, fig_output_dir: str = None, verbose: bool = True) ndarray[source]#

Produce HH_G parameters from profiles of Vs, Tmax, OCR, etc.

Parameters:
  • Vs (np.ndarray) – Vs values of each layer. Shape: (n_layer, ), where n_layer is the length of Vs. Unit: m/s.

  • Gmax (np.ndarray) – Initial stiffness of each layer. Shape: (n_layer, ). Unit: Pa.

  • Tmax (np.ndarray) – The shear strength of each layer. Shape: (n_layer, ). Unit: Pa.

  • OCR (np.ndarray) – Over-consolidation ratio of each layer. Shape: (n_layer, ).

  • sigma_v0 (np.ndarray) – Vertical effective confining stress of each layer. Shape: (n_layer, ). Unit: Pa.

  • K0 (np.ndarray | float) – Lateral soil pressure coefficient. If an array, it must have shape (n_layer, ). If a single value, it means that all layers share this same value.

  • curves (np.ndarray | None) –

    A 2D numpy array that represents G/Gmax and damping curves of each layer, in the following format:

    strain [%]

    G/Gmax

    strain [%]

    damping [%]

    strain [%]

    G/Gmax

    The damping information is neglected in this function, so users can supply some dummy values. If None, it means that the users do not have G/Gmax curve information, so this function will calculate the MKZ G/Gmax curves from the empirical formulas in Darendeli (2001).

  • PI (float | np.ndarray | None) – Plasticity index of the soils. It is not necessary (can be None) if curves is provided (i.e., not None). If an array, it must have shape (n_layer, ). If a single value, it means that all layers share this same value.

  • phi (float | np.ndarray | None) – Effective internal frictional angle (in degrees). It is not necessary (can be None) if curve is provided (i.e., not None). If an array, it must have shape (n_layer, ). If a single value, it means that all layers share this same value.

  • show_fig (bool) – Whether to show figures G/Gmax and stress-strain curves of MKZ, FKZ, and HH for each layer.

  • save_fig (bool) – Whether to save the figures to the hard drive. Only effective if show_fig is set to True.

  • fig_output_dir (str) – The output directory for the figures. Only effective if show_fig and save_fig are both True.

  • verbose (bool) – Whether to print progresses on the console.

Returns:

parameters – The HH parameters of each layer. It’s a 2D array of shape (9, n_layer). For each layer (i.e., column), the values are in this order:

gamma_t, a, gamma_ref, beta, s, Gmax, mu, Tmax, d

Return type:

np.ndarray

Raises:

ValueError – When save_fig is True but fig_output_dir is not specified

Notes

This function is based on hybridParaKernel_FKZ.m.