Left

CivilFEM Online Help

Right

CFVR5248 - Prestressed structure with SHELL43 and SOLID45


The model is a prestressed structure 20 m length.
The structure is made of HA-40 concrete with tendons which are made of Y1860S3 steel.
The aim of the example is to verify the calculation of prestressing losses.

Element types used in the model: SHELL43 SOLID45

Needed CivilFEM Modules:
Geotechnical Module
Bridges and Civil Non Linearities Module
Advanced Prestressed Concrete Module

The example can be launched on an educational license.
KEYWORDS
Shell
Tendon
Shell Vertex
Prestressed Concrete

Model Statistics
Number of elements 120
Number of nodes 252
Number of civil materials 2
Number of cross sections 6
Number of shell vertices 1

Log file: CFVR5248.DAT


  FINISH
  ~CFCLEAR,,1

! Modules activation
! --------------------------------------------------
  ~CFACTIV,NLBR,Y
  ~CFACTIV,PRSC,Y
  NomFile='CFVR5248'
  /TITLE, %NomFile%, Prestressed structure with SHELL43 and SOLID45

! Setup
! --------------------------------------------------
  ~CODESEL,,EHE-98,EHE-98
  ~UNITS,SI

  ~CFCONFG,PC,PCA,0

   /VUP,ALL,X

/PREP7

! Element types
! --------------------------------------------------
  ET,1,SHELL43
  ET,2,SOLID45

! Materials
! --------------------------------------------------
  ~CFMP,1,LIB,CONCRETE,EHE,HA-40
  ~CFMP,3,LIB,PREST,EHE,Y1860S3

 ~SHLRNF,1,1.00,1,0,0.0,0.0,0.0,0.0,0.0,0,0.0,45.0
 ~SHLMDF,1,NAME,,,Shell Vertex 1
 ~BMSHPRO,1,SHELL,1,1,1,1,43,,,0 ,Shell 1

RECTNG,0,3,0,20,
BLOCK,0,3,0,20,5,6,

TYPE,1
MAT,1
REAL,1
ESIZE,1
MSHAPE,0,2D
MSHKEY,1

AMESH,1

TYPE,2
MSHAPE,0,3D
VMESH,1

/ESHAPE,1.0

! Support beam for shell
! ------------------------------------
ASEL,S,LOC,Z,0
ESLA,S

LOCAL,11,,0,0,0,90,,,1,1,
NSEL,R,LOC,X,0
ESLN,R
~SLDSEC,1,1,11,Solid Section 1

ALLSEL,ALL
ASEL,S,LOC,Z,0
ESLA,S
LOCAL,12,,0,10,0,90,,,1,1,
NSEL,R,LOC,X,0,1
ESLN,R,1
NSEL,R,LOC,X,0
~SLDSEC,2,1,12,Solid Section 2

ALLSEL,ALL
ASEL,S,LOC,Z,0
ESLA,S
LOCAL,13,,0,20,0,90,,,1,1,
NSEL,R,LOC,X,0,
ESLN,R
~SLDSEC,3,1,13,Solid Section 3

ALLSEL,ALL
ASEL,S,LOC,Z,0
ESLA,S

CSYS,11

~SBSMDEF,1,3,1

~PCEPDEF,1,1,-0.5,0,0.50
~PCEPDEF,2,2,-2.0,0,0.50
~PCEPDEF,3,3,-0.5,0,0.50

~PCPPDEF,1,1,-0.25,0,0.5
~PCPPDEF,2,2,0,0,0.5
~PCPPDEF,3,3,0.25,0,0.5

~PCTNDEF,1,3,5e-003,13e-002,1000000,,25000

*DO,I,1,3
  ~PCTNMDF,1,EADD,I
  ~PCTNMDF,1,PADD,I
*ENDDO

 ~PCTNMDF,1,EPAROUT,1,3
 ~PCTNMDF,1,EPARIN,2

 ~PCPLPL
 LSUM
 *GET,LENGTH1,LINE,0,LENG

 ~PCPL

! Support beam for solid
! ------------------------------------

ALLSEL,ALL
CSYS,0
~SBCLEAR

VSEL,S,LOC,Z,5,6
ESLV,S
NSLV,R,1

LOCAL,14,,0,0,5.5,90,,,1,1,
NSEL,R,LOC,X,0
ESLN,R
~SLDSEC,4,1,14,Solid Section 1

ALLSEL,ALL
VSEL,S,LOC,Z,0
ESLV,S
NSLV,R,1
LOCAL,15,,0,10,5.5,90,,,1,1,
NSEL,R,LOC,X,0,1
ESLN,R,1
NSEL,R,LOC,X,0
~SLDSEC,5,1,15,Solid Section 2

ALLSEL,ALL
VSEL,S,LOC,Z,0
ESLV,S
NSLV,R,1
LOCAL,16,,0,20,5.5,90,,,1,1,
NSEL,R,LOC,X,0,
ESLN,R
~SLDSEC,6,1,16,Solid Section 3

ALLSEL,ALL
VSEL,S,LOC,Z,0
ESLV,S
NSLV,R,1

CSYS,14

~SBSMDEF,4,6,1

~PCEPDEF,1,1,-0.5,0,0.50
~PCEPDEF,2,2,-2.0,0,0.50
~PCEPDEF,3,3,-0.5,0,0.50

~PCPPDEF,1,1,-0.25,0,0.5
~PCPPDEF,2,2,0,0,0.5
~PCPPDEF,3,3,0.25,0,0.5

~PCTNDEF,1,3,5e-003,13e-002,1000000,,25000

*DO,I,1,3
  ~PCTNMDF,1,EADD,I
  ~PCTNMDF,1,PADD,I
*ENDDO

 ~PCTNMDF,1,EPAROUT,1,3
 ~PCTNMDF,1,EPARIN,2

 ~PCPLPL
  LSUM
 *GET,LENGTH2,LINE,0,LENG

 ~PCPL

! Obtain results
! ---------------------------------------------------
ALLSEL,ALL
CSYS,0

*DIM,NODO,ARRAY,8
*DIM,FxShell,ARRAY,4
*DIM,FyShell,ARRAY,4
*DIM,FzShell,ARRAY,4
*DIM,MxShell,ARRAY,4
*DIM,MyShell,ARRAY,4
*DIM,MzShell,ARRAY,4

NODO(1) = NODE(0, 0,0)
NODO(2) = NODE(2, 8,0)
NODO(3) = NODE(2,16,0)
NODO(4) = NODE(1,20,0)

*DO,I,1,4
 *GET,FxShell(I),NODE,NODO(I),F,FX
 *GET,FyShell(I),NODE,NODO(I),F,FY
 *GET,FzShell(I),NODE,NODO(I),F,FZ
 *GET,MxShell(I),NODE,NODO(I),F,MX
 *GET,MyShell(I),NODE,NODO(I),F,MY
 *GET,MzShell(I),NODE,NODO(I),F,MZ
*ENDDO

*DIM,FxNodes,ARRAY,4,2
*DIM,FyNodes,ARRAY,4,2
*DIM,FzNodes,ARRAY,4,2
*DIM,FxSolid,ARRAY,4
*DIM,FySolid,ARRAY,4
*DIM,FzSolid,ARRAY,4
*DIM,MxSolid,ARRAY,4
*DIM,MySolid,ARRAY,4
*DIM,MzSolid,ARRAY,4

NODO(1) = NODE(0, 0,5)
NODO(2) = NODE(2, 8,5)
NODO(3) = NODE(2,16,5)
NODO(4) = NODE(1,20,5)
NODO(5) = NODE(0, 0,6)
NODO(6) = NODE(2, 8,6)
NODO(7) = NODE(2,16,6)
NODO(8) = NODE(1,20,6)

*DO,I,1,4
 *GET,FxNodes(I,1),NODE,NODO(I),F,FX
 *GET,FyNodes(I,1),NODE,NODO(I),F,FY
 *GET,FzNodes(I,1),NODE,NODO(I),F,FZ
 *GET,FxNodes(I,2),NODE,NODO(I+4),F,FX
 *GET,FyNodes(I,2),NODE,NODO(I+4),F,FY
 *GET,FzNodes(I,2),NODE,NODO(I+4),F,FZ
*ENDDO

*DO,I,1,4
  FxSolid(I) = FxNodes(I,1)+FxNodes(I,2)
  FySolid(I) = FyNodes(I,1)+FyNodes(I,2)
  FzSolid(I) = FzNodes(I,1)+FzNodes(I,2)
  MxSolid(I) = 0.5*FyNodes(I,1)-0.5*FyNodes(I,2)
  MySolid(I) =-0.5*FxNodes(I,1)+0.5*FxNodes(I,2)
  MzSolid(I) = 0
*ENDDO

NSEL,S,LOC,Y,20
D,ALL,ALL
ALLSEL,ALL

/SOLU
SOLVE

!--------------------------------------------------------------------------------------
! DATA CHECK
!--------------------------------------------------------------------------------------
! Data comparison number
  NComp    = 25
  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)  = 'LENGTH'
  LABEL( 2)  = 'Fx_1'
  LABEL( 3)  = 'Fx_2'
  LABEL( 4)  = 'Fx_3'
  LABEL( 5)  = 'Fx_4'
  LABEL( 6)  = 'Fy_1'
  LABEL( 7)  = 'Fy_2'
  LABEL( 8)  = 'Fy_3'
  LABEL( 9)  = 'Fy_4'
  LABEL(10)  = 'Fz_1'
  LABEL(11)  = 'Fz_2'
  LABEL(12)  = 'Fz_3'
  LABEL(13)  = 'Fz_4'
  LABEL(14)  = 'Mx_1'
  LABEL(15)  = 'Mx_2'
  LABEL(16)  = 'Mx_3'
  LABEL(17)  = 'Mx_4'
  LABEL(18)  = 'My_1'
  LABEL(19)  = 'My_2'
  LABEL(20)  = 'My_3'
  LABEL(21)  = 'My_4'
  LABEL(22)  = 'Mz_1'
  LABEL(23)  = 'Mz_2'
  LABEL(24)  = 'Mz_3'
  LABEL(25)  = 'Mz_4'

! Correct data, obtained data
!--------------------------------------------------------------------------------------
  VALUE( 1,1) = LENGTH2           $  VALUE( 1,2) = LENGTH2
  *DO,I,1,4
    VALUE( 1+I,1) = FxShell(I)    $  VALUE( 1+I,2) = FxSolid(I)
    VALUE( 5+I,1) = FyShell(I)    $  VALUE( 5+I,2) = FySolid(I)
    VALUE( 9+I,1) = FzShell(I)    $  VALUE( 9+I,2) = FzSolid(I)
    VALUE(13+I,1) = MxShell(I)    $  VALUE(13+I,2) = MxSolid(I)
    VALUE(17+I,1) = MyShell(I)    $  VALUE(17+I,2) = MySolid(I)
    VALUE(21+I,1) = MzShell(I)    $  VALUE(21+I,2) = MzSolid(I)
  *ENDDO

! Warning and error tolerances
  *DO,II,2,NComp
    TOLER(II,1)  = 1E-2
    TOLER(II,2)  = 1E-2
  *ENDDO

!--------------------------------------------------------------------------------------
! Result comparison
!--------------------------------------------------------------------------------------
  COMPARA.MAC

Results

LabelTargetCivilFEMRatioTolerance
LENGTH 20.302 20.3021.000 0
Fx_1 93550 935501.000 0.01
Fx_2 -12076 -120761.000 0.01
Fx_3 -21870 -218701.000 0.01
Fx_4 94203 942031.000 0.01
Fy_14.821e+0054.821e+0051.000 0.01
Fy_2 690.42 690.421.000 0.01
Fy_3 -1612 -16121.000 0.01
Fy_4-4.821e+005-4.821e+0051.000 0.01
Fz_1 -7697.4 -7697.41.000 0.01
Fz_2 -3955.9 -3955.91.000 0.01
Fz_3 184.98 184.981.000 0.01
Fz_4 -14391 -143911.000 0.01
Mx_12.4105e+0052.4105e+0051.000 0.01
Mx_2 -192.04 -192.041.000 0.01
Mx_3 -55.408 -55.4081.000 0.01
Mx_42.4105e+0052.4105e+0051.000 0.01
My_1 -46775 -467751.000 0.01
My_2 0.048031 0.0480311.000 0.01
My_3 -2361.2 -2361.21.000 0.01
My_4 47101 471011.000 0.01
Mz_1 0 00.000 0.01
Mz_2 0 00.000 0.01
Mz_3 0 00.000 0.01
Mz_4 0 00.000 0.01


Contains proprietary and confidential information of Ingeciber, S.A.