#include "b2solid_mechanics.H"
Public Member Functions | |
virtual LinearType | linear (const int layer_id=-1) const |
virtual bool | isotropic (const int layer_id=-1) const |
virtual bool | path_dependent (const int layer_id=-1) const |
virtual SolidMechanics25D< T > * | copy (int layer_) |
virtual void | get_static_nonlinear_shell_stress (Model *model, const EquilibriumSolution equilibrium_solution, const double time, const double delta_time, GradientContainer *gradient_container, SolverHints *solver_hints, const Element *element, const double el_coordinates[2], const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const T bg_coordinates[3], const T covariant_base[6][3], const bool use_covariant_base, const T displacement_gradient[6][3], const T shell_strain[8], T shell_stress[8], T d_shell_stress_d_strain[36], T d_shell_stress_d_time[8]) |
virtual void | set_static_nonlinear_shell_stress (Model *model, const double time, const double delta_time, GradientContainer *gradient_container, const Element *element, const double el_coordinates[2], const b2linalg::Vector< T, b2linalg::Vdense_constref > nodes_interpolation, const T bg_coordinates[3], const T covariant_base[6][3], const bool use_covariant_base, const T displacement_gradient[6][3], const T shell_strain[8], const T shell_stress[8], const T d_shell_stress_d_ec[2][8]) |
virtual void | get_shell_stress (Model *model, const EquilibriumSolution equilibrium_solution, const double time, const double delta_time, GradientContainer *gradient_container, SolverHints *solver_hints, const Element *element, const double el_coordinates[2], const b2linalg::Vector< double, b2linalg::Vdense_constref > nodes_interpolation, const T bg_coordinates[3], const T covariant_base[6][3], const bool use_covariant_base, const T volume, const T displacement_gradient[6][3], const T shell_strain[8], const T strain_dot[8], const T velocity[6], const T acceleration[6], T shell_stress[8], T d_shell_stress_d_strain[36], T d_stress_d_strain_dot[36], T d_shell_stress_d_time[8], T d_stress_d_time[6], T inertia_force[6], T density[3]) |
![]() | |
const std::string & | get_object_name () const override |
![]() | |
virtual | ~Object () |
Additional Inherited Members | |
![]() | |
static ObjectType | type |
The base class for the material API for 2.5D (shell) stress elements.
The strain, stress and constitutive tensor follow the notation used in the book "Finite Element Procedures" by K.J. Bathe:
The strain covariant components are placed in column vector [e11, e22, e33, 2e12, 2e23, 2e13].
The stress contravariant components are placed in column vector [s11, s22, s33, s12, s23, s13].
The constitutive contravariant components are placed in lower packed matrix format
|
inlinevirtual |
Create a copy of the object to be used in nonlinear analysis of path dependent material.
|
inlinevirtual |
Return the shell stress of the material
|
inlinevirtual |
Return the static shell stress of the material
|
inlinevirtual |
If layer_id is not given, the isotropic propriety is for all the laminate (note that a laminate with more than on layer is not isotropic). Otherwise the isotropic propriety is for the given layer.
Reimplemented in b2000::b2dbv3::ElementPropertyStressExample25D, and b2000::b2dbv3::ElementPropertyStressExample.
|
inlinevirtual |
If layer_id is not given, the linearity propriety is for all the layers. Otherwise the linearity propriety is for the given layer.
Reimplemented in b2000::b2dbv3::ElementPropertyStressExample25D, and b2000::b2dbv3::ElementPropertyStressExample.
|
inlinevirtual |
If layer_id is not given, the path-dependent propriety is for all the laminate. Otherwise the path-dependent propriety is for the given layer.
Reimplemented in b2000::b2dbv3::ElementPropertyStressExample.
|
inlinevirtual |
Set the stress and derivative value in the gradient container