1#ifndef included_AMP_MechanicsNonlinearElement
2#define included_AMP_MechanicsNonlinearElement
4#include "AMP/operators/mechanics/MechanicsConstants.h"
5#include "AMP/operators/mechanics/MechanicsElement.h"
39 "Jaumann rate with small strain does not make any sense." );
52 std::vector<double> &elementOutputVector )
96 const std::vector<std::vector<double>> &elementInputVectors );
118 std::vector<double> &stressVec,
119 std::vector<double> &strainVec );
127 const std::vector<std::vector<double>> & );
143 const std::vector<libMesh::Real> *
d_JxW;
146 const std::vector<std::vector<libMesh::RealGradient>>
150 const std::vector<std::vector<libMesh::Real>>
154 const std::vector<libMesh::Point>
bool d_useReducedIntegration
std::shared_ptr< libMesh::FEBase > d_fe
std::vector< std::vector< double > > d_elementInputVectors
std::vector< double > * d_elementOutputVector
void computeStressAndStrain(const std::vector< std::vector< double > > &inputVec, std::vector< double > &stressVec, std::vector< double > &strainVec)
void materialModelPreNonlinearElementOperation(MaterialUpdateType)
void printStressAndStrain(FILE *fp, const std::vector< std::vector< double > > &inputVec)
virtual ~MechanicsNonlinearElement()
Destructor.
void initMaterialModel(const std::vector< double > &initTempVector)
void updateMaterialModel(MaterialUpdateType type, const std::vector< std::vector< double > > &elementInputVectors)
const std::vector< std::vector< libMesh::Real > > * d_phi
const std::vector< std::vector< libMesh::RealGradient > > * d_dphi
void materialModelPostNonlinearElementOperation(MaterialUpdateType)
const std::vector< libMesh::Point > * d_xyz
void materialModelNonlinearGaussPointOperation(MaterialUpdateType, const std::vector< std::vector< double > > &)
void setElementVectors(const std::vector< std::vector< double > > &elementInputVectors, std::vector< double > &elementOutputVector)
void materialModelPostNonlinearGaussPointOperation(MaterialUpdateType)
MechanicsNonlinearElement(std::shared_ptr< const ElementOperationParameters > params)
Constructor.
const std::vector< libMesh::Real > * d_JxW
void materialModelPreNonlinearGaussPointOperation(MaterialUpdateType)
#define AMP_INSIST(EXP, MSG)
Insist error.