Вы находитесь на странице: 1из 7

//calculation of live loadBM for 70R tracked vehicle

#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
float L,B,T,DWr=0.84,DWs=4.57,bw,Leff,Tw,CCWdr=2.06,WW=700.0,Beff,WX;
float z,Mab,Mba,Tf,a,Lo,alpha,TOWsik,C=1.2,Bd,Wm,W2m,Ra,Mmax,Wb,Rb,j,IF;
float z1,z2,Ww,Hw1,Hw2,Teta,Wb1,Wb2,W1;
float S,k,lane;
float Wkb,Wkt,Hk,Wsk,Hsk,Hsks,Wfp,Hfp,Wcb,Pcb,nw,Q,Bo,cc1,cc2,W,LLeff;
float tif(float);
float ssalpha(float,float);
float beff(float,float,float,float);
float bd(float,float,float,float,float);
float endload(float,float,float,float);
float lastload(float,float,float,float);
clrscr();
printf("\nNAME OF THE PROJECT:");
printf("\nCALCULATION OF MAXIMUM BENDING MOMENT FOR 70R TRACKED LOADING");
printf("\nSTEP:INPUT DATA");
printf("\n1.1.OVERALL SPAN OF BRIDGE,L="); //input data required for design
scanf("%f",&L);
printf("\n1.2DIMENSION OF WIDTH OF BEARING ON ONE SIDE,Wb1=");
scanf("%f",&Wb1);
printf("\n1.3.AVERAGE DIMENSION OF WIDTH OF BEARING ON ANOTHER SIDE,Wb2=");
scanf("%f",&Wb2);
printf("\nWb=((Wb1+Wb2)/2)",Wb);
Wb=((Wb1+Wb2)/2);
printf("\n1.4.AVERAGE DIMENSION OF WIDTH OF BEARING,Wb=%f",Wb);
printf("\n1.5.EFFECTIVE SPAN OF BRIDGE,Lo=L-(Wb/2)-(Wb/2)");
Lo=L-(Wb/2)-(Wb/2);
printf("\n1.6.EFFECTIVE SPAN OF BRIDGE,Lo=%f",Lo);
printf("\n2.WIDTH OF DECK SLAB OF BRIDGE,B=");
scanf("%f",&B);
printf("\n3.THICKNESS OF DECK SLAB OF BRIDGE,T=");
scanf("%f",&T);
printf("\n4.ENTER THE THICKNESS OF WEARING COAT, Tw IN m=");
scanf("%f",&Tw);
printf("\n5.ENTER THE THICKNESS OF FILL, Tf IN m=");
scanf("%f",&Tf);
printf("\nENTER k=1 IF KERB,SAFETY KERB AND OUTER CRASH BARRIER (OR) ENTER 2 IF
KERB,FOOTPATH,INNER CRASH BARRIER,k=2 (OR) k=4 FOR KERC ONLY,k=");
scanf("%f",&k);
printf("KERB DIMENSION");
printf("\n1.1kerb width at top,Wkt=");
scanf("%f",&Wkt);
printf("\n1.2.kerb width at bottom,Wkb=");
scanf("%f",&Wkb);
printf("\n2.Depth of kerb,Hk=");
scanf("%f",&Hk);
if(k==1)
{
printf("SAFETY KERB AND CRASH BARRIER DIMENSION");
printf("\n1.Safety kerb width,Wsk=");
scanf("%f",&Wsk);
printf("\n2.1Safety kerb depth at sides,Hsks=");
scanf("%f",&Hsks);
printf("\n2.2Safety kerb depth,Hsk=");
scanf("%f",&Hsk);
printf("\n3.Width of crashbarrier,Wcb=");
scanf("%f",&Wcb);
printf("\n4.Weight of crashbarrier,Pcb=");
scanf("%f",&Pcb);
printf("\nTOWsik=Wkt+Wsk\n");
TOWsik=Wkt+Wsk;
printf("\nTOWsik=%f\n",TOWsik);
}
if(k==2)
{
printf("FOOTPATH AND CRASH BARRIER DIMENSION");
printf("\n1.Width of footpath,Wfp=");
scanf("%f",&Wfp);
printf("\n2.Depth of footpath,Hfp=");
scanf("%f",&Hfp);
printf("\n3.Width of crashbarrier,Wcb=");
scanf("%f",&Wcb);
printf("\n4.Weight of crashbarrier,Pcb=");
scanf("%f",&Pcb);
printf("\nTOWsik=Wkb+Wfp");
TOWsik=Wkb+Wfp;
printf("\nTOWsik=%f",TOWsik);
}
if((k!=1)&&(k!=2))
{
TOWsik=Wkb;
printf("\nTOWsik=%f",TOWsik);
}
printf("\nEnter j=1 ,if wedge available,j=");
scanf("%f",&j);
if(j==1)
{
printf("WEDGE DIMENSION");
printf("\n1.Wedge width,Ww=");
scanf("%f",&Ww);
printf("\n2.1Depth of Wedge at 1 side,Hw1=");
scanf("%f",&Hw1);
printf("\n2.2Depth of Wedge at 2 side,Hw2=");
scanf("%f",&Hw2);
printf("\n3.Skew angle,Teta=");
scanf("%f",&Teta);
}
printf("\nBo=B-2*(TOWsik)");
Bo=B-2*(TOWsik);
printf("\nCarriage way width of deck slab,Bo= %f",Bo);
printf("\nCALCULATION OF LIVE LOAD BENDING MOMENT FOR 70R TRACKED VEHICLE IN SLAB
BRIDGE");
printf("\nSTEP:2");
printf("\n1.Wheel dimension in roadway direction,DWr=%f m\n",DWr);
printf("bw=DWr+2(Tw+Tf)\n");
bw=DWr+(2*(Tw+Tf));
printf("2.Track contact width in roadway direction,bw=%f m\n",bw);
printf("3.Wheel dimension in span direction,DWs=%f m\n",DWs);
printf("Leff=DWs+2(Tw+T+Tf)\n");
Leff=DWs+(2*(Tw+T+Tf));
printf("4.Dispersion length of wheel load in span direction,Leff=%f m\n",Leff);
printf("5.Centre to centre distance of wheels along roadway direction,CCWdr=%f
m\n",CCWdr);
printf("\nSTEP:3 EFFECTIVE DISPERSION WIDTH ALONG ROADWAY DIRECTION");
printf("\nALPHA VALUE");
alpha=ssalpha(B,Lo);
printf("\nalpha=%f",alpha);
printf("\nalpha=");
scanf("%f",&alpha);
printf("\na VALUE");
a=Lo/2;
printf("a=%f\n",a);
printf("\nTHEORETICAL WIDTH OF DISPERSION");
Beff=beff(alpha,a,Lo,bw);
printf("\nBeff=%f",Beff);
printf("Beff=");
scanf("%f",&Beff);
printf("\nACTUAL WIDTH OF DISPERSION");
Bd=bd(TOWsik,C,DWr,CCWdr,Beff);
printf("\nActual avilable width of dispersion along roadway direction,Bd=");
scanf("%f",&Bd);
printf("\nSTEP:4 MAXIMUM BENDING MOMENT CALCULATION");
printf("\nIMPACT FACTOR CALCULATION");
IF=tif(Lo);
printf("IF=%f",IF);
printf("\nFor span %f m ,the impact factor is calculated as per irc:6-2017 pg no :
30",Lo);
printf("\nIF=");
scanf("%f",&IF);
printf("\nINTENSITY OF LOADING");
printf("\nNo of wheel in roadway direction,nw=");
scanf("%f",&nw);
if(WW<4.57)
{
W1=(WW/4.57)*Lo;
}
else
{
W1=WW;
}
printf("W=%f",W1);
printf("\nW=");
scanf("%f",&W1);
if((Leff*0.5)>(Lo*0.5))
{
printf("\nLLeff=Lo");
LLeff=Lo;
W=(L*(W1/Leff));
}
else
{
printf("\nLLeff=Leff");
LLeff=Leff;
W=W1;
}
printf("Leff=%f",LLeff);
printf("\nLeff=");
scanf("%f",&LLeff);
printf("W=%f",W);
printf("W=");
scanf("%f",&W);
printf("W2m=(nw*W*(1+IF))/(Bd*Leff)\n");
W2m=(nw*W*(1+IF))/(Bd*LLeff);
printf("\nIntensity of loading ,W2m=%f m",W2m);
printf("\nCALCULATION OF REACTION");
if((Lo<=Leff)||(Lo<=4.57))
{
printf("\nMab=((W2m*Lo*Lo)/12)");
Mab=((W2m*Lo*Lo)/12);
printf("\nMab=%f",Mab);
printf("\nMba=((W2m*Lo*Lo)/12)");
Mba=((W2m*Lo*Lo)/12);
printf("\nMba=%f",Mba);
Ra=((W2m*Lo)/2);
printf("\Ra=((W2m*Lo)/2)\n");
printf("\nReaction at supports=%f\n",Ra);
Rb=((W2m*Lo)/2);
printf("Rb=((W2m*Lo)/2)\n");
printf("\nReaction at supports=%f\n",Rb);
printf("\nCALCULATION OF MAXIMUM BENDING MOMENT");
Mmax=((W2m*Lo*Lo)/24);
printf("Mmax=((W2m*Lo*Lo)/24)\n");
printf("\nMaximum Bending moment=%f\n",Mmax);
}
else
{
printf("\nMab=(((W*4.57)/(Lo*Lo))*(((0.5*Lo)*(0.5*Lo)*(0.5*Lo))+((((0.5*Lo)-
(2*(0.5*Lo)))*(4.57*4.57))/12)");
Mab=(((W2m*4.57)/(Lo*Lo))*(((0.5*Lo)*(0.5*Lo)*(0.5*Lo))+((((0.5*Lo)-
(2*(0.5*Lo)))*(4.57*4.57))/12)));
printf("\nMab=%f\n",Mab);
printf("\nMba=(((W*4.57)/(Lo*Lo))*(((0.5*Lo)*(0.5*Lo)*(0.5*Lo))+((((0.5*Lo)-
(2*(0.5*Lo)))*(4.57*4.57))/12)");
Mba=(((W2m*4.57)/(Lo*Lo))*(((0.5*Lo)*(0.5*Lo)*(0.5*Lo))+((((0.5*Lo)-
(2*(0.5*Lo)))*(4.57*4.57))/12)));
printf("\nMba=%f\n",Mba);
Ra=(((W2m*4.57)/(Lo*Lo*Lo))*((((2*(0.5*Lo))+Lo)*((0.5*Lo)*(0.5*Lo)))+((((0.5*Lo)-
(0.5*Lo))/4)*4.57*4.57)));
Rb=(((W2m*4.57)/(Lo*Lo*Lo))*((((2*(0.5*Lo))+Lo)*((0.5*Lo)*(0.5*Lo)))-((((0.5*Lo)-
(0.5*Lo))/4)*4.57*4.57)));
printf("\nRa=(((W*4.57)/(Lo*Lo*Lo))*((((2*(0.5*Lo))+4.57)*((0.5*Lo)*(0.5*Lo)))-
((((0.5*Lo)-(0.5*Lo))/4)*4.57*4.57)))\n");
printf("\nRb=(((W*4.57)/(Lo*Lo*Lo))*((((2*(0.5*Lo))+4.57)*((0.5*Lo)*(0.5*Lo)))-
((((0.5*Lo)-(0.5*Lo))/4)*4.57*4.57)))\n");
printf("\nReaction at supports=%f\n",Ra);
printf("\nReaction at supports=%f\n",Rb);
printf("\nCALCULATION OF MAXIMUM BENDING MOMENT");
Mmax=((W2m/(24*Lo))*((4.57*4.57*4.57)-(3*Lo*Lo*Lo)+(12*4.57*(0.5*Lo)*(0.5*Lo))-
(3*Lo*4.57*(4.57+(2*Lo)))+(12*(0.5*Lo)*Lo*(4.57+(0.5*Lo)))));
printf("\nMmax=(((W2m)/(24*Lo))*((4.57*4.57*4.57)-(3*Lo*Lo*Lo)
+(12*4.57*(0.5*Lo)*(0.5*Lo))-(3*Lo*4.57*(4.57+(2*Lo))
+(12*(0.5*Lo)*Lo*(4.57+(0.5*Lo)))))");
printf("\nMaximum Bending moment=%f\n",Mmax);
}
getch();
return 0;
}
#include<stdio.h>
#include<conio.h>
#include<math.h>
float tif(float Lo)
{
float Tx1=5.0,Tx2=9.0,Ty1=0.25,Ty2=0.10,IF;
if(Lo<=5)
{
printf("IF=0.25\n");
printf("For span upto 5m\n");
printf("IF=");
scanf("%f",IF);
return(IF);
}
if((Lo<=9)&&(Lo>5))
{
IF=Ty1+(((Lo-Tx1)/(Tx2-Tx1))*(Ty2-Ty1));
printf("IF=%f\n",IF);
printf("For span upto 5-9 m\n");
printf("IF=");
scanf("%f",IF);
return(IF);
}
if((Lo<40)&&(Lo>9))
{
printf("IF=0.10\n");
printf("For span upto 9m-40 m\n");
printf("IF=");
scanf("%f",IF);
return(IF);
}
}
#include<stdio.h>
#include<conio.h>
float ssalpha(float B,float Lo)
{
float z1,z2,cc1,cc2,z,alpha,Beff;
z=(B/Lo);
printf("\nB/Lo=%f",z);
printf("\nz=(B/Lo)");
printf("\nAlpha value for continuous slab");
if(z<=0.1)
z1=0,z2=0.1,cc1=0.0,cc2=0.4;
if((z<=0.2)&&(z>0.1))
z1=0.1,z2=0.2,cc1=0.4,cc2=0.8;
if((z<=0.3)&&(z>0.2))
z1=0.2,z2=0.3,cc1=0.8,cc2=1.16;
if((z<=0.4)&&(z>0.3))
z1=0.3,z2=0.4,cc1=1.16,cc2=1.44;
if((z<=0.5)&&(z>0.4))
z1=0.4,z2=0.5,cc1=1.44,cc2=1.68;
if((z<=0.6)&&(z>0.5))
z1=0.5,z2=0.6,cc1=1.68,cc2=1.84;
if((z<=0.7)&&(z>0.6))
z1=0.6,z2=0.7,cc1=1.84,cc2=1.96;
if((z<=0.8)&&(z>0.7))
z1=0.7,z2=0.8,cc1=1.96,cc2=2.08;
if((z<=0.9)&&(z>0.8))
z1=0.8,z2=0.9,cc1=2.08,cc2=2.16;
if((z<=1.0)&&(z>0.9))
z1=0.9,z2=1.0,cc1=2.16,cc2=2.24;
if((z<=1.1)&&(z>1.0))
z1=1.0,z2=1.1,cc1=2.24,cc2=2.28;
if((z<=1.2)&&(z>1.1))
z1=1.1,z2=1.2,cc1=2.28,cc2=2.36;
if((z<=1.3)&&(z>1.2))
z1=1.2,z2=1.3,cc1=2.36,cc2=2.40;
if((z<=1.4)&&(z>1.3))
z1=1.3,z2=1.4,cc1=2.40,cc2=2.48;
if((z<=1.5)&&(z>1.4))
z1=1.4,z2=1.5,cc1=2.48,cc2=2.48;
if((z<=1.6)&&(z>1.5))
z1=1.5,z2=1.6,cc1=2.48,cc2=2.52;
if((z<=1.7)&&(z>1.6))
z1=1.6,z2=1.7,cc1=2.52,cc2=2.56;
if((z<=1.8)&&(z>1.7))
z1=1.7,z2=1.8,cc1=2.56,cc2=2.60;
if((z<=1.9)&&(z>1.8))
z1=1.8,z2=1.9,cc1=2.60,cc2=2.60;
if((z<=2.0)&&(z>1.9))
z1=1.9,z2=2.0,cc1=2.60,cc2=2.60;
if(z>2.0)
z1=1.9,z2=2.0,cc1=2.60,cc2=2.60;
printf("Talpha=cc1+(((Tz-z1)/(z2-z1))*(cc2-cc1))\n");
alpha=cc1+(((z-z1)/(z2-z1))*(cc2-cc1));
return(alpha);
}
#include<stdio.h>
#include<conio.h>
#include<math.h>
float beff(float alpha,float a,float Lo,float bw)
{
float Beff;
printf("\nBeff=(alpha*a*(1-(a/Lo)))+bw");
Beff=(alpha*a*(1-(a/Lo)))+bw;
return(Beff);
}
#include<stdio.h>
#include<conio.h>
float bd(float TOWsik,float C,float DWr,float CCWdr,float Beff)
{
float Bd,Wm,Q,nw,WX;
printf("\nQ=(TOWsik)+C+(DWr/2)");
Q=(TOWsik)+C+(DWr/2);
printf("Available kerb distance ,Q=%f",Q);
if((Beff>CCWdr)&&((Beff/2)<Q))
{
printf("\ncheck:1 Beff>CCWdr");
printf("\ncheck2:((Beff*0.5)<Q)");
printf("\nThe dispersion of load due to wheel load overlaps in roadway
direction\n");
printf("\nSo, the effective width of dispersion should be restricted to actual
available width of dispersion");
printf("\nBd=(Beff/2)+(CCWdr)+(Beff/2)\n");
Bd=((Beff/2)+(CCWdr)+(Beff/2));
printf("Actual length of dispersion along roadway direction,Bd=%f",Bd);
}
if((Beff<CCWdr)&&((Beff/2)<Q))
{
printf("\ncheck:1 Beff<CCWdr");
printf("\ncheck2:((Beff*0.5)<Q)");
printf("\nThe dispersion of load due to wheel load does not overlaps in roadway
direction\n");
printf("\nSo,the effective width of dispersion can be taken as actual available
width of dispersion");
printf("\nBd=(Beff/2)+(Beff)+(Beff/2)\n");
Bd=((Beff/2)+(Beff)+(Beff/2));
printf("Actual length of dispersion along roadway direction,Bd=%f",Bd);
}
if((Beff>CCWdr)&&((Beff/2)>Q))
{
printf("\ncheck:1 Beff>CCWdr");
printf("\ncheck2:((Beff*0.5)>Q)");
printf("\nThe dispersion of load due to wheel load overlaps in roadway
direction\n");
printf("\nSo, the effective width of dispersion should be restricted to actual
available width of dispersion");
printf("\nBd=(Q)+(CCWdr)+(Beff/2)\n");
Bd=(Q)+(CCWdr)+(Beff/2);
printf("Actual length of dispersion along roadway direction,Bd=%f",Bd);
}
if((Beff<CCWdr)&&((Beff/2)>Q))
{
printf("\ncheck:1 Beff>CCWdr");
printf("\ncheck2:((Beff*0.5)<Q)");
printf("\nThe dispersion of load due to wheel load overlaps in roadway
direction\n");
printf("\nSo, the effective width of dispersion should be restricted to actual
available width of dispersion");
printf("\nBd=(Q)+(Beff)+(Beff/2)\n");
Bd=(Q)+(Beff)+(Beff/2);
printf("Actual length of dispersion along roadway direction,Bd=%f",Bd);
}
}

Вам также может понравиться