FDEPState.hGo to the documentation of this file.00001 //=============================================================================== 00002 //# COPYRIGHT (C): Woody's license (by BJ): 00003 // ``This source code is Copyrighted in 00004 // U.S., for an indefinite period, and anybody 00005 // caught using it without our permission, will be 00006 // mighty good friends of ourn, cause we don't give 00007 // a darn. Hack it. Compile it. Debug it. Run it. 00008 // Yodel it. Enjoy it. We wrote it, that's all we 00009 // wanted to do.'' 00010 // 00011 //# PROJECT: Object Oriented Finite Element Program 00012 //# PURPOSE: Finite Deformation Hyper-Elastic classes 00013 //# CLASS: 00014 //# 00015 //# VERSION: 0.6_(1803398874989) (golden section) 00016 //# LANGUAGE: C++ 00017 //# TARGET OS: all... 00018 //# DESIGN: Zhao Cheng, Boris Jeremic (jeremic@ucdavis.edu) 00019 //# PROGRAMMER(S): Zhao Cheng, Boris Jeremic 00020 //# 00021 //# 00022 //# DATE: July 2004 00023 //# UPDATE HISTORY: 00024 //# 00025 //=============================================================================== 00026 #ifndef FDEPState_H 00027 #define FDEPState_H 00028 00029 #include <Tensor.h> 00030 #include <stresst.h> 00031 #include <straint.h> 00032 00033 class FDEPState { 00034 public: 00035 FDEPState(); 00036 FDEPState ( const straintensor& xFpInVar, 00037 double xStressLikeInVar, 00038 double xStrainLikeInVar, 00039 const stresstensor& xStressLikeKiVar, 00040 const straintensor& xStrainLikeKiVar, 00041 const straintensor& xCommitedFpInVar, 00042 double xCommitedStressLikeInVar, 00043 double xCommitedStrainLikeInVar, 00044 const stresstensor& xCommitedStressLikeKiVar, 00045 const straintensor& xCommitedStrainLikeKiVar); 00046 ~FDEPState(); 00047 00048 FDEPState *newObj(); 00049 FDEPState( const FDEPState& fdeps ); 00050 00051 straintensor getFpInVar() const; 00052 double getStressLikeInVar() const; 00053 double getStrainLikeInVar() const; 00054 stresstensor getStressLikeKiVar() const; 00055 straintensor getStrainLikeKiVar() const; 00056 00057 straintensor getCommitedFpInVar() const; 00058 double getCommitedStressLikeInVar() const; 00059 double getCommitedStrainLikeInVar() const; 00060 stresstensor getCommitedStressLikeKiVar() const; 00061 straintensor getCommitedStrainLikeKiVar() const; 00062 00063 void setFpInVar(const straintensor& xFpInVar); 00064 void setStressLikeInVar(double xStressLikeInVar); 00065 void setStrainLikeInVar(double xStrainLikeInVar); 00066 void setStressLikeKiVar(const stresstensor& xStressLikeKiVar); 00067 void setStrainLikeKiVar(const straintensor& xStrainLikeKiVar); 00068 00069 void setCommitedFpInVar(const straintensor& xCommitedFpInVar); 00070 void setCommitedStressLikeInVar(double xCommitedStressLikeInVar); 00071 void setCommitedStrainLikeInVar(double xCommitedStrainLikeInVar); 00072 void setCommitedStressLikeKiVar(const stresstensor& xCommitedStressLikeKiVar); 00073 void setCommitedStrainLikeKiVar(const straintensor& xCommitedStrainLikeKiVar); 00074 00075 int commitState(void) ; 00076 int revertToLastCommit(void) ; 00077 int revertToStart(void) ; 00078 00079 private: 00080 straintensor FpInVar; // Plastic F; 00081 double StressLikeInVar; // Scalar stress like evolution variable 00082 double StrainLikeInVar; // Scalar strain like evolution variable 00083 stresstensor StressLikeKiVar; // Tensor stress like evolution variable 00084 straintensor StrainLikeKiVar; // Tensor strain like evolution variable 00085 00086 00087 straintensor CommitedFpInVar; // Plastic F; 00088 double CommitedStressLikeInVar; // Scalar stress like evolution variable 00089 double CommitedStrainLikeInVar; // Scalar strain like evolution variable 00090 stresstensor CommitedStressLikeKiVar; // Tensor stress like evolution variable 00091 straintensor CommitedStrainLikeKiVar; // Tensor strain like evolution variable 00092 00093 }; 00094 00095 00096 #endif |