CFVR0909 - Shell reinforcement design according to ACI-318
Shell reinforcement design according to ACI-318 using the CEB-FIP method.
The model is made up of two square shell elements of 1.0m x 1.0m. The nodes of one side are completely restrained and one of the nodes between both element has its vertical movement restrained (perpendicular to the shells).
The applied loads are horizontal tension loads (X direction) at the free side and a pressure of 30 kN/m2 on one of the elements.
The reinforcement design method is the CEB-FIP method.
Element types used in the model: SHELL63 Needed CivilFEM Modules: |
|
| Model Statistics | |
| Number of elements | 2 |
| Number of nodes | 6 |
| Number of civil materials | 2 |
| Number of cross sections | 0 |
| Number of shell vertices | 1 |
Log file: CFVR0909.DAT
FINISH ~CFCLEAR,,1 NomFile='CFVR0909' /TITLE, %NomFile%, Shell reinforcement design according to ACI-318 ! --------------------------------------------------------------------------------- ! Model definition and analysis ! --------------------------------------------------------------------------------- ! Setup ~UNITS,SI ~CODESEL,EC3-92,ACI,,,EC8-94 ~CFCONFG,PLRES ,SHELL ,EPSW ~CFCONFG,RESULT,CFSHF,1 /PREP7 ! Materials ~CFMP,5,LIB,CONCRETE,ACI,fc_4000 ~CFMP,2,LIB,REINF,ACI,fy_70000 ! Element types ET,2,SHELL63 ! Shell vertex phi= 0.9 ! Strength reduction factor t=0.12 ! Thickness r=0.03 ! Cover th = 0 ! Reinforcement angle ~SHLRNF,1,t,5,2,r,0.0,0.0,0.0,0.0,0,th,45 ! Member Property ~MEMBPRO,1,ACI,FI,PHI ! Beam & Shell property ~BMSHPRO,10,SHELL,1,1,1,1,63,1,,,Shell property ! Nodes N,10,0.0,0.0 N,20,1.0,0.0 N,30,2.0,0.0 N,40,0.0,1.0 N,50,1.0,1.0 N,60,2.0,1.0 ! Elements MAT,5 REAL,10 TYPE,2 EN,100, 10, 20, 50, 40 EN,200, 20, 30, 60, 50 ! Boundary conditions D,10,ALL,0.0 D,40,ALL,0.0 D,50,UZ,0.0 ! Solve /SOLU F,30,FX,20000 F,60,FX,30000 SFE,100,2,PRES, ,30000 SOLVE /POST1 ! --------------------------------------------------------------------------------- ! Forces and moments calculation on nodes of element 100 ! --------------------------------------------------------------------------------- *DIM,S ,,6,3,4 ! Stresses(direction,layer,node) *DIM,ESF,,8,4 ! Forces & Moments(component,node) (Tx,Ty,Txy,Mx,My,Mxy,Nx,Ny) ESEL,S,ELEM,,100 ! Stresses SHELL,TOP *VGET,S(1,1,1),NODE,10,S,X,,,4 *VGET,S(1,1,2),NODE,20,S,X,,,4 *VGET,S(1,1,3),NODE,50,S,X,,,4 *VGET,S(1,1,4),NODE,40,S,X,,,4 SHELL,MID *VGET,S(1,2,1),NODE,10,S,X,,,4 *VGET,S(1,2,2),NODE,20,S,X,,,4 *VGET,S(1,2,3),NODE,50,S,X,,,4 *VGET,S(1,2,4),NODE,40,S,X,,,4 SHELL,BOT *VGET,S(1,3,1),NODE,10,S,X,,,4 *VGET,S(1,3,2),NODE,20,S,X,,,4 *VGET,S(1,3,3),NODE,50,S,X,,,4 *VGET,S(1,3,4),NODE,40,S,X,,,4 ! Forces & Moments *DO,I,1,4 ESF(1,I)=t*(S(1,1,I)+4*S(1,2,I)+S(1,3,I))/6 ESF(2,I)=t*(S(2,1,I)+4*S(2,2,I)+S(2,3,I))/6 ESF(3,I)=t*(S(4,1,I)+4*S(4,2,I)+S(4,3,I))/6 ESF(4,I)=-t**2*(S(1,1,I)-S(1,3,I))/12 ESF(5,I)=-t**2*(S(2,1,I)-S(2,3,I))/12 ESF(6,I)=-t**2*(S(4,1,I)-S(4,3,I))/12 ESF(7,I)=t*(S(6,1,I)+4*S(6,2,I)+S(6,3,I))/6 ESF(8,I)=t*(S(5,1,I)+4*S(5,2,I)+S(5,3,I))/6 *ENDDO ! Designed reinforcement *DIM,Axi,,4 *DIM,Ayi,,4 *DIM,Axs,,4 *DIM,Ays,,4 I=1 Factor = 1.033816 Axi(I)= 0.000D+00/Factor Ayi(I)= 0.179D-03/Factor Axs(I)= 0.322D-03/Factor Ays(I)= 0.118D-03/Factor I=2 Axi(I)= 0.208D-03/Factor Ayi(I)= 0.761D-04/Factor Axs(I)= 0.000D+00/Factor Ays(I)= 0.777D-04/Factor I=3 Axi(I)= 0.294D-04/Factor Ayi(I)= 0.548D-04/Factor Axs(I)= 0.286D-03/Factor Ays(I)= 0.633D-04/Factor I=4 Axi(I)= 0.212D-03/Factor Ayi(I)= 0.765D-04/Factor Axs(I)= 0.455D-04/Factor Ays(I)= 0.139D-04/Factor ESEL,ALL ! --------------------------------------------------------------------------------- ! Design with CivilFEM ! --------------------------------------------------------------------------------- ~CFSET,,1,1 ~DIMCON,SHELL,CEB ESEL,S,ELEM,,100 ! Forces & Moments with CivilFEM *DIM,ESF_CF,,8,4 ! Forces & Moments(component,node) (Tx,Ty,Txy,Mx,My,Mxy,Nx,Ny) ~PLSHFOR,TX *GET,ESF_CF(1,1),NODE,10,EPSW *GET,ESF_CF(1,2),NODE,20,EPSW *GET,ESF_CF(1,3),NODE,50,EPSW *GET,ESF_CF(1,4),NODE,40,EPSW ~PLSHFOR,TY *GET,ESF_CF(2,1),NODE,10,EPSW *GET,ESF_CF(2,2),NODE,20,EPSW *GET,ESF_CF(2,3),NODE,50,EPSW *GET,ESF_CF(2,4),NODE,40,EPSW ~PLSHFOR,TXY *GET,ESF_CF(3,1),NODE,10,EPSW *GET,ESF_CF(3,2),NODE,20,EPSW *GET,ESF_CF(3,3),NODE,50,EPSW *GET,ESF_CF(3,4),NODE,40,EPSW ~PLSHFOR,MX *GET,ESF_CF(4,1),NODE,10,EPSW *GET,ESF_CF(4,2),NODE,20,EPSW *GET,ESF_CF(4,3),NODE,50,EPSW *GET,ESF_CF(4,4),NODE,40,EPSW ~PLSHFOR,MY *GET,ESF_CF(5,1),NODE,10,EPSW *GET,ESF_CF(5,2),NODE,20,EPSW *GET,ESF_CF(5,3),NODE,50,EPSW *GET,ESF_CF(5,4),NODE,40,EPSW ~PLSHFOR,MXY *GET,ESF_CF(6,1),NODE,10,EPSW *GET,ESF_CF(6,2),NODE,20,EPSW *GET,ESF_CF(6,3),NODE,50,EPSW *GET,ESF_CF(6,4),NODE,40,EPSW ~PLSHFOR,NX *GET,ESF_CF(7,1),NODE,10,EPSW *GET,ESF_CF(7,2),NODE,20,EPSW *GET,ESF_CF(7,3),NODE,50,EPSW *GET,ESF_CF(7,4),NODE,40,EPSW ~PLSHFOR,NY *GET,ESF_CF(8,1),NODE,10,EPSW *GET,ESF_CF(8,2),NODE,20,EPSW *GET,ESF_CF(8,3),NODE,50,EPSW *GET,ESF_CF(8,4),NODE,40,EPSW ! Designed reinforcement obtained with CivilFEM *DIM,Axi_CF,,4 *DIM,Ayi_CF,,4 *DIM,Axs_CF,,4 *DIM,Ays_CF,,4 ~PLSHCON,ASBX *GET,Axi_CF(1),NODE,10,EPSW *GET,Axi_CF(2),NODE,20,EPSW *GET,Axi_CF(3),NODE,50,EPSW *GET,Axi_CF(4),NODE,40,EPSW ~PLSHCON,ASBY *GET,Ayi_CF(1),NODE,10,EPSW *GET,Ayi_CF(2),NODE,20,EPSW *GET,Ayi_CF(3),NODE,50,EPSW *GET,Ayi_CF(4),NODE,40,EPSW ~PLSHCON,ASTX *GET,Axs_CF(1),NODE,10,EPSW *GET,Axs_CF(2),NODE,20,EPSW *GET,Axs_CF(3),NODE,50,EPSW *GET,Axs_CF(4),NODE,40,EPSW ~PLSHCON,ASTY *GET,Ays_CF(1),NODE,10,EPSW *GET,Ays_CF(2),NODE,20,EPSW *GET,Ays_CF(3),NODE,50,EPSW *GET,Ays_CF(4),NODE,40,EPSW !-------------------------------------------------------------------------------------- ! DATA CHECK !-------------------------------------------------------------------------------------- ! Data comparison number NComp = 48 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) ='TX_I' LABEL( 2) ='TX_J' LABEL( 3) ='TX_K' LABEL( 4) ='TX_L' LABEL( 5) ='TY_I' LABEL( 6) ='TY_J' LABEL( 7) ='TY_K' LABEL( 8) ='TY_L' LABEL( 9) ='TXY_I' LABEL(10) ='TXY_J' LABEL(11) ='TXY_K' LABEL(12) ='TXY_L' LABEL(13) ='MX_I' LABEL(14) ='MX_J' LABEL(15) ='MX_K' LABEL(16) ='MX_L' LABEL(17) ='MY_I' LABEL(18) ='MY_J' LABEL(19) ='MY_K' LABEL(20) ='MY_L' LABEL(21) ='MXY_I' LABEL(22) ='MXY_J' LABEL(23) ='MXY_K' LABEL(24) ='MXY_L' LABEL(25) ='NX_I' LABEL(26) ='NX_J' LABEL(27) ='NX_K' LABEL(28) ='NX_L' LABEL(29) ='NY_I' LABEL(30) ='NY_J' LABEL(31) ='NY_K' LABEL(32) ='NY_L' LABEL(33) ='ASxi_I' LABEL(34) ='ASxi_J' LABEL(35) ='ASxi_K' LABEL(36) ='ASxi_L' LABEL(37) ='ASyi_I' LABEL(38) ='ASyi_J' LABEL(39) ='ASyi_K' LABEL(40) ='ASyi_L' LABEL(41) ='ASxs_I' LABEL(42) ='ASxs_J' LABEL(43) ='ASxs_K' LABEL(44) ='ASxs_L' LABEL(45) ='ASys_I' LABEL(46) ='ASys_J' LABEL(47) ='ASys_K' LABEL(48) ='ASys_L' ! Correct values ! --------------------------------------------------------------------------------- ! Forces & Moments *DO,I,1,8 *DO,J,1,4 VALUE(4*(I-1)+J,1)= ESF(I,J) *ENDDO *ENDDO ! Reinforcement *DO,I,1,4 VALUE(32+I,1)=Axi(I) *ENDDO *DO,I,1,4 VALUE(36+I,1)=Ayi(I) *ENDDO *DO,I,1,4 VALUE(40+I,1)=Axs(I) *ENDDO *DO,I,1,4 VALUE(44+I,1)=Ays(I) *ENDDO ! Obtained values ! --------------------------------------------------------------------------------- ! Forces & Moments *DO,I,1,8 *DO,J,1,4 VALUE(4*(I-1)+J,2)= ESF_CF(I,J) *ENDDO *ENDDO ! Reinforcement *DO,I,1,4 VALUE(32+I,2)=Axi_CF(I) *ENDDO *DO,I,1,4 VALUE(36+I,2)=Ayi_CF(I) *ENDDO *DO,I,1,4 VALUE(40+I,2)=Axs_CF(I) *ENDDO *DO,I,1,4 VALUE(44+I,2)=Ays_CF(I) *ENDDO ! Warning and error tolerances TOLER( 1, 1)= 1E-01 $ TOLER( 1, 2)= 1E-00 TOLER( 2, 1)= 1E-01 $ TOLER( 2, 2)= 1E-00 TOLER( 3, 1)= 1E-02 $ TOLER( 3, 2)= 1E-01 TOLER( 4, 1)= 1E-02 $ TOLER( 4, 2)= 1E-01 TOLER( 5, 1)= 1E-02 $ TOLER( 5, 2)= 1E-01 TOLER( 6, 1)= 1E-02 $ TOLER( 6, 2)= 1E-01 TOLER( 7, 1)= 1E-02 $ TOLER( 7, 2)= 1E-01 TOLER( 8, 1)= 1E-02 $ TOLER( 8, 2)= 1E-01 TOLER( 9, 1)= 1E-11 $ TOLER( 9, 2)= 1E-10 TOLER(10, 1)= 1E-11 $ TOLER(10, 2)= 1E-10 TOLER(11, 1)= 1E-11 $ TOLER(11, 2)= 1E-10 TOLER(12, 1)= 1E-11 $ TOLER(12, 2)= 1E-10 TOLER(13, 1)= 1E-02 $ TOLER(13, 2)= 1E-01 TOLER(14, 1)= 1E-03 $ TOLER(14, 2)= 1E-02 TOLER(15, 1)= 1E-02 $ TOLER(15, 2)= 1E-01 TOLER(16, 1)= 1E-03 $ TOLER(16, 2)= 1E-02 TOLER(17, 1)= 1E-02 $ TOLER(17, 2)= 1E-01 TOLER(18, 1)= 1E-04 $ TOLER(18, 2)= 1E-03 TOLER(19, 1)= 1E-04 $ TOLER(19, 2)= 1E-03 TOLER(20, 1)= 1E-03 $ TOLER(20, 2)= 1E-02 TOLER(21, 1)= 1E-03 $ TOLER(21, 2)= 1E-02 TOLER(22, 1)= 1E-03 $ TOLER(22, 2)= 1E-02 TOLER(23, 1)= 1E-03 $ TOLER(23, 2)= 1E-02 TOLER(24, 1)= 1E-03 $ TOLER(24, 2)= 1E-02 TOLER(25, 1)= 1E-15 $ TOLER(25, 2)= 1E-14 TOLER(26, 1)= 1E-15 $ TOLER(26, 2)= 1E-14 TOLER(27, 1)= 1E-15 $ TOLER(27, 2)= 1E-14 TOLER(28, 1)= 1E-15 $ TOLER(28, 2)= 1E-14 TOLER(29, 1)= 1E-15 $ TOLER(29, 2)= 1E-14 TOLER(30, 1)= 1E-15 $ TOLER(30, 2)= 1E-14 TOLER(31, 1)= 1E-15 $ TOLER(31, 2)= 1E-14 TOLER(32, 1)= 1E-15 $ TOLER(32, 2)= 1E-14 TOLER(33, 1)= 1E-06 $ TOLER(33, 2)= 1E-05 TOLER(34, 1)= 1E-06 $ TOLER(34, 2)= 1E-05 TOLER(35, 1)= 1E-06 $ TOLER(35, 2)= 1E-05 TOLER(36, 1)= 1E-06 $ TOLER(36, 2)= 1E-05 TOLER(37, 1)= 1E-06 $ TOLER(37, 2)= 1E-05 TOLER(38, 1)= 1E-06 $ TOLER(38, 2)= 1E-05 TOLER(39, 1)= 1E-06 $ TOLER(39, 2)= 1E-05 TOLER(40, 1)= 1E-06 $ TOLER(40, 2)= 1E-05 TOLER(41, 1)= 1E-06 $ TOLER(41, 2)= 1E-05 TOLER(42, 1)= 1E-06 $ TOLER(42, 2)= 1E-05 TOLER(43, 1)= 1E-06 $ TOLER(43, 2)= 1E-05 TOLER(44, 1)= 1E-06 $ TOLER(44, 2)= 1E-05 TOLER(45, 1)= 1E-06 $ TOLER(45, 2)= 1E-05 TOLER(46, 1)= 1E-06 $ TOLER(46, 2)= 1E-05 TOLER(47, 1)= 1E-06 $ TOLER(47, 2)= 1E-05 TOLER(48, 1)= 1E-06 $ TOLER(48, 2)= 1E-05 !-------------------------------------------------------------------------------------- ! Results comparison !-------------------------------------------------------------------------------------- COMPARA.MAC |
Results
| Label | Target | CivilFEM | Ratio | Tolerance |
| TX_I | 20000 | 20000 | 1.000 | 1 |
| TX_J | 20000 | 20000 | 1.000 | 1 |
| TX_K | 80000 | 80000 | 1.000 | 0.1 |
| TX_L | 80000 | 80000 | 1.000 | 0.1 |
| TY_I | 10000 | 10000 | 1.000 | 0.1 |
| TY_J | -2857.1 | -2857.1 | 1.000 | 0.1 |
| TY_K | -2857.1 | -2857.1 | 1.000 | 0.1 |
| TY_L | 10000 | 10000 | 1.000 | 0.1 |
| TXY_I | 7.9209e-009 | 7.9209e-009 | 1.000 | 1e-010 |
| TXY_J | 7.9209e-009 | 7.9209e-009 | 1.000 | 1e-010 |
| TXY_K | 7.9395e-009 | 7.9349e-009 | 1.001 | 1e-010 |
| TXY_L | 7.9232e-009 | 7.9244e-009 | 1.000 | 1e-010 |
| MX_I | -8639.6 | -8639.6 | 1.000 | 0.1 |
| MX_J | 3859 | 3859 | 1.000 | 0.01 |
| MX_K | -4309.5 | -4309.5 | 1.000 | 0.1 |
| MX_L | 2790.8 | 2790.8 | 1.000 | 0.01 |
| MY_I | -2220.4 | -2220.4 | 1.000 | 0.1 |
| MY_J | 334.36 | 334.36 | 1.000 | 0.001 |
| MY_K | -142.61 | -142.61 | 1.000 | 0.001 |
| MY_L | 1050.7 | 1050.7 | 1.000 | 0.01 |
| MXY_I | 1357.2 | 1357.2 | 1.000 | 0.01 |
| MXY_J | 2334.7 | 2334.7 | 1.000 | 0.01 |
| MXY_K | 2096.1 | 2096.1 | 1.000 | 0.01 |
| MXY_L | 1118.6 | 1118.6 | 1.000 | 0.01 |
| NX_I | 0 | 0 | 0.000 | 1e-014 |
| NX_J | 0 | 0 | 0.000 | 1e-014 |
| NX_K | 0 | 0 | 0.000 | 1e-014 |
| NX_L | 0 | 0 | 0.000 | 1e-014 |
| NY_I | 0 | 0 | 0.000 | 1e-014 |
| NY_J | 0 | 0 | 0.000 | 1e-014 |
| NY_K | 0 | 0 | 0.000 | 1e-014 |
| NY_L | 0 | 0 | 0.000 | 1e-014 |
| ASxi_I | 0 | 0 | 0.000 | 1e-005 |
| ASxi_J | 0.0002012 | 0.00020126 | 1.000 | 1e-005 |
| ASxi_K | 2.8438e-005 | 2.8393e-005 | 1.002 | 1e-005 |
| ASxi_L | 0.00020507 | 0.00020459 | 1.002 | 1e-005 |
| ASyi_I | 0.00017314 | 0.00017322 | 1.000 | 1e-005 |
| ASyi_J | 7.3611e-005 | 7.3519e-005 | 1.001 | 1e-005 |
| ASyi_K | 5.3007e-005 | 5.2929e-005 | 1.002 | 1e-005 |
| ASyi_L | 7.3998e-005 | 7.3937e-005 | 1.001 | 1e-005 |
| ASxs_I | 0.00031147 | 0.0003107 | 1.002 | 1e-005 |
| ASxs_J | 0 | 0 | 0.000 | 1e-005 |
| ASxs_K | 0.00027664 | 0.00027643 | 1.001 | 1e-005 |
| ASxs_L | 4.4012e-005 | 4.3968e-005 | 1.001 | 1e-005 |
| ASys_I | 0.00011414 | 0.00011446 | 0.997 | 1e-005 |
| ASys_J | 7.5158e-005 | 7.512e-005 | 1.000 | 1e-005 |
| ASys_K | 6.1229e-005 | 6.1137e-005 | 1.002 | 1e-005 |
| ASys_L | 1.3445e-005 | 1.3467e-005 | 0.998 | 1e-005 |
Contains proprietary and confidential information of Ingeciber, S.A.

