Left

CivilFEM Online Help

Right

CFVR8002 - Mohr-Coulomb

CivilFEM's Mohr-Coulomb equivalent to ANSYS's Linear Extended Drucker-Prager

Checking equivalence between the material models Mohr-Coulomb of CivilFEM and Linear Extended Drucker-Prager of ANSYS
It uses the following material models:

  • Mohr-Coulomb
  • Linear Extended Drucker-Prager

Element types used in the model: PLANE42,PLANE182,SURF153

Needed CivilFEM Modules:
Geotechnical Module
Bridges and Civil Non Linearities Module
Advanced Prestressed Concrete Module

The example can be launched on an educational license.
KEYWORDS
Materials
Geotechnics
Material Models

Model Statistics
Number of elements 20
Number of nodes 25
Number of civil materials 2
Number of cross sections 0
Number of shell vertices 0

Log file: CFVR8002.DAT


  FINISH
  ~CFCLEAR,,1
  NomFile='CFVR8002'
  /TITLE, %NomFile%, CivilFEM's Mohr-Coulomb

! -------------------------------------------------------------------------------------
! Initial data
! -------------------------------------------------------------------------------------
  ~UNITS,SI
  /PREP7

  *AFUN,DEG

  HYP   = 0.      ! hyperbolic parameter
  ECC   = 1.      ! eccentricity parameter
  LENG  = 1.      ! length of the rectangle edge
  NDIV  = 4       ! number of division per side side
  NTINC = 50      ! number of substeps per step
  FS    = 1.05E+4 ! surface force
  INODE = 1       ! node for results checking

! -------------------------------------------------------------------------------------
! Model definition
! -------------------------------------------------------------------------------------
  LOCAL,11,0

  ! Materials

  ! Mohr-Coulomb
  ~CFMP,1,LIB,SOIL,,CL
  ~CFMP,1,SOIL,KPLA,,2
  ~CFMP,1,SOIL,KMCSP,,1
  ~CFMP,1,SOIL,HYP,,HYP
  ~CFMP,1,SOIL,ECC,,ECC
  ~CFMP,1,SOIL,IFLOW,,0
  ~CFGET,PHI,MATERIAL,1,SOIL,PHIMCeff
  ~CFGET,COH,MATERIAL,1,SOIL,CMCeff

  ! Linear Extended Drucker-Prager
  ~CFMP,2,LIB,SOIL,,CL
  TB,EDP,2,,,LYFUN
  TMP  = SIN(PHI)
  TMP1 = 6/(3 - TMP)
  C1 = TMP*TMP1
  C2 = COS(PHI)*TMP1*COH
  TBDATA,1,C1,C2
  TB,EDP,2,,,LFPOT
  TBDATA,1,C1

  ! Element types

  ET,1,PLANE42
  KEYOPT,1,2,1
  KEYOPT,1,3,2

  ET,2,PLANE182
  KEYOPT,2,1,0
  KEYOPT,2,3,2

  ET,3,SURF153
  KEYOPT,3,2,1
  KEYOPT,3,3,2
  KEYOPT,3,4,1

  ! Geometry

  K,1,0,0
  K,2,LENG,0
  K,3,LENG,LENG
  K,4,0,LENG
  A,1,2,3,4
  LESIZE,ALL,,,NDIV

  ! Meshing

  LSEL,ALL
  TYPE,1
  AMESH,1
  TYPE,3
  ESYS,11
  LMESH,2

  ! Loads

  DL,1,,UY
  DL,4,,UX
  SFL,3,PRES,2*FS
  SFL,2,PRES,FS
 
  ! ESEL,S,TYPE,,3
  ! SFE,ALL,2,PRES,,FS

!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparison number
  NCOMP    = 9
  NCOMP_CH = 0

! Array dimensions
  *DIM,LABEL,CHAR,NCOMP,1
  *DIM,LABEL_CH,CHAR,NCOMP_CH,1
  *DIM,VALUE,,NCOMP,3
  *DIM,VALUE_CH,CHAR,NCOMP_CH,3
  *DIM,TOLER,,NCOMP,2

! Labels
!--------------------------------------------------------------------------------------
  LABEL(1) = 'SX'
  LABEL(2) = 'SY'
  LABEL(3) = 'SEQV'
  LABEL(4) = 'EPELX'
  LABEL(5) = 'EPELY'
  LABEL(6) = 'EPELEQV'
  LABEL(7) = 'EPPLX'
  LABEL(8) = 'EPPLY'
  LABEL(9) = 'EPPLEQV'

! Warning errors and tolerances
  TOLER(1,1) = 1.E+3  $ TOLER(1,2) = 1.E+3
  TOLER(2,1) = 1.E+3  $ TOLER(2,2) = 1.E+3
  TOLER(3,1) = 1.E+3  $ TOLER(3,2) = 1.E+3
  TOLER(4,1) = 2.5E-5 $ TOLER(4,2) = 2.5E-5
  TOLER(5,1) = 2.5E-5 $ TOLER(5,2) = 2.5E-5
  TOLER(6,1) = 3.1E-5 $ TOLER(6,2) = 3.1E-5
  TOLER(7,1) = 1.E-5  $ TOLER(7,2) = 1E-5
  TOLER(8,1) = 1.E-5  $ TOLER(8,2) = 1E-5
  TOLER(9,1) = 1.E-5  $ TOLER(9,2) = 1E-5

! Correct values
!--------------------------------------------------------------------------------------
  /SOLU

  SOLCONTROL,OFF
  NROPT,FULL
  NEQIT,50
  LNSRCH,ON
  NSUBST,NTINC

  OUTRES,ALL,NONE
  OUTRES,NSOL,LAST
  OUTRES,ESOL,LAST

  /PREP7
  ESLA
  EMODIF,ALL,MAT,2
  EMODIF,ALL,TYPE,2
  ESEL,ALL

  /SOLU
  SOLVE

  *GET,VALUE(1,1),NODE,INODE,S,X
  *GET,VALUE(2,1),NODE,INODE,S,Y
  *GET,VALUE(3,1),NODE,INODE,S,EQV
  *GET,VALUE(4,1),NODE,INODE,EPEL,X
  *GET,VALUE(5,1),NODE,INODE,EPEL,Y
  *GET,VALUE(6,1),NODE,INODE,EPEL,EQV
  *GET,VALUE(7,1),NODE,INODE,EPPL,X
  *GET,VALUE(8,1),NODE,INODE,EPPL,Y
  *GET,VALUE(9,1),NODE,INODE,EPPL,EQV

! Obtained values
!--------------------------------------------------------------------------------------
  /PREP7
  ESLA
  EMODIF,ALL,MAT,1
  EMODIF,ALL,TYPE,1
  ESEL,ALL

  /SOLU
  SOLVE

  *GET,VALUE(1,2),NODE,INODE,S,X
  *GET,VALUE(2,2),NODE,INODE,S,Y
  *GET,VALUE(3,2),NODE,INODE,S,EQV
  *GET,VALUE(4,2),NODE,INODE,EPEL,X
  *GET,VALUE(5,2),NODE,INODE,EPEL,Y
  *GET,VALUE(6,2),NODE,INODE,EPEL,EQV
  *GET,VALUE(7,2),NODE,INODE,EPPL,X
  *GET,VALUE(8,2),NODE,INODE,EPPL,Y
  *GET,VALUE(9,2),NODE,INODE,EPPL,EQV

!--------------------------------------------------------------------------------------
! Results comparison
!--------------------------------------------------------------------------------------
  COMPARA.MAC

Results

LabelTargetCivilFEMRatioTolerance
SX 10499 104991.000 1000
SY -21001 -210011.000 1000
SEQV 27568 275681.000 1000
EPELX 0.0011295 0.00112951.0002.5e-005
EPELY-0.0010755-0.00107551.0002.5e-005
EPELEQV 0.0013784 0.00137841.0003.1e-005
EPPLX 0.0013492 0.00134921.000 1e-005
EPPLY-0.00052781-0.000527811.000 1e-005
EPPLEQV 0.0010889 0.00108891.000 1e-005


Contains proprietary and confidential information of Ingeciber, S.A.