!*************************************************************************************!
! TITLE: CFVR8856 - Compression checking according to AASHTO 2012
! SUBTITLE: Compression with flexural-torsional buckling checking
!
! DESCRIPTION: A steel cantilever beam with T shape section is subjected to an
! DESCRIPTION: axial compression force of 36 Kip at free end.
! DESCRIPTION:
! DESCRIPTION:The section is WT  7x 15 and the structural steel is A529Gr50
! DESCRIPTION:
! DESCRIPTION: Determine the total criterion according to AASHTO 2012.
! DESCRIPTION:
!
! ELEMENT TYPE: BEAM3
! MODULES:
! UNITS: INCH, SEG, KIPS
! KEYWORD1: Beam
! KEYWORD2: Cross Section
! KEYWORD3: Code Checking/Design
! KEYWORD4: Steel
! KEYWORD5: AASHTO10
!
!*************************************************************************************!
FINISH
~CFCLEAR,,1
   NomFile='CFVR8856'
 /TITLE, %NomFile%, Compression with flexural-torsional buckling check by AASHTO 2012
 
~CODESEL,AASHTO12,EC2-91,EC2-91,,EC8-94   
~UNITS,,MONE,EURO   
~UNITS,,LENG,IN 
~UNITS,,TIME,S  
~UNITS,,FORC,KIPS   
~UNITS,,PRES,,0 ,uuP
~UNITS,,MASS,,0 ,uuM

 /PREP7
 
 ET,1,Beam3
 
~CFMP,1,LIB,STEEL,ASTM,A529Gr50

~SSECLIB,1,1,58,197   !WT  7x 15

~MEMBPRO,1,AASHTO12,ALL,240.0,1.000,1.000,1.000,1.000,0.000,1.000,1.000,0.000 
~MEMBPRO,1,NLMOD,ALL,0  
~MEMBPRO,1,NAME,Member Property 1 

~BMSHPRO,1,BEAM,1,1,,, 3,1,0,,Beam 1

! Nodes
  N,1
  N,21,,240
  FILL,1,21,19, , ,1,1,1,
! Elements
  REAL,1
  E,1,2
  EGEN,20,1,1,1
  
   /SOLU
   
! Constrains
  D,1,ALL
! Apply Load
  F,21,FY,-36
  
  SOLVE

  /POST1
! Postprocessor
! --------------------------------------------------
! Read results
  ~CFSET,,1,1                  ! First load case
! Checking
  ~CHKSTL,COMPFTBK
  
!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparison number
  NComp = 7
  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) = 'QS'
  LABEL(2,1) = 'QA'
  LABEL(3,1) = 'Q'
  LABEL(4,1) = 'PO'
  LABEL(5,1) = 'PE'
  LABEL(6,1) = 'PN'
  LABEL(7,1) = 'CRT_TOT'
  

! Correct values
  VALUE(1,1)= 0.682
  VALUE(2,1)= 1
  VALUE(3,1)= 0.682
  VALUE(4,1)= 150.7
  VALUE(5,1)= 46.37
  VALUE(6,1)= 40.66
  VALUE(7,1)= 0.98

! Comparison

~CFGET,VALUE(1,2),ELEMENT,1,RESULT,QS,I
~CFGET,VALUE(2,2),ELEMENT,1,RESULT,QA,I
~CFGET,VALUE(3,2),ELEMENT,1,RESULT,Q,I
~CFGET,VALUE(4,2),ELEMENT,1,RESULT,PO,I
~CFGET,VALUE(5,2),ELEMENT,1,RESULT,PE,I
~CFGET,VALUE(6,2),ELEMENT,1,RESULT,PN,I
~CFGET,VALUE(7,2),ELEMENT,1,RESULT,CRT_TOT,I
 


! Warning and error tolerances
TOLER(1,1)= 0.005*VALUE(1,1) $ TOLER(1,2)= 0.005*VALUE(1,1)
TOLER(2,1)= 0.005*VALUE(2,1) $ TOLER(2,2)= 0.005*VALUE(2,1) 
TOLER(3,1)= 0.005*VALUE(3,1) $ TOLER(3,2)= 0.005*VALUE(3,1) 
TOLER(4,1)= 0.005*VALUE(4,1) $ TOLER(4,2)= 0.005*VALUE(4,1) 
TOLER(5,1)= 0.005*VALUE(5,1) $ TOLER(5,2)= 0.005*VALUE(5,1) 
TOLER(6,1)= 0.005*VALUE(6,1) $ TOLER(5,2)= 0.005*VALUE(6,1) 
TOLER(7,1)= 0.005*VALUE(7,1) $ TOLER(5,2)= 0.005*VALUE(7,1) 
!--------------------------------------------------------------------------------------
! Results comparison
!--------------------------------------------------------------------------------------
  COMPARA.MAC




