8 #ifndef COMMON_FUNCTIONS_ELASTICITY_3D_H_
9 #define COMMON_FUNCTIONS_ELASTICITY_3D_H_
18 const unsigned int _u_var, _v_var, _w_var;
19 const libMesh::Real _x_displ, _y_displ, _z_displ;
25 libMesh::Real x_displ = 0,
26 libMesh::Real y_displ = 0,
27 libMesh::Real z_displ = 0)
35 this->_initialized =
true;
38 virtual libMesh::Number
operator() (
const libMesh::Point&,
const libMesh::Real = 0)
40 libmesh_not_implemented();
45 libMesh::DenseVector<libMesh::Number>& output)
50 output(_u_var) = _x_displ;
51 output(_v_var) = _y_displ;
52 output(_w_var) = _z_displ;
55 virtual libMesh::UniquePtr<FunctionBase<libMesh::Number> >
clone()
const
57 return libMesh::UniquePtr<FunctionBase<libMesh::Number> >
59 _x_displ, _y_displ, _z_displ));
78 libMesh::ExplicitSystem&
add_stress(libMesh::EquationSystems& input_systems);
81 libMesh::LinearImplicitSystem&
add_elasticity( libMesh::EquationSystems& input_systems,
82 libMesh::Order order = libMesh::FIRST,
83 libMesh::FEFamily family = libMesh::LAGRANGE);
virtual libMesh::UniquePtr< FunctionBase< libMesh::Number > > clone() const
Small structure with the 3D border displacement values.
3D border displacement class, derived from libMesh::FunctionBase.
libMesh::LinearImplicitSystem & add_elasticity(libMesh::EquationSystems &input_systems, libMesh::Order order=libMesh::FIRST, libMesh::FEFamily family=libMesh::LAGRANGE)
Add a linear elasticity libMesh::LinearImplicitSystem to the input libMesh::EquationSystems& input_sy...
void set_clamped_border(libMesh::ImplicitSystem &elasticity_system, int boundary_id)
Set a clamped border.
border_displacement_function(unsigned int u_var, unsigned int v_var, unsigned int w_var, libMesh::Real x_displ=0, libMesh::Real y_displ=0, libMesh::Real z_displ=0)
virtual libMesh::Number operator()(const libMesh::Point &, const libMesh::Real=0)
void set_displaced_border_translation(libMesh::ImplicitSystem &elasticity_system, border_displacement_values &displ, int boundary_id)
Set a displacement border.
libMesh::ExplicitSystem & add_stress(libMesh::EquationSystems &input_systems)
Add a stress libMesh::ExplicitSystem to the input libMesh::EquationSystems.