!*************************************************************************************!
! TITLE: CFVR0941 - In-Plane Shear Calculation – ACI 349-01 Wall - seismic/non-seismic
! SUBTITLE: Check of reinforcement for in-plane shear and membrane forces
!
! DESCRIPTION: To investigate the design of reinforcement for in-plane shear and membrane  
! DESCRIPTION: forces for ACI 349-01, a simple 5 ft x 25 ft x 1 ft slab model was used.
! DESCRIPTION: 
! DESCRIPTION: The 5-element model consists of Shell43 elements.  Vertical and lateral
! DESCRIPTION: loads were applied at nodes 3 and 8.
! DESCRIPTION:
! DESCRIPTION: The wall is restrained at nodes 1 and 2 at the base of the model.
! DESCRIPTION: Node 1 is restrained in the x, y, and z directions for translation as
! DESCRIPTION: well as rotation in the x and z directions.
! DESCRIPTION:
! DESCRIPTION: Node 2 is restrained in the y and z directions for translation as well
! DESCRIPTION: as rotation in the x and z directions. 
! DESCRIPTION: 
!
! ELEMENT TYPE: Shell43
! MODULES:
! UNITS: BIN
! KEYWORD1: Shell
! KEYWORD2: Shell Vertex
! KEYWORD3: Reinforced Concrete
! KEYWORD4: ACI 349
!*************************************************************************************!
 
FINISH
~CFCLEAR,,1
NomFile='CFVR0941'
/TITLE, %NomFile%,In-Plane Shear Calculation, ACI 349-01 Wall

~CODESEL,,ACI349
~UNITS,,LENG,IN 
~UNITS,,FORC,LBF
~UNITS,,PRES,,0 ,uuP
! ~CFCONFG,RESULT,CFSHF,1

!-------------------------------------------------------------------------------
! Model definition
!-------------------------------------------------------------------------------

THK    = 1*12.0 	! shell thickness 
COVER  = 0.8		! cover
WDTH   = 5*12.0		! wall width 
L      = 25*12.0	! wall heigth


/PREP7  
ET,1,SHELL43
~CFMP,1,LIB,CONCRETE,ACI,fc_6000
~CFMP,1,USER
~CFMP,1,ACI_C   ,fc_t    ,,6000 ,7,0,0  
~CFMP,2,LIB,REINF,ACI,fy_60000  

~SHLRNF,1,THK,1,2,COVER						! Bending Reinforcement
! ~SHLSHR, IVTX, MATOP,ASSOP, PHIOP, NXOP, NYOP, SXOP, SYOP, ASSOPX, ASSOPY
~SHLSHR,      1,     2,      ,      ,     ,     ,     ,     , 	! Shear Reinforcement
! ~SHLIPSH,IVTX, MATIP, ASSIPX, ASSIPY		
~SHLIPSH,     1,	 2,0.08334 , 0.0987				! In-plane Reinforcement
~BMSHPRO,1,SHELL,1,1,1,1,43,,,,Shell 1

K,1
K,2,    ,,L
K,3,WDTH,,L
K,4,WDTH,,

A,1,2,3,4

TYPE,1
REAL,1
MAT,1

AESIZE,ALL,5*12.0, 
MSHAPE,0,2D 
MSHKEY,1 
AMESH,ALL   
!LOCAL, , , XC, , ,THXY, THYZ, THZX, PAR1, PAR2
LOCAL,11,0,-10,0,0,-90,,-90,1,1,
EMODIF,ALL,ESYS,11,		! X Element horizontal, Y Element vertical
CSYS,0
/VIEW,1,,-1 

!-------------------------------------------------------------------------------
! Model resolution
!-------------------------------------------------------------------------------
FINISH
/SOLU

F,2,FX,140000
F,2,FY,80000
F,2,FZ,-40000

F,7,FX,140000
F,7,FY,80000
F,7,FZ,-40000

! Node 1 is restrained in x,y,z directions for translation 
! as well as rotation in the x and z directions
D,1, , , , , ,UX,UY,UZ,ROTX,ROTZ,
! Node 2 is restrained in y,z directions for translation 
! as well as rotation in the x and z directions
D,8, , , , , ,UY,UZ,ROTX,ROTZ, , 
ALLSEL
SOLVE

FINISH
/POST1

~CFSET,,1 
! Element # 1 is selected for design
ESEL,S,,,1
!~CHKCON,SHELL,IPSHEAR,, VAL1, VAL2, VAL3, 
~CHKCON, SHELL,IPSHEAR,,    1,     ,    1, ! VAL1=1-> Walls non-seismic loads, VAL3=1->Fi=0.85  
~CHKCON, SHELL,IPSHEAR,,    2,     ,    1, ! VAL1=2-> Walls seismic loads,     VAL3=1->Fi=0.85 
 


 
!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparison number
NComp = 24
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) = 'NSCRT_1X'		! ACI 349-01  (11.10.3)
LABEL( 2,1) = 'NSCRT_1Y'
LABEL( 3,1) = 'NSCRT_2X'		! ACI 349-01  (11.10.5, eq.11-33)
LABEL( 4,1) = 'NSCRT_2Y'
LABEL( 5,1) = 'NSCRT_3X'		! ACI 349-01 (21.6.5.2)
LABEL( 6,1) = 'NSCRT_3Y'
LABEL( 7,1) = 'SCRT_1X'		    ! ACI 349-01 (11.10.9.2)
LABEL( 8,1) = 'SCRT_1Y'
LABEL( 9,1) = 'SCRT_2X'		    ! ACI 349-01 (21.6.2.1)
LABEL(10,1) = 'SCRT_2Y'
LABEL(11,1) = 'SCRT_3X'		    ! ACI 349-01 (21.6.5.6) 
LABEL(12,1) = 'SCRT_3Y'
      
! Correct values
~CFGET,Txy_Shell, ELEMENT, 1, FORCE,TXY, I   ! In-plane shear
! Walls non-seismic design
VALUE( 1,1) = 1.00                        !   'NSCRT_1X'	
VALUE( 2,1) = 1.00                        !   'NSCRT_1Y'
VALUE( 3,1) = ABS(Txy_Shell/6320.71)      !   'NSCRT_2X'
VALUE( 4,1) = ABS(Txy_Shell/6320.71)      !   'NSCRT_2Y'
VALUE( 5,1) = 0.0025/(0.0987/12)          !   'NSCRT_3X'
VALUE( 6,1) = 0.0025/(0.08334/12)         !   'NSCRT_3Y'
! Walls seismic design
VALUE( 7,1) = 1.00					       !   'SCRT_1X' 
VALUE( 8,1) = 1.00                         !   'SCRT_1Y'	
VALUE( 9,1) = ABS(Txy_Shell/6320.71)       !   'SCRT_2X' 
VALUE(10,1) = ABS(Txy_Shell/6320.71)       !   'SCRT_2Y'
VALUE(11,1) = 0.0025/(0.0987/12)           !   'SCRT_3X'
VALUE(12,1) = 0.0025/(0.08334/12)          !   'SCRT_3Y'

! CivilFEM values     
~CFSET,1	! Walls non-seismic design
~CFGET,VALUE( 1,2), ELEMENT, 1 ,RESULT , CRT_1_X, I 	
~CFGET,VALUE( 2,2), ELEMENT, 1 ,RESULT , CRT_1_Y, I 
~CFGET,VALUE( 3,2), ELEMENT, 1 ,RESULT , CRT_2_X, I 	
~CFGET,VALUE( 4,2), ELEMENT, 1 ,RESULT , CRT_2_Y, I 
~CFGET,VALUE( 5,2), ELEMENT, 1 ,RESULT , CRT_3_X, I 	
~CFGET,VALUE( 6,2), ELEMENT, 1 ,RESULT , CRT_3_Y, I 	

~CFSET,2	! Walls seismic design
~CFGET,VALUE( 7,2), ELEMENT, 1 ,RESULT , CRT_1_X, I 	
~CFGET,VALUE( 8,2), ELEMENT, 1 ,RESULT , CRT_1_Y, I 
~CFGET,VALUE( 9,2), ELEMENT, 1 ,RESULT , CRT_2_X, I 	
~CFGET,VALUE(10,2), ELEMENT, 1 ,RESULT , CRT_2_Y, I 
~CFGET,VALUE(11,2), ELEMENT, 1 ,RESULT , CRT_3_X, I 	
~CFGET,VALUE(12,2), ELEMENT, 1 ,RESULT , CRT_3_Y, I 
             
! Warning and error tolerances
TOLER( 1,1)= 1E-2 $ TOLER( 1,2)= 1E-2 
TOLER( 2,1)= 1E-2 $ TOLER( 2,2)= 1E-2 
TOLER( 3,1)= 1E-2 $ TOLER( 3,2)= 1E-2
TOLER( 4,1)= 1E-2 $ TOLER( 4,2)= 1E-2
TOLER( 5,1)= 1E-2 $ TOLER( 5,2)= 1E-2
TOLER( 6,1)= 1E-2 $ TOLER( 6,2)= 1E-2
TOLER( 7,1)= 1E-2 $ TOLER( 7,2)= 1E-2
TOLER( 8,1)= 1E-2 $ TOLER( 8,2)= 1E-2
TOLER( 9,1)= 1E-2 $ TOLER( 9,2)= 1E-2
TOLER(10,1)= 1E-2 $ TOLER(10,2)= 1E-2
TOLER(11,1)= 1E-2 $ TOLER(11,2)= 1E-2
TOLER(12,1)= 1E-2 $ TOLER(12,2)= 1E-2
! VERIFICAMOS CON NUEVOS CHEQUEOS LAS MEJORAS REALIZADAS CON LA ACI 349-13
!-------------------------------------------------------------------------------
/PREP7

~MEMBPRO,1,ACI349,ALL,,1.5
! ~SHLIPSH,IVTX, MATIP, ASSIPX, ASSIPY		
~SHLIPSH,     1,	 2,0.08334, 0.0987 				! In-plane Reinforcement
~BMSHPRO,1,SHELL,1,1,1,1, 43,1,, ,Shell 1   

/SOLU

F,2,FX,140000
F,2,FY,80000
F,2,FZ,-40000

F,7,FX,140000
F,7,FY,80000
F,7,FZ,-40000

ALLSEL
SOLVE

/POST1
~CFSET,,1
ESEL,S,,,1
~CHKCON, SHELL,IPSHEAR,,    1,     ,    1,   1   ! VAL1=2-> Walls seismic loads,     VAL3=1->Fi=0.85   VAL4=2->Y=direccion vertical    


! Correct values
~CFGET,Txy_Shell, ELEMENT, 1, FORCE,TXY, I   ! In-plane shear
! Walls non-seismic design
VALUE(13,1) = 1.00                             !   'NSCRT_1X'			
VALUE(14,1) = 1.00                             !   'NSCRT_1Y'
VALUE(15,1) = ABS(Txy_Shell/6320.71)           !   'NSCRT_2X'
VALUE(16,1) = ABS(Txy_Shell/6320.71)           !   'NSCRT_2Y'
VALUE(17,1) = 0.574                            !   'NSCRT_3X'
VALUE(18,1) = 0.0025/(0.08334/12)              !   'NSCRT_3Y'

! CivilFEM values     
~CFSET,1	! Walls non-seismic design
~CFGET,VALUE(13,2), ELEMENT, 1 ,RESULT ,CRT_1_X, I 	
~CFGET,VALUE(14,2), ELEMENT, 1 ,RESULT ,CRT_1_Y, I  	
~CFGET,VALUE(15,2), ELEMENT, 1 ,RESULT ,CRT_2_X, I 	
~CFGET,VALUE(16,2), ELEMENT, 1 ,RESULT ,CRT_2_Y, I  	  
~CFGET,VALUE(17,2), ELEMENT, 1 ,RESULT ,CRT_3_X, I 	
~CFGET,VALUE(18,2), ELEMENT, 1 ,RESULT ,CRT_3_Y, I  


/PREP7

~MEMBPRO,1,ACI349,ALL,,1.5	
~SHLIPSH,     1,	 2,0.0987 , 0.0679	
~BMSHPRO,1,SHELL,1,1,1,1, 43,1,, ,Shell 1   

/SOLU

F,2,FX,140000
F,2,FY,80000
F,2,FZ,-40000

F,7,FX,140000
F,7,FY,80000
F,7,FZ,-40000

ALLSEL

SOLVE

/POST1
~CFSET,,1
ESEL,S,,,1

~CHKCON,SHELL,  IPSHEAR,,   2,    , 1  ,   1  ! VAL1=1-> Walls seismic loads    , VAL3=1->Fi=0.85  VAL4=2->Y=direccion vertical  

	
! Correct values
~CFGET,Txy_Shell, ELEMENT, 1, FORCE,TXY, I   ! In-plane shear                                                  	
                                                  
 ! Walls seismic design                           	
VALUE(19,1) = 1.00                            !   'SCRT_1X' 
VALUE(20,1) = 1.00                  	      !   'SCRT_1Y'	
VALUE(21,1) = ABS(Txy_Shell/6320.71)          !   'SCRT_2X' 
VALUE(22,1) = ABS(Txy_Shell/6320.71)          !   'SCRT_2Y'
VALUE(23,1) = 0.04895/0.0987                   !   'SCRT_3X'
VALUE(24,1) = 0.0025/(0.0679/12)             !   'SCRT_3Y'


! Labels
LABEL(13,1) = 'NSCRT_1X'		! ACI 349-01  (11.10.3)
LABEL(14,1) = 'NSCRT_1Y'
LABEL(15,1) = 'NSCRT_2X'		! ACI 349-01  (11.10.5, eq.11-33)
LABEL(16,1) = 'NSCRT_2Y'
LABEL(17,1) = 'NSCRT_3X'		! ACI 349-01 (21.6.5.2)
LABEL(18,1) = 'NSCRT_3Y'
LABEL(19,1) = 'SCRT_1X'		    ! ACI 349-01 (11.10.9.2)
LABEL(20,1) = 'SCRT_1Y'
LABEL(21,1) = 'SCRT_2X'		    ! ACI 349-01 (21.6.2.1)
LABEL(22,1) = 'SCRT_2Y'
LABEL(23,1) = 'SCRT_3X'		    ! ACI 349-01 (21.6.5.6) 
LABEL(24,1) = 'SCRT_3Y'                                                  

	
                                                                      
~CFSET,2	! Walls seismic design       
~CFGET,VALUE(19,2), ELEMENT, 1 ,RESULT ,CRT_1_X, I 	
~CFGET,VALUE(20,2), ELEMENT, 1 ,RESULT ,CRT_1_Y, I  	
~CFGET,VALUE(21,2), ELEMENT, 1 ,RESULT ,CRT_2_X, I 	
~CFGET,VALUE(22,2), ELEMENT, 1 ,RESULT ,CRT_2_Y, I  	  
~CFGET,VALUE(23,2), ELEMENT, 1 ,RESULT ,CRT_3_X, I 	
~CFGET,VALUE(24,2), ELEMENT, 1 ,RESULT ,CRT_3_Y, I 	


! Warning and error tolerances
TOLER(13,1)= 1E-2 $ TOLER(13,2)= 1E-2
TOLER(14,1)= 1E-2 $ TOLER(14,2)= 1E-2
TOLER(15,1)= 1E-2 $ TOLER(15,2)= 1E-2
TOLER(16,1)= 1E-2 $ TOLER(16,2)= 1E-2
TOLER(17,1)= 1E-2 $ TOLER( 1,2)= 1E-2 
TOLER(18,1)= 1E-2 $ TOLER( 2,2)= 1E-2 
TOLER(19,1)= 1E-2 $ TOLER( 3,2)= 1E-2
TOLER(20,1)= 1E-2 $ TOLER( 4,2)= 1E-2
TOLER(21,1)= 1E-2 $ TOLER( 5,2)= 1E-2
TOLER(22,1)= 1E-2 $ TOLER( 6,2)= 1E-2
TOLER(23,1)= 1E-2 $ TOLER( 7,2)= 1E-2
TOLER(24,1)= 1E-2 $ TOLER( 8,2)= 1E-2

!-------------------------------------------------------------------------------
! Results comparison
!-------------------------------------------------------------------------------

COMPARA.MAC