!*************************************************************************************!
! TITLE: CFVR1327 - Cracking checking according to ACI 318
! SUBTITLE: Check a reinforced concrete beam for cracking according to ACI 318
!
! DESCRIPTION: A fixed beam which has a rectangular reinforced concrete section is subjected to
! DESCRIPTION: an axial compression force of 750000 N.
! 
! DESCRIPTION: The aim of the example is to obtain the check criterion according to ACI 318.
!
! ELEMENT TYPE: BEAM44
! MODULES:
! UNITS: SI
! KEYWORD1: Beam
! KEYWORD2: Cross Section
! KEYWORD3: Code Checking/Design
! KEYWORD4: Reinforced Concrete
! KEYWORD5: ACI 318
!
!*************************************************************************************!
  FINISH
  ~CFCLEAR,,1
   NomFile='CFVR1327'
 /TITLE,%NomFile%, Cracking checking according to ACI 318

! -------------------------------------------------------------------------------------
! Initial data
! -------------------------------------------------------------------------------------
! CivilFEM SETUP
 ~UNITS,SI
 ~CODESEL,,ACI

 !Parameters
 Phi=25.0
 Etype=44
 a=1
 b=0.6
 Cc=0.04
 r=(3*a)/4
 Smax=0.5

! Preprocessor
  /PREP7

! Material Definition
 ~CFMP,1,LIB,CONCRETE,ACI,fc_3500
 ~CFMP,2,LIB,REINF,ACI,fy_70000
 
! Element Type Definition
  ET,1, Etype

! Cross-section definition
~CSECDMS,1,REC,1,a,b
~RNFDEF,1,1,2,2, , Cc, , ,Phi,8, , ,4  
~RNFDEF,1,2,2,4, , Cc, , ,Phi,8, , ,4 
*DO,II,1,3
~TREFINE,1  
*ENDDO
~SECMDF,1,ACIPROP ,CC,,Cc,1
~SECMDF,1,ACIPROP ,CC,,Cc,2
~SECMDF,1,ACIPROP,CC,,Cc,3
~SECMDF,1,ACIPROP,CC,,Cc,4

! Beam & Shell property
~BMSHPRO,1,BEAM,1,1,,, Etype,,,,Beam property

! Model Construction
N,1                 ! Nodes input
N,5,5
FILL,1,5
E,1,2               ! Elements input
EGEN,4,1,1,1
D,1,ALL             ! Boundary conditions
ALLSEL

/SOLU
N  = 750000  ! Axial force
F,5,FX,N
SOLVE               

/POST1
! Postprocessor
~CFSET,,1,1      
~CHKCON,CRACK,,,Smax,   ! Alernative 1
   
!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparison number
 NComp = 3
 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)  = 'FS'  
LABEL( 2)  = 'S'
LABEL( 3)  = 'CRT_TOT'

! Correct data, obtained data
!--------------------------------------------------------------------------------------
VALUE( 1,1) = .955e08
VALUE( 2,1) = 0.88
VALUE( 3,1) = 0.568

~PLLSCON,FS,1,
*GET,VALUE( 1,2),ELEM,4,ETAB,CFETAB_J
~PLLSCON,S,1,
*GET,VALUE( 2,2),ELEM,4,ETAB,CFETAB_J
~PLLSCON,CRT_TOT,1,
*GET,VALUE( 3,2),ELEM,4,ETAB,CFETAB_J
  
! Warning and error tolerances
TOLER(  1,1) = 1E6                   $  TOLER(  1,2) = 1E6
TOLER(  2,1) = 1E-1                  $  TOLER(  2,2) = 1E-1
TOLER(  3,1) = 1E-1                  $  TOLER(  3,2) = 1E-1


!--------------------------------------------------------------------------------------
! Results comparison
!--------------------------------------------------------------------------------------
COMPARA.MAC