ElasticIsotropicAxiSymm.h

Go to the documentation of this file.
00001 /* ****************************************************************** **
00002 **    OpenSees - Open System for Earthquake Engineering Simulation    **
00003 **          Pacific Earthquake Engineering Research Center            **
00004 **                                                                    **
00005 **                                                                    **
00006 ** (C) Copyright 1999, The Regents of the University of California    **
00007 ** All Rights Reserved.                                               **
00008 **                                                                    **
00009 ** Commercial use of this program without express permission of the   **
00010 ** University of California, Berkeley, is strictly prohibited.  See   **
00011 ** file 'COPYRIGHT'  in main directory for information on usage and   **
00012 ** redistribution,  and for a DISCLAIMER OF ALL WARRANTIES.           **
00013 **                                                                    **
00014 ** Developed by:                                                      **
00015 **   Frank McKenna (fmckenna@ce.berkeley.edu)                         **
00016 **   Gregory L. Fenves (fenves@ce.berkeley.edu)                       **
00017 **   Filip C. Filippou (filippou@ce.berkeley.edu)                     **
00018 **                                                                    **
00019 ** ****************************************************************** */
00020                                                                         
00021 // $Revision: 1.3 $
00022 // $Date: 2002/12/05 22:49:09 $
00023 // $Source: /usr/local/cvs/OpenSees/SRC/material/nD/ElasticIsotropicAxiSymm.h,v $
00024 
00025 #ifndef ElasticIsotropicAxiSymm_h
00026 #define ElasticIsotropicAxiSymm_h
00027 
00028 // File: ~/material/ElasticIsotropicAxiSymm.h
00029 //
00030 // Written: MHS
00031 // Created: Feb 2000
00032 // Revision: A
00033 //
00034 // Description: 
00035 //
00036 // What: "@(#) ElasticIsotropicAxiSymm.h, revA"
00037 
00038 #include <ElasticIsotropicMaterial.h>
00039 
00040 #include <Matrix.h>
00041 #include <Vector.h>
00042 #include <ID.h>
00043 
00044 #include <Tensor.h>
00045 
00046 class ElasticIsotropicAxiSymm : public ElasticIsotropicMaterial
00047 {
00048   public:
00049     ElasticIsotropicAxiSymm (int tag, double E, double nu, double rho);
00050         ElasticIsotropicAxiSymm ();
00051     ~ElasticIsotropicAxiSymm ();
00052 
00053     int setTrialStrain (const Vector &v);
00054     int setTrialStrain (const Vector &v, const Vector &r);
00055     int setTrialStrainIncr (const Vector &v);
00056     int setTrialStrainIncr (const Vector &v, const Vector &r);
00057     const Matrix &getTangent (void);
00058     const Matrix &getInitialTangent (void);
00059     const Vector &getStress (void);
00060     const Vector &getStrain (void);
00061     
00062     int commitState (void);
00063     int revertToLastCommit (void);
00064     int revertToStart (void);
00065     
00066     NDMaterial *getCopy (void);
00067     const char *getType (void) const;
00068     int getOrder (void) const;
00069 
00070   protected:
00071 
00072   private:
00073         static Vector sigma;    // Stress vector ... class-wide for returns
00074         static Matrix D;        // Elastic constants
00075         Vector epsilon;         // Trial strains
00076 };
00077 
00078 
00079 #endif
00080 
00081 

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