NullEvolution.cpp

Go to the documentation of this file.
00001 /***************************************************************************
00002                           NullEvolution.cpp  -  description
00003                              -------------------
00004     begin                : Thu Aug 1 2002
00005     email                : rkaul@ce-blume215-pent-2.stanford.edu
00006  ***************************************************************************/
00007 
00008 /***************************************************************************
00009  *                                                                         *
00010  *                                                                         *
00011  ***************************************************************************/
00012 
00013 #include "NullEvolution.h"
00014 #define NULL_EVOL_CLASS_TAG -1
00015 
00016 Vector NullEvolution::vec_dim_1(1);
00017 Vector NullEvolution::vec_dim_2(2);
00018 Vector NullEvolution::vec_dim_3(3);
00019 
00020 NullEvolution::NullEvolution(int tag, double isox)
00021 :YS_Evolution(tag, NULL_EVOL_CLASS_TAG, 0.0, 0.0, 1, 0.0, 0.0)
00022 {
00023         isotropicFactor(0) = isox;
00024         isotropicFactor_hist(0) = isox;
00025 }
00026 
00027 
00028 NullEvolution::NullEvolution(int tag, double isox, double isoy)
00029 :YS_Evolution(tag, NULL_EVOL_CLASS_TAG, 0.0, 0.0, 2, 0.0, 0.0)
00030 {
00031         isotropicFactor(0) = isox;
00032         isotropicFactor(1) = isoy;
00033         isotropicFactor_hist(0) = isox;
00034         isotropicFactor_hist(1) = isoy;
00035 
00036 }
00037 
00038 
00039 NullEvolution::NullEvolution(int tag, double isox, double isoy, double isoz)
00040 :YS_Evolution(tag, NULL_EVOL_CLASS_TAG, 0.0, 0.0, 3, 0.0, 0.0)
00041 {
00042         isotropicFactor(0) = isox;
00043         isotropicFactor(1) = isoy;
00044         isotropicFactor(2) = isoz;
00045         isotropicFactor_hist(0) = isox;
00046         isotropicFactor_hist(1) = isoy;
00047         isotropicFactor_hist(2) = isoz;
00048 }
00049 
00050 NullEvolution::~NullEvolution()
00051 {
00052 }
00053 
00054 
00055 
00057 int NullEvolution::evolveSurface(YieldSurface_BC * ys, double magPlasticDefo,
00058                                 Vector & G, Vector & F_Surface, int flag)
00059 {
00060         // does nothing
00061         return 0;
00062 }
00063 
00065 YS_Evolution * NullEvolution::getCopy()
00066 {
00067 NullEvolution *copy=0;
00068 
00069         if(dimension == 1)
00070                 copy = new NullEvolution(getTag(), isotropicFactor(0));
00071         else if(dimension == 2)
00072                 copy = new NullEvolution(getTag(), isotropicFactor(0), isotropicFactor(1));
00073         else if(dimension == 3)
00074                 copy = new NullEvolution(getTag(), isotropicFactor(0), isotropicFactor(1), isotropicFactor(2));
00075         else
00076                 copy = 0;
00077         return copy;
00078 }
00079 
00081 const Vector & NullEvolution::getEquiPlasticStiffness()
00082 {
00083         if(dimension == 1)
00084                 return vec_dim_1;
00085         else if (dimension == 2)
00086                 return vec_dim_2;
00087         else if (dimension == 3)
00088                 return vec_dim_3;
00089         else
00090                 opserr << "NullEvolution::getEquiPlasticStiffness() - error dimension\n";
00091 
00092         return vec_dim_3;
00093 }
00094 
00095 double NullEvolution::getTrialPlasticStrains(int dof)
00096 {
00097         return 0;
00098 }
00099 
00100 double NullEvolution::getCommitPlasticStrains(int dof)
00101 {
00102         return 0;
00103 }
00104 
00105 
00107 int NullEvolution::getResponse(int responseID, Information & info)
00108 {
00109         return 0;
00110 }
00111 
00113 Response * NullEvolution::setResponse(char * * argv, int argc, Information & info)
00114 {
00115         return 0;
00116 }
00117 
00119 int NullEvolution::commitState(int status)
00120 {
00121         return 0;
00122 }
00124 int NullEvolution::revertToLastCommit()
00125 {
00126         return 0;
00127 }
00128 
00129 /*
00130 // implement these or else the base class will complain
00131 void    NullEvolution::toDeformedCoord(double &x){
00132         }
00133 void    NullEvolution::toDeformedCoord(double &x, double &y){
00134         }
00135 void    NullEvolution::toDeformedCoord(double &x, double &y, double &z){
00136         }
00137 
00138 void    NullEvolution::toOriginalCoord(double &x){
00139         }
00140 void    NullEvolution::toOriginalCoord(double &x, double &y){
00141         }
00142 void    NullEvolution::toOriginalCoord(double &x, double &y, double &z){
00143         }
00144 */
00145 
00146 
00147 
00148 

Generated on Mon Oct 23 15:05:23 2006 for OpenSees by doxygen 1.5.0