00001 #ifndef GLASGMECH_H
00002 #define GLASGMECH_H
00003
00004 #include "iotools.h"
00005 #include "alias.h"
00006 struct vector;
00007 struct matrix;
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 class glasgmech
00023 {
00024 public:
00025 glasgmech ();
00026 ~glasgmech ();
00027 void read (XFILE *in);
00028
00029 double betacoeff (long ipp,double t);
00030 void damfuncpar(long ipp, vector &eps, vector &kappa);
00031 double damfunction(long ipp,double tempr,double chi,vector &kappa);
00032 double domegadkmd (long ipp,double tempr,double chi, vector &kappa);
00033 double domegadt (long ipp,double tempr,double chi, vector &kappa);
00034 void matstiff (matrix &d,long ipp,long ido);
00035 void compute_thermdilat (double t,double dt,matrix &eps);
00036 double thermdamfunction (long ipp,double tempr,vector &kappa);
00037 double dtdfdt (long ipp,double tempr,vector &kappa);
00038 void compute_lits (long ipp,vector &epstm,matrix &sigt,double told,double tnew);
00039 void depseqdepsel(long ipp, vector &eps, vector &deeqdeel);
00040 void nlstresses (long ipp,long im,long ido);
00041
00042
00043
00044 paramf_type ft;
00045
00046
00047 double tkappa0;
00048
00049 double st;
00050
00051 double gf0;
00052
00053 double k;
00054
00055 double lc;
00056
00057 double a,b,c;
00058
00059 };
00060
00061 #endif