00001 // ------------------------------------------------------------------------- 00002 // ElcMITC4.h - This header file contains the data structure for the 00003 // implementation of the Dvorkin-Bathe 4-noded shell 00004 // element, hereby called MITC4. 00005 // 00006 // ------------------------------------------------------------------------ 00007 // Remarks: 00008 // 00009 // ------------------------------------------------------------------------ 00010 // Reference: "A continuum mechanics based four node shell element for 00011 // general nonlinear analysis", E.N.Dvorkin & K.J.Bathe, 00012 // Eng.Comput.,1,77-78(1984) 00013 // ------------------------------------------------------------------------ 00014 // 00015 // $Author: evandro $ 00016 // $Revision: 1.1 $ 00017 // $Date: 1999/04/12 14:48:47 $ 00018 // $State: Exp $ 00019 // 00020 // ------------------------------------------------------------------------- 00021 00022 #ifndef _ELCMITC4_H 00023 #define _ELCMITC4_H 00024 00025 #include "gbldefs.h" 00026 #include "elcdsh3d.h" 00027 00028 00029 // ------------------------------------------------------------------------- 00030 // Definition of MITC4 shell element 00031 00032 class cElcMITC4 : public cElcDegShell3D 00033 { 00034 public: 00035 cElcMITC4 ( eShapeType e ); 00036 virtual ~cElcMITC4 ( void ){ } 00037 void Stiffness ( double * ); 00038 void CalcIntPtStress ( void ); 00039 void CalcIntPtStress ( cIntPt *, sTensor * ); 00040 int InternalForce ( double * ); 00041 00042 protected: 00043 sNatCoord PointA, PointB, PointC, PointD; 00044 00045 protected: 00046 void BMatrix ( sNatCoord *, double **, double **, 00047 double *, sDerivNat *, double *, 00048 double *, double **, double ** ); 00049 void CalcBSamp ( double **, double ** ); 00050 }; 00051 00052 #endif 00053