PySeismoSoil.helper_site_response Module#

Functions#

amplify_motion(input_motion, ...[, taper, ...])

Amplify (or de-amplify) ground motions in the frequency domain.

calc_GGmax_from_stress_strain(...[, Gmax])

Calculate G/Gmax curve from stress-strain curve.

calc_Vs30(profile[, ...])

Calculate Vs30 from the given Vs profile, where Vs30 is the reciprocal of the weighted average travel time from Z meters deep to the ground surface.

calc_VsZ(profile, Z[, ...])

Calculate VsZ from the given Vs profile, where VsZ is the reciprocal of the weighted average travel time from Z meters deep to the ground surface.

calc_basin_depth(vs_profile[, bedrock_Vs])

Query the depth of the basin as indicated in vs_profile.

calc_damping_from_param(param, ...)

Calculate damping values from HH or MKZ parameters.

calc_damping_from_stress_strain(...)

Calculate the damping curve from the given stress-strain curve.

calc_z1(vs_profile)

Calculate z1 (the depth to Vs = 1000 m/s) from vs_profile.

calc_z1_from_Vs30(Vs30_in_meter_per_sec)

Calculate z1 (basin depth) from Vs30. The correlation used here is z1 = 140.511 * exp(-0.00303 * Vs30), where the units of z1 and Vs30 are both SI units. This formula is documented in Section 2.5 (page 30) of the following PhD thesis: Shi, Jian (2019) "Improving Site Response Analysis for Earthquake Ground Motion Modeling." PhD thesis, California Institute of Technology.

compare_two_accel(input_accel, output_accel)

Compare two acceleration time histories: plot comparison figures showing two time histories and the transfer function between them.

dep2thk(depth_array_starting_from_0[, ...])

Convert a soil layer depth array into thickness array.

find_f0(x)

Find f_0 in a frequency spectrum (i.e., the frequency corresponding to the initial peak).

fit_all_damping_curves(curves, ...[, ...])

Perform damping curve fitting for multiple damping curves using the genetic algorithm provided in DEAP.

ga_optimization(n_param, lower_bound, ...[, ...])

Perform a genetic algorithm (GA) process to fit the data.

get_xi_rho(Vs[, formula_type])

Generate damping (xi) and density (rho) from the given 2-column Vs profile.

linear_site_resp(soil_profile, input_motion)

Perform linear site response analysis.

linear_tf(vs_profile[, show_fig, ...])

Compute linear elastic transfer function from a given Vs profile.

num_diff(veloc)

Perform numerical integration on velocity to get acceleration.

num_int(accel)

Perform numerical integration on acceleration to get velocity and displacement.

plot_Vs_profile(vs_profile[, fig, ax, ...])

Plot a Vs profile from a 2D numpy array.

plot_motion(accel[, unit, fig, ax, title, ...])

Plot acceleration, velocity, and displacement time history from a file name of acceleration data.

query_Vs_at_depth(vs_profile, depth)

Query Vs values at given depth values from a Vs profile.

query_Vs_given_thk(vs_profile, thk[, ...])

Query Vs values from a thickness array "thk".

response_spectra(accel[, T_min, T_max, ...])

Single-degree-of-freedom elastic response spectra, using the "exact" solution to the equation of motion (Section 5.2, Dynamics of Structures, Second Edition, by Anil K.

robust_unwrap(signal[, discont])

Unwrap a phase signal in a robust way.

stratify(vs_profile)

Divide layers of a Vs profile as necessary, according to the Vs values of each layer: if the layer thickness is more than Vs / 225.0, then divide the layer into more sublayers.

thk2dep(thk[, midpoint])

Convert a soil layer thickness array into depth array.