!*******************************************************************************
! TITLE: CFVR0968 - Shell VF reinforcement check according to EC2
! SUBTITLE: Bending and axial check taking into account only torsional moments.
!
! DESCRIPTION: The model is made up of a square shell element of 6.0m x 1.0m.
! DESCRIPTION: The nodes of one side are completely restrained.
! DESCRIPTION:
! DESCRIPTION: A surface load of 408176 N/m is applied on the
! DESCRIPTION: element.
! DESCRIPTION:
! DESCRIPTION: The results are compared with those of two beams.
! DESCRIPTION:
! DESCRIPTION: The reinforcement checking code is the EC2.
!
! ELEMENT TYPE: Shell181
! MODULES:
! UNITS: User
! KEYWORD1: Shell
! KEYWORD2: Shell Vertex
! KEYWORD3: Reinforced Concrete
! KEYWORD4: EC2
!*******************************************************************************
   FINISH
  ~cfclear,,1
   NomFile='CFVR0968'
  /TITLE, %NomFile%, Shell VF reinforcement check according to EC2

! ------------------------------------------------------------------------------
! Model definition and solve
! ------------------------------------------------------------------------------

! Setup
 ~UNITS,SI
 ~CODESEL,,EC2-08
 !~CFCONFG,RESULT,CFSHF,1

  /PREP7
! Materials
 ~CFMP,5,LIB,CONCRETE,EC2,C35/45 
 ~CFMP,2,LIB,REINF,EC2,S400 

! Element types
  ET,10,SHELL181
  ET,20,Beam188

! Shell Vertex
  t=1.0        ! Thickness
  r_sup=0.3        ! Top Cover 
  r_inf=0.1       ! Bottom Cover
  th = 0        ! Reinforcement angle
  AtReinf_sup= 0.0275
  AtReinf_inf= 0.0042
 ~SHLRNF,10,t,5,2,,0.0,0.0,AtReinf_inf,AtReinf_sup,0.0,0.0,45.00,,,,,,,,,0.0,0.0,r_inf,r_sup,Shell property

 ! Cross-section definition
 ~CSECDMS,20,REC,5,t,1 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0  
 ~RNFDEF,20,1,2,2,0,r_sup,AtReinf_sup, , , , , ,  
 ~RNFDEF,20,2,2,4,0,r_inf,AtReinf_inf, , , , , ,  

 ! Beam & Shell property
 ~BMSHPRO,10,SHELL,10,,,,181,,,,Shell property
  KEYOPT,10,3,2  
 ~BMSHPRO,20, BEAM,20,,,,188,,,,Beam property
  KEYOPT,20,3,3   

 ! Shell Nodes
  K,10,0.0,0.0
  K,20,1.0,0.0
  K,40,1.0,10.0
  K,50,0.0,10.0    

  A,50,40,20,10
  ! Beam Nodes
  K,100,.5,0.0,3
  K,200,.5,10,3  ! Beam Length 10m
  L,100,200
  
  ESIZE,0.05
! Elements
  MAT,5
  TYPE,10
  SECNUM,10
  AMESH,ALL
  !Beam
  MAT,5
  TYPE,20
  SECNUM,20
  LMESH,5
 ! /ESHAPE,1.0 

! Shell Boundary conditions
   DL,1, ,UZ,
   DL,1, ,UX,
   DL,1, ,ROTY,
   DL,3, ,UZ,   
   DL,3, ,UX,    

! Beam Boundary conditions
  DK,100, , , ,0,UY,UX,ROTY,ROTX, , ,
  DK,200, , , ,0,UX,UY,UZ,ROTY,ROTX, ,   
  FINISH
  /SOLU
  
! Pressure on shells
  ESEL,S,ENAME,,181
  SFA,1,2,PRES,408176
  ESEL,S,ENAME,,188
  SFBEAM,ALL,2,PRES,-408176, , , , , ,0 
  ALLSEL
  SOLVE

  FINISH
  /POST1
  ! Postprocessor
  ~CFSET,,1         ! Read first load step
  ! Bending + Axial checking for rectangular sections according to Eurocode 2
  ~CHKCON,2DB, ,0,0,0,
  ! Virtual Frame (VF Method)
  ~CHKCON,SHELL,VF, ,1,0, 
  
!-------------------------------------------------------------------------------
! Data check
!-------------------------------------------------------------------------------
! Data comparison number
  NComp = 1
  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) = 'CRT_TOT'

! Comparison
  ~CFSET,1
  ~CFGET,VALUE(1,1),ELEMENT,4100,RESULT,CRT_X,I ! Total Criterion X direction in Beam element
  ~CFSET,2 
  ~CFGET,VALUE(1,2),ELEMENT,1893 ,RESULT,CRT_Y,I ! Total Criterion Y direction in Shell element
  
! Warning and error tolerances
  TOLER(1,1)= 0.025*VALUE(1,1) $ TOLER(1,2)= 0.025*VALUE(1,1)

!-------------------------------------------------------------------------------
! Results comparison
!-------------------------------------------------------------------------------
  COMPARA.MAC
