Mohr-Coulomb:
Since 06.12.2024 numgeo has two version of the Mohr-Coulomb model implemented:
Mohr-Coulomb
*Mechanical = Mohr-Coulomb
E [F/A], nu [-], c [F/A], phi_c [rad], psi [rad], theta_t [deg]
- \(E\) [F/A] is the Young's modulus of the material.
- \(\nu\) [-] is the Poisson's ratio.
- \(c\) [F/A] is the cohesion.
- \(\varphi_c\) [rad] is the critical friction angle.
- \(\psi\) [rad] is the dilation angle.
- \(\theta_t\) [deg] is the transition lode angle for the round-off at the compression and extension corners. Following the recommendations by \cite{abbo2011c2}, the transition angle is restricted to \(25.0^\circ \le \theta_t \le 29.5^\circ\).
State variables
In addition to the (effective) stress, the Mohr-Coulomb constitutive model takes additional state variables. Performing simulations with this model requires the prescription of those. The following state variables are contained in the model:
- Void ratio: \(e\),
void_ratio
. The prescription of the void ratio is mandatory, if the initialization is omitted or wrong values are prescribed the simulation will abort. However, for the evaluation of the material response, the void ratio is not considered in the constitutive model. It is just for output-purposes.
The state variables can be initialized in two different ways:
- Using the
*Initial conditions, type = state variables
command in the input file, e.g.*Initial conditions, type = state variables element_set_name, void_ratio, <value>
- Using the interface for user-defined initial state variables. In this approach, the vector holding the state variables is filled directly in a fortran subroutine as described in Section User defined state variables. The position of the state variable in the associated vector is as follows: statev(1) = \(e\)
Optional Parameters
*Optional mechanical parameter
<property 1>, <value 1>...
<property 2>, ...
tol_yield
: Tolerance for yield surface. Default is \(10^{-4}\).min_pressure
: Minimum mean effective stress in kPa (compression = positive). Use this parameter to define a tension cut-off, e.g.min_pressure, 0.
to cut-off any tensile stresses.return_mapping
: Method for returning inadmissible stress states on the yield surface. You can choose between Closest Point Projection (CPP)return_mapping, 0
and Cutting Plane Algorithm (CPA)return_mapping, 1
. Default is CPA.cep_ratio
: Ratio between elastic and elasto-plastic tangent stiffness \(\boldsymbol{C}\) returned by the constitutive model. Forcep_ratio, 0.0
the linear elastic tangent stiffness \(\boldsymbol{C}=\boldsymbol{C}^{el}\) is returned, forcep_ratio, 1.0
the consistent algorithmic (elasto-plastic) tangent stiffness \(\boldsymbol{C}=\boldsymbol{C}^{ep}\) is returned. Default iscep_ratio, 0.99
, i.e. \(\boldsymbol{C}=0.001\boldsymbol{C}^{el}+0.999\boldsymbol{C}^{ep}\)reduction_psi
: Flag that controls wether the reduction of dilatancy angle \(\psi\) should be considered during a strength reduction analysis or not. Forreduction_psi = 1
, the dilatancy angle will be updated according to \(\psi^{red}=\tan^{-1}\left(\dfrac{\tan \psi}{FoS}\right)\). See also the corresponding section Strength Reduction in the Theory Manual.reduction_nu
: Flag that controls wether the Poisson's ratio \(\nu\) should be modified during a strength reduction analysis to guarantee the inequality \(\sin \varphi \leq 1 - 2\nu\) according to the work of Zheng et al.1. Forreduction_nu = 1
\(\nu\) is modified, forreduction_nu = 0
\(\nu=const.\) (default). See also the corresponding section Strength Reduction in the Theory Manual.
Additional output variables
The following additional output variables are available in the *Output command:
- Void ratio:
void_ratio
- Current cohesion:
cohesion
- Current friction angle:
friction_angle
- Current dilation angle:
friction_angle
- Plastic points (areas undergoing plastic deformation):
plastic_points
Mohr-Coulomb-2
*Mechanical = Mohr-Coulomb-2
E [F/A], nu [-], c [F/A], phi_c [rad], psi [rad], p_t [F/A]
This implementation of the Mohr-Coulomb model utilizes the exact formulation of the yield surface and provides the elastic tangent Jacobian. Compared to the first Mohr-Coulomb implementation, this version is significantly faster as it eliminates the need for sub-stepping. The use of elastic tangent stiffness offers both advantages and disadvantages: it is more robust in the plastic limit, but it may require more iterations to achieve global equilibrium. Nevertheless, the increased calculation speed due to the absence of sub-stepping—often results in a substantial reduction in overall simulation time compared to its elasto-plastic counterpart. However, it is important to note that employing elastic stiffness might lead to a slight overestimation of the factor of safety (FoS) when this model is applied in a strength reduction analysis..
- \(E\) [F/A] is the Young's modulus of the material.
- \(\nu\) [-] is the Poisson's ratio.
- \(c\) [F/A] is the cohesion.
- \(\varphi_c\) [rad] is the critical friction angle.
- \(\psi\) [rad] is the dilation angle.
- \(p_t\) [F/A] is the tension cut value, positive values refer to tension, i.e. \(p_t=1\) kPa will cut the models response at tensile stresses smaller that 1 kPa.
-
H. Zheng, D. F. Liu, and C. G. Li. Slope stability analysis based on elasto-plastic finite element method. International Journal for Numerical Methods in Engineering, 64(14):1871–1888, 2005. doi:10.1002/nme.1406. ↩