Bilin¶
-
class
streng.tools.bilin.
Bilin
(curve_ini: streng.common.math.charts.linexy.LineXY = LineXY(x=None, y=None, name=None, tags=[]), xtarget: float = 0.0, dropstrength: float = 0.75, elastoplastic: bool = False, allowa010: bool = True, EPSILON: float = 1e-06)[source]¶ -
curve_ini
: streng.common.math.charts.linexy.LineXY = LineXY(x=None, y=None, name=None, tags=[])¶
-
-
class
streng.tools.bilin.
BilinearCurve
(ay: float, au: float, dy: float, du: float, a0: float = 0.0, d0: float = 0.0)[source]¶ -
Teq
(T0)[source]¶ Effective period Teq after Fema440 Equation 3-5
\[T_{eq} = T_0 \sqrt{\dfrac{μ}{1 + α \cdot μ - α}}\]
-
property
T0
¶ Initial period T0
\[T_0 = 2 π \sqrt{\dfrac{d_y - d_0}{a_y - a_0}}\]
-
property
a_array
¶
-
property
all_quantities
¶
-
property
d_array
¶
-
property
kel
¶ Slope of the elastic branch, \(k_{el} = \dfrac{a_y - a_0}{d_y - d_0}\)
-
property
kinel
¶ Slope of the inelastic branch, \(k_{inel} = \dfrac{a_u - a_y}{d_u - d_y}\)
-
property
α
¶ Hardening, \(α = k_{inel}/k_{el}\)
-
property
β0
¶ Damping after Fema440 Equation 3-6
\[β_0 = \dfrac{2}{π}\dfrac{(μ - 1) \cdot (1 - α)}{μ \cdot (1 + α \cdot μ - α)}\]
-
property
μ
¶ - \[μ = \dfrac{d_u - d_0}{d_y - d_0}\]
-
Seismic Motions¶
-
class
streng.tools.seismic_motion.
Accelerogram
(accelerations: numpy.array, dt: float)[source]¶ Acceleration record.
Gets acceleration values and dt and calculates several motion parameters.
Most properties are cached, there was no actual need for that since calculations do not really take such a long time. Used the cached-property package.
-
accelerations
¶ an array with the acceleration values. Units should be m/sec2
- Type
np.array
-
classmethod
from_athanassiadou_acc
(filename, direction, scale=0.01)[source]¶ direction = ‘L’ or ‘T’ or ‘V’
-
classmethod
from_multi_column_txt
(filename, dt, scale=1.0, skip_header=0, skip_footer=0)[source]¶ constructor that loads values from a multicolumn text file
-
classmethod
from_one_column_txt
(filename, dt, scale=1.0)[source]¶ constructor that loads values from a single column text file
-
accelerations
: numpy.array¶
-
displacements
¶ displacement values
- Type
np.array
-
husid
¶ values of the Husid plot
- Type
np.array
-
husid_norm
¶ values of the normalized Husid plot
- Type
np.array
-
property
output
¶ A collection of output tables and strings
- Tables:
RecordMotionProperties
- Type
-
property
plot_time_series
¶ Plots acc, vel, dipl vs time
-
time
¶ time values
- Type
np.array
-
velocities
¶ velocity values
- Type
np.array
-
-
class
streng.tools.seismic_motion.
Spectra
(accel: numpy.array, dt: float)[source]¶ A class for calculating the response spectra using the Nigam Jennings approach. Adopted code found at the The GEMScienceTools - Risk Modellers Toolkit (RMTK).
-
accelerations
¶ an array with the acceleration values. Units should be m/sec2
- Type
np.array
-
classmethod
calculate_time_series
(num_steps, num_per, acc, const, omega2, dt)[source]¶ Calculates the acceleration, velocities and displacement time series for the SDOF oscillator
- Parameters
- Returns
- a tuple containing x_a, x_v, x_d
x_a = Acceleration time series
x_v = Velocity time series
x_d = Displacement time series
- Return type
-
accel
: numpy.array¶
-
-
streng.tools.seismic_motion.
calculate_time_series
(num_steps, num_per, acc, const, omega2, dt)[source]¶ Calculates the acceleration, velocities and displacement time series for the SDOF oscillator
- Parameters
- Returns
- a tuple containing x_a, x_v, x_d
x_a = Acceleration time series
x_v = Velocity time series
x_d = Displacement time series
- Return type