Itasca C++ Interface
iselpile.h
Go to the documentation of this file.
1 #pragma once
2 // ISELPile.h
3 
9 #include "isel.h"
10 
11 namespace itasca {
12  class IThing;
13 }
14 
15 namespace sel {
16  class ISELBeam;
18 
21  class ISELPile {
22  public:
24  inline static const TType type_ = 0x4c815a0d;
26  virtual const IThing * getIThing() const=0;
28  virtual IThing * getIThing()=0;
30  virtual const ISEL * getISEL() const=0;
32  virtual ISEL * getISEL()=0;
34  virtual const ISELBeam *getISELBeam() const=0;
36  virtual ISELBeam * getISELBeam()=0;
37 
39  virtual double getPropCSnCoh()const=0;
41  virtual double getPropCSnFric()const=0;
44  virtual bool getPropCSnGap()const=0;
46  virtual double getPropCSnK()const=0;
48  virtual double getPropCSsCoh()const=0;
50  virtual double getPropCSsFric()const=0;
52  virtual double getPropCSsK()const=0;
54  virtual double getPropPer()const=0;
56  virtual bool getPropSlide()const=0;
58  virtual double getPropSlideTol()const=0;
59 
61  virtual void setPropCSnCoh(const double &d)=0;
63  virtual void setPropCSnFric(const double &d)=0;
65  virtual void setPropCSnGap(bool b)=0;
67  virtual void setPropCSnK(const double &d)=0;
69  virtual void setPropCSsCoh(const double &d)=0;
71  virtual void setPropCSsFric(const double &d)=0;
73  virtual void setPropCSsK(const double &d)=0;
75  virtual void setPropPer(const double &d)=0;
77  virtual void setPropSlide(bool b)=0;
79  virtual void setPropSlideTol(const double &d)=0;
80 
83  virtual bool getPropCSsConfInc() const=0;
86  virtual QString getPropCSsConfTab() const=0;
88  virtual QString getPropCSsCohTab() const=0;
90  virtual QString getPropCSsFricTab() const=0;
92  virtual bool getPropRBolt() const=0;
94  virtual double getPropTFStrain() const=0;
96  virtual double getPropYield() const=0;
97 
99  virtual void setPropCSsConfInc(bool b) =0;
102  virtual void setPropCSsConfTab(QString s) =0;
104  virtual void setPropCSsCohTab(QString s) =0;
106  virtual void setPropCSsFricTab(QString s)=0;
108  virtual void setPropRBolt(bool b)=0;
110  virtual void setPropTFStrain(const double &d) =0;
112  virtual void setPropYield(const double &d) =0;
113  virtual ISEL::YieldState getRespYield(bool tension) const=0;
114 #ifdef THREED
115  virtual ISEL::YieldState getRespMomentYield(bool bMy, uint32 end) const=0;
116 #else
117  virtual ISEL::YieldState getRespMomentYield(uint32 end) const = 0;
118 #endif
119  // Response functions
124  virtual double getRespCpConfine2(bool bSig1, uint32 end) const=0;
130  virtual double getRespCpDisp2(bool bNorm, uint32 end) const=0;
136  virtual double getRespCpNGapVal2(uint32 end, uint32 dir) const=0;
142  virtual double getRespCpStress2(bool bNorm, uint32 end) const=0;
147  virtual DVect getRespCpStressDir2(bool bNorm, uint32 end) const=0;
152  virtual ISEL::YieldState getRespCpYield2(bool bNorm, uint32 end) const=0;
153 
154  virtual double getPlasticTensileStrain(uint32 node) const=0;
155  virtual bool getPlasticTensileStrainFailure() const=0;
156 #ifdef TWOD
158  virtual double getSpacing() const=0;
159  virtual void setSpacing(const double &d)=0;
160 #endif
161  };
162 } // namespace sel
163 // EoF
Base class for items that will be stored in containers.
Definition: ithing.h:30
Interface to beam structural elements.
Definition: iselbeam.h:19
Interface to the structural elements base class.
Definition: isel.h:22
YieldState
Yield states.
Definition: isel.h:27
Interface to pile structural elements.
Definition: iselpile.h:21
virtual double getPropCSsFric() const =0
Returns the shear coupling spring friction angle, see setPropCSsFric().
virtual const ISEL * getISEL() const =0
Returns a const pointer to object base class, ISEL.
virtual void setPropCSsConfInc(bool b)=0
Sets shear direction incremental confining stress flag, see getPropCSsConfInc().
virtual void setPropCSsFricTab(QString s)=0
Sets the shear direction friction angle table number, see getPropCSsFricTab().
virtual void setPropCSnFric(const double &d)=0
Set the normal coupling spring friction angle, see getPropCSnFric().
virtual QString getPropCSsConfTab() const =0
virtual double getPropCSnK() const =0
Returns the normal coupling spring stiffness, see setPropCSnK().
virtual DVect getRespCpStressDir2(bool bNorm, uint32 end) const =0
virtual bool getPropCSnGap() const =0
virtual void setPropYield(const double &d)=0
Sets the axial tensile yield strength (force units) ,see getPropYield().
virtual void setPropCSnGap(bool b)=0
Sets the normal coupling spring gap-use flag, see setPropCSnGap().
virtual void setPropTFStrain(const double &d)=0
Sets the tensile failure strain (non-dimensional), see getPropTFStrain().
virtual double getPropCSsK() const =0
Returns the shear coupling spring stiffness, see setPropCSsK().
virtual void setPropPer(const double &d)=0
Sets the exposed perimeter, see getPropPer().
virtual bool getPropSlide() const =0
Returns true if large-strain sliding flag is on, else false. See setPropSlide().
virtual void setPropCSnCoh(const double &d)=0
Sets the normal coupling spring cohesive strength, see getPropCSnCoh().
virtual QString getPropCSsFricTab() const =0
Returns shear direc. friction angle table number, see setPropCSsFricTab().
virtual double getRespCpConfine2(bool bSig1, uint32 end) const =0
virtual double getPropCSnCoh() const =0
Returns the normal coupling spring cohesive strength, see setPropCSnCoh().
virtual double getPropTFStrain() const =0
Returns tensile failure strain (non-dimensional), see setPropTFStrain().
virtual QString getPropCSsCohTab() const =0
Returns shear direc. cohesive strength table number, see setPropCSsCohTab().
virtual bool getPropRBolt() const =0
Returns true if the rockbolt logic is on, see setPropRBolt().
virtual void setPropCSsConfTab(QString s)=0
virtual double getPropSlideTol() const =0
Returns the large-strain sliding tolerance, see setPropSlideTol().
virtual void setPropCSsCohTab(QString s)=0
Sets the shear direction cohesive strength table number, see getPropCSsCohTab().
virtual double getPropCSsCoh() const =0
Returns the shear coupling spring cohesive strength, see setPropCSsCoh().
virtual void setPropSlide(bool b)=0
Sets the large-strain sliding flag, see getPropSlide().
virtual double getPropYield() const =0
Returns axial tensile yield strength (force units), see setPropYield().
virtual IThing * getIThing()=0
Returns a IThing pointer.
virtual double getPropPer() const =0
Returns the exposed perimeter, see setPropPer().
virtual void setPropSlideTol(const double &d)=0
Sets the large-strain sliding tolerance, see getPropSlideTol().
virtual ISELBeam * getISELBeam()=0
Returns a pointer to the class that it inherits from.
virtual const ISELBeam * getISELBeam() const =0
Returns a const pointer to the class that it inherits from.
virtual void setPropCSsCoh(const double &d)=0
Sets the shear coupling spring cohesive strength, see getPropCSsCoh().
virtual ISEL::YieldState getRespCpYield2(bool bNorm, uint32 end) const =0
virtual void setPropRBolt(bool b)=0
Sets the rockbolt logic flag, see getPropRBolt().
virtual double getRespCpStress2(bool bNorm, uint32 end) const =0
static const TType type_
Type ID number for this class, for use in convert_cast() and convert_getcast().
Definition: iselpile.h:24
virtual const IThing * getIThing() const =0
Returns a const IThing pointer.
virtual void setPropCSsFric(const double &d)=0
Set the shear coupling spring friction angle, see getPropCSsFric().
virtual bool getPropCSsConfInc() const =0
virtual ISEL * getISEL()=0
Returns a pointer to object base class, ISEL.
virtual double getPropCSnFric() const =0
Returns the normal coupling spring friction angle, see setPropCSnFric().
virtual void setPropCSsK(const double &d)=0
Sets the shear coupling spring stiffness, see getPropCSsK().
virtual double getRespCpDisp2(bool bNorm, uint32 end) const =0
virtual double getRespCpNGapVal2(uint32 end, uint32 dir) const =0
virtual void setPropCSnK(const double &d)=0
Sets the normal coupling spring stiffness, see getPropCSnK().
uint32 TType
class type indicator
Definition: basedef.h:46
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition: dim.h:150
Interface to the structural elements base class.
namespace Itasca
Definition: basememory.cpp:10