46 #ifndef J2Plasticity_h    47 #define J2Plasticity_h    76 #include "utility/matrix/Vector.h"    77 #include "utility/matrix/Matrix.h"    78 #include "material/nD/NDMaterial.h"   117     static constexpr 
int tDim= 3; 
   120     static double IIdev[tDim][tDim][tDim][tDim]; 
   121     static double IbunI[tDim][tDim][tDim][tDim]; 
   127     static constexpr 
double one3= (1/3);
   128     static constexpr 
double two3= (2/3);
   129     static constexpr 
double four3= (4/3);
   130     static const double root23;
   137     double q( 
double xi );
   138     double qprime( 
double xi );
   141     virtual void index_map( 
int matrix_index, 
int &i, 
int &j ) 
const;
   156                      double viscosity = 0 );
   159     J2Plasticity( 
int tag, 
int classTag, 
double K, 
double G );
   163     void setup(
const double &K= 0.0, 
const double &G= 0.0, 
const double &yield0= 0.0, 
const double &yield_infty= 0.0, 
const double &d= 0.0, 
const double &H= 0.0, 
const double &viscosity= 0.0);
   176     void Print(std::ostream &s, 
int flag = 0) 
const;
   179     virtual const std::string &getType(
void) 
const;
   180     virtual int getOrder(
void) 
const;
 virtual int commitState(void)
Commit material state. 
Definition: J2Plasticity.cpp:544
virtual int revertToStart(void)
Revert to start. 
Definition: J2Plasticity.cpp:556
double sigma_0
initial yield stress 
Definition: J2Plasticity.h:103
Base class for J2 isotropic hardening materials.The von Mises theory is often called “J2 plasticityâ€...
Definition: J2Plasticity.h:97
virtual int recvSelf(const Communicator &)
Receives object through the communicator argument. 
Definition: J2Plasticity.cpp:616
Communication parameters between processes. 
Definition: Communicator.h:66
Matrix epsilon_p_nplus1
plastic strain time n+1 
Definition: J2Plasticity.h:111
void doInitialTangent(void) const
Set up for initial elastic. 
Definition: J2Plasticity.cpp:429
double delta
exponential hardening parameter 
Definition: J2Plasticity.h:105
Matrix strain
strain tensor 
Definition: J2Plasticity.h:124
J2Plasticity()
Default constructor. 
Definition: J2Plasticity.cpp:171
virtual int sendSelf(Communicator &)
Sends object through the communicator argument. 
Definition: J2Plasticity.cpp:601
void zero()
Zero internal variables. 
Definition: J2Plasticity.cpp:92
double Hard
linear hardening parameter 
Definition: J2Plasticity.h:106
Matrix epsilon_p_n
plastic strain time n 
Definition: J2Plasticity.h:110
double q(double xi)
Hardening function. 
Definition: J2Plasticity.cpp:457
double xi_nplus1
xi time n+1 
Definition: J2Plasticity.h:113
double qprime(double xi)
Hardening function derivative. 
Definition: J2Plasticity.cpp:465
static double initialTangent[tDim][tDim][tDim][tDim]
material tangent 
Definition: J2Plasticity.h:119
double bulk
bulk modulus: ratio between pressure increase and the resulting decrease in a material's volume...
Definition: J2Plasticity.h:101
double eta
viscosity 
Definition: J2Plasticity.h:107
virtual NDMaterial * getCopy(void) const
Virtual constructor. 
Definition: J2Plasticity.cpp:518
Base class for 2D and 3D materials. 
Definition: NDMaterial.h:101
int sendData(Communicator &)
Send object members through the communicator argument. 
Definition: J2Plasticity.cpp:564
int recvData(const Communicator &)
Receives object members through the communicator argument. 
Definition: J2Plasticity.cpp:582
Matrix stress
stress tensor 
Definition: J2Plasticity.h:116
Open source finite element program for structural analysis. 
Definition: ContinuaReprComponent.h:35
double tangent[tDim][tDim][tDim][tDim]
tensor dimension 
Definition: J2Plasticity.h:118
virtual int revertToLastCommit(void)
Revert to the last committed state. 
Definition: J2Plasticity.cpp:552
double xi_n
xi time n 
Definition: J2Plasticity.h:112
Matrix of floats. 
Definition: Matrix.h:111
static double IIdev[tDim][tDim][tDim][tDim]
rank 4 deviatoric 
Definition: J2Plasticity.h:120
static double IbunI[tDim][tDim][tDim][tDim]
rank 4 I bun I 
Definition: J2Plasticity.h:121
double shear
shear modulus 
Definition: J2Plasticity.h:102
void Print(std::ostream &s, int flag=0) const
Print stuff. 
Definition: J2Plasticity.cpp:238
double sigma_infty
final saturation yield stress (often comparable to the ultimate tensile strength). 
Definition: J2Plasticity.h:104
void plastic_integrator()
Plasticity integration routine. 
Definition: J2Plasticity.cpp:257
void setup(const double &K=0.0, const double &G=0.0, const double &yield0=0.0, const double &yield_infty=0.0, const double &d=0.0, const double &H=0.0, const double &viscosity=0.0)
Setup internal variables. 
Definition: J2Plasticity.cpp:106