!**************************************************************************************************************!
! TITLE: CFVR2301 - Steel Checking according to LRFD
! SUBTITLE: Compression Flexural Buckling Checking according to LRFD 2<sup>nd</sup> Edition
!
! DESCRIPTION: A steel fixed-free column of 21 feet with W12x72 section is subjected to an axial compression force of
! DESCRIPTION: 418 kips on its free end.
! DESCRIPTION:
! DESCRIPTION: Determine the equivalent slenderness parameter, critical stress, nominal axial strength, total
! DESCRIPTION: criterion and section classification according to LRFD.
! DESCRIPTION:
!
! ELEMENT TYPE: BEAM3
! MODULES:
! UNITS: User
! KEYWORD1: Beam
! KEYWORD2: Cross Section
! KEYWORD3: Code Checking/Design
! KEYWORD4: Steel
! KEYWORD5: LRFD 2
!
!**************************************************************************************************************!
   FINISH
   ~CFCLEAR,,1
   NomFile='CFVR2301'
   /TITLE, %NomFile%, LRFD: Compression Flexural Buckling Checking
!------------------------------------------------------------------
! Model definition
!------------------------------------------------------------------
! CivilFEM Setup: Code & Units
  ~UNITS,,LENG,FT
  ~UNITS,,TIME,S
  ~UNITS,,FORC,KIPS ! ft, sec, Kips
  ~CODESEL,LRFD,EC2,,,EC8-94 ! Steel LRFD
/PREP7
! Preprocessor
! --------------------------------------------------
! Materials
  ~CFMP,1,LIB,STEEL,ASTM,A36 !Steel A36
! Element Types
  ET,1,BEAM3  ! Type 1: 2D Beam
! Cross Section
  ~SSECLIB,1,1,51,215   ! W 12x72
! Beam & Shell Property
  ~BMSHPRO,1,BEAM,1,1,,,3,1,0,,Beam 1
! Member property
  ~MEMBPRO,1,LRFD,ALL,21.0,1.8,1.8,1.0,1.0,0.0,
  ~MEMBPRO,1,NLMOD,ALL,0
  ~MEMBPRO,1,NAME,Member Property 1
! Nodes
  N,1
  N,21,,21
  FILL,1,21,19,,,1,1,1
! Elements
  REAL,1
  E,1,2
  EGEN,20,1,1,1

/SOLU
! Solution
! --------------------------------------------------
! Constraints
  D, 1,ALL
! Apply Load
  F,21,FY,-418
! Solve
  SOLVE

/POST1
! Postprocessor
! --------------------------------------------------
! Read results
  ~CFSET,,1,1                  ! First load step
! Compression Flexural Buckling checking
  ~CHKSTL,COMPFBK

!------------------------------------------------------------------
! DATA CHECK
!------------------------------------------------------------------
! Data comparison number
  NComp = 5
  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) = 'LAMBDA  '
  LABEL(2,1) = 'FCR     '
  LABEL(3,1) = 'PN      '
  LABEL(4,1) = 'CRT_TOT '
  LABEL(5,1) = 'CLS_COMP'

! Correct values
  VALUE(1,1)=958.0339E-03
  VALUE(2,1)=3.530486E+03
  VALUE(3,1)=517.30585E+00
  VALUE(4,1)=950.6266E-03
  VALUE(5,1)=2.0E+00

! Comparison
  ~CFGET,value( 1,2),ELEMENT,10,RESULT,LAMBDA  ,J
  ~CFGET,value( 2,2),ELEMENT,10,RESULT,FCR     ,J
  ~CFGET,value( 3,2),ELEMENT,10,RESULT,PN      ,J
  ~CFGET,value( 4,2),ELEMENT,10,RESULT,CRT_TOT ,J
  ~CFGET,value( 5,2),ELEMENT,10,RESULT,CLS_COMP,J

! Warning and error tolerances
  TOLER( 1, 1)= 1E-03 $ TOLER( 1, 2)= 1E-03
  TOLER( 2, 1)= 1E-01 $ TOLER( 2, 2)= 1E-01
  TOLER( 3, 1)= 1E-03 $ TOLER( 3, 2)= 1E-03
  TOLER( 4, 1)= 1E-03 $ TOLER( 4, 2)= 1E-03
  TOLER( 5, 1)= 1E-03 $ TOLER( 5, 2)= 1E-03

!------------------------------------------------------------------
! Results comparison
!------------------------------------------------------------------
  COMPARA.MAC
