00001 #ifndef CRSEC3DBEAM_H 00002 #define CRSEC3DBEAM_H 00003 00004 #include "iotools.h" 00005 #include "genfile.h" 00006 struct vector; 00007 struct atsel; 00008 00009 /** 00010 class crsec3dbeam defines cross section for 3D beam elements 00011 00012 JK 00013 */ 00014 00015 class crsec3dbeam 00016 { 00017 public: 00018 crsec3dbeam (void); 00019 ~crsec3dbeam (void); 00020 void read (XFILE *in); 00021 void print (FILE *out); 00022 00023 double give_area (); 00024 void give_moments (double *i); 00025 void give_shearcoeff (double *sc); 00026 double give_density (); 00027 00028 void changeparam (atsel &atcs,vector &val); 00029 00030 // necessary components for every problem type 00031 /// area of cross section of the beam 00032 double a; 00033 /// moment of inertia of the cross section of the beam 00034 double ix,iy,iz; 00035 /// shear coefficients 00036 double shearcoeffy,shearcoeffz; 00037 /// vector which determines local coordinate system on 3d beam element 00038 vector lcs; 00039 // optional components 00040 /// density of material (necessary for dynamics) 00041 double rho; 00042 00043 }; 00044 00045 #endif