MultiYieldSurface.h

Go to the documentation of this file.
00001 // $Revision: 1.7 $
00002 // $Date: 2003/02/14 23:01:30 $
00003 // $Source: /usr/local/cvs/OpenSees/SRC/material/nD/soil/MultiYieldSurface.h,v $
00004                                                                         
00005 // Written: ZHY
00006 // Created: August 2000
00007 //
00008 // MultiYieldSurface.h
00009 // -------------------
00010 //
00011 
00012 #ifndef _MultiYieldSurface_H_
00013 #define _MultiYieldSurface_H_
00014 
00015 #include <T2Vector.h>
00016 
00017 
00018 #define LOCK_VALUE  1.0e+30
00019 
00020 // global function to find the roots of a second order equation
00021 double secondOrderEqn(double A, double B, double C, int i);
00022 
00023 // define yield surface in stress space
00024 class MultiYieldSurface
00025 {
00026  
00027 public:
00028   //constructors
00029   MultiYieldSurface();
00030   MultiYieldSurface(const Vector & center_init, double size_init, 
00031                     double plas_modul); 
00032   ~MultiYieldSurface();
00033         void setData(const Vector & center_init, double size_init, 
00034                double plas_modul); 
00035   const Vector & center() const {return theCenter; }
00036   double size() const {return theSize; }
00037   double modulus() const {return plastShearModulus; }
00038   void  setCenter(const Vector & newCenter); 
00039 
00040   // friend ostream & operator<< (ostream & os, const MultiYieldSurface & );  
00041   // friend istream & operator>> (istream & is, MultiYieldSurface & );
00042 
00043 protected:
00044 
00045 private:
00046   double theSize;
00047   Vector theCenter;  
00048   double plastShearModulus;
00049 
00050 };
00051 
00052 #endif

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