NeoPZ
Public Member Functions | Protected Attributes | List of all members
TPZMatElastoPlastic2D< T, TMEM > Class Template Reference

#include <TPZMatElastoPlastic2D.h>

Inheritance diagram for TPZMatElastoPlastic2D< T, TMEM >:
[legend]
Collaboration diagram for TPZMatElastoPlastic2D< T, TMEM >:
[legend]

Public Member Functions

 TPZMatElastoPlastic2D ()
 
 TPZMatElastoPlastic2D (int id, int PlaneStrainOrPlaneStress)
 
 TPZMatElastoPlastic2D (const TPZMatElastoPlastic2D< T, TMEM > &mat)
 
virtual ~TPZMatElastoPlastic2D ()
 
virtual std::string Name () override
 
virtual int Dimension () const override
 
virtual int NStateVariables () const override
 
virtual void Print (std::ostream &out) override
 Prints out the data associated with the material. More...
 
virtual void Print (std::ostream &out, const int memory) override
 
virtual void Solution (TPZMaterialData &data, int var, TPZVec< REAL > &Solout) override
 
virtual void Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< REAL > &ef) override
 
virtual void Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< REAL > &ek, TPZFMatrix< REAL > &ef) override
 
virtual void FillBoundaryConditionDataRequirement (int type, TPZMaterialData &data) override
 
virtual void ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
 
virtual void ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc) override
 
virtual void ComputeDeltaStrainVector (TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain)
 
virtual void ApplyDeltaStrainComputeDep (TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain, TPZFMatrix< REAL > &Stress, TPZFMatrix< REAL > &Dep)
 
virtual void ApplyDeltaStrain (TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain, TPZFMatrix< REAL > &Stress)
 
virtual TPZMaterialNewMaterial () override
 
virtual int ClassId () const override
 
virtual void Write (TPZStream &buf, int withclassid) const override
 
virtual void Read (TPZStream &buf, void *context) override
 
- Public Member Functions inherited from TPZMatElastoPlastic< T, TMEM >
 TPZMatElastoPlastic ()
 
 TPZMatElastoPlastic (int id)
 
 TPZMatElastoPlastic (const TPZMatElastoPlastic &other)
 
virtual ~TPZMatElastoPlastic ()
 
virtual void SetPlasticityModel (T &plasticity)
 
virtual void UpdateMaterialCoeficients (TPZVec< REAL > &x, T &plasticity)
 
virtual void SetBulkDensity (REAL &RhoB)
 
virtual int VariableIndex (const std::string &name) override
 
virtual int NSolutionVariables (int var) override
 
virtual int NFluxes () override
 
virtual void Flux (TPZVec< REAL > &x, TPZVec< REAL > &Sol, TPZFMatrix< REAL > &DSol, TPZFMatrix< REAL > &axes, TPZVec< REAL > &flux) override
 
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
 
virtual int NEvalErrors () override
 
virtual void ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< REAL > &ek, TPZFMatrix< REAL > &ef, TPZBndCond &bc) override
 
virtual void ContributeBC (TPZMaterialData &data, REAL weight, TPZFMatrix< REAL > &ef, TPZBndCond &bc) override
 
void ComputeStrainVector (TPZMaterialData &data, TPZFMatrix< REAL > &Strain)
 
void ComputeDeltaStrainVector (TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain)
 
void ComputeStressVector (TPZMaterialData &data, TPZFMatrix< REAL > &Stress)
 
void CheckConvergence (TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain)
 
void ApplyDeltaStrainComputeDep (TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain, TPZFMatrix< REAL > &Stress, TPZFMatrix< REAL > &Dep)
 
void ApplyDeltaStrain (TPZMaterialData &data, TPZFMatrix< REAL > &DeltaStrain, TPZFMatrix< REAL > &Stress)
 
void ApplyDirection (TPZFMatrix< REAL > &vectorTensor, TPZVec< REAL > &Out)
 
void vectorToTensor (const TPZFMatrix< REAL > &vectorTensor, TPZFMatrix< REAL > &Tensor)
 
void EigenValues (TPZFMatrix< REAL > &vectorTensor, TPZVec< REAL > &ev)
 
void EigenVectors (TPZFMatrix< REAL > &vectorTensor, TPZVec< REAL > &Solout, int direction)
 
virtual void SetTol (const REAL &tol)
 
virtual void SetBulkDensity (const REAL &bulk)
 
virtual void SetPorousElasticity (TPZPorousElasticResponse &PER)
 
void SetPlasticModel (T &plasticity_model)
 
virtual T & GetPlasticModel ()
 
virtual TPZPorousElasticResponseGetPorousElasticity (TPZPorousElasticResponse &PER)
 
virtual void FillDataRequirements (TPZMaterialData &data) override
 
- Public Member Functions inherited from TPZMatWithMem< TMEM >
 TPZMatWithMem ()
 Default constructor. More...
 
 TPZMatWithMem (int id)
 Creates a material object and inserts it in the vector of material pointers of the mesh. More...
 
 TPZMatWithMem (const TPZMatWithMem< TMEM, TPZMaterial > &mat)
 Creates a material object based on the referred object and inserts it in the vector of material pointers of the mesh. More...
 
virtual ~TPZMatWithMem ()
 
virtual void PrintMem (std::ostream &out=std::cout, const int memory=0)
 Prints out the data associated with the material. More...
 
virtual TMEM & MemItem (const int i) const
 
int ClassId () const override
 Unique identifier for serialization purposes. More...
 
void Write (TPZStream &buf, int withclassid) const override
 
void Read (TPZStream &buf, void *context) override
 
std::shared_ptr< TPZAdmChunkVector< TMEM > > & GetMemory ()
 
void SetMemory (std::shared_ptr< TPZAdmChunkVector< TMEM >> &memory)
 
virtual int PushMemItem (int sourceIndex=-1) override
 Pushes a new entry in the context of materials with memory. More...
 
virtual void FreeMemItem (int index) override
 Frees an entry in the material with memory internal history storage. More...
 
void ResetMemItem (int index)
 
void ResetMemory ()
 Reset all memory items. More...
 
virtual void SetDefaultMem (TMEM &defaultMem)
 Sets the default memory settings for initialization. More...
 
virtual TMEM & GetDefaultMemory ()
 Access the default memory settings for initislization. More...
 
virtual void SetUpdateMem (bool update=1)
 Sets/Unsets the internal memory data to be updated in the next assemble/contribute call. More...
 
virtual bool GetUpdateMem ()
 Gets the internal memory data to be updated in the next assemble/contribute call. More...
 
- Public Member Functions inherited from TPZMaterial
 TPZMaterial (int id)
 Creates a material object and inserts it in the vector of material pointers of the mesh. More...
 
 TPZMaterial ()
 Default constructor. More...
 
 TPZMaterial (const TPZMaterial &mat)
 Creates a material object based on the referred object and inserts it in the vector of material pointers of the mesh. More...
 
TPZMaterialoperator= (const TPZMaterial &copy)
 operator = More...
 
virtual ~TPZMaterial ()
 Default destructor. More...
 
virtual void FillDataRequirements (TPZVec< TPZMaterialData > &datavec)
 Fill material data parameter with necessary requirements for the Contribute method. Here, in base class, all requirements are considered as necessary. Each derived class may optimize performance by selecting only the necessary data. More...
 
virtual void FillBoundaryConditionDataRequirement (int type, TPZVec< TPZMaterialData > &datavec)
 This method defines which parameters need to be initialized in order to compute the contribution of the boundary condition. More...
 
virtual void FillDataRequirementsInterface (TPZMaterialData &data)
 This method defines which parameters need to be initialized in order to compute the contribution of interface elements. More...
 
virtual void FillDataRequirementsInterface (TPZMaterialData &data, TPZVec< TPZMaterialData > &datavec_left, TPZVec< TPZMaterialData > &datavec_right)
 This method defines which parameters need to be initialized in order to compute the contribution of interface elements. More...
 
int Id () const
 
void SetId (int id)
 
int NumLoadCases ()
 returns the number of load cases for this material object More...
 
virtual int MinimumNumberofLoadCases ()
 returns the minimum number of load cases for this material More...
 
void SetNumLoadCases (int numloadcases)
 changes the number of load cases for this material More...
 
void SetPostProcessIndex (int index)
 indicates which variable should be post processed More...
 
virtual TPZBndCondCreateBC (TPZMaterial *reference, int id, int typ, TPZFMatrix< STATE > &val1, TPZFMatrix< STATE > &val2)
 Creates an object TPZBndCond derived of TPZMaterial. More...
 
void SetForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp)
 Sets a procedure as source function for the material. More...
 
void SetForcingFunction (void(*fp)(const TPZVec< REAL > &loc, TPZVec< STATE > &result), int porder)
 
void SetForcingFunction (void(*fp)(const TPZVec< REAL > &loc, TPZVec< STATE > &result, TPZFMatrix< STATE > &gradu), int porder)
 
TPZAutoPointer< TPZFunction< STATE > > & ForcingFunction ()
 Returns a procedure as source function for the material. More...
 
void SetForcingFunctionExact (TPZAutoPointer< TPZFunction< STATE > > fp)
 Sets a procedure as exact solution for the problem. More...
 
TPZAutoPointer< TPZFunction< STATE > > & ForcingFunctionExact ()
 Returns a procedure as exact solution for the problem. More...
 
void SetTimeDependentForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp)
 Sets a procedure as time dependent source function for the material. More...
 
TPZAutoPointer< TPZFunction< STATE > > & TimeDependentForcingFunction ()
 Returns a procedure as time dependent source function for the material. More...
 
void SetTimeDependentFunctionExact (TPZAutoPointer< TPZFunction< STATE > > fp)
 Sets a procedure as time dependent exact solution for the problem. More...
 
TPZAutoPointer< TPZFunction< STATE > > & TimedependentFunctionExact ()
 Returns a procedure as time dependent exact solution for the problem. More...
 
void SetBCForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp)
 Sets a procedure as variable boundary condition. More...
 
TPZAutoPointer< TPZFunction< STATE > > & BCForcingFunction ()
 Returns a procedure as variable boundary condition. More...
 
void SetTimedependentBCForcingFunction (TPZAutoPointer< TPZFunction< STATE > > fp)
 Sets a procedure as time variable boundary condition. More...
 
TPZAutoPointer< TPZFunction< STATE > > & TimedependentBCForcingFunction ()
 Returns a procedure as time variable boundary condition. More...
 
virtual int HasForcingFunction ()
 Directive that gives true if the material has a forcing function. More...
 
virtual int HasForcingFunctionExact ()
 Directive that gives true if the material has a function exact. More...
 
virtual int HasBCForcingFunction ()
 Directive that gives true if the material has a bc forcing function exact. More...
 
virtual int HasTimedependentFunctionExact ()
 Directive that gives true if the material has a time dependent function exact. More...
 
virtual int HasTimedependentForcingFunction ()
 Directive that gives true if the material has a time dependent forcing function. More...
 
virtual int HasTimedependentBCForcingFunction ()
 Directive that gives true if the material has a time dependent bc forcing function. More...
 
virtual int IntegrationRuleOrder (int elPMaxOrder) const
 Gets the order of the integration rule necessary to integrate an element with polinomial order p. More...
 
virtual int IntegrationRuleOrder (TPZVec< int > &elPMaxOrder) const
 Gets the order of the integration rule necessary to integrate an element multiphysic. More...
 
virtual void Errors (TPZMaterialData &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &errors)
 
virtual void Errors (TPZVec< TPZMaterialData > &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &errors)
 
virtual void Errors (TPZVec< REAL > &x, TPZVec< STATE > &sol, TPZFMatrix< STATE > &dsol, TPZFMatrix< REAL > &axes, TPZVec< STATE > &flux, TPZVec< STATE > &uexact, TPZFMatrix< STATE > &duexact, TPZVec< REAL > &val)
 Computes the error due to the difference between the interpolated flux
and the flux computed based on the derivative of the solution. More...
 
virtual void ErrorsHdiv (TPZMaterialData &data, TPZVec< STATE > &u_exact, TPZFMatrix< STATE > &du_exact, TPZVec< REAL > &values)
 
virtual void SetData (std::istream &data)
 Reads data of the material from a istream (file data) More...
 
virtual void Clone (std::map< int, TPZMaterial * > &matvec)
 Creates a copy of the material object and put it in the vector which is passed on. More...
 
virtual int FluxType ()
 To return a numerical flux type to apply over the interfaces of the elements. More...
 
virtual void ContributeErrors (TPZMaterialData &data, REAL weight, TPZVec< REAL > &nk, int &errorid)
 
virtual REAL ComputeSquareResidual (TPZVec< REAL > &X, TPZVec< STATE > &sol, TPZFMatrix< STATE > &dsol)
 Computes square of residual of the differential equation at one integration point. More...
 
void SetLinearContext (bool IsLinear)
 Sets fLinearContext attribute. More...
 
bool GetLinearContext () const
 Returns fLinearContext attribute. More...
 
virtual void Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef)=0
 It computes a contribution to the stiffness matrix and load vector at one integration point. More...
 
virtual void Contribute (TPZMaterialData &data, REAL weight, TPZFMatrix< STATE > &ef)
 It computes a contribution to the residual vector at one integration point. More...
 
virtual void Contribute (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef)
 It computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation. More...
 
virtual void Contribute (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ef)
 It computes a contribution to the stiffness matrix and load vector at one integration point to multiphysics simulation. More...
 
virtual void ContributeBC (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ef, TPZBndCond &bc)
 It computes a contribution to the stiffness matrix and load vector at one BC integration point to multiphysics simulation. More...
 
virtual void ContributeBC (TPZVec< TPZMaterialData > &datavec, REAL weight, TPZFMatrix< STATE > &ek, TPZFMatrix< STATE > &ef, TPZBndCond &bc)
 It computes a contribution to the stiffness matrix and load vector at one BC integration point to multiphysics simulation. More...
 
virtual void Solution (TPZMaterialData &data, int var, TPZVec< STATE > &Solout)
 Returns the solution associated with the var index based on the finite element approximation. More...
 
virtual void Solution (TPZVec< TPZMaterialData > &datavec, int var, TPZVec< STATE > &Solout)
 Returns the solution associated with the var index based on the finite element approximation. More...
 
virtual void Solution (TPZMaterialData &data, TPZVec< TPZMaterialData > &dataleftvec, TPZVec< TPZMaterialData > &datarightvec, int var, TPZVec< STATE > &Solout)
 Returns the solution associated with the var index based on the finite element approximation around one interface element. More...
 
virtual void Solution (TPZMaterialData &data, TPZVec< TPZMaterialData > &dataleftvec, TPZVec< TPZMaterialData > &datarightvec, int var, TPZVec< STATE > &Solout, TPZCompEl *left, TPZCompEl *ritgh)
 Returns the solution associated with the var index based on the finite element approximation around one interface element. More...
 
virtual void Flux (TPZVec< REAL > &x, TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, TPZVec< STATE > &flux)
 Computes the value of the flux function to be used by ZZ error estimator. More...
 
- Public Member Functions inherited from TPZSavable
 TPZSavable ()
 
virtual ~TPZSavable ()
 
virtual std::list< std::map< std::string, uint64_t > > VersionHistory () const
 
virtual std::pair< std::string, uint64_t > Version () const
 
virtual bool Compare (TPZSavable *copy, bool override=false)
 Compares the object for identity with the object pointed to, eventually copy the object. More...
 
virtual bool Compare (TPZSavable *copy, bool override=false) const
 Compares the object for identity with the object pointed to, eventually copy the object. More...
 
- Public Member Functions inherited from TPZRegisterClassId
template<typename T >
 TPZRegisterClassId (int(T::*)() const)
 
 TPZRegisterClassId ()=default
 

Protected Attributes

int fPlaneStrain
 
- Protected Attributes inherited from TPZMatElastoPlastic< T, TMEM >
TPZManVector< REAL, 3 > m_force
 
REAL m_rho_bulk
 
TPZManVector< REAL, 3 > m_PostProcessDirection
 
m_plasticity_model
 
REAL m_tol
 
bool m_use_non_linear_elasticity_Q
 
TPZPorousElasticResponse m_PER
 
- Protected Attributes inherited from TPZMatWithMem< TMEM >
std::shared_ptr< TPZAdmChunkVector< TMEM > > fMemory
 Shared pointer to material memory. More...
 
TMEM fDefaultMem
 Default memory settings. More...
 
bool fUpdateMem
 Flag to indicate whether the memory data are to be updated in an assemble loop. More...
 
- Protected Attributes inherited from TPZMaterial
TPZAutoPointer< TPZFunction< STATE > > fForcingFunction
 Pointer to forcing function, it is the right member at differential equation. More...
 
TPZAutoPointer< TPZFunction< STATE > > fForcingFunctionExact
 Pointer to exact solution function, needed to calculate exact error. More...
 
TPZAutoPointer< TPZFunction< STATE > > fTimeDependentForcingFunction
 Pointer to time dependent forcing function, it is the right member at differential equation. More...
 
TPZAutoPointer< TPZFunction< STATE > > fTimedependentFunctionExact
 Pointer to time dependent exact solution function, needed to calculate exact error. More...
 
TPZAutoPointer< TPZFunction< STATE > > fBCForcingFunction
 Pointer to bc forcing function, it is a variable boundary condition at differential equation. More...
 
TPZAutoPointer< TPZFunction< STATE > > fTimedependentBCForcingFunction
 Pointer to time dependent bc forcing function, it is a variable boundary condition at differential equation. More...
 
bool fLinearContext
 Defines whether the equation context is linear solver or non linear. More...
 
int fNumLoadCases
 Defines the number of load cases generated by this material. More...
 
int fPostProcIndex
 indicates which solution should be used for post processing More...
 

Additional Inherited Members

- Public Types inherited from TPZMatElastoPlastic< T, TMEM >
enum  ESolutionVar {
  ENone, EDisplacementDoF, EDisplacement, EStrain,
  EStress, EStrainElastic, EStrainPlastic, EYield,
  EVolHardening, EStrainPValues, EStressPValues, EStrainElasticPValues,
  EStrainPlasticPValues, EStrainI1, EStressI1, EStrainElasticI1,
  EStrainPlasticI1, EStrainJ2, EStressJ2, EStrainElasticJ2,
  EStrainPlasticJ2, EFailureType
}
 
- Static Public Member Functions inherited from TPZSavable
static std::set< TPZRestoreClassBase * > & RestoreClassSet ()
 This static function guarantees that the gMap object is available when needed. More...
 
static std::map< int, TPZRestore_t > & ClassIdMap ()
 This static function guarantees that the gMap object is available when needed. More...
 
static std::pair< std::string, uint64_t > NeoPZVersion ()
 
static void Register (TPZRestoreClassBase *restore)
 
static void RegisterClassId (int classid, TPZRestore_t fun)
 
static TPZSavableCreateInstance (const int &classId)
 
- Static Public Attributes inherited from TPZMaterial
static REAL gBigNumber
 Big number to penalization method, used for Dirichlet conditions. More...
 
- Protected Member Functions inherited from TPZMaterial
virtual void Solution (TPZVec< STATE > &Sol, TPZFMatrix< STATE > &DSol, TPZFMatrix< REAL > &axes, int var, TPZVec< STATE > &Solout)
 

Detailed Description

template<class T, class TMEM = TPZElastoPlasticMem>
class TPZMatElastoPlastic2D< T, TMEM >

Implements an elastoplastic material and uses the memory feature to store the damage variables This material works only together with the Plasticity Library.

Definition at line 21 of file TPZMatElastoPlastic2D.h.

Constructor & Destructor Documentation

◆ TPZMatElastoPlastic2D() [1/3]

template<class T , class TMEM >
TPZMatElastoPlastic2D< T, TMEM >::TPZMatElastoPlastic2D ( )

Default constructor

Definition at line 25 of file TPZMatElastoPlastic2D_impl.h.

References TPZMatElastoPlastic2D< T, TMEM >::fPlaneStrain.

◆ TPZMatElastoPlastic2D() [2/3]

template<class T , class TMEM >
TPZMatElastoPlastic2D< T, TMEM >::TPZMatElastoPlastic2D ( int  id,
int  PlaneStrainOrPlaneStress 
)

Creates a material object and inserts it in the vector of material pointers of the mesh. Upon return vectorindex contains the index of the material object within the vector

Definition at line 31 of file TPZMatElastoPlastic2D_impl.h.

References TPZMatElastoPlastic2D< T, TMEM >::fPlaneStrain.

◆ TPZMatElastoPlastic2D() [3/3]

template<class T , class TMEM >
TPZMatElastoPlastic2D< T, TMEM >::TPZMatElastoPlastic2D ( const TPZMatElastoPlastic2D< T, TMEM > &  mat)

Creates a material object based on the referred object and inserts it in the vector of material pointers of the mesh. Upon return vectorindex contains the index of the material object within the vector

Definition at line 37 of file TPZMatElastoPlastic2D_impl.h.

References LOGPZ_INFO.

◆ ~TPZMatElastoPlastic2D()

template<class T , class TMEM >
TPZMatElastoPlastic2D< T, TMEM >::~TPZMatElastoPlastic2D ( )
virtual

Definition at line 50 of file TPZMatElastoPlastic2D_impl.h.

Member Function Documentation

◆ ApplyDeltaStrain()

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::ApplyDeltaStrain ( TPZMaterialData data,
TPZFMatrix< REAL > &  DeltaStrain,
TPZFMatrix< REAL > &  Stress 
)
virtual

Calls the plasticity template aggregate applyStrainComputeDep method

Parameters
data[in]
DeltaStrain[in]
Stress[out]

Definition at line 56 of file TPZMatElastoPlastic2D_impl.h.

References TPZMatElastoPlastic< T, TMEM >::ApplyDeltaStrain(), DebugStop, TPZMatElastoPlastic2D< T, TMEM >::fPlaneStrain, and TPZMatrix< TVar >::Rows().

Referenced by TPZMatElastoPlastic2D< T, TMEM >::Contribute(), and TPZMatElastoPlastic2D< T, TMEM >::NStateVariables().

◆ ApplyDeltaStrainComputeDep()

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::ApplyDeltaStrainComputeDep ( TPZMaterialData data,
TPZFMatrix< REAL > &  DeltaStrain,
TPZFMatrix< REAL > &  Stress,
TPZFMatrix< REAL > &  Dep 
)
virtual

Calls the plasticity template aggregate applyStrainComputeDep method

Parameters
data[in]
DeltaStrain[in]
Stress[out]
Dep[out]

Definition at line 77 of file TPZMatElastoPlastic2D_impl.h.

References TPZMatElastoPlastic< T, TMEM >::ApplyDeltaStrainComputeDep(), DebugStop, TPZMatElastoPlastic2D< T, TMEM >::fPlaneStrain, and TPZMatrix< TVar >::Rows().

Referenced by TPZMatElastoPlastic2D< T, TMEM >::Contribute(), and TPZMatElastoPlastic2D< T, TMEM >::NStateVariables().

◆ ClassId()

template<class T , class TMEM >
int TPZMatElastoPlastic2D< T, TMEM >::ClassId ( ) const
overridevirtual

◆ ComputeDeltaStrainVector()

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::ComputeDeltaStrainVector ( TPZMaterialData data,
TPZFMatrix< REAL > &  DeltaStrain 
)
virtual

Evaluates the Strain vector based on an available DSol (solution derivatives set) vector.

Parameters
DeltaStrain[out]
data[in]

Definition at line 668 of file TPZMatElastoPlastic2D_impl.h.

References _XX_, _XY_, _XZ_, _YY_, _YZ_, _ZZ_, TPZMaterialData::axes, DebugStop, TPZMaterialData::dsol, TPZMatrix< TVar >::Multiply(), and TPZMatrix< TVar >::Rows().

Referenced by TPZMatElastoPlastic2D< T, TMEM >::Contribute(), and TPZMatElastoPlastic2D< T, TMEM >::NStateVariables().

◆ Contribute() [1/2]

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::Contribute ( TPZMaterialData data,
REAL  weight,
TPZFMatrix< REAL > &  ef 
)
overridevirtual

◆ Contribute() [2/2]

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::Contribute ( TPZMaterialData data,
REAL  weight,
TPZFMatrix< REAL > &  ek,
TPZFMatrix< REAL > &  ef 
)
overridevirtual

◆ ContributeBC() [1/2]

template<class T, class TMEM = TPZElastoPlasticMem>
virtual void TPZMatElastoPlastic2D< T, TMEM >::ContributeBC ( TPZMaterialData data,
REAL  weight,
TPZFMatrix< STATE > &  ek,
TPZFMatrix< STATE > &  ef,
TPZBndCond bc 
)
overridevirtual

It computes a contribution to the stiffness matrix and load vector at one BC integration point.

Parameters
data[in] stores all input data
weight[in] is the weight of the integration rule
ek[out] is the stiffness matrix
ef[out] is the load vector
bc[in] is the boundary condition material

Implements TPZMaterial.

Referenced by TPZMatElastoPlastic2D< T, TMEM >::FillBoundaryConditionDataRequirement(), and TPZMatElastoPlastic2D< T, TMEM >::NStateVariables().

◆ ContributeBC() [2/2]

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::ContributeBC ( TPZMaterialData data,
REAL  weight,
TPZFMatrix< STATE > &  ef,
TPZBndCond bc 
)
overridevirtual

It computes a contribution to the stiffness matrix and load vector at one BC integration point.

Parameters
data[in] stores all input data
weight[in] is the weight of the integration rule
ek[out] is the stiffness matrix
ef[out] is the load vector
bc[in] is the boundary condition material

Accepting solution on bc data.

Neumann condition for each state variable Elasticity Equation

Normal Tension Components on neumman boundary

Reimplemented from TPZMaterial.

Definition at line 506 of file TPZMatElastoPlastic2D_impl.h.

References bc, DebugStop, TPZMaterial::gBigNumber, idf, TPZMaterialData::intGlobPtIndex, LOGPZ_ERROR, TPZBndCondWithMem< TMEM >::MemItem(), TPZMaterialData::normal, TPZMatElastoPlastic2D< T, TMEM >::NStateVariables(), TPZMaterialData::phi, PZError, test::res, TPZMatrix< TVar >::Rows(), TPZMaterialData::sol, TPZBndCond::Type(), TPZBndCond::Val1(), and TPZBndCond::Val2().

◆ Dimension()

template<class T, class TMEM = TPZElastoPlasticMem>
virtual int TPZMatElastoPlastic2D< T, TMEM >::Dimension ( ) const
inlineoverridevirtual

returns the integrable dimension of the material

Reimplemented from TPZMatElastoPlastic< T, TMEM >.

Definition at line 51 of file TPZMatElastoPlastic2D.h.

◆ FillBoundaryConditionDataRequirement()

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::FillBoundaryConditionDataRequirement ( int  type,
TPZMaterialData data 
)
overridevirtual

◆ Name()

template<class T , class TMEM >
std::string TPZMatElastoPlastic2D< T, TMEM >::Name ( )
overridevirtual

returns the name of the material

Reimplemented from TPZMatElastoPlastic< T, TMEM >.

Definition at line 696 of file TPZMatElastoPlastic2D_impl.h.

◆ NewMaterial()

template<class T , class TMEM >
TPZMaterial * TPZMatElastoPlastic2D< T, TMEM >::NewMaterial ( )
overridevirtual

To create another material of the same type

Reimplemented from TPZMatElastoPlastic< T, TMEM >.

Definition at line 686 of file TPZMatElastoPlastic2D_impl.h.

Referenced by TPZMatElastoPlastic2D< T, TMEM >::NStateVariables().

◆ NStateVariables()

template<class T, class TMEM = TPZElastoPlasticMem>
virtual int TPZMatElastoPlastic2D< T, TMEM >::NStateVariables ( ) const
inlineoverridevirtual

◆ Print() [1/2]

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::Print ( std::ostream &  out)
overridevirtual

Prints out the data associated with the material.

Reimplemented from TPZMatElastoPlastic< T, TMEM >.

Definition at line 728 of file TPZMatElastoPlastic2D_impl.h.

References TPZMatElastoPlastic2D< T, TMEM >::fPlaneStrain, and TPZMatElastoPlastic< T, TMEM >::Print().

Referenced by TPZMatElastoPlastic2D< T, TMEM >::NStateVariables().

◆ Print() [2/2]

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::Print ( std::ostream &  out,
const int  memory 
)
overridevirtual

print out the data associated with the material

Reimplemented from TPZMatElastoPlastic< T, TMEM >.

Definition at line 721 of file TPZMatElastoPlastic2D_impl.h.

References TPZMatElastoPlastic< T, TMEM >::Print().

◆ Read()

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::Read ( TPZStream buf,
void *  context 
)
overridevirtual

◆ Solution()

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::Solution ( TPZMaterialData data,
int  var,
TPZVec< REAL > &  Solout 
)
overridevirtual

returns the solution associated with the var index based on the finite element approximation

Reimplemented from TPZMatElastoPlastic< T, TMEM >.

Definition at line 652 of file TPZMatElastoPlastic2D_impl.h.

References TPZMaterialData::dsol, TPZManVector< T, NumExtAlloc >::Resize(), TPZMaterialData::sol, and TPZMatElastoPlastic< T, TMEM >::Solution().

Referenced by TPZMatElastoPlastic2D< T, TMEM >::NStateVariables().

◆ Write()

template<class T , class TMEM >
void TPZMatElastoPlastic2D< T, TMEM >::Write ( TPZStream buf,
int  withclassid 
) const
overridevirtual

Member Data Documentation

◆ fPlaneStrain

template<class T, class TMEM = TPZElastoPlasticMem>
int TPZMatElastoPlastic2D< T, TMEM >::fPlaneStrain
protected

The documentation for this class was generated from the following files: