5 #ifndef PZELASTOPLASTIC_H 6 #define PZELASTOPLASTIC_H 18 template <
class T,
class TMEM = TPZElastoPlasticMem>
53 virtual std::string
Name()
override;
56 virtual int Dimension()
const override {
return 3; }
62 virtual void Print(std::ostream &out,
const int memory);
65 virtual void Print(std::ostream &out)
override;
83 PZError <<
"TPZMatElastoPlastic::NFluxes() - Method not implemented\n";
92 PZError <<
"TPZMatElastoPlastic::Flux - Method not implemented\n";
199 virtual int ClassId()
const override;
204 virtual void Write(
TPZStream &buf,
int withclassid)
const override;
318 template <
class T,
class TMEM>
virtual int NEvalErrors() override
TPZManVector< REAL, 3 > m_PostProcessDirection
TPZManVector< REAL, 3 > m_force
clarg::argBool bc("-bc", "binary checkpoints", false)
virtual void SetBulkDensity(REAL &RhoB)
virtual std::string Name() override
virtual void Write(TPZStream &buf, int withclassid) const override
virtual int NFluxes() override
virtual void SetPlasticityModel(T &plasticity)
virtual ~TPZMatElastoPlastic()
void SetPlasticModel(T &plasticity_model)
int ClassId() const override
Unique identifier for serialization purposes.
void ApplyDeltaStrain(TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain, TPZFMatrix< REAL > &Stress)
virtual void Solution(TPZMaterialData &data, int var, TPZVec< REAL > &Solout) override
virtual void ContributeBC(TPZMaterialData &data, REAL weight, TPZFMatrix< REAL > &ek, TPZFMatrix< REAL > &ef, TPZBndCond &bc) override
void ComputeDeltaStrainVector(TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain)
Implements an abstract class implementing the memory features.
virtual int NSolutionVariables(int var) override
virtual TPZMaterial * NewMaterial() override
virtual void Read(TPZStream &buf, void *context) override
void ComputeStrainVector(TPZMaterialData &data, TPZFMatrix< REAL > &Strain)
virtual int Dimension() const override
virtual TPZPorousElasticResponse & GetPorousElasticity(TPZPorousElasticResponse &PER)
This abstract class defines the behaviour which each derived class needs to implement.
virtual void UpdateMaterialCoeficients(TPZVec< REAL > &x, T &plasticity)
virtual void SetTol(const REAL &tol)
virtual void Contribute(TPZMaterialData &data, REAL weight, TPZFMatrix< REAL > &ek, TPZFMatrix< REAL > &ef) override
virtual void Print(std::ostream &out, const int memory)
void EigenValues(TPZFMatrix< REAL > &vectorTensor, TPZVec< REAL > &ev)
void EigenVectors(TPZFMatrix< REAL > &vectorTensor, TPZVec< REAL > &Solout, int direction)
virtual int NStateVariables() const override
This class defines the boundary condition for TPZMaterial objects.
virtual void Errors(TPZVec< REAL > &x, TPZVec< REAL > &u, TPZFMatrix< REAL > &dudx, TPZFMatrix< REAL > &axes, TPZVec< REAL > &flux, TPZVec< REAL > &u_exact, TPZFMatrix< REAL > &du_exact, TPZVec< REAL > &values) override
void ComputeStressVector(TPZMaterialData &data, TPZFMatrix< REAL > &Stress)
virtual void SetPorousElasticity(TPZPorousElasticResponse &PER)
virtual void FillBoundaryConditionDataRequirement(int type, TPZMaterialData &data) override
int32_t Hash(std::string str)
bool m_use_non_linear_elasticity_Q
Contains the TPZMatWithMem class which implements the memory features.
virtual int ClassId() const override
void ApplyDirection(TPZFMatrix< REAL > &vectorTensor, TPZVec< REAL > &Out)
void CheckConvergence(TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain)
virtual void Flux(TPZVec< REAL > &x, TPZVec< REAL > &Sol, TPZFMatrix< REAL > &DSol, TPZFMatrix< REAL > &axes, TPZVec< REAL > &flux) override
virtual int VariableIndex(const std::string &name) override
Defines the interface for saving and reading data. Persistency.
void vectorToTensor(const TPZFMatrix< REAL > &vectorTensor, TPZFMatrix< REAL > &Tensor)
virtual T & GetPlasticModel()
void ApplyDeltaStrainComputeDep(TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain, TPZFMatrix< REAL > &Stress, TPZFMatrix< REAL > &Dep)
TPZPorousElasticResponse m_PER
#define PZError
Defines the output device to error messages and the DebugStop() function.
virtual void FillDataRequirements(TPZMaterialData &data) override