00001 #ifndef COUPMATU_H
00002 #define COUPMATU_H
00003
00004 #include <stdio.h>
00005 #include "alias.h"
00006 #include "aliasc.h"
00007 #include "intpointsc.h"
00008 #include "isotrmatc.h"
00009 #include "sejtkrmatc.h"
00010 #include "baroghelBc.h"
00011 #include "concreteBc.h"
00012 #include "C60baroghelc.h"
00013 #include "C30baroghelc.h"
00014 #include "o30bazantc.h"
00015 #include "C60bazantc.h"
00016 #include "glasgowmatc.h"
00017 #include "glasgowcoup.h"
00018 #include "consol_awf1c.h"
00019 #include "consol_awf2c.h"
00020 #include "xfile.h"
00021
00022 class coupmatu
00023 {
00024 public:
00025 coupmatu (void);
00026 ~coupmatu (void);
00027 void ipalloc (void);
00028 long intpnum (void);
00029 void readip (XFILE *in);
00030 void readmatchar (XFILE *in);
00031 void intpointalloc ();
00032 void intpointinit ();
00033 void initmaterialmodels ();
00034 void initvalues (long ipp,long im,long ido);
00035 void updateipval (void);
00036 void updateipvalmat (long ipp,long im,long ido);
00037 void read (XFILE *in);
00038 void matstiff (matrix &d,long ipp);
00039 void matcond (matrix &d,long ipp,long ri,long ci);
00040 void matcap (matrix &d,long ipp,long ri,long ci);
00041 void volume_rhs1 (matrix &d,long ipp,long ri,long ci);
00042 void volume_rhs2 (matrix &d,long ipp,long ri,long ci,long ncomp);
00043
00044 void computenlstresses (matrix &d,long ipp);
00045 void storestresses_cmu (long ipp,long fi,vector &gr);
00046 void givestresses_cmu (long ipp,long fi,vector &fl);
00047 void storestrain_cmu (long ipp,long fi,vector &eps);
00048 void givestrain_cmu (long ipp,long fi,vector &eps);
00049 void storegrad_cmu (long lcid,long ipp,vector &gr);
00050 void givegrad_cmu (long lcid,long ipp,vector &gr);
00051 void storeflux_cmu (long lcid,long ipp,vector &fl);
00052 void givefluxes_cmu (long lcid,long ipp,vector &fl);
00053
00054
00055 long nmt;
00056
00057 long tnip;
00058
00059 intpointsc *ip;
00060
00061
00062
00063 isotrmatc *itrmc;
00064
00065 sejtkrmatc *sejtkrmc;
00066 con_awf1matc *consol_awf1c;
00067
00068 con_awf2matc *consol_awf2c;
00069
00070 baroghelmatc *baroghelc;
00071 concreteBmatc *concretec;
00072 C60barmatc *C60baroghelc;
00073 C30barmatc *C30baroghelc;
00074 o30bazmatc *o30bazantc;
00075 C60bazmatc *C60bazantc;
00076 glasgowmatc *tenchc;
00077 glasgowcoup *gcm;
00078
00079 };
00080
00081 #endif