!*************************************************************************************!
! TITLE: CFVR2220 - Reinforced concrete checking according to British Standard 8110
! SUBTITLE: Biaxial bending & axial force checking.
!
! DESCRIPTION: A concrete cantilever beam with T shape section and reinforcement
! DESCRIPTION: uniformly distributed is subjected to an axial compression force and
! DESCRIPTION: moments at free end.
! DESCRIPTION:
! DESCRIPTION: Determine the total criterion according to BS 8110.
! DESCRIPTION:
!
! ELEMENT TYPE: BEAM4
! MODULES:
! UNITS: User
! KEYWORD1: Beam
! KEYWORD2: Cross Section
! KEYWORD3: Code Checking/Design
! KEYWORD4: Reinforced Concrete
! KEYWORD5: BS 8110
!
!*************************************************************************************!
  FINISH
  ~CFCLEAR,,1
  NomFile='CFVR2220'
  /TITLE, %NomFile%, BIAXIAL BENDING + AXIAL FORCE CHECKING BS8110

! -------------------------------------------------------------------------------------
! Initial data
! -------------------------------------------------------------------------------------
! CivilFEM SETUP
  ~UNITS,,LENG,M
  ~UNITS,,TIME,S
  ~UNITS,,FORC,MP
  ~CODESEL,,BS8110

! Preprocessor
  /PREP7

! Material Definition
  ~CFMP,1,LIB,CONCRETE,BS8110,C25
  ~CFMP,2,LIB,REINF,BS8110,Gr460A

! Element Type Definition
  ET,1,Beam4                            ! Element Type 1: 3D Beam

! Cross-section definition
  ~CSECDMS,1,T,1,0.5,0.2,0.45,0.15

! Reinforcement definition
  ~RNFDEF,1,1,2,2,0,0.046,0.002

! Beam & Shell property
  ~BMSHPRO,1,BEAM,1,1,,,4,1,0,,Beam property

! Model
  N,1
  N,5,5
  FILL,1,5
  E,1,2
  EGEN,4,1,1,1
! Boundary conditions
  D,1,ALL,0

/SOLU
! Solution
  M1=40.00           ! 40.00 m*Mp bending moment
  M2=30.00           ! 30.00 m*Mp bending moment
  H=-70.82           ! 70.82 Mp axial force
  F,5,FX,H
  F,5,MZ,M1
  F,5,MY,M2
  SOLVE               ! Calculation

/POST1
! Postprocessor
  ~CFSET,,1,1         ! Read first load step

! Bending + Axial checking
  ~CHKCON,3DB,,,,,,1

!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparision number
  NComp = 2
  NComp_ch = 0

! Matrix dim.
  *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,1) = 'CRTC2D_I'
  LABEL(2,1) = 'CRTC2D_J'

! Correct Values
  VALUE(1,1) = 5.159
  VALUE(2,1) = 5.159

! Comparison
 ~PLLSCON,CRT_TOT
 *GET,VALUE(1,2),ELEM,4,ETAB,CFETAB_I
 ~PLLSCON,CRT_TOT
 *GET,VALUE(2,2),ELEM,4,ETAB,CFETAB_J

! Warning and error tolerances
  TOLER( 1,1)= 1E-1 $ TOLER( 1,2)= 1E-1  ! Rounding error accepted
  TOLER( 2,1)= 1E-1 $ TOLER( 2,2)= 1E-1  ! Rounding error accepted

!--------------------------------------------------------------------------------------
! Results Comparison
!--------------------------------------------------------------------------------------
  COMPARA.MAC
