00001 #ifndef BOERMAT_H
00002 #define BOERMAT_H
00003
00004 #include "iotools.h"
00005 #include "strretalg.h"
00006 struct matrix;
00007 struct vector;
00008 struct atsel;
00009
00010
00011
00012
00013
00014
00015 class boermat
00016 {
00017 public:
00018 boermat (void);
00019 ~boermat (void);
00020 void read (XFILE *in);
00021 double yieldfunction (matrix &sig);
00022 void deryieldfsigma (matrix &sig,matrix &dfds);
00023 void derpotsigma (matrix &sig,matrix &dgds);
00024 void matstiff (matrix &d, long ipp,long ido);
00025 void nlstresses (long ipp,long im,long ido);
00026 void nonloc_nlstresses (long ipp,long im,long ido);
00027 void updateval (long ipp,long im,long ido);
00028 void giveirrstrains (long ipp, long ido, vector &epsp);
00029 double give_consparam (long ipp,long ido);
00030 void changeparam (atsel &atm,vector &val);
00031
00032
00033 double phi;
00034
00035 double c;
00036
00037 double psi;
00038
00039 double n;
00040
00041
00042
00043
00044 double alpha,alpha1,alpha2,beta,beta1,delta,a;
00045
00046
00047 strretalg sra;
00048 };
00049
00050 #endif