Material
This class is provided as a demonstration example.
method |
input |
returns |
description |
---|---|---|---|
__init__(…) |
parameters as {‘E’:10.0} |
constructor. Sets parameters for this material and initializes all internal variables |
|
getArea() |
\(A\) |
return cross section area from parameters[‘A’] |
|
getStress() |
\(\sigma\) |
request axial stress |
|
getStiffness |
\(E_t\) |
request axial stiffness |
|
setStrain(eps) |
strain \(\varepsilon\) |
update state for a user provided axial strain value |
name |
type |
description |
---|---|---|
params |
dict |
default parameters: {‘E’:100., ‘nu’:0.0, ‘fy:1.0e30} Holds user provided parameters (MOE, Poisson’s ratio, yield stress) |
plastic_strain |
float |
internal state variable. |
sig |
float |
holds current stress |
Et |
float |
holds current materil tangent modulus |
Equations
Elastic trial state:
1.1 \(\sigma = E * (\varepsilon - \varepsilon_P)\)
1.2 \(E_t = E\)
Yield check: \(f = ||\sigma|| - f_y\)
IF \(f \ge 0\):
3.1. \(\Delta\varepsilon_P = \text{sign}(\sigma) * \frac{f}{E}\)
3.2. \(\sigma = \sigma - E * \Delta\varepsilon_P\)
3.3. \(E_t = E_t - E\)