vtf-logo

shells/fragmentation/CMaterial.h

Go to the documentation of this file.
00001 // -*- C++ -*- 
00002 //
00003 // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00004 //
00005 //                                   Fehmi Cirak
00006 //                        California Institute of Technology
00007 //                           (C) 2004 All Rights Reserved
00008 //
00009 // <LicenseText>
00010 //
00011 // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00012 //
00013 #ifndef CMATERIAL_H
00014 #define CMATERIAL_H
00015 
00016 
00017 namespace fragment {
00018     class CMaterial;
00019     
00020     enum MatType {LIN=0, RSF=1, LS=2, BLS=3, EXP=4};
00021     enum ReverseFlag {REVERSIBLE=0, IRREVERSIBLE=1};
00022 }
00023 
00024 
00025 class fragment::CMaterial {
00026 public:
00027     CMaterial(const MatType& type, 
00028               const ReverseFlag& reversible, 
00029               const double& maxCohesiveStress, 
00030               const double& Gc, 
00031               const double& betaSqr, 
00032               const double& compStiff,
00033               int internalSize=4):
00034         _type(type), 
00035         _reversible(reversible), 
00036         _maxCohesiveStress(maxCohesiveStress),
00037         _Gc(Gc), 
00038         _betaSqr(betaSqr), 
00039         _compStiff(compStiff),
00040         _internalSize(internalSize) {}
00041     
00042     ~CMaterial(){}
00043     
00044     MatType type() const {return _type;}
00045     ReverseFlag reversibility() const {return _reversible;}   
00046   
00047     double maxCohesiveStress() const {return _maxCohesiveStress;}
00048     double gc() const {return _Gc;}
00049     double betaSqr() const {return _betaSqr;}    
00050     double compStiff() const {return _compStiff;}
00051 
00052     int numInternal() const {return _internalSize;}    
00053 
00054 private:
00055     const MatType       _type;
00056     const ReverseFlag   _reversible; 
00057    
00058     const double        _maxCohesiveStress;
00059     const double        _Gc;
00060     const double        _betaSqr;
00061     const double        _compStiff;
00062 
00063     const int           _internalSize;
00064 };
00065 
00066 #endif

Generated on Fri Aug 24 13:00:24 2007 for SFC Thin-Shell Finite Element Solver by  doxygen 1.4.7