00001
00002
00004
00005 #if !defined ATTALLA2D_H
00006 #define ATTALLA_H
00007
00008 #include "YieldSurface_BC2D.h"
00009
00010 class Attalla2D : public YieldSurface_BC2D
00011 {
00012 public:
00013 Attalla2D(int tag, double xmax, double ymax, YS_Evolution &model,
00014 double a01=0.19, double a02=0.54, double a03=-1.4,
00015 double a04=-1.64, double a05=2.21, double a06=2.10);
00016 virtual ~Attalla2D();
00017
00018 virtual YieldSurface_BC *getCopy(void);
00019 virtual int displaySelf(Renderer &theViewer, int displayMode, float fact);
00020 virtual void Print(OPS_Stream &s, int flag =0);
00021
00022
00023
00024 virtual void getGradient(double &gx, double &gy, double x, double y);
00025 virtual double getSurfaceDrift(double x, double y);
00026 virtual void setExtent();
00027 virtual void customizeInterpolate(double &xi, double &yi, double &xj, double &yj);
00028 protected:
00029 double a1, a2, a3, a4, a5, a6;
00030 int driftAlgo;
00031 };
00032
00033 #endif