20 #ifndef __mast__structural_nonlinear_assembly_elem_operations__ 21 #define __mast__structural_nonlinear_assembly_elem_operations__ 31 class StructuralAssembly;
104 libmesh_assert(
false);
129 const libMesh::Elem& ref_elem,
149 #endif // __mast__structural_nonlinear_assembly_elem_operations__
This class provides some routines that are common to structural assembly routines.
virtual void elem_sensitivity_calculations(const MAST::FunctionBase &f, RealVectorX &vec)
performs the element sensitivity calculations over elem, and returns the element residual sensitivity...
StructuralNonlinearAssemblyElemOperations()
constructor associates this assembly object with the system
virtual void elem_linearized_jacobian_solution_product(RealVectorX &vec)
performs the element calculations over elem, and returns the element vector quantity in vec...
Matrix< Real, Dynamic, Dynamic > RealMatrixX
virtual void elem_shape_sensitivity_calculations(const MAST::FunctionBase &f, RealVectorX &vec)
performs the element shape sensitivity calculations over elem, and returns the element residual sensi...
Matrix< Real, Dynamic, 1 > RealVectorX
virtual void set_elem_data(unsigned int dim, const libMesh::Elem &ref_elem, MAST::GeomElem &elem) const
sets the structural element y-vector if 1D element is used.
virtual ~StructuralNonlinearAssemblyElemOperations()
destructor resets the association of this assembly object with the system
This class acts as a wrapper around libMesh::Elem for the purpose of providing a uniform interface fo...
virtual void elem_second_derivative_dot_solution_assembly(RealMatrixX &mat)
calculates over elem, and returns the matrix in vec .
virtual void elem_topology_sensitivity_calculations(const MAST::FunctionBase &f, const MAST::FieldFunction< RealVectorX > &vel, RealVectorX &vec)
performs the element topology sensitivity calculations over elem, and returns the element residual se...
virtual void set_elem_solution(const RealVectorX &sol)
sets the element solution(s) before calculations
MAST::StructuralAssembly * _incompatible_sol_assembly
virtual void init(const MAST::GeomElem &elem)
initializes the object for the geometric element elem.
virtual void elem_calculations(bool if_jac, RealVectorX &vec, RealMatrixX &mat)
performs the element calculations over elem, and returns the element vector and matrix quantities in ...
void attach_incompatible_solution_object(MAST::StructuralAssembly &str_assembly)
attached the incompatible solution object
void clear_incompatible_solution_object()
clear the incompatible solution object