00001 // ------------------------------------------------------------------------- 00002 // ElcBar.h - This header file contains methods for bar finite elements. 00003 // ------------------------------------------------------------------------- 00004 // Protected methods: 00005 // ------------------------------------------------------------------------- 00006 // 00007 // void SubVector(sNodeCoord *coord, int nvf, int nvi, double *v) 00008 // 00009 // coord - element coordinates (in) 00010 // nvf - final node (in) 00011 // nvi - initial node (in) 00012 // v - difference vector (out) 00013 // 00014 // This method evaluates the vector v = coord[nvf] - coord[nvi] 00015 // ------------------------------------------------------------------------- 00016 // 00017 // $Author: evandro $ 00018 // $Revision: 1.4 $ 00019 // $Date: 1999/04/12 14:48:47 $ 00020 // $State: Exp $ 00021 // 00022 // ------------------------------------------------------------------------- 00023 // 00024 #ifndef _ELCBAR_H 00025 #define _ELCBAR_H 00026 00027 #include "gbldefs.h" 00028 #include "element.h" 00029 #include "shape.h" 00030 00031 // ------------------------------------------------------------------------- 00032 // Definition of a Bar Element Class: 00033 // 00034 class cElcBar : public cElement 00035 { 00036 protected: 00037 int _iSecLabel; // Bar section label 00038 double _dLength; // Bar length 00039 double **_dRotMat; // Rotation matrix 00040 00041 protected: 00042 static void SubVector ( sNodeCoord *, int, int, double * ); 00043 00044 public: 00045 cElcBar ( void ); 00046 virtual ~cElcBar ( void ); 00047 void GetRotMat ( double ** ); 00048 void InitState ( void ) { } 00049 void UpdateState ( void ) { } 00050 }; 00051 00052 #endif 00053