The Elastic3DLinear class creates a triaxial material class with the constitutive equation given as
\[ \sigma = \mathbb{C} \, \epsilon \nonumber \]
where \(\sigma\) is the stress vector, \(\epsilon\) is the strain vector, and \(\mathbb{C}\) is the stiffness matrix, given as
\[ \mathbb{C} = \frac{E}{(1 + \nu)(1 - 2\nu)} \begin{bmatrix} 1 - \nu & \nu & \nu & 0 & 0 & 0 \\ \nu & 1 - \nu & \nu & 0 & 0 & 0 \\ \nu & \nu & 1 - \nu & 0 & 0 & 0 \\ 0 & 0 & 0 & \frac{1 - 2 \nu}{2}& 0 & 0 \\ 0 & 0 & 0 & 0 & \frac{1 - 2 \nu}{2} & 0 \\ 0 & 0 & 0 & 0 & 0 & \frac{1 - 2 \nu}{2} \end{bmatrix} \nonumber \]
REFERENCE:
The python Pre-Analysis in the 01-Pre_Process/Method/Attach.py file provides with an interface to populate the Entities
dictionary. This file contains several functions to populate specific fields. For example, to create a Elastic3DLinear material using json format, use:
addMaterial(tag, name='Elastic3DLinear', attributes):
Example
A ELASTIC3DLINEAR material can be defined using the python interface as follows:
SVL.addMaterial(tag=1, name='Elastic3DLinear', attributes={'E': 200.0, 'nu': 0.25, 'rho': 0.0})
Application
Please refer to the I01-ST_Lin_3DPointLoad_Elastic_Hexa8.py file located at 03-Validations/01-Debugging/ to see an example on how to define a Elastic3DLinear material.
On the contrary, the 01-Pre_Process/Method/Remove.py file provides with an interface to depopulate the Entities
dictionary. For example, to remove an already define Material, use:
The C++ Run-Analysis in the 02-Run_Process/02-Materials/01-Linear/Elastic3DLinear.cpp file provides the class implementation. A Elastic3DLinear material is created using the built-in json parse-structure provided in the Driver.hpp. A Elastic3DLinear is defined inside the "Materials" json field indicating its "Tag" as follows,
{ "Materials": { "Tag": { "name" : "ELASTIC3DLINEAR", "attributes": { "E": double, "nu": double, "rho": double } } } }
Variable | Description |
---|---|
Tag | Unique material object identifier. |
E | Represents the elasticity modulus. |
nu | Represents the Poisson's ratio. |
rho | Represents the material density. |
A triaxial ELASTIC3DLINEAR material with elasticity modulus 200, Poisson's ratio 0.25, no density is defined as:
{ "Materials": { "1": { "name" : "ELASTIC3DLINEAR", "attributes": { "E" : 200.0, "nu" : 0.25, "rho": 0.0 } } } }