VM_PS.hGo to the documentation of this file.00001 00002 //################################################################################ 00003 //# COPYRIGHT (C): :-)) # 00004 //# PROJECT: Object Oriented Finite Element Program # 00005 //# PURPOSE: Von Mises potential criterion # 00006 //# CLASS: VMpotentialSurface # 00007 //# # 00008 //# VERSION: # 00009 //# LANGUAGE: C++.ver >= 2.0 ( Borland C++ ver=3.00, SUN C++ ver=2.1 ) # 00010 //# TARGET OS: DOS || UNIX || . . . # 00011 //# PROGRAMMER(S): Boris Jeremic, Zhaohui Yang # 00012 //# # 00013 //# # 00014 //# DATE: August 03 '93 # 00015 //# UPDATE HISTORY: September 01 '00 # 00016 //# # 00017 //# # 00018 //# # 00019 //# # 00020 //# SHORT EXPLANATION: Von Mises potential surface # 00021 //# # 00022 //# # 00023 //################################################################################ 00024 //*/ 00025 00026 #ifndef VM_PS_H 00027 #define VM_PS_H 00028 00029 #include <stresst.h> 00030 #include <BJtensor.h> 00031 00032 #include "EPState.h" 00033 #include "PS.h" 00034 00035 00036 class VMPotentialSurface : public PotentialSurface 00037 { 00038 // Private vars to define the Von Mises Potential Surface 00039 private: 00040 00041 public: 00042 PotentialSurface *newObj(); //create a colne of itself 00043 VMPotentialSurface ( ) {} // Default constructor 00044 //VMPotentialSurface (const VMPotentialSurface & ); // copy constructor 00045 00046 tensor dQods(const EPState *EPS) const; 00047 tensor d2Qods2(const EPState *EPS) const; 00048 00049 tensor d2Qodsdt1(const EPState *EPS) const; // For Consistent Algorithm, Z Cheng, Jan 2004 00050 00051 void print() { opserr << *this; }; 00052 00053 //================================================================================ 00054 // Overloaded Insertion Operator 00055 // prints an VM PotentialSurface's contents 00056 //================================================================================ 00057 friend OPS_Stream& operator<< (OPS_Stream& os, const VMPotentialSurface & YS); 00058 00059 }; 00060 00061 #endif 00062 |