39 #ifndef PressureIndependMultiYield_h    40 #define PressureIndependMultiYield_h    42 #include "PressureMultiYieldBase.h"    54     mutable double refShearModulus; 
    55     mutable double refBulkModulus; 
    57      void setupLocalMembers(
int nd, 
double r, 
double refShearModul, 
double refBulkModul, 
double cohesi, 
double peakShearStra, 
double frictionAng, 
double refPress, 
double pressDependCoe, 
int numberOfYieldSurf, 
const std::vector<double> &gredu);
    59     void elast2Plast(
void) 
const;
    61     void setUpSurfaces(
const std::vector<double> &);  
    63     double yieldFunc(
const T2Vector & stress, 
const std::vector<MultiYieldSurface> &,
int surface_num) 
const;
    65     void deviatorScaling(
T2Vector &,
const std::vector<MultiYieldSurface> &,
int, 
int count=0) 
const;
    67     void initSurfaceUpdate(
void) 
const;
    69     void paramScaling(
void) 
const;
    72     int setSubStrainRate(
void) 
const;
    74     int isLoadReversal(
void) 
const;
    75     void getContactStress(
T2Vector &) 
const;
    77     void setTrialStress(
const T2Vector &stress) 
const; 
    78     double getLoadingFunc(
const T2Vector & contact, 
const Vector & surfaceNormal,
int crossedSurface) 
const;
    80     void stressCorrection(
int crossedSurface) 
const;
    82     void updateActiveSurface(
void) 
const;
    84     void updateInnerSurface(
void) 
const;
    87     int  isCrossingNextSurface(
void) 
const;  
   100                                  double frictionAng = 0.,
   101                                  double refPress = 100, 
   102                                  double pressDependCoe = 0.0,
   103                                  int   numberOfYieldSurf = 20,
   104                    const std::vector<double> &gredu= std::vector<double>());
   108     void setup(
int nd, 
double r, 
double refShearModul, 
double refBulkModul, 
double cohesi, 
double peakShearStra, 
double frictionAng, 
double refPress, 
double pressDependCoe, 
int numberOfYieldSurf, 
const std::vector<double> &gredu);
   109     void setupPy(
const boost::python::dict &);
   111     inline double getRefShearModulus(
void)
 const   112       { 
return refShearModulus; }
   113     inline void setRefShearModulus(
const double &d)
   114       { refShearModulus= d; }
   116     inline double getRefBulkModulus(
void)
 const   117       { 
return refBulkModulus; }
   118     inline void setRefBulkModulus(
const double &d)
   119       { refBulkModulus= d; }
   134     void getBackbone(
Matrix &);
   139     const Vector &getCommittedStress(
void) 
const;
   140     const Vector &getCommittedStrain(
void) 
const;
   147     int revertToLastCommit(
void);
   158     const std::string &getType(
void) 
const ;
   161     int getOrder(
void) 
const ;
   168     void Print(std::ostream &s, 
int flag =0) 
const;
 Float vector abstraction. 
Definition: Vector.h:94
Communication parameters between processes. 
Definition: Communicator.h:66
Base class response objects. 
Definition: Response.h:81
const Vector & getStrain(void) const
Returns strain. 
Definition: PressureIndependMultiYield.cpp:395
const Vector & getStress(void) const
Returns the material stress vector at the current trial strain. 
Definition: PressureIndependMultiYield.cpp:337
NDMaterial * getCopy(void) const
Virtual constructor. 
Definition: PressureIndependMultiYield.cpp:430
void Print(std::ostream &s, int flag=0) const
Print stuff. 
Definition: PressureIndependMultiYield.cpp:635
Uniaxial p-y material that incorporates liquefaction effects. 
Definition: PyLiq1.h:61
int setTrialStrainIncr(const Vector &v)
Set trial strain increment. 
Definition: PressureIndependMultiYield.cpp:205
??. 
Definition: PressureIndependMultiYield.h:50
void setupPy(const boost::python::dict &)
Python version of the setup method. 
Definition: PressureIndependMultiYield.cpp:100
Uniaxial t-z material that incorporates liquefaction effects. 
Definition: TzLiq1.h:61
int updateParameter(int responseID, Information &eleInformation)
Updates the parameter identified by parameterID with info. 
Definition: PressureIndependMultiYield.cpp:458
int sendData(Communicator &)
Send object members through the communicator argument. 
Definition: PressureIndependMultiYield.cpp:490
int recvSelf(const Communicator &)
Receives object through the communicator argument. 
Definition: PressureIndependMultiYield.cpp:521
int sendSelf(Communicator &)
Sends object through the communicator argument. 
Definition: PressureIndependMultiYield.cpp:506
Base class for 2D and 3D materials. 
Definition: NDMaterial.h:101
int recvData(const Communicator &)
Receives object members through the communicator argument. 
Definition: PressureIndependMultiYield.cpp:498
const Matrix & getTangent(void) const
Return the material tangent stiffness. 
Definition: PressureIndependMultiYield.cpp:236
Open source finite element program for structural analysis. 
Definition: ContinuaReprComponent.h:35
int getResponse(int responseID, Information &matInformation)
Returns material response. 
Definition: PressureIndependMultiYield.cpp:564
Matrix of floats. 
Definition: Matrix.h:111
Second order tensor vector class. 
Definition: T2Vector.h:65
const Matrix & getInitialTangent(void) const
Return the material initial stiffness. 
Definition: PressureIndependMultiYield.cpp:307
int setTrialStrain(const Vector &strain)
Sets the value of the trial strain vector, that value used by {getStress()} and getTangent(), to be strain. 
Definition: PressureIndependMultiYield.cpp:168
??. 
Definition: PressureMultiYieldBase.h:44
int commitState(void)
Commit the state of the material. 
Definition: PressureIndependMultiYield.cpp:400
int revertToStart(void)
Revert the material to its initial state. 
Definition: PressureIndependMultiYield.h:149