CFVR5154 - Vehicle loads in a beam bridge model.
The example is a beam bridge where vehicle loads are defined.
The bridge is made of HA-35 concrete.It has a rectangular cross section 30 x 43
The aim of the example is to verify the vehicle loads.
Element types used in the model: BEAM44 Needed CivilFEM Modules: |
|
| Model Statistics | |
| Number of elements | 3 |
| Number of nodes | 4 |
| Number of civil materials | 1 |
| Number of cross sections | 1 |
| Number of shell vertices | 0 |
Log file: CFVR5154.DAT
FINISH ~CFCLEAR,,1 ~CFACTIV,NLBR,Y NomFile='CFVR5154' /TITLE, %NomFile%, Vehicle on beam model. User units. ! ------------------------------------------------------------------------------------- ! User Units ! ------------------------------------------------------------------------------------- ~UNITS,,MONE,EURO ~UNITS,,LENG,,10,dm ~UNITS,,TIME,S ~UNITS,,FORC,,1000,kN ~UNITS,,PRES,,0 ,uuP ~UNITS,,MASS,,0 ,uuM ! ------------------------------------------------------------------------------------- ! Initial data ! ------------------------------------------------------------------------------------- /PREP7 LOCAL,11,0,212,332,547,10.5,3.2,-90 CSYS,11 ! Materials ~CFMP,1,LIB,CONCRETE,EHE,HA-35 ! Section and Beam & Shell Prop. ~CSECDMS,1,REC,1,30,43 ~BMSHPRO,1,BEAM,1,1,,,44,1,0,,Beam 1 ! Bridge N,10,0,0 N,20,40,0 N,30,80,30 N,40,80,70 ET,1,BEAM44 TYPE,1 E,10,20 E,20,30 E,30,40 CM,TSTDeckE,ELEM CM,TSTDeckN,NODE CMGRP,TSTDeck,TSTDeckE,TSTDeckN ! Vehicle Path. K,10,0,0 K,20,40,0 K,30,80,30 K,40,80,70+50 L,10,20 L,20,30 L,30,40 CM,TSTSktck,LINE ! LOADS /SOLU /sys,del file.s* ALLS ! Familiy definition. ! The following families will contain all the vehicle steps. ! These steps are incompatible (the vehicle can only be in one position at a time). ~BLFDF,1001, INCOMPAT ! Vertical loads ~BLFDF,1002, INCOMPAT ! Horizontal loads (Breaking, acceleration, etc.) ! Vehicle number 15 ~BLVST,15 ~BLVA, 1 ~BLVB, 1 ! BLVC, Type, d, start, end, PosCx, PosCy ~BLVC, 0,40,0,0,0,0 ! BLVD,j,Ini, P(Ini,j),P(Ini+1,j),...,P(Ini+k,j) ~BLVD, 1, 1, -1e1 ~BLVEND ALLS ! Attach the vehicle to the family. ! ~BLVR, Id_Fam, Id_FamH, Id_Vehicle, CompLine, CompDeck, Dist, HL, HLMin ~BLVR,1001,1002,15,TSTSktck,TSTDeck,-20.0,0.20,0 !-------------------------------------------------------------------------------------- ! DATA CHECK !-------------------------------------------------------------------------------------- ! Data comparison number NComp = 52 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) = 'N_Vehic' LABEL( 2) = 'D_' LABEL( 3) = 'Q(1,1)' LABEL( 4) = 'CSP(2)' LABEL( 5) = 'F_Type' LABEL( 6) = 'F_Stts' LABEL( 7) = 'FZ' LABEL( 8) = 'MX' LABEL( 9) = 'FZ' LABEL(10) = 'MX' LABEL(11) = 'FZ' LABEL(12) = 'MX' LABEL(13) = 'FZ' LABEL(14) = 'MX' LABEL(15) = 'FZ' LABEL(16) = 'MX' LABEL(17) = 'MY' LABEL(18) = 'FZ' LABEL(19) = 'MX' LABEL(20) = 'MY' LABEL(21) = 'FZ' LABEL(22) = 'MX' LABEL(23) = 'MY' LABEL(24) = 'FZ' LABEL(25) = 'MX' LABEL(26) = 'MY' LABEL(27) = 'FZ' LABEL(28) = 'MX' LABEL(29) = 'MY' LABEL(30) = 'FZ' LABEL(31) = 'MX' LABEL(32) = 'MY' LABEL(33) = 'FX' LABEL(34) = 'FY' LABEL(35) = 'FX' LABEL(36) = 'FX' LABEL(37) = 'FY' LABEL(38) = 'FX' LABEL(39) = 'FY' LABEL(40) = 'FZ' LABEL(41) = 'FX' LABEL(42) = 'FY' LABEL(43) = 'FX' LABEL(44) = 'FY' LABEL(45) = 'FX' LABEL(46) = 'FY' LABEL(47) = 'FX' LABEL(48) = 'FY' LABEL(49) = 'FX' LABEL(50) = 'FY' LABEL(51) = 'FX' LABEL(52) = 'FY' ! Correct data, obtained data !-------------------------------------------------------------------------------------- /SOLU VALUE( 1,1) = 1 $ ~CFGET,value( 1,2),BRIDGE,,VEHICLE,NUMBER VALUE( 2,1) = 40.0 $ ~CFGET,value( 2,2),BRIDGE,,VEHICLE,D,,15 VALUE( 3,1) = -10 $ ~CFGET,value( 3,2),BRIDGE,,VEHICLE,Q,,15,1,1 VALUE( 4,1) = 1 $ ~CFGET,value( 4,2),BRIDGE,,VEHICLE,ROWS,,15 VALUE( 5,1) = 3 $ ~CFGET,value( 5,2),BRIDGE,,FAMILY,TYPE,,1002 VALUE( 6,1) = 5 $ ~CFGET,value( 6,2),BRIDGE,,FAMILY,NSTATES,,1001 fdele,all,all sfedele,all,all,all ddele,all,all lsread,1 VALUE( 7,1) = -10 $ *GET,value( 7,2), NODE,10,F,FZ VALUE( 8,1) = 200 $ *GET,value( 8,2), NODE,10,F,MX VALUE( 9,1) = 0.0 $ *GET,value( 9,2), NODE,20,F,FZ VALUE(10,1) = 0.0 $ *GET,value(10,2), NODE,20,F,MX fdele,all,all sfedele,all,all,all ddele,all,all lsread,2 VALUE(11,1) = 0.0 $ *GET,value(11,2), NODE,10,F,FZ VALUE(12,1) = 0.0 $ *GET,value(12,2), NODE,10,F,MX VALUE(13,1) = -10 $ *GET,value(13,2), NODE,20,F,FZ VALUE(14,1) = 200 $ *GET,value(14,2), NODE,20,F,MX fdele,all,all sfedele,all,all,all ddele,all,all lsread,3 VALUE(15,1) = -4.667 $ *GET,value(15,2), NODE,20,F,FZ VALUE(16,1) = 74.67 $ *GET,value(16,2), NODE,20,F,MX VALUE(17,1) = 56.00 $ *GET,value(17,2), NODE,20,F,MY VALUE(18,1) = -5.333 $ *GET,value(18,2), NODE,30,F,FZ VALUE(19,1) = 85.33 $ *GET,value(19,2), NODE,30,F,MX VALUE(20,1) = 64.00 $ *GET,value(20,2), NODE,30,F,MY fdele,all,all sfedele,all,all,all ddele,all,all lsread,4 VALUE(21,1) = -10.000 $ *GET,value(21,2), NODE,30,F,FZ VALUE(22,1) = 33.33 $ *GET,value(22,2), NODE,30,F,MX VALUE(23,1) = 200.00 $ *GET,value(23,2), NODE,30,F,MY VALUE(24,1) = 0.0 $ *GET,value(24,2), NODE,40,F,FZ VALUE(25,1) = 0.0 $ *GET,value(25,2), NODE,40,F,MX VALUE(26,1) = 0.0 $ *GET,value(26,2), NODE,40,F,MY fdele,all,all sfedele,all,all,all ddele,all,all lsread,5 VALUE(27,1) = -0.833 $ *GET,value(27,2), NODE,30,F,FZ VALUE(28,1) = 0.0 $ *GET,value(28,2), NODE,30,F,MX VALUE(29,1) = 16.67 $ *GET,value(29,2), NODE,30,F,MY VALUE(30,1) = -9.167 $ *GET,value(30,2), NODE,40,F,FZ VALUE(31,1) = 0.0 $ *GET,value(31,2), NODE,40,F,MX VALUE(32,1) = 183.33 $ *GET,value(32,2), NODE,40,F,MY fdele,all,all sfedele,all,all,all ddele,all,all lsread,6 VALUE(33,1) = -2.000 $ *GET,value(33,2), NODE,10,F,FX VALUE(34,1) = 0.0 $ *GET,value(34,2), NODE,10,F,FY VALUE(35,1) = 0.0 $ *GET,value(35,2), NODE,20,F,FX VALUE(36,1) = 0.0 $ *GET,value(36,2), NODE,20,F,FY fdele,all,all sfedele,all,all,all ddele,all,all lsread,7 VALUE(37,1) = 0.0 $ *GET,value(37,2), NODE,10,F,FX VALUE(38,1) = 0.0 $ *GET,value(38,2), NODE,10,F,FY VALUE(39,1) = -2.000 $ *GET,value(39,2), NODE,20,F,FX VALUE(40,1) = 0.0 $ *GET,value(40,2), NODE,20,F,FY fdele,all,all sfedele,all,all,all ddele,all,all lsread,8 VALUE(41,1) = -0.747 $ *GET,value(41,2), NODE,20,F,FX VALUE(42,1) = -0.560 $ *GET,value(42,2), NODE,20,F,FY VALUE(43,1) = -0.853 $ *GET,value(43,2), NODE,30,F,FX VALUE(44,1) = -0.640 $ *GET,value(44,2), NODE,30,F,FY fdele,all,all sfedele,all,all,all ddele,all,all lsread,9 VALUE(45,1) = 0.0 $ *GET,value(45,2), NODE,20,F,FX VALUE(46,1) = 0.0 $ *GET,value(46,2), NODE,20,F,FY VALUE(47,1) = 0.0 $ *GET,value(47,2), NODE,30,F,FX VALUE(48,1) = -2.000 $ *GET,value(48,2), NODE,30,F,FY fdele,all,all sfedele,all,all,all ddele,all,all lsread,10 VALUE(49,1) = 0.0 $ *GET,value(49,2), NODE,30,F,FX VALUE(50,1) = -0.167 $ *GET,value(50,2), NODE,30,F,FY VALUE(51,1) = 0.0 $ *GET,value(51,2), NODE,40,F,FX VALUE(52,1) = -1.833 $ *GET,value(52,2), NODE,40,F,FY ! Warning and error tolerances TOLER( 1,1) = 1E-02 $ TOLER( 1,2) = 1E-02 TOLER( 2,1) = 1E-02 $ TOLER( 2,2) = 1E-02 TOLER( 3,1) = 1E-02 $ TOLER( 3,2) = 1E-02 TOLER( 4,1) = 1E-02 $ TOLER( 4,2) = 1E-02 TOLER( 5,1) = 1E-02 $ TOLER( 5,2) = 1E-02 TOLER( 6,1) = 1E-02 $ TOLER( 6,2) = 1E-02 TOLER( 7,1) = 1E-02 $ TOLER( 7,2) = 1E-02 TOLER( 8,1) = 1E-02 $ TOLER( 8,2) = 1E-02 TOLER( 9,1) = 1E-02 $ TOLER( 9,2) = 1E-02 TOLER( 10,1) = 1E-02 $ TOLER( 10,2) = 1E-02 TOLER( 11,1) = 1E-02 $ TOLER( 11,2) = 1E-02 TOLER( 12,1) = 1E-02 $ TOLER( 12,2) = 1E-02 TOLER( 13,1) = 1E-02 $ TOLER( 13,2) = 1E-02 TOLER( 14,1) = 1E-02 $ TOLER( 14,2) = 1E-02 TOLER( 15,1) = 1E-02 $ TOLER( 15,2) = 1E-02 TOLER( 16,1) = 1E-02 $ TOLER( 16,2) = 1E-02 TOLER( 17,1) = 1E-02 $ TOLER( 17,2) = 1E-02 TOLER( 18,1) = 1E-02 $ TOLER( 18,2) = 1E-02 TOLER( 19,1) = 1E-02 $ TOLER( 19,2) = 1E-02 TOLER( 20,1) = 1E-02 $ TOLER( 20,2) = 1E-02 TOLER( 21,1) = 1E-02 $ TOLER( 21,2) = 1E-02 TOLER( 22,1) = 1E-02 $ TOLER( 22,2) = 1E-02 TOLER( 23,1) = 1E-02 $ TOLER( 23,2) = 1E-02 TOLER( 24,1) = 1E-02 $ TOLER( 24,2) = 1E-02 TOLER( 25,1) = 1E-02 $ TOLER( 25,2) = 1E-02 TOLER( 26,1) = 1E-02 $ TOLER( 26,2) = 1E-02 TOLER( 27,1) = 1E-02 $ TOLER( 27,2) = 1E-02 TOLER( 28,1) = 1E-02 $ TOLER( 28,2) = 1E-02 TOLER( 29,1) = 1E-02 $ TOLER( 29,2) = 1E-02 TOLER( 30,1) = 1E-02 $ TOLER( 30,2) = 1E-02 TOLER( 31,1) = 1E-02 $ TOLER( 31,2) = 1E-02 TOLER( 32,1) = 1E-02 $ TOLER( 32,2) = 1E-02 TOLER( 33,1) = 1E-02 $ TOLER( 33,2) = 1E-02 TOLER( 34,1) = 1E-02 $ TOLER( 34,2) = 1E-02 TOLER( 35,1) = 1E-02 $ TOLER( 35,2) = 1E-02 TOLER( 36,1) = 1E-02 $ TOLER( 36,2) = 1E-02 TOLER( 37,1) = 1E-02 $ TOLER( 37,2) = 1E-02 TOLER( 38,1) = 1E-02 $ TOLER( 38,2) = 1E-02 TOLER( 39,1) = 1E-02 $ TOLER( 39,2) = 1E-02 TOLER( 40,1) = 1E-02 $ TOLER( 40,2) = 1E-02 TOLER( 41,1) = 1E-02 $ TOLER( 41,2) = 1E-02 TOLER( 42,1) = 1E-02 $ TOLER( 42,2) = 1E-02 TOLER( 43,1) = 1E-02 $ TOLER( 43,2) = 1E-02 TOLER( 44,1) = 1E-02 $ TOLER( 44,2) = 1E-02 TOLER( 45,1) = 1E-02 $ TOLER( 45,2) = 1E-02 TOLER( 46,1) = 1E-02 $ TOLER( 46,2) = 1E-02 TOLER( 47,1) = 1E-02 $ TOLER( 47,2) = 1E-02 TOLER( 48,1) = 1E-02 $ TOLER( 48,2) = 1E-02 TOLER( 49,1) = 1E-02 $ TOLER( 49,2) = 1E-02 TOLER( 50,1) = 1E-02 $ TOLER( 50,2) = 1E-02 TOLER( 51,1) = 1E-02 $ TOLER( 51,2) = 1E-02 TOLER( 52,1) = 1E-02 $ TOLER( 52,2) = 1E-02 ! Clear LS Files. /sys,del file.s* !-------------------------------------------------------------------------------------- ! Results comparison !-------------------------------------------------------------------------------------- COMPARA.MAC |
Results
| Label | Target | CivilFEM | Ratio | Tolerance |
| N_Vehic | 1 | 1 | 1.000 | 0.01 |
| D_ | 40 | 40 | 1.000 | 0.01 |
| Q(1,1) | -10 | -10 | 1.000 | 0.01 |
| CSP(2) | 1 | 1 | 1.000 | 0.01 |
| F_Type | 3 | 3 | 1.000 | 0.01 |
| F_Stts | 5 | 5 | 1.000 | 0.01 |
| FZ | -10 | -10 | 1.000 | 0.01 |
| MX | 200 | 200 | 1.000 | 0.01 |
| FZ | 0 | 4.9304e-031 | 0.000 | 0.01 |
| MX | 0 | -9.8608e-030 | 0.000 | 0.01 |
| FZ | 0 | 0 | 0.000 | 0.01 |
| MX | 0 | 0 | 0.000 | 0.01 |
| FZ | -10 | -10 | 1.000 | 0.01 |
| MX | 200 | 200 | 1.000 | 0.01 |
| FZ | -4.667 | -4.6667 | 1.000 | 0.01 |
| MX | 74.67 | 74.667 | 1.000 | 0.01 |
| MY | 56 | 56 | 1.000 | 0.01 |
| FZ | -5.333 | -5.3333 | 1.000 | 0.01 |
| MX | 85.33 | 85.333 | 1.000 | 0.01 |
| MY | 64 | 64 | 1.000 | 0.01 |
| FZ | -10 | -10 | 1.000 | 0.01 |
| MX | 33.33 | 33.333 | 1.000 | 0.01 |
| MY | 200 | 200 | 1.000 | 0.01 |
| FZ | 0 | 0 | 0.000 | 0.01 |
| MX | 0 | 0 | 0.000 | 0.01 |
| MY | 0 | 0 | 0.000 | 0.01 |
| FZ | -0.833 | -0.83333 | 1.000 | 0.01 |
| MX | 0 | 1.1842e-014 | 0.000 | 0.01 |
| MY | 16.67 | 16.667 | 1.000 | 0.01 |
| FZ | -9.167 | -9.1667 | 1.000 | 0.01 |
| MX | 0 | 1.3027e-013 | 0.000 | 0.01 |
| MY | 183.33 | 183.33 | 1.000 | 0.01 |
| FX | -2 | -2 | 1.000 | 0.01 |
| FY | 0 | 1.3703e-015 | 0.000 | 0.01 |
| FX | 0 | 9.8608e-032 | 0.000 | 0.01 |
| FX | 0 | -6.7563e-047 | 0.000 | 0.01 |
| FY | 0 | 0 | 0.000 | 0.01 |
| FX | 0 | 0 | 0.000 | 0.01 |
| FY | -2 | -2 | 1.000 | 0.01 |
| FZ | 0 | 1.3703e-015 | 0.000 | 0.01 |
| FX | -0.747 | -0.74667 | 1.000 | 0.01 |
| FY | -0.56 | -0.56 | 1.000 | 0.01 |
| FX | -0.853 | -0.85333 | 1.000 | 0.01 |
| FY | -0.64 | -0.64 | 1.000 | 0.01 |
| FX | 0 | 0 | 0.000 | 0.01 |
| FY | 0 | 0 | 0.000 | 0.01 |
| FX | 0 | -1.4211e-015 | 0.000 | 0.01 |
| FY | -2 | -2 | 1.000 | 0.01 |
| FX | 0 | -1.1842e-016 | 0.000 | 0.01 |
| FY | -0.167 | -0.16667 | 1.002 | 0.01 |
| FX | 0 | -1.3027e-015 | 0.000 | 0.01 |
| FY | -1.833 | -1.8333 | 1.000 | 0.01 |
Contains proprietary and confidential information of Ingeciber, S.A.

