NeoPZ
|
#include <TPZLadeNelsonElasticResponse.h>
Public Member Functions | |
int | ClassId () const override |
Define the class id associated with the class. More... | |
TPZLadeNelsonElasticResponse () | |
TPZLadeNelsonElasticResponse (const TPZLadeNelsonElasticResponse &source) | |
TPZLadeNelsonElasticResponse & | operator= (const TPZLadeNelsonElasticResponse &source) |
void | Write (TPZStream &buf, int withclassid) const override |
Writes this object to the TPZStream buffer. Include the classid if withclassid = true. More... | |
void | Read (TPZStream &buf, void *context) override |
read objects from the stream More... | |
const char * | Name () const |
void | Print (std::ostream &out) const |
void | SetUp (REAL Lambda, REAL M, REAL poisson, REAL pa) |
template<class T > | |
void | ComputeStress (const TPZTensor< T > &epsilon_T, TPZTensor< T > &sigma_T) const |
void | ComputeStress (const TPZTensor< REAL > &epsilon, TPZTensor< REAL > &sigma) const |
int | NumCases () |
void | LoadState (TPZFMatrix< REAL > &state) |
void | ComputeTangent (TPZFMatrix< REAL > &tangent, TPZVec< REAL > &, 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 Member Functions | |
static void | CheckConv () |
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) |
Public Attributes | |
REAL | fLambda |
REAL | fM |
REAL | fPoisson |
REAL | fPa |
Static Public Attributes | |
static TPZTensor< REAL > | gRefDeform |
Protected Member Functions | |
template<class T > | |
void | SolveSigma (const TPZTensor< T > &epsilon_T, TPZTensor< T > &sigma_T) const |
template<class T , class TBASE > | |
void | ComputeYoung (const TPZTensor< T > &sigma, T &Young) const |
template<class T , class TBASE > | |
void | ApplyElasticTensor (const T &Young, const TPZTensor< T > &Epsilon, TPZTensor< T > &sigma) const |
template<class T , class VECTOR , class MATRIX > | |
void | ExtractTangent (const TPZTensor< T > &Res_T, VECTOR &ResVal, REAL &resnorm, MATRIX &tangent) const |
Calcula a tensao em funcao de deformacao (elastica)
Definition at line 34 of file TPZLadeNelsonElasticResponse.h.
|
inline |
Definition at line 40 of file TPZLadeNelsonElasticResponse.h.
|
inline |
|
inlineprotected |
Definition at line 424 of file TPZLadeNelsonElasticResponse.h.
References TPZTensor< T >::Add(), ExtractTangent(), TPZTensor< T >::I1(), TPZTensor< T >::Identity_T(), and TPZTensor< T >::Multiply().
Referenced by ComputeYoung().
|
inlinestatic |
Definition at line 257 of file TPZLadeNelsonElasticResponse.h.
References _XX_, _XY_, _XZ_, _YY_, _YZ_, _ZZ_, CheckConvergence(), SetUp(), and SolveSigma().
|
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
Implements TPZSavable.
Definition at line 4 of file TPZLadeNelsonElasticResponse.cpp.
References Hash().
|
inline |
Computes the stress tensor based on the strain tensor
epsilon_T | [in] strain tensor |
sigma_T | [in/out] stress tensor. It is used as the initial guess and also as output parameter |
Definition at line 366 of file TPZLadeNelsonElasticResponse.h.
References ComputeYoung(), and TPZTensor< T >::CopyTo().
Referenced by ComputeStress(), and SolveSigma().
|
inline |
Computes the stress tensor based on the strain tensor. REAL type specialization
epsilon | [in] strain tensor |
sigma | [in/out] stress tensor. It is used as the initial guess and also as output parameter |
Definition at line 352 of file TPZLadeNelsonElasticResponse.h.
References ComputeStress().
|
inline |
Definition at line 176 of file TPZLadeNelsonElasticResponse.h.
References TPZTensor< T >::CopyTo(), LOGPZ_DEBUG, TPZTensor< T >::Multiply(), and TPZFMatrix< TVar >::Redim().
|
inlineprotected |
Definition at line 384 of file TPZLadeNelsonElasticResponse.h.
References ApplyElasticTensor(), exp, fabs, TPZTensor< T >::I1(), TPZTensor< T >::J2(), log, LOGPZ_INFO, and TPZExtractVal::val().
Referenced by ComputeStress().
|
inlineprotected |
Definition at line 438 of file TPZLadeNelsonElasticResponse.h.
References TPZTensor< T >::fData, pow(), sqrt, and TPZExtractVal::val().
Referenced by ApplyElasticTensor().
|
inline |
LoadState will keep a given state as static variable of the class
Definition at line 162 of file TPZLadeNelsonElasticResponse.h.
References LOGPZ_DEBUG.
|
inline |
Definition at line 74 of file TPZLadeNelsonElasticResponse.h.
|
inline |
number of types of residuals
Definition at line 153 of file TPZLadeNelsonElasticResponse.h.
|
inline |
|
inline |
Definition at line 79 of file TPZLadeNelsonElasticResponse.h.
|
inlineoverridevirtual |
read objects from the stream
Reimplemented from TPZSavable.
Definition at line 67 of file TPZLadeNelsonElasticResponse.h.
References TPZStream::Read().
|
inline |
Definition at line 221 of file TPZLadeNelsonElasticResponse.h.
References TPZTensor< T >::CopyTo(), LOGPZ_DEBUG, TPZTensor< T >::Multiply(), TPZFMatrix< TVar >::Redim(), and test::res.
|
inline |
Construtor da classe em funcao das variaveis de lame
[in] | Lambda | Exponent in the Lade/Nelson elasticity law |
[in] | M | Multiplier constant in the Lade/Nelson elasticity law |
[in] | poisson | Poisson's coeficient |
[in] | pa | atmospheric pressure |
Definition at line 96 of file TPZLadeNelsonElasticResponse.h.
Referenced by CheckConv().
|
inlineprotected |
Computes the stress tensor based on the strain tensor Uses a Newton's method because the YoungModulus is explicit on sigma and not epsilon
epsilon_T | [in] strain tensor |
sigma_T | [in/out] stress tensor. It is used as the initial guess and also as output parameter |
Definition at line 290 of file TPZLadeNelsonElasticResponse.h.
References ComputeStress(), TPZDiffMatrix< T >::Decompose_LU(), TPZTensor< T >::fData, pow(), sqrt, substruct_tst14.test::status, and TPZExtractVal::val().
Referenced by CheckConv().
|
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 TPZSavable.
Definition at line 60 of file TPZLadeNelsonElasticResponse.h.
References TPZStream::Write().
REAL TPZLadeNelsonElasticResponse::fLambda |
Definition at line 142 of file TPZLadeNelsonElasticResponse.h.
Referenced by operator=(), and TPZLadeNelsonElasticResponse().
REAL TPZLadeNelsonElasticResponse::fM |
Definition at line 143 of file TPZLadeNelsonElasticResponse.h.
Referenced by operator=(), and TPZLadeNelsonElasticResponse().
REAL TPZLadeNelsonElasticResponse::fPa |
Definition at line 145 of file TPZLadeNelsonElasticResponse.h.
Referenced by operator=(), and TPZLadeNelsonElasticResponse().
REAL TPZLadeNelsonElasticResponse::fPoisson |
Definition at line 144 of file TPZLadeNelsonElasticResponse.h.
Referenced by operator=(), and TPZLadeNelsonElasticResponse().
|
static |
Definition at line 158 of file TPZLadeNelsonElasticResponse.h.