30 #ifndef PressureMultiYieldBase_h 31 #define PressureMultiYieldBase_h 33 #include <material/nD/soil/SoilMaterialBase.h> 39 class MultiYieldSurface;
48 static std::vector<double>
rhox;
57 static std::vector<double> residualPressx;
58 static std::vector<double> stressRatioPTx;
62 mutable std::vector<MultiYieldSurface> theSurfaces;
63 mutable std::vector<MultiYieldSurface> committedSurfaces;
64 mutable int activeSurfaceNum;
65 mutable int committedActiveSurf;
72 void resizeIfNeeded(
void);
73 void setup(
int nd,
double r,
double frictionAng,
double peakShearStra,
double refPress,
double pressDependCoe,
double cohesi,
int numberOfYieldSurf);
78 PressureMultiYieldBase (
int tag,
int classTag,
int nd,
double rho,
double frictionAng,
double peakShearStra,
double refPress,
double pressDependCoe,
double cohesi = 0.1,
int numberOfYieldSurf = 20),
86 void setRho(
const double &);
88 inline double getFrictionAngle(
void)
const 89 {
return frictionAnglex[matN];}
90 void setFrictionAngle(
const double &);
91 inline double getRefPressure(
void)
const 92 {
return refPressurex[matN]; }
93 void setRefPressure(
const double &);
94 inline double getPeakShearStrain(
void)
const 95 {
return peakShearStrainx[matN]; }
96 void setPeakShearStrain(
const double &);
97 inline double getCohesion(
void)
const 98 {
return cohesionx[matN]; }
99 void setCohesion(
const double &);
100 inline double getPressDependCoeff(
void)
const 101 {
return pressDependCoeffx[matN]; }
102 void setPressDependCoeff(
const double &);
103 inline int getNumberOfSurfaces(
void)
const 104 {
return numOfSurfacesx[matN]; }
105 void setNumberOfSurfaces(
const int &);
static std::vector< double > frictionAnglex
internal friction angle.
Definition: PressureMultiYieldBase.h:49
static std::vector< double > rhox
mass density
Definition: PressureMultiYieldBase.h:48
Material that couples the responses of two phases: fluid and solid.
Definition: SoilMaterialBase.h:59
double getRho(void) const
Get material density.
Definition: PressureMultiYieldBase.h:84
Communication parameters between processes.
Definition: Communicator.h:66
int recvData(const Communicator &)
Receives object members through the communicator argument.
Definition: PressureMultiYieldBase.cc:225
static std::vector< double > pressDependCoeffx
pressure dependency coefficient
Definition: PressureMultiYieldBase.h:53
static std::vector< double > cohesionx
apparent cohesion.
Definition: PressureMultiYieldBase.h:52
static std::vector< int > numOfSurfacesx
number of yield surfaces.
Definition: PressureMultiYieldBase.h:54
static std::vector< double > peakShearStrainx
peak shear strain.
Definition: PressureMultiYieldBase.h:50
Open source finite element program for structural analysis.
Definition: ContinuaReprComponent.h:35
Matrix of floats.
Definition: Matrix.h:111
Second order tensor vector class.
Definition: T2Vector.h:65
void setRho(const double &)
Set material density.
Definition: PressureMultiYieldBase.cc:74
int sendData(Communicator &)
Send object members through the communicator argument.
Definition: PressureMultiYieldBase.cc:212
static std::vector< double > refPressurex
reference pressure.
Definition: PressureMultiYieldBase.h:51
??.
Definition: PressureMultiYieldBase.h:44