NeoPZ
|
This class implements a tresca yield criteria whrere the gradient of the inverse angle is regularized. More...
#include <tpzyctrescaregularized.h>
Public Member Functions | |
int | ClassId () const override |
Define the class id associated with the class. More... | |
const char * | Name () const |
void | Print (std::ostream &out) const override |
template<class T > | |
void | Compute (const TPZTensor< T > &sigma, const T &A, TPZVec< T > &result, int checkForcedYield=0) const |
Calculo do criterio de plastificacao. More... | |
template<class T > | |
void | N (const TPZTensor< T > &sigma, const T &A, TPZVec< TPZTensor< T > > &Ndir, int checkForcedYield=0) const |
Derivada da funcao de plastificacao. More... | |
void | Read (TPZStream &buf, void *context) override |
read objects from the stream More... | |
void | Write (TPZStream &buf, int withclassid) const override |
Writes this object to the TPZStream buffer. Include the classid if withclassid = true. More... | |
int | NumCases () |
Number of types of residuals. More... | |
void | LoadState (TPZFMatrix< REAL > &state) |
LoadState will keep a given state as static variable of the class. More... | |
void | ComputeTangent (TPZFMatrix< REAL > &tangent, TPZVec< REAL > &, int icase) |
void | Residual (TPZFMatrix< REAL > &res, int icase) |
virtual int | GetNYield () const override |
Public Member Functions inherited from TPZYCTresca | |
const char * | Name () const |
int | GetForceYield () |
void | SetForceYield (const int forceYield) |
void | SetYieldStatusMode (const TPZTensor< REAL > &sigma, const REAL &A) |
template<class T > | |
void | Compute (const TPZTensor< T > &sigma, const T &A, TPZVec< T > &result, int checkForcedYield=0) const |
template<class T > | |
void | N (const TPZTensor< T > &sigma, const T &A, TPZVec< TPZTensor< T > > &Ndir, int checkForcedYield=0) const |
template<class T > | |
void | H (const TPZTensor< T > &sigma, const T &A, TPZVec< T > &h, int checkForcedYield=0) const |
template<class T > | |
void | AlphaMultiplier (const T &A, T &multiplier) const |
void | YieldFunction (const TPZVec< STATE > &sigma, STATE kprev, TPZVec< STATE > &yield) const override |
int | NumCases () |
number of types of residuals More... | |
void | LoadState (TPZFMatrix< REAL > &state) |
LoadState will keep a given state as static variable of the class. More... | |
void | ComputeTangent (TPZFMatrix< REAL > &tangent, TPZVec< REAL > &coefs, int icase) |
void | Residual (TPZFMatrix< REAL > &res, int icase) |
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 | |
Static Public Attributes | |
static TPZTensor< REAL > | gRefTension |
Static Public Attributes inherited from TPZYCTresca | |
static TPZTensor< REAL > | gRefTension |
Protected Member Functions | |
template<class T > | |
void | GradTheta (const TPZTensor< T > &sigma, T &theta, TPZTensor< T > &gradasin) const |
Compute the inverse angle of the tresca yield criterium formula and the related data. More... | |
Protected Member Functions inherited from TPZYCTresca | |
template<class T > | |
void | GradTheta (const TPZTensor< T > &sigma, T &theta, TPZTensor< T > &gradtheta) const |
Compute the inverse angle of the tresca yield criterium formula and the related data. More... | |
template<class T > | |
T | InverseAngle (const TPZTensor< T > &deviatoric) const |
Computes the inverse angle of the tresca yield criterium formula. More... | |
template<class T > | |
void | GradInverseAngle (const TPZTensor< T > &sigma, TPZTensor< T > &grad) const |
Computes the derivative of the inverse angle of the tresca yield criterium formula. More... | |
Additional Inherited Members | |
Public Types inherited from TPZYCTresca | |
enum | { NYield } |
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 TPZSavable * | CreateInstance (const int &classId) |
This class implements a tresca yield criteria whrere the gradient of the inverse angle is regularized.
Definition at line 17 of file tpzyctrescaregularized.h.
|
overridevirtual |
Define the class id associated with the class.
This id has to be unique for all classes A non unique id is flagged at the startup of the program
Reimplemented from TPZYCTresca.
Definition at line 4 of file TPZYCTrescaRegularized.cpp.
References TPZYCTresca::ClassId(), and Hash().
void TPZYCTrescaRegularized::Compute | ( | const TPZTensor< T > & | sigma, |
const T & | A, | ||
TPZVec< T > & | result, | ||
int | checkForcedYield = 0 |
||
) | const |
Calculo do criterio de plastificacao.
[in] | sigma | tensao atual |
[in] | A | forca thermodinamica atual |
[out] | result | Derivative |
[in] | checkForcedYield | indicates wether to force post-peak failure behavior |
Definition at line 142 of file tpzyctrescaregularized.h.
References asin, TPZYCTresca::Compute(), cos(), fabs, TPZYCTresca::InverseAngle(), TPZTensor< T >::J2(), LOGPZ_DEBUG, TPZTensor< T >::S(), sqrt, pzgeom::tol, and TPZExtractVal::val().
Referenced by TPZYCVonMisesCombTresca::Compute(), Print(), and Residual().
|
inline |
Definition at line 92 of file tpzyctrescaregularized.h.
References TPZTensor< T >::fData, GradTheta(), N(), and TPZFMatrix< TVar >::Redim().
|
inlineoverridevirtual |
Reimplemented from TPZYCTresca.
Definition at line 134 of file tpzyctrescaregularized.h.
References as_integer(), and TPZYCTresca::NYield.
|
protected |
Compute the inverse angle of the tresca yield criterium formula and the related data.
[in] | sigma | stress tensor |
[out] | theta | one third of the asin of the inverse angle |
[out] | gradasin | gradient of the inverse angle |
Definition at line 185 of file tpzyctrescaregularized.h.
References asin, fabs, TPZYCTresca::GradInverseAngle(), TPZYCTresca::GradTheta(), TPZYCTresca::InverseAngle(), LOGPZ_DEBUG, TPZTensor< T >::Multiply(), sqrt, pzgeom::tol, and TPZExtractVal::val().
Referenced by ComputeTangent(), Print(), and Residual().
|
inline |
LoadState will keep a given state as static variable of the class.
Definition at line 86 of file tpzyctrescaregularized.h.
References TPZTensor< T >::fData.
void TPZYCTrescaRegularized::N | ( | const TPZTensor< T > & | sigma, |
const T & | A, | ||
TPZVec< TPZTensor< T > > & | Ndir, | ||
int | checkForcedYield = 0 |
||
) | const |
Derivada da funcao de plastificacao.
[in] | sigma | tensao atual |
[in] | A | forca termodinamica atual |
[out] | Ndir | Derivada com respeito a tensao |
[in] | checkForcedYield | indicates wether to force post-peak failure behavior |
Definition at line 256 of file tpzyctrescaregularized.h.
References cos(), TPZTensor< T >::dJ2(), TPZTensor< T >::Multiply(), sin, and sqrt.
Referenced by ComputeTangent(), TPZYCVonMisesCombTresca::N(), and Print().
|
inline |
Definition at line 25 of file tpzyctrescaregularized.h.
Referenced by Print().
|
inline |
Number of types of residuals.
Definition at line 79 of file tpzyctrescaregularized.h.
|
inlineoverridevirtual |
Reimplemented from TPZYCTresca.
Definition at line 30 of file tpzyctrescaregularized.h.
References Compute(), GradTheta(), N(), and Name().
Referenced by TPZYCVonMisesCombTresca::Print().
|
inlineoverridevirtual |
read objects from the stream
Reimplemented from TPZYCTresca.
Definition at line 67 of file tpzyctrescaregularized.h.
Referenced by TPZYCVonMisesCombTresca::Read().
|
inline |
Definition at line 113 of file tpzyctrescaregularized.h.
References Compute(), GradTheta(), TPZFMatrix< TVar >::Redim(), and test::res.
|
inlineoverridevirtual |
Writes this object to the TPZStream buffer. Include the classid if withclassid = true.
Writes this object to the TPZStream buffer. Include the classid if withclassid = true
Reimplemented from TPZYCTresca.
Definition at line 70 of file tpzyctrescaregularized.h.
Referenced by TPZYCVonMisesCombTresca::Write().
|
static |
Definition at line 84 of file tpzyctrescaregularized.h.