import math
#calculate m1 and m2,m3,m4,m5,m6,m7,m8,m9
## n =l/k
n1 = 40.;
n2 = 60.;
n3 = 80.;
n4 = 100.;
n5 = 120.;
n6 = 140.;
n7 = 160.;
n8 = 180.;
n9 = 200.;
E = 13000.;## tons/in**2
##m = P/A
m1 = 4*math.pi**2 *E/n1**2;## tons per sq. inch
m2 = 4*math.pi**2 *E/n2**2;## tons per sq. inch
m3 = 4*math.pi**2 *E/n3**2;## tons per sq. inch
m4 = 4*math.pi**2 *E/n4**2;## tons per sq. inch
m5 = 4*math.pi**2 *E/n5**2;## tons per sq. inch
m6 = 4*math.pi**2 *E/n6**2;## tons per sq. inch
m7 = 4*math.pi**2 *E/n7**2;## tons per sq. inch
m8 = 4*math.pi**2 *E/n8**2;## tons per sq. inch
m9 = 4*math.pi**2 *E/n9**2;## tons per sq. inch
print'%s %.d %s %.d %s %.d %s %.d %s %.d %s %.d %s %.d %s %.d %s %.d %s'%('l/k : ',n1,' ',n2,'',n3,' ',n4,' ',n5,'',n6,'',n7,'',n8,'',n9,'' )
print'%s %.1f %s %.1f %s %.1f %s %.1f %s %.1f %s %.1f %s %.1f %s %.1f %s %.1f %s '%('P/A:',m1,'',m2,'',m3,'',m4,'',m5,'',m6,'',m7,'',m8,'',m9,'')
##there is a minute error in the answer given in text book
import math
#calculate The collapsing load
d = 1.;## inches
t = 1/8.;## inches
l = 10.;## feet
E = 13500.;## tons/in**2
D = d+2.*t;## inches
I = (math.pi/64.)*(D**4. - d**4.);## in**4
P = 20.25*E*I/(12.*l)**2. ;## tons
print'%s %.2f %s'%('The collapsing load, P =',P,'tons')
import math
#calculate The safe axial load
b = 10.;## inches
d = 6.;##inches
l = 15.;## feet
A = 11.77;## in^2
I_xx = 204.80;## in^4
I_yy = 21.76;## in^4
f_c = 21.;## tons/in^2
a = 1/7500.;
n = 3.;##factor of safety
k = math.sqrt(I_yy/A);## radius of gyration
P = f_c*A/(1.+(a/2.)*(l*12./k)**2);## tons
P_s = P/n;## safe load
print'%s %.3f %s'%('The safe axial load =',P_s,'tons');
##there is a minute calculation error in the answer given in text book
import math
#calculate The internal diameter and The thickness of the metal
l = 16.;## feet
F = 30.;## tons
n = 8.;## factor of safety
k = 0.8;##k = d/D
f_c = 36.;## tons/in^2
a = 1/1600.;
r = 0.25*math.pi*(1-k**2);##r = A/D^2
P = n*F;## tons
D1 = math.sqrt(P/(f_c*r*2) +math.sqrt((P/(f_c*r))*((a/4)*(l*12.)**2.)/((1+k**2.)/16.) + (P/(f_c*r*2.))**2.));## inches
D = round(D1);## inches
d = k*D;## inches
t = (D-d)/2.;## inches
print'%s %.1f %s'%('The internal diameter d =',d,'inches');
print'%s %.2f %s'%('The thickness of the metal will be',t,'inches');
## the answer is correct only, but it is approximated in the text book
import math
#calculate The safe axial load
l = 5.;## feet
b = 5./2.;## inches
d = 5/2.;## inches
h = 1/4.;## inches
n = 3.;## factor of safety
A = 1.19;## in^2
k = 0.49;## minimum radius of gyration
f_c = 21.;## lb/in^2
a = 1/7500.;
P = f_c*A/(1+(a/2)*((l*12)**2)/k**2);## tons
P_safe = P/n;## tons
print'%s %.2f %s'%('The safe axial load =',P_safe,'tons');
import math
#calculate The safe axial load
b1 = 10.;## inches
d1 = 7/2.;## inches
r = 9/2.;## inches
b2 = 12.;## inches
d2 = 1/2.;## inches
l = 20.;## feet
n = 4.;## factor of safety
A_s = 7.19;## in^2
I_xx1 = 109.42;## in^4
I_yy1 = 7.42;## in^4
d = 0.97;## inches
f_c = 21.;## lb/in^2
a = 1/7500.;
A = 2*A_s + 4*b2*d2;## in^2
I_xx = 2.*I_xx1 + 2.*((1/12.)*b2*(2*d2)**3. + b2*(r+2.*d2)**2.);## in^4
I_yy = 2.*(1/12.)*(2*d2)*b2**3. + 2.*(I_yy1 + A_s*(0.5*r+d)**2.);## in^4
k = math.sqrt(min(I_xx,I_yy)/A);## minimum radius of gyration
P = f_c*A/(1.+ a*((l*12.)**2./k**2));## tons
P_safe = P/n;## tons
print'%s %.1f %s'%('The safe axial load =',round(P_safe),'tons');
import math
#calculate the safe axial load
m = 4.;## no. of angles
b = 7/2.;## inches
d = 7/2.;## inches
h = 3/8.;## inches
s = 18.;## inches
l = 30.;## feet
n = 3.;## factor of safety
A = 2.49;## in^2
J = 1.;## inches
I_xxs = 2.80;## in^4
I_yys = I_xxs;## in^4
##from the chapter V.
I = 648.64;## in^4
k = math.sqrt(65.2);## in^2
f_c = 21.;## lb/in^2
a = 1/7500.;
P = m*f_c*A/(1.+a*((l*12)**2)/k**2);## tons
P_safe = P/n;## tons
print'%s %.1f %s'%('The safe axial load =',P_safe,'tons');
import math
#calculate Stress intensities and Maximum possible eccentricity
D = 7.;## inches
t = 3/4.;## inches
l = 16.;## feet
P = 12.;## tons
e = 3/4.;## inches
E = 6000.;## tons/in^2
d = D-2.*t;## inches
A = 0.25*math.pi*(D**2. - d**2.);## in^2
I = (math.pi/64.)*(D**4. - d**4.);## in^4
p_0 = P/A;## tons/in^2
Z = 2.*I/D;## in^3
M = P*e/math.cos(0.25*l*12.*math.sqrt(P/(E*I)));## ton-inches
p_b = M/Z;## tons/in^2
p_max = p_0+p_b;## tons/in^2
p_min = p_0-p_b;## tons/in^2
##if tension is just on the point being induced in the section, p_b = p_0
e = p_0*t*Z/M;## inches
print'%s %.3f %s'%('Stress intensities, p_max =',p_max,'tons/in^2.,compressive')
print'%s %.3f %s'%('p_min =',p_min,'tons/in^2., compressive');
print'%s %.2f %s'%('Maximum possible eccentricity, e =',e,'inches')
import math
#calculate The maximum possible eccentricity
P = 80;## tons
p_max = 5;## tons/in^2
E = 13000;## tons/in^2
A = 38.38;## in^2
I_yy = 451.94;## in^4
y_c = 6;## inches
l = 20;## inches
k = math.sqrt(I_yy/A);## inches
Z_yy = I_yy/y_c;## in^3
p_0 = P/A;## tons/in^2
p_b = p_max-p_0;## tons/in^2
M_max = p_b*Z_yy;## ton-inches
e = M_max/(P/math.cos(0.5*l*12*math.sqrt(P/(E*I_yy))));##inches
print'%s %.2f %s'%('The maximum possible eccentricity, e =',e,'inches')
import math
#calculate The safe load
e = 7/4.;## inches
E = 13000.;## tons/in^2
p = 5.;## tons/in^2
y_c = 6.;## inches
l = 20.;## feet
A = 38.38;## in^2
k = math.sqrt(11.78);## inches
I = 11.78;## in^4
p_e = (math.pi)**2 *E*k**2 /(l*12)**2;## tons/in^2
##from Perry's formula
p_0 = 0.5*((p_e*1.2*e*y_c/k**2)+p_e+p)-math.sqrt((0.5*((p_e*1.2*e*y_c/k**2)+p_e+p))**2 - p_e*p);## tons/in^2
P = p_0*A;## tons
print'%s %.2f %s'%('The safe load, P =',P,'tons');
##there is a minute calculation error in the answer given in text book
import math
#calculate The safe load
b1 = 10.;## inches
d1 = 6.;## inches
b2 = 12.;## inches
d2 = 1/2.;## inches
l = 16.;## feet
A_s = 11.77;## in^2
I_xxs = 204.80;## in^4
I_yys = 21.76;## in^4
A = A_s + 2*b2*d2;## in^2
I_yy = I_yys + 2.*(1./12.)*d2*b2**3.;## in^4
k = math.sqrt(I_yy/A);## inches
##from the Perry-Robertson formula
n = 0.003*l*12/k;
p_e = 13000*math.pi**2/((l*12)/k)**2 ;## tons/in^2
f = 18.;## tons/in^2
x = 0.5*(f+p_e*(1.+n));
p_0 = x - math.sqrt(x**2 - f*p_e);## tons/in^2
P = p_0*A;## tons
P_safe = P/2.36;## tons
print'%s %.1f %s'%('The safe load, P =',P_safe,'tons');
##there is a minute calculation error in the answer given in text book