!*****************************************************************************************************!
! TITLE: CFVR2856 - IS 800-07 test: Compression Check
! SUBTITLE: Compression check according to IS 800-07
!
! DESCRIPTION: An estructure of 2 bars is subjected to a Fy load of -300 KN.
! DESCRIPTION:
! DESCRIPTION: The bars have a length of 1 m and 5.01 m.
! DESCRIPTION:
! DESCRIPTION: The cross section is an Angular L 120 x 120 x 12.
! DESCRIPTION:
! DESCRIPTION: The bars are made of Fe 410 steel which have a fy of 250000 kN/m<sup>2</sup>.
! DESCRIPTION:
! DESCRIPTION: The aim of the example is to obtain the cross section classification, the tension and
! DESCRIPTION: compression criterion according to IS 800-07.
!
! ELEMENT TYPE: link1
! MODULES:
! UNITS: User
! KEYWORD1: Cross Section
! KEYWORD2: Steel
! KEYWORD3: Code Checking/Design
! KEYWORD4: IS800
!
!*************************************************************************************!
  FINISH
  ~CFCLEAR,,1
  NomFile='CFVR2856'
  /TITLE, %NomFile%, IS 800-07 test: Compression

! ---------------------------------------------------------------------------------
! Model definition and solve
! ---------------------------------------------------------------------------------
! CivilFEM Setup: Code & Units
  ~UNITS,,LENG,M
  ~UNITS,,TIME,S
  ~UNITS,,FORC,KN
  ~CODESEL,IS800-07

/PREP7
! Materials
    ~CFMP,1,LIB,STEEL,IS800,Fe 410  

  ! Element Types
  ET,1,LINK1 ! Type 1: 2D Spar

! Cross Sections
  ~SSECLIB,1,1,23,11   ! Angular L 120 x 120 x 12
  
  ~MEMBPRO,1,IS800,ALL,1.118,1.0,1.0,1.000,0.000,1.000,1.000,1.000,1.000,,0,0.8500,0.8500,0 

! Beam Properties
 ~BMSHPRO,1,BEAM,1,1,,, 1,1,0,,Beam 1

! Nodes
  N, 1
  N,2,1
  N,3,,-0.5
! Elements
  E,1,2
  E,3,2
  EPLOT
/SOLU
! Restraints
  D, 1,ALL
  D, 3,ALL
! Apply Load
  F,2,FY,-300

! Solve
  SOLVE
/POST1
! Postprocessor
! --------------------------------------------------
! Read results
  ~CFSET,,1,1       ! Read the first load step
! Plot FX
  ~PLLSFOR,F,X,-1
! Check for  compression


~CHKSTL,BUCK_CMP,-Z,PARTIAL 

!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparison number
  NComp = 8
  NComp_ch =  0

! Marix 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) = 'CLASS1'
  LABEL(2,1) = 'P'
  LABEL(3,1) = 'Pd'
  LABEL(4,1) = 'Crit'
  LABEL(5,1) = 'ChiY'
  LABEL(6,1) = 'PhiY'
  LABEL(7,1) = 'LamY'
  LABEL(8,1) = 'AlpY'

! Correct values
! ---------------------------------------------------------------------------------
  VALUE(1,1)=3
  VALUE(2,1)=670.82
  VALUE(3,1)=596.4
  VALUE(4,1)=670.80/596.4
  VALUE(5,1)=0.953
  VALUE(6,1)=0.566
  VALUE(7,1)=0.293
  VALUE(8,1)=0.49

! Obtained values
! ---------------------------------------------------------------------------------
  ! Check Compression
    ~CFSET,1      !Read first alternative
   ~CFGET,VALUE(1,2),ELEMENT,2,RESULT,CLASS,I
   ~CFGET,VALUE(2,2),ELEMENT,2,RESULT,P,I
   ~CFGET,VALUE(3,2),ELEMENT,2,RESULT,PD,I   
   ~CFGET,VALUE(4,2),ELEMENT,2,RESULT,CRT_TOT,I
   ~CFGET,VALUE(5,2),ELEMENT,2,RESULT,CHI_Y,I   
   ~CFGET,VALUE(6,2),ELEMENT,2,RESULT,PHI_Y,I
   ~CFGET,VALUE(7,2),ELEMENT,2,RESULT,LAM_Y,I   
   ~CFGET,VALUE(8,2),ELEMENT,2,RESULT,ALP_Y,I

! Warning and error tolerances
  TOLER( 1, 1)= 1E-2 $ TOLER( 1, 2)= 1E-2
  TOLER( 2, 1)= 1E+1 $ TOLER( 2, 2)= 1E+1
  TOLER( 3, 1)= 1E-0 $ TOLER( 3, 2)= 1E-0
  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
  
!--------------------------------------------------------------------------------------
! Results comparison
!--------------------------------------------------------------------------------------
  COMPARA.MAC

