Eurocode 8 - Chapter 3 - seismic_action¶
raw functions
[1]:
from streng.codes.eurocodes.ec8.raw.ch3.seismic_action import spectra
spectra¶
αg¶
[2]:
print(spectra.αg.__doc__)
Args:
αgR (float): reference peak ground acceleration on type A ground
γI: (float): importance factor
Returns:
float: design ground acceleration on type A ground
[3]:
αg = spectra.αg(αgR=0.24,
γI=1.20)
print(f'αg = {αg}g')
αg = 0.288g
S¶
[4]:
print(spectra.S.__doc__)
Args:
ground_type (str): Ground type (A, B, C, D or E)
spectrum_type (int): Spectrum type 1 or 2
Returns:
float: soil factor
[5]:
S = spectra.S(ground_type='B',
spectrum_type=1)
print(f'S = {S}')
S = 1.2
TB¶
[6]:
print(spectra.TB.__doc__)
Args:
ground_type (str): Ground type (A, B, C, D or E)
spectrum_type (int): Spectrum type 1 or 2
Returns:
float: The lower limit of the period of the constant spectral acceleration branch
[7]:
TB = spectra.TB(ground_type='B',
spectrum_type=1)
print(f'TB = {TB}')
TB = 0.15
TC¶
[8]:
print(spectra.TC.__doc__)
Args:
ground_type (str): Ground type (A, B, C, D or E)
spectrum_type (int): Spectrum type 1 or 2
Returns:
float: The upper limit of the period of the constant spectral acceleration branch
[9]:
TC = spectra.TC(ground_type='B',
spectrum_type=1)
print(f'TC = {TC}')
TC = 0.5
TD¶
[10]:
print(spectra.TD.__doc__)
Args:
ground_type (str): Ground type (A, B, C, D or E)
spectrum_type (int): Spectrum type 1 or 2
national_annex (str): Country national annex. Options are: 'default', 'greek'
Returns:
float: The value defining the beginning of the constant displacement response range of the spectrum
[11]:
TD = spectra.TD(ground_type='B',
spectrum_type=1)
print(f'TD = {TD}')
TD = 2.0
Se¶
[12]:
print(spectra.Se.__doc__)
Args:
T (float): The vibration period of a linear single-degree-of-freedom system
αg (float): The design ground acceleration on type A ground (ag = γI*agR)
S (float): The soil factor
TB (float): The lower limit of the period of the constant spectral acceleration branch
TC (float): The upper limit of the period of the constant spectral acceleration branch
TD (float): The value defining the beginning of the constant displacement response range of the spectrum
η (float): The damping correction factor with a reference value of η = 1 for 5% viscous damping
Returns:
float: The elastic acceleration response spectrum. Given using the expressions:
.. math::
:nowrap:
\begin{eqnarray}
0 \le T \le T_B \rightarrow & S_e(T) & = α_g\cdot S \cdot (1+\dfrac{T}{T_B}\cdot(η\cdot 2.5 -1)) \\
T_B \le T \le T_C \rightarrow & S_e(T) & = α_g\cdot S \cdot η\cdot 2.5 \\
T_C \le T \le T_D \rightarrow & S_e(T) & = α_g\cdot S \cdot η\cdot 2.5\cdot \dfrac{T_C}{T} \\
T_D \le T \le 4s \rightarrow & S_e(T) & = α_g\cdot S \cdot η\cdot 2.5\cdot \dfrac{T_C\cdot T_D}{T^2}
\end{eqnarray}
[13]:
Se = spectra.Se(T=0.50,
αg = 0.24,
S=1.20,
TB=0.15,
TC=0.50,
TD=2.0,
η=1.0)
print(f'Se = {Se}g')
Se = 0.72g
SDe¶
[14]:
print(spectra.SDe.__doc__)
Args:
T (float): The vibration period of a linear single-degree-of-freedom system
Se (float):The elastic acceleration response spectrum
Returns:
float: The elastic displacement response spectrum. Given using the expression:
.. math::
S_{De}=S_e(T)\cdot(\dfrac{T}{2π})^2
[15]:
Sde = spectra.SDe(T=0.5,
Se=0.72*9.81)
print(f'Sde = {Sde:.3f}m')
Sde = 0.045m
dg¶
[16]:
print(spectra.dg.__doc__)
Args:
αg (float): The design ground acceleration on type A ground (ag = γI*agR)
S (float): The soil factor
TC (float): The upper limit of the period of the constant spectral acceleration branch
TD (float): The value defining the beginning of the constant displacement response range of the spectrum
Returns:
float: Design ground displacement. Given using the expression:
.. math::
d_{g}=0.025\cdot α_g \cdot S \cdot T_C \cdot T_D
[17]:
dg = spectra.dg(αg=0.24,
S=1.20,
TC=0.50,
TD=2.0)
print(f'dg = {dg:.4f}g')
dg = 0.0072g
Sd¶
[18]:
print(spectra.Sd.__doc__)
Args:
T (float): The vibration period of a linear single-degree-of-freedom system
αg (float): The design ground acceleration on type A ground (ag = γI*agR)
S (float): The soil factor
TB (float): The lower limit of the period of the constant spectral acceleration branch
TC (float): The upper limit of the period of the constant spectral acceleration branch
TD (float): The value defining the beginning of the constant displacement response range of the spectrum
q (float): The behaviour factor
β (float): The lower bound factor for the horizontal design spectrum. Recommended value for β is 0.2
Returns:
float: Design spectrum for elastic analyses. Given using the expressions:
.. math::
:nowrap:
\begin{eqnarray}
0 \le T \le T_B \rightarrow & S_d(T) & = α_g\cdot S \cdot (\dfrac{2}{3}+\dfrac{T}{T_B}\cdot(\dfrac{2.5}{q} - \dfrac{2}{3})) \\
T_B \le T \le T_C \rightarrow & S_d(T) & = α_g\cdot S \cdot \dfrac{2.5}{q} \\
T_C \le T \le T_D \rightarrow & S_d(T) & = α_g\cdot S \cdot \dfrac{2.5}{q} \cdot \dfrac{T_C}{T} \ge β \cdot α_g \\
T_D \le T \le 4s \rightarrow & S_d(T) & = α_g\cdot S \cdot \dfrac{2.5}{q} \cdot \dfrac{T_C\cdot T_D}{T^2} \ge β \cdot α_g
\end{eqnarray}
[19]:
Sd = spectra.Sd(T=0.50,
αg = 0.24,
S=1.20,
TB=0.15,
TC=0.50,
TD=2.0,
q=3.9,
β=0.20)
print(f'Sd = {Sd:.3f}g')
Sd = 0.185g
η¶
[20]:
print(spectra.η.__doc__)
Args:
ξ (float): the viscous damping ratio of the structure[%]
Returns:
float: The value of the damping correction factor. Given using the expressions:
.. math::
η = \sqrt{\dfrac{10}{5+ξ}} \ge 0.55
[21]:
η_5 = spectra.η(5)
print(f'η(5%) = {η_5:.2f}')
η_7 = spectra.η(7)
print(f'η(7%) = {η_7:.2f}')
η(5%) = 1.00
η(7%) = 0.91