Transverse Isotropic Elasticity Plane Strain¶
Bases: OrthotropicElasticityPlaneStrain
Transversely isotropic elastic material for plane strain problems.
A special case of OrthotropicElasticityPlaneStrain where the in-plane
direction 1 is the axis of symmetry and the transverse plane (2-3) is
isotropic.
Parameters:
-
E_L(Tensor | float) –Longitudinal Young's modulus.
-
E_T(Tensor | float) –Transverse Young's modulus.
-
nu_L(Tensor | float) –Longitudinal Poisson's ratio \(\nu_L = \nu_{12} = \nu_{13}\).
-
nu_T(Tensor | float) –Transverse Poisson's ratio \(\nu_T = \nu_{23}\).
-
G_L(Tensor | float) –Longitudinal shear modulus \(G_L = G_{12} = G_{13}\).
-
rho(Tensor | float, default:1.0) –Mass density. Default is
1.0.
Notes
- Only five independent constants: \(E_L, E_T, \nu_L, \nu_T, G_L\).
- The transverse shear modulus is derived as \(G_T = E_T / (2(1 + \nu_T))\).
- Raises
ValueErrorif \(G_L > E_L / (2(1 + \nu_L))\).
Transverse isotropy as a special case
Isotropy in the transverse plane (2-3) reduces the nine independent
constants of OrthotropicElasticityPlaneStrain to five,
$$
E_1 = E_L, \quad E_2 = E_3 = E_T
$$
$$
\nu_{12} = \nu_{13} = \nu_L, \quad \nu_{23} = \nu_T
$$
$$
G_{12} = G_{13} = G_L, \quad
G_{23} = G_T = \frac{E_T}{2 (1 + \nu_T)}
$$
where the transverse shear modulus \(G_T\) follows from isotropy in the
2-3 plane. The plane strain condition \(\varepsilon_{33} = 0\) is then
enforced by OrthotropicElasticityPlaneStrain.
vectorize(n_elem)
¶
Returns the material batched over n_elem elements.
Parameters:
-
n_elem(int) –Number of elements to vectorize the material for.
Returns:
-
Material(T) –A material of the same type carrying one entry per element, or itself if it is vectorized already.
rotate(R)
¶
Returns a copy with its coordinate system rotated by \(\mathbf{R}\).
Parameters:
-
R(Tensor) –Rotation matrix. Shape:
(..., 2, 2).
Returns:
-
OrthotropicElasticityPlaneStrain(OrthotropicElasticityPlaneStrain) –A material with rotated properties.
step(H_inc, F, stress, state, de0, cl, iter)
¶
Performs an incremental step in the orthotropic elasticity model.
The stress is updated as $$ \pmb{\sigma}_{n+1} = \pmb{\sigma}_n + \mathbb{C} : (\Delta \pmb{\varepsilon} - \Delta \pmb{\varepsilon}^0) $$
Parameters:
-
H_inc(Tensor) –Incremental displacement gradient. Shape:
(..., 3, 3). -
F(Tensor) –Current deformation gradient. Shape:
(..., 3, 3). -
stress(Tensor) –Current Cauchy stress tensor. Shape:
(..., 3, 3). -
state(Tensor) –Internal state variables (unused). Shape:
(..., 0). -
de0(Tensor) –External small strain increment (e.g., thermal). Shape:
(..., 3, 3). -
cl(Tensor) –Characteristic lengths. Shape:
(..., 1). -
iter(int) –Current iteration number.
Returns:
-
stress_new(Tensor) –Updated Cauchy stress tensor. Shape:
(..., 3, 3). -
state_new(Tensor) –Updated internal state (unchanged). Shape:
(..., 0). -
ddsdde(Tensor) –Algorithmic tangent stiffness tensor. Shape:
(..., 3, 3, 3, 3).