!*************************************************************************************!
! TITLE: CFVR7407 - Compression checking according to ASD 9<sup>th</sup> Edition
! SUBTITLE: Compression with flexural-torsional buckling checking
!
! DESCRIPTION: A steel cantilever beam with L angle shape section is subjected to an
! DESCRIPTION: axial compression force of 30 KN at free end.
! DESCRIPTION:
! DESCRIPTION: Determine the total criterion according to ASD 9<sup>th</sup> Edition.
! DESCRIPTION:
!
! ELEMENT TYPE: BEAM188
! MODULES:
! UNITS: SI
! KEYWORD1: Beam
! KEYWORD2: Cross Section
! KEYWORD3: Code Checking/Design
! KEYWORD4: Steel
! KEYWORD5: ASD 9
!
!*************************************************************************************!
FINISH
~CFCLEAR,,1
   NomFile='CFVR7407'
 /TITLE, %NomFile%, Compression with flexursl-torsional buckling check ASD 9th Edition

! -------------------------------------------------------------------------------------
! Initial data
! -------------------------------------------------------------------------------------
! CivilFEM SETUP
~CFACTIV,NUCL,Y
~CODESEL,ASD9,EC2-91,EC2-91,,EC8-94

/PREP7

ET,1,Beam188,,,2

~CFMP,1,LIB,STEEL,ASTM,A441
~SSECLIB,1,1,57,71   !L 4x4x1/4
~MEMBPRO,1,ASD9,ALL,2,2,2,2,1
~BMSHPRO,1,BEAM,1,1,,,188,1,1,,Beam 1

N,1,
N,2,2
E,1,2

/SHRINK,0
/ESHAPE,1.0

EPLOT

D,1,ALL

F,2,FX,-30000

/SOLU
SOLVE

/POST1
~CFSET,0,1,LAST

~CHKSTL,COMPFTBK

!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparison number
  NComp = 8
  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) = 'LAMBDA'
  LABEL(5,1) = 'FE'
  LABEL(6,1) = 'SLEND'
  LABEL(7,1) = 'FAFT'
  LABEL(8,1) = 'CRT_TOT'

! Correct values
  VALUE(1,1)=0.8342
  VALUE(2,1)=1
  VALUE(3,1)=0.8342
  VALUE(4,1)=203.82
  VALUE(5,1)=4.75144044E+07
  VALUE(6,1)=198.088
  VALUE(7,1)=2.479012406E+07
  VALUE(8,1)=0.967

! Comparison

 ~PLLSSTL,QS
 *GET,VALUE(1,2),ELEM,1,ETAB,CFETAB_I
 ~PLLSSTL,QA
 *GET,VALUE(2,2),ELEM,1,ETAB,CFETAB_I
 ~PLLSSTL,Q
 *GET,VALUE(3,2),ELEM,1,ETAB,CFETAB_I
 ~PLLSSTL,LAMBDA
 *GET,VALUE(4,2),ELEM,1,ETAB,CFETAB_I
 ~PLLSSTL,FE
 *GET,VALUE(5,2),ELEM,1,ETAB,CFETAB_I
 ~PLLSSTL,SLEND
 *GET,VALUE(6,2),ELEM,1,ETAB,CFETAB_I
 ~PLLSSTL,FAFT
 *GET,VALUE(7,2),ELEM,1,ETAB,CFETAB_I
 ~PLLSSTL,CRT_TOT
 *GET,VALUE(8,2),ELEM,1,ETAB,CFETAB_I


! Warning and error tolerances
  TOLER( 1, 1)= 1E-03   $ TOLER( 1, 2)= 1E-03
  TOLER( 2, 1)= 1E-03   $ TOLER( 2, 2)= 1E-03
  TOLER( 3, 1)= 1E-03   $ TOLER( 3, 2)= 1E-03
  TOLER( 4, 1)= 1E-01   $ TOLER( 4, 2)= 1E-01	! Rounding error accepted
  TOLER( 5, 1)= 1E+04   $ TOLER( 5, 2)= 1E+04	! Rounding error accepted
  TOLER( 6, 1)= 1E-03   $ TOLER( 6, 2)= 1E-03	
  TOLER( 7, 1)= 1E+03   $ TOLER( 7, 2)= 1E+03	! Rounding error accepted
  TOLER( 8, 1)= 1E-03   $ TOLER( 8, 2)= 1E-03
!--------------------------------------------------------------------------------------
! Results comparison
!--------------------------------------------------------------------------------------
  COMPARA.MAC




