00001 #ifndef ELASTISOMAT_H 00002 #define ELASTISOMAT_H 00003 00004 #include "alias.h" 00005 #include "iotools.h" 00006 struct matrix; 00007 struct vector; 00008 struct atsel; 00009 00010 /** 00011 The class elastisomat defines elastic isotropic material model. 00012 Material parameters are: 00013 - Young's modulus (modulus of elasticity) 00014 - Poisson's ratio 00015 00016 Created by JK, 00017 */ 00018 class elastisomat 00019 { 00020 public: 00021 elastisomat (void); 00022 ~elastisomat (void); 00023 void read (XFILE *in); 00024 void print (FILE *out); 00025 00026 void matstiff (matrix &d,strastrestate ssst); 00027 void elmatstiff (matrix &d,strastrestate ssst); 00028 void matstiff_bar (matrix &d); 00029 void matstiff_plbeam (matrix &d); 00030 void matstiff_spacebeam (matrix &d); 00031 void matstiff_plstress (matrix &d); 00032 void matstiff_plstrain (matrix &d); 00033 void matstiff_axi (matrix &d); 00034 void matstiff_platek (matrix &d); 00035 void matstiff_plates (matrix &d); 00036 void matstiff_spacestr (matrix &d); 00037 00038 void matcompl (matrix &c,strastrestate ssst); 00039 void matcompl_bar (matrix &c); 00040 void matcompl_plbeam (matrix &c); 00041 void matcompl_plstress (matrix &c); 00042 void matcompl_plstrain (matrix &c); 00043 void matcompl_axi (matrix &c); 00044 void matcompl_spacestr (matrix &c); 00045 00046 void nlstresses (long ipp); 00047 void changeparam (atsel &atm,vector &val); 00048 00049 /// Young's modulus 00050 double e; 00051 /// Poisson's number 00052 double nu; 00053 }; 00054 00055 #endif