produce_Darendeli_curves#

PySeismoSoil.helper_hh_calibration.produce_Darendeli_curves(sigma_v0: ndarray, PI: int | float | numpy.ndarray = 20.0, OCR: int | float | numpy.ndarray = 1.0, K0: int | float | numpy.ndarray | None = 0.5, phi: int | float | numpy.ndarray = 30.0, strain_in_pct: numpy.ndarray | None = None) tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray][source]#

Produce G/Gmax and damping curves using empirical correlations by Darendeli (2001).

Parameters:
  • sigma_v0 (np.ndarray) – Effective vertical confining stress of each layer. Unit: Pa.

  • PI (int | float | np.ndarray) – Plasticity index of each layer. Unit: %. If a single value is given, it is assumed to be the PI for all layers.

  • OCR (int | float | np.ndarray) – Over-consolidation ratio of each layer. If a single value is given, it is assumed to be the value for all layers.

  • K0 (int | float | np.ndarray | None) – Lateral soil pressure coefficient. If a single value is given, it is assumed to be the value for all layers. If None, it will be determined from OCR via an empirical formula by Mayne & Kulhawy (1982).

  • phi (int | float | np.ndarray) – Internal effective friction angle of soils. If it is a float/int, it means all the layers have the same angle. Unit: deg.

  • strain_in_pct (np.ndarray | None) – The strain values at which to calculate G/Gmax and damping values. If None, numpy.geomspace(1e-4, 10, 400) will be used. Unit: percent.

Returns:

  • GGmax (np.ndarray) – G/Gmax curves for each layer. It is a 2D numpy array. Each column of it represents the G/Gmax curve of a particular layer. Unit: 1

  • xi (np.ndarray) – Damping curves for each layer. Same shape as GGmax. Unit: 1.

  • gamma_r (np.ndarray) – Reference strain for each layer. It is a 1D numpy array, corresponding to each soil layer. Unit: 1.