29 #ifndef PressureDependMultiYieldBase_h 30 #define PressureDependMultiYieldBase_h 32 #include "PressureMultiYieldBase.h" 38 class MultiYieldSurface;
47 static double* refShearModulusx;
48 static double* refBulkModulusx;
49 static double* phaseTransfAnglex;
50 static double* contractParam1x;
51 static double* dilateParam1x;
52 static double* dilateParam2x;
53 static double* einitx;
54 static double* liquefyParam1x;
55 static double* liquefyParam2x;
56 static double* volLimit1x;
57 static double* volLimit2x;
58 static double* volLimit3x;
65 mutable double modulusFactor;
66 mutable double initPress;
68 mutable double pressureD;
69 double pressureDCommitted;
73 mutable double PPZSize;
74 double PPZSizeCommitted;
75 mutable double cumuDilateStrainOcta;
76 mutable double maxCumuDilateStrainOcta;
77 mutable double cumuTranslateStrainOcta;
78 mutable double prePPZStrainOcta;
79 mutable double oppoPrePPZStrainOcta;
84 double cumuDilateStrainOctaCommitted;
85 double maxCumuDilateStrainOctaCommitted;
86 double cumuTranslateStrainOctaCommitted;
87 double prePPZStrainOctaCommitted;
88 double oppoPrePPZStrainOctaCommitted;
96 void elast2Plast(
void)
const;
98 double yieldFunc(
const T2Vector & stress,
const std::vector<MultiYieldSurface> &surfaces,
int surface_num)
const;
99 void deviatorScaling(
T2Vector & stress,
const std::vector<MultiYieldSurface> &surfaces,
int surfaceNum)
const;
100 void initSurfaceUpdate(
void)
const;
103 int setSubStrainRate(
void)
const;
104 int isLoadReversal(
const T2Vector &)
const;
105 void getContactStress(
T2Vector &contactStress)
const;
107 double getModulusFactor(
const T2Vector &stress)
const;
108 void setTrialStress(
const T2Vector &stress)
const;
109 double getLoadingFunc(
const T2Vector & contact,
const T2Vector & surfaceNormal,
110 double plasticPotential,
int crossedSurface)
const;
112 void updateActiveSurface(
void)
const;
113 void updateInnerSurface(
void)
const;
116 int isCrossingNextSurface(
void)
const;
125 double refShearModul,
128 double peakShearStra,
130 double pressDependCoe,
131 double phaseTransformAngle,
132 double contractionParam1,
133 double dilationParam1,
134 double dilationParam2,
135 double liquefactionParam1,
136 double liquefactionParam2,
137 double liquefactionParam4,
138 int numberOfYieldSurf = 20,
141 double volLimit1 = 0.9,
142 double volLimit2 = 0.02,
143 double volLimit3 = 0.7,
154 double getRho(
void)
const 155 {
return rhox[matN];} ;
167 const Matrix &getInitialTangent(
void);
169 void getBackbone(
Matrix &);
172 const Vector &getStrain (
void);
183 int commitState(
void);
186 int revertToLastCommit (
void);
188 int revertToStart(
void) {
return 0;}
191 int getOrder(
void)
const;
197 void Print(std::ostream &s,
int flag =0);
199 int updateParameter(
int responseID,
Information &eleInformation);
int setTrialStrainIncr(const Vector &v)
Asigna el valor del incremento de la trial strain.
Definition: PressureDependMultiYieldBase.cc:298
const Vector & getCommittedStress(void)
Returns commited stresses.
Definition: PressureDependMultiYieldBase.cc:621
Tensor de segundo orden.
Definition: T2Vector.h:67
int setTrialStrain(const Tensor &v)
Asigna el trial strain value.
Definition: PressureDependMultiYieldBase.h:176
int setTrialStrain(const Vector &strain)
Asigna el trial strain value.
Definition: PressureDependMultiYieldBase.cc:264
const Vector & getCommittedStrain(void)
Returns commited strains.
Definition: PressureDependMultiYieldBase.cc:663
void Print(std::ostream &s, int flag=0)
Imprime el objeto.
Definition: PressureDependMultiYieldBase.cc:615
??.
Definition: PressureDependMultiYieldBase.h:43
??.
Definition: PressureMultiYieldBase.h:43
int sendSelf(CommParameters &)
Sends object through the channel being passed as parameter.
Definition: PressureDependMultiYieldBase.cc:489
int getResponse(int responseID, Information &matInformation)
Returns material response.
Definition: PressureDependMultiYieldBase.cc:588
int recvSelf(const CommParameters &)
Receives object through the channel being passed as parameter.
Definition: PressureDependMultiYieldBase.cc:504
int recvData(const CommParameters &)
Receives object members through the channel being passed as parameter.
Definition: PressureDependMultiYieldBase.cc:470
Communication parameters between processes.
Definition: CommParameters.h:65
int setTrialStrainIncr(const Tensor &v)
Asigna el valor del incremento de la trial strain.
Definition: PressureDependMultiYieldBase.h:178
================================================================================
Definition: ContinuaReprComponent.h:34
Definition: Response.h:71
int sendData(CommParameters &)
Send object members through the channel being passed as parameter.
Definition: PressureDependMultiYieldBase.cc:451