DM04_Elastic.h

Go to the documentation of this file.
00001 
00002 //   COPYLEFT (C): Woody's viral GPL-like 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 //
00012 // COPYRIGHT (C):     :-))
00013 // PROJECT:           Object Oriented Finite Element Program
00014 // FILE:              
00015 // CLASS:             
00016 // MEMBER FUNCTIONS:
00017 //
00018 // MEMBER VARIABLES
00019 //
00020 // PURPOSE:           
00021 //
00022 // RETURN:
00023 // VERSION:
00024 // LANGUAGE:          C++
00025 // TARGET OS:         
00026 // DESIGNER:          Zhao Cheng, Boris Jeremic
00027 // PROGRAMMER:        Zhao Cheng, 
00028 // DATE:              Fall 2005
00029 // UPDATE HISTORY:    
00030 //
00032 //
00033 
00034 #ifndef DM04_Elastic_H
00035 #define DM04_Elastic_H
00036 
00037 #include "ElasticState.h"
00038 #include <math.h>
00039 
00040 //stresstensor zerostress;
00041 //straintensor zerostrain;
00042 
00043 class DM04_Elastic : public ElasticState
00044 {  
00045   public:
00046   
00047     DM04_Elastic(int G0_in, 
00048                  int v_in,
00049                  int Pat_in,
00050                  int k_c_in,
00051                  int e0_in,
00052                  const stresstensor& initialStress = zerostress, 
00053                  const straintensor& initialStrain = zerostrain);                    
00054     
00055     ElasticState* newObj();
00056     
00057     const BJtensor& getElasticStiffness (const MaterialParameter &MaterialParameter_in) const;
00058 
00059     stresstensor getStress() const;    
00060     
00061   private:
00062   
00063     double getG0(const MaterialParameter &MaterialParameter_in) const;
00064     double getv(const MaterialParameter &MaterialParameter_in) const;
00065     double getPat(const MaterialParameter &MaterialParameter_in) const;
00066     double getk_c(const MaterialParameter &MaterialParameter_in) const;
00067     double gete0(const MaterialParameter &MaterialParameter_in) const;    
00068      
00069   private:
00070   
00071     int G0_index;   
00072     int v_index;
00073     int Pat_index;
00074     int k_c_index;
00075     int e0_index;    
00076 };
00077 
00078 #endif
00079 

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