1#ifndef included_AMP_MechanicsLinearFEOperator
2#define included_AMP_MechanicsLinearFEOperator
5#include "AMP/operators/libmesh/LinearFEOperator.h"
6#include "AMP/operators/mechanics/MechanicsConstants.h"
7#include "AMP/operators/mechanics/MechanicsLinearElement.h"
8#include "AMP/operators/mechanics/MechanicsLinearFEOperatorParameters.h"
9#include "AMP/operators/mechanics/MechanicsLinearUpdatedLagrangianElement.h"
10#include "AMP/vectors/Variable.h"
59 void preAssembly( std::shared_ptr<const OperatorParameters> params )
override;
90 const std::string &
fname );
105 std::shared_ptr<MechanicsLinearUpdatedLagrangianElement>
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
std::shared_ptr< MechanicsLinearUpdatedLagrangianElement > d_mechLinULElem
std::shared_ptr< MechanicsMaterialModel > d_materialModel
void printStressAndStrain(AMP::LinearAlgebra::Vector::shared_ptr disp, const std::string &fname)
void preElementOperation(const AMP::Mesh::MeshElement &) override
std::vector< std::vector< size_t > > d_dofIndices
std::shared_ptr< MechanicsMaterialModel > getMaterialModel()
bool d_useUpdatedLagrangian
void getDofIndicesForCurrentElement()
AMP::LinearAlgebra::Vector::shared_ptr d_refXYZ
MechanicsLinearFEOperator(std::shared_ptr< const OperatorParameters > params)
void preAssembly(std::shared_ptr< const OperatorParameters > params) override
AMP::LinearAlgebra::Vector::shared_ptr d_dispVec
std::vector< std::vector< double > > d_elementStiffnessMatrix
std::shared_ptr< MechanicsLinearElement > d_mechLinElem
void postAssembly() override
MechanicsLinearFEOperator(std::shared_ptr< const MechanicsLinearFEOperatorParameters >, bool)
void postElementOperation() override
virtual ~MechanicsLinearFEOperator()
std::shared_ptr< AMP::Operator::Operator > shared_ptr