00001
00002
00004
00005 #if !defined ELTAWIL2D_H
00006 #define ELTAWIL2D_H
00007
00008 #include "YieldSurface_BC2D.h"
00009
00010 class ElTawil2D : public YieldSurface_BC2D
00011 {
00012 public:
00013 ElTawil2D(int tag, double xbal, double ybal, double ypos, double yneg,
00014 YS_Evolution &model, double cz=1.6, double ty=1.9);
00015
00016 virtual ~ElTawil2D();
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
00030 double xBal, yBal;
00031 double yPosCap, yNegCap;
00032 double yPosCap_orig, yNegCap_orig;
00033 double cz, ty;
00034 double ytPos, ytNeg;
00035 double xtPos, xtNeg;
00036 double qy;
00037
00038 };
00039
00040 #endif