NeoPZ
TPZWillamWarnke.h
Go to the documentation of this file.
1 /*
2  * TPZWillamWarnke.h
3  * ElastoPlasticModels
4  *
5  * Created by Diogo Cecilio on 12/14/10.
6  * Copyright 2010 __MyCompanyName__. All rights reserved.
7  *
8  */
9 
10 
11 /* Generated by Together */// $Id: TPZDruckerPrager.h,v 1.24 2009-09-24 04:19:52 Diogo Exp $
12 
13 #ifndef TZPWILLAMWARNKE_H
14 #define TZPWILLAMWARNKE_H
15 
16 #include "pzlog.h"
17 #include "TPZPlasticStep.h"
18 #include "TPZYCWillamWarnke.h"
19 #include "TPZThermoForceA.h"
20 #include "TPZElasticResponse.h"
21 #include "pzvec_extras.h"
22 #include "TPZPlasticStepID.h"
23 
24 
25 #define WILLAMWARNKEPARENT TPZPlasticStep<TPZYCWillamWarnke, TPZThermoForceA, TPZElasticResponse>
26 
27 
29 
30 public:
31 
33 
34 public:
35 
37  {
38  fMaterialTensionSign = 1; // internally in this material tension is negative
39  fInterfaceTensionSign = 1; // by default
40  }
41 
43  {
44  faPa = source.faPa;
45  fInitialEps = source.fInitialEps;
46  }
47 
49  {
50  WILLAMWARNKEPARENT::operator=(source);
51  faPa = source.faPa;
52  fInitialEps = source.fInitialEps;
53 
54  return *this;
55  }
56 
57  virtual const char * Name() const override
58  {
59  return "TPZWillamWarnke";
60  }
61 
73  // void SetUp()
74  // {
75  //
76  // REAL pi = 3.141592653589793;
77  // DRUCKERPARENT::fYC.SetUp(/*phi=20*/ 20./180. * pi ,/*innerMCFit*/0);
78  // DRUCKERPARENT::fTFA.SetUp(/*yield- coesao inicial correspondeno a fck igual 32 Mpa */ 9.2376, /*k Modulo de hardening da coesao equivante 1 Mpa a cada 0.1% de deformacao */1000.);
79  // DRUCKERPARENT::fER.SetUp(/*young*/ 20000., /*poisson*/ 0.2);
80  // TPZTensor<REAL> nullSigma,epsA;
81  // fInitialEps = DRUCKERPARENT::GetState();
82  //
83  // }
84 
85  virtual void Print(std::ostream & out) const override
86  {
87  out << "\n" << this->Name();
88  out << "\n Base Class Data:\n";
89  WILLAMWARNKEPARENT::Print(out);
90  out << "\nTPZDruckerPrager internal members:";
91  out << "\n a*Pa = " << faPa;
92  out << "\n InitialEps = " << fInitialEps;
93 
94  }
95 
96  public:
97  int ClassId() const override;
98 
99  void Write(TPZStream &buf, int withclassid) const override{
100  buf. Write(&faPa, 1);
101  fInitialEps.Write(buf, withclassid);
102  }
103 
104  void Read(TPZStream& buf, void* context) override {
105  buf. Read(&faPa, 1);
106  fInitialEps.Read(buf, context);
107  }
108 
109  virtual int GetNYield() const {
110  return as_integer(NYield);
111  }
112 
113 private:
114 
115 
116 
117  REAL faPa;
118 
119 
121 
122 
123 };
124 
125 
126 #endif //TPZDruckerPrager_H
void Read(TPZStream &buf, void *context) override
void Write(TPZStream &buf, int withclassid) const override
Writes this object to the TPZStream buffer. Include the classid if withclassid = true.
Contains definitions to LOGPZ_DEBUG, LOGPZ_INFO, LOGPZ_WARN, LOGPZ_ERROR and LOGPZ_FATAL, and the implementation of the inline InitializePZLOG(string) function using log4cxx library or not. It must to be called out of "#ifdef LOG4CXX" scope.
virtual void Print(std::ostream &out) const override
std::underlying_type< Enumeration >::type as_integer(const Enumeration value)
Definition: pzreal.h:37
TPZWillamWarnke & operator=(const TPZWillamWarnke &source)
virtual const char * Name() const override
TPZPlasticState< STATE > fInitialEps
int ClassId() const override
void Read(TPZStream &buf, void *context) override
read objects from the stream
void Write(TPZStream &buf, int withclassid) const override
#define WILLAMWARNKEPARENT
Defines the interface for saving and reading data. Persistency.
Definition: TPZStream.h:50
Extra utilities for TPZVec. Implementations of the saxpy, sscal, sdot, intercept, max and min functio...
virtual int GetNYield() const
TPZWillamWarnke(const TPZWillamWarnke &source)