BoundingSurface2D.cpp

Go to the documentation of this file.
00001 //BoundingSurface2D
00002 //
00004 
00005 #include "BoundingSurface2D.h"
00006 #include <math.h>
00007 #include <YieldSurface_BC.h>
00008 
00009 #define evolDebug 0
00011 // Construction/Destruction
00013 
00014 BoundingSurface2D::BoundingSurface2D(int tag, int classTag, double min_iso_factor,
00015                                                 double iso_ratio, double kin_ratio,
00016                         PlasticHardeningMaterial &kpx,
00017                                                 PlasticHardeningMaterial &kpy,
00018                                                 YieldSurface_BC &bound_surface)
00019 :YS_Evolution2D(tag, classTag, min_iso_factor, iso_ratio, kin_ratio)
00020 {
00021         kpMatX = kpx.getCopy();
00022         kpMatY = kpy.getCopy();
00023         boundSurface = bound_surface.getCopy();
00024 }
00025 
00026 BoundingSurface2D::~BoundingSurface2D()
00027 {
00028   if (kpMatX != 0)
00029     delete kpMatX;
00030 
00031   if (kpMatY != 0)
00032     delete kpMatY;
00033 
00034   if (boundSurface != 0)
00035     delete boundSurface;
00036 }
00037 
00038 int BoundingSurface2D::commitState()
00039 {
00040         this->YS_Evolution2D::commitState();
00041 
00042     int res  = kpMatX->commitState();
00043             res += kpMatY->commitState();
00044 
00045         return res;
00046 }
00047 
00048 int BoundingSurface2D::revertToLastCommit(void)
00049 {
00050         this->YS_Evolution2D::revertToLastCommit();
00051 
00052         kpMatX->revertToLastCommit();
00053         kpMatY->revertToLastCommit();
00054 
00055         return 0;
00056 }
00057 
00058 const Vector &BoundingSurface2D::getEquiPlasticStiffness(void)
00059 {
00060 // find the conjugate point
00061 // find "dR"
00062 // find Kp
00063           {
00064                 v2(0) = 0;
00065                 v2(1) = 0;
00066           }
00067         return v2;
00068 }
00069 
00070 void    BoundingSurface2D::setTrialPlasticStrains(double ep, const Vector &f, const Vector &g)
00071 {
00072 // set for isotropic materials  
00073         
00074 }
00075 
00076 double  BoundingSurface2D::getIsoPlasticStiffness(int dir)
00077 {
00078         return 0;
00079 }
00080 
00081 double  BoundingSurface2D::getKinPlasticStiffness(int dir)
00082 {
00083         return 0;       
00084 }
00085 
00086 Vector& BoundingSurface2D::getEvolDirection(Vector &f_new)
00087 {
00088 // find the conjugate point
00089 // return that as dir   
00090         return v2;
00091 }
00092 
00093 
00094 void BoundingSurface2D::Print(OPS_Stream &s, int flag)
00095 {
00096         s << "BoundingSurface2D \n";
00097         s << "iso_Ratio = " << isotropicRatio << "\n";
00098         s << "isotropicFactor_hist = " << isotropicFactor_hist;
00099         s << "translateX       = " << translate(0) << ",\ttranslateY = " << translate(1) << "\n";
00100         s << "\n";
00101 
00102 }
00103         

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