weac.core.generalized_field_quantities module¶
This module defines the GeneralizedFieldQuantities class, which is responsible for calculating and providing access to various physical quantities within the slab in the Generalized Model.
- class weac.core.generalized_field_quantities.GeneralizedFieldQuantities(eigensystem)[source]¶
Bases:
objectConvenience accessors for a 24xN solution matrix Z = [u, u’,v, v’ w, w’, ψx, ψx’,ψy, ψy’,ψz, ψz’,thetauc, thetauc’, thetaul]ᵀ. All functions are vectorized along the second axis (x-coordinate), so they return an ndarray of length N.
- Parameters:
eigensystem (GeneralizedEigensystem)
- __init__(eigensystem)[source]¶
- Parameters:
eigensystem (GeneralizedEigensystem)
- u(Z, h0=0, b0=0, unit='mm')[source]¶
Axial displacement *u = u₀ + h₀ ψy - b₀ ψz * at depth h₀.
- Parameters:
Z (ndarray)
h0 (float)
b0 (float)
unit (Literal['m', 'cm', 'mm', 'um'])
- Return type:
float | ndarray
- du_dx(Z, h0=0, b0=0)[source]¶
Derivative u’ = u₀’ + h₀ ψy’- b₀ ψz’.
- Parameters:
Z (ndarray)
h0 (float)
b0 (float)
- Return type:
float | ndarray
- v(Z, h0=0, unit='mm')[source]¶
Transverse displacement *v = v₀ - h₀ ψx * at depth h₀.
- Parameters:
Z (ndarray)
h0 (float)
unit (Literal['m', 'cm', 'mm', 'um'])
- Return type:
float | ndarray
- dv_dx(Z, h0)[source]¶
Derivative v’ = v₀’ - h₀ ψx’.
- Parameters:
Z (ndarray)
h0 (float)
- Return type:
float | ndarray
- w(Z, b0=0, unit='mm')[source]¶
Vertical displacement *w = w₀ + b₀ ψx *.
- Parameters:
Z (ndarray)
b0 (float)
unit (Literal['m', 'cm', 'mm', 'um'])
- Return type:
float | ndarray
- dw_dx(Z, b0=0)[source]¶
First derivative *w’ = w₀’ + b₀ ψx’ *.
- Parameters:
Z (ndarray)
b0 (float)
- Return type:
float | ndarray
- psix(Z, unit='rad')[source]¶
Torsional rotation ψx of the mid-plane.
- Parameters:
Z (ndarray)
unit (Literal['deg', 'rad'])
- Return type:
float | ndarray
- psiy(Z, unit='rad')[source]¶
Bending rotation ψy of the mid-plane around the y-axis.
- Parameters:
Z (ndarray)
unit (Literal['deg', 'rad'])
- Return type:
float | ndarray
- psiz(Z, unit='rad')[source]¶
Bending rotation ψz of the mid-plane around the z-axis.
- Parameters:
Z (ndarray)
unit (Literal['deg', 'rad'])
- Return type:
float | ndarray
- theta_uc(Z)[source]¶
Linear amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- dtheta_uc_dx(Z)[source]¶
First derivative of the constant amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- theta_ul(Z)[source]¶
Linear amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- dtheta_ul_dx(Z)[source]¶
First derivative of the linear amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- theta_vc(Z)[source]¶
Linear amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- dtheta_vc_dx(Z)[source]¶
First derivative of the constant amplitude of out-of-plane cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- theta_vl(Z)[source]¶
Linear amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- dtheta_vl_dx(Z)[source]¶
First derivative of the linear amplitude of out-of-plane cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- theta_wc(Z)[source]¶
Linear amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- dtheta_wc_dx(Z)[source]¶
First derivative of the constant amplitude of vertical cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- theta_wl(Z)[source]¶
Linear amplitude of axial cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- dtheta_wl_dx(Z)[source]¶
First derivative of the linear amplitude of vertical cosine shaped displacements in the weak layer.
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- Nx(Z, has_foundation)[source]¶
Axial normal force Nx = A11 b u’ + B11 b psiy’ in the slab [N]
- Parameters:
Z (ndarray)
has_foundation (bool)
- Return type:
float | ndarray
- Vy(Z, has_foundation)[source]¶
Vertical out-of-plane shear force Vy = kA66 b (-psiz + v’)- kB66 b psix’ [N]
- Parameters:
Z (ndarray)
has_foundation (bool)
- Return type:
float | ndarray
- Vz(Z, has_foundation)[source]¶
Vertical shear force V = kA55(w’ + psiy) [N]
- Parameters:
Z (ndarray)
has_foundation (bool)
- Return type:
float | ndarray
- Mx(Z, has_foundation)[source]¶
Torsional moment Mx = kA55 * b^3/12 * psix’ + kB66 b (psiz - v0’) + kD66 b psix’ in the slab [Nmm]
- Parameters:
Z (ndarray)
has_foundation (bool)
- Return type:
float | ndarray
- My(Z, has_foundation)[source]¶
Bending moment My = B11 b u’ + D11 b psiy’ in the slab[Nmm]
- Parameters:
Z (ndarray)
has_foundation (bool)
- Return type:
float | ndarray
- Mz(Z, has_foundation)[source]¶
Bending moment Mz = A11 b^3/12 * psiz’ in the slab [Nmm]
- Parameters:
Z (ndarray)
has_foundation (bool)
- Return type:
float | ndarray
- Nx_c_weakLayer(Z)[source]¶
Generalized axial force associated to theta_uc [N]
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- Nx_l_weakLayer(Z)[source]¶
Generalized axial force associated to theta_ul [N]
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- Vy_c_weakLayer(Z)[source]¶
Generalized axial force associated to theta_vc [N]
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- Vy_l_weakLayer(Z)[source]¶
Generalized axial force associated to theta_vl [N]
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- Vz_c_weakLayer(Z)[source]¶
Generalized axial force associated to theta_wc [N]
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- Vz_l_weakLayer(Z)[source]¶
Generalized axial force associated to theta_wl [N]
- Parameters:
Z (ndarray)
- Return type:
float | ndarray
- sig_zz(Z, h0=None, b0=0, unit='MPa')[source]¶
Weak-layer normal stress
- Parameters:
Z (ndarray)
h0 (float | None)
b0 (float)
unit (Literal['Pa', 'kPa', 'MPa', 'GPa'])
- Return type:
float | ndarray
- tau_yz(Z, h0=0, b0=0, unit='MPa')[source]¶
Weak-layer shear stress
- Parameters:
Z (ndarray)
h0 (float)
b0 (float)
unit (Literal['Pa', 'kPa', 'MPa', 'GPa'])
- Return type:
float | ndarray
- tau_xz(Z, h0=0, b0=0, unit='MPa')[source]¶
Weak-layer shear stress
- Parameters:
Z (ndarray)
h0 (float)
b0 (float)
unit (Literal['Pa', 'kPa', 'MPa', 'GPa'])
- Return type:
float | ndarray
- eps_zz(Z, h0=0, b0=0)[source]¶
Weak-layer normal strain
- Parameters:
Z (ndarray)
h0 (float)
b0 (float)
- Return type:
float | ndarray
- gamma_yz(Z, h0=0, b0=0)[source]¶
Weak-layer shear strain.
- Parameters:
Z (ndarray)
h0 (float)
b0 (float)
- Return type:
float | ndarray
- gamma_xz(Z, h0=0, b0=0)[source]¶
Weak-layer shear strain.
- Parameters:
Z (ndarray)
h0 (float)
b0 (float)
- Return type:
float | ndarray
- Gi(Z_tip, _Z_back, _phi, _theta, unit='kJ/m^2')[source]¶
Mode I differential energy release rate at crack tip.
- Parameters:
Z_tip (ndarray)
_Z_back (ndarray)
_phi (float)
_theta (float)
unit (Literal['J/m^2', 'kJ/m^2', 'N/mm'])
- Return type:
float | ndarray
- Gii(Z_tip, _Z_back, _phi, _theta, unit='kJ/m^2')[source]¶
Mode II differential energy release rate at crack tip.
- Parameters:
Z_tip (ndarray)
_Z_back (ndarray)
_phi (float)
_theta (float)
unit (Literal['J/m^2', 'kJ/m^2', 'N/mm'])
- Return type:
float | ndarray
- Giii(Z_tip, _Z_back, _phi, _theta, unit='kJ/m^2')[source]¶
Mode III differential energy release rate at crack tip.
- Parameters:
Z_tip (ndarray)
_Z_back (ndarray)
_phi (float)
_theta (float)
unit (Literal['J/m^2', 'kJ/m^2', 'N/mm'])
- Return type:
float | ndarray
- dz_dx(z, phi, qs=0)[source]¶
First derivative z’(x) = K*z(x) + q of the solution vector.
- Parameters:
z (ndarray)
phi (float)
qs (float)
- Return type:
ndarray
- dz_dxdx(z, phi, qs)[source]¶
Second derivative z’’(x) = K*z’(x) of the solution vector.
- Parameters:
z (ndarray)
phi (float)
qs (float)
- Return type:
ndarray
- du0_dxdx(z, phi, qs)[source]¶
Second derivative of the horiz. centerline displacement u0’’(x).
- Parameters:
z (ndarray)
phi (float)
qs (float)
- Return type:
float | ndarray
- dpsi_dxdx(z, phi, qs)[source]¶
Second derivative of the cross-section rotation psi’’(x).
- Parameters:
z (ndarray)
phi (float)
qs (float)
- Return type:
float | ndarray