00001 #ifndef SOILPLATETR_H
00002 #define SOILPLATETR_H
00003
00004 #include "alias.h"
00005 struct matrix;
00006 struct vector;
00007 struct ivector;
00008
00009 class soilplatetr
00010 {
00011 public:
00012 soilplatetr (void);
00013 ~soilplatetr (void);
00014
00015 double approx_nat (double xi,double eta,vector &nodval);
00016 void dbmat (matrix &db,double c11, double c22);
00017 void geom_matrix (matrix &gm,matrix &cn,vector &ax,vector &ay,vector &dl, vector &l);
00018 void transf_matrix (ivector &nodes,matrix &tmat);
00019 void stiffness_matrix (long eid,long ri,long ci,matrix &sm,vector &x,vector &y);
00020 void res_stiffness_matrix (long eid,matrix &sm);
00021 void res_mainip_strains (long lcid,long eid);
00022 void mainip_strains (long lcid,long eid,long ri,long ci,vector &x,vector &y,vector &r);
00023 void res_allip_stresses (long lcid,long eid);
00024 void allip_stresses (long lcid,long eid,long ri,long ci);
00025
00026
00027 void compute_nlstress (long lcid,long eid,long ri,long ci);
00028 void compute_nlstressincr (long lcid,long eid,long ri,long ci);
00029
00030 void internal_forces (long lcid,long eid,long ri,long ci,vector &ifor,vector &x,vector &y);
00031 void res_internal_forces (long lcid,long eid,vector &ifor);
00032 void incr_internal_forces (long lcid,long eid,long ri,long ci,vector &ifor,vector &x,vector &y);
00033 void res_incr_internal_forces (long lcid,long eid,vector &ifor);
00034 void elem_integration (integratedquant iq,long lcid,long eid,long ri,long ci,vector &nv,vector &x,vector &y);
00035
00036
00037
00038 long ndofe;
00039
00040 long nne;
00041
00042 long tncomp;
00043
00044 long tnip;
00045
00046 long *ncomp;
00047
00048 long *cncomp;
00049
00050 long napfun;
00051
00052 long ned;
00053
00054 long nned;
00055
00056 long **intordsm;
00057
00058 long intordmm;
00059
00060 long intordb;
00061
00062 long **nip;
00063
00064 long nb;
00065
00066 strastrestate ssst;
00067 };
00068
00069 #endif