|
|
|
|
|
|
|
|
|
|
|
|
| b= input( 'Width of the beam in inches: ');
|
| d= input('Effective depth of the beam in inches: ');
|
| fc= input('Compressive strength of concrete in ksi: ');
|
| fy= input('Yield strength of steel in ksi: ');
|
| Asq= input('The number of steel in the beam: ');
|
| Asd= input('The diameter of the steel: ');
|
| B= input('The Length of Beam in ksf: ');
|
| DL= input("Dead Load in ksf: ");
|
| LL= input("Live Load in ksf: ");
|
| ME= input ("Modulus of Elasticity, in ksi: ");
|
|
|
|
|
| As= Asq*((pi*(Asd/8)^2)/4);
|
| fprintf('Value of As: %0.2f in^2\n',As)
|
|
|
|
|
| T=As*fy;
|
|
|
|
|
| if fc<=4
|
| B= 0.85;
|
| elseif (4<fc)&&(fc<=8)
|
| B= 0.85-0.05*(fc-4);
|
| else
|
| B= 0.65;
|
| end
|
|
|
|
|
| c=T/(0.85*fc*B*b);
|
| fprintf('Value of c: %0.2f in\n',c)
|
|
|
|
|
| a=B*c;
|
| fprintf('Value of a: %0.2f in^2\n',a)
|
|
|
|
|
| Cc=0.85*fc*(b*a);
|
|
|
|
|
| fprintf('Assume the steel bar is yeilding, Strain_s>=Strain_y\n')
|
|
|
| Ecu=0.003;
|
|
|
| Strain_y=fy/ME;
|
| fprintf ('Value of Strain_y is: %0.4f\n', Strain_y);
|
|
|
| Strain_s=(Ecu*(d-c))/(c);
|
| fprintf ('Value of Strain_s is: %0.4f\n', Strain_s);
|
|
|
| if Strain_s>Strain_y
|
| c=(As*Strain_s*ME)/(0.85*fc*B*b);
|
| end
|
| fprintf ('Value of Strain_s is: %0.4f\n', Strain_s);
|
|
|
| if Strain_s>=Strain_y
|
| fprintf('Considering that Strain_s>=Strain_y. Therefore, the Steel Bars are Yielding. The assumption is correct.\n')
|
| else
|
| fprintf('Considering that Strain_s<Strain_y. Therefore, the Steel Bars are not Yielding. The assumption is wrong.\n')
|
| end
|
|
|
|
|
| Mn=(T)*(d-(a/2));
|
| fprintf('Value of Mn is: %0.2f kips-in\n', Mn);
|
|
|
|
|
| if Strain_s<0.002
|
| phi=0.65;
|
| elseif (Strain_s>=0.002)&&(Strain_s<0.005)
|
| phi=0.65+(Strain_s-0.002)*(250/3);
|
| elseif Strain_s>=0.005
|
| phi=0.9;
|
| end
|
| fprintf('Value of phi is: %0.2f kips-in\n', phi)
|
|
|
|
|
| M=phi*Mn;
|
| fprintf('Value of M is: %0.2f kips-in\n', M)
|
|
|
|
|
| As_m=3*(sqrt(fc));
|
|
|
| if As_m>=200
|
| As_min=(3*(sqrt(fc)*b*d))/(fy);
|
| elseif As_m<=200
|
| As_min=(200*b*d)/(fy*1000);
|
| end
|
|
|
| fprintf ('Value of As_min is: %0.2f in^2\n', As_min)
|
| fprintf ('Value of As is: %0.2f in^2\n', As)
|
|
|
| if As_min>As
|
| fprintf ('Considering that As_min>As, therefore the area of steel bars does not achieve the required area.\n');
|
| elseif As_min <= As
|
| fprintf ('Considering that As_min<=As, therefore area of steel bars does achieve the required area.\n');
|
| end
|
|
|
|
|
| Mn_max=(((1.4*DL)+(1.6*LL))*(As)*(As)*12)/(8);
|
| fprintf ('Value of Mn_max is: %.2f kips*in\n', Mn_max);
|
|
|
|
|
| if M>=Mn_max
|
| fprintf('Since M>=Mn_max. Therefore, the flexural strength of the beam is achieved.\n');
|
| else
|
| fprintf('Since M<Mn_max. Therefore, the flexural strength of the beam is not achieved.\n');
|
| end
|
|
|