import math
#initialisation
d = 18 # inner idameter of the hemisphere in inch
t = 1.0/4.0 # thickness of the hemisphere in inch
#calculation
# Part (a)
sa = 14000 # Allowable tensile stress in Psi
Pa = (2*t*sa)/(d/2.0) # Maximum permissible air pressure in Psi
print "Maximum permissible air pressure in the tank (Part(a)) is", round(Pa,1), "psi"
# Part (b)
sb = 6000 # Allowable shear stress in Psi
Pb = (4*t*sb)/(d/2.0) # Maximum permissible air pressure in Psi
print "Maximum permissible air pressure in the tank (Part(b)) is", round(Pb,1), "psi"
# Part (c)
e = 0.0003 # Allowable Strain in Outer sufrface of the hemisphere
E = 29e06 # Modulus of epasticity of the steel in Psi
v = 0.28 # Poissions's ratio of the steel
Pc = (2*t*E*e)/((d/2.0)*(1-v)) # Maximum permissible air pressure in Psi
print "Maximum permissible air pressure in the tank (Part(c)) is", round(Pc,1), "psi"
# Part (d)
Tf = 8100 # failure tensile load in lb/in
n = 2.5 # Required factor of safetty against failure of the weld
Ta = Tf / n # Allowable load in ld/in
sd = (Ta*(1))/(t*(1)) # Allowable tensile stress in Psi
Pd = (2*t*sd)/(d/2.0) # Maximum permissible air pressure in Psi
print "Maximum permissible air pressure in the tank (Part(d)) is", round(Pd,1), "psi"
# Part (e)
Pallow = Pb
print "Maximum permissible air pressure in the tank (Part(e)) is", round(Pb,1) ,"psi"
import math
#initialisation
a = 55 # Angle made by helix with longitudinal axis in degree
r = 1.8 # Inner radius of vessel in m
t = 0.02 # thickness of vessel in m
E = 200e09 # Modulus of ealsticity of steel in Pa
v = 0.3 # Poission's ratio of steel
P = 800e03 # Pressure inside the tank in Pa
#calculation
# Part (a)
s1 = (P*r)/t # Circumferential stress in Pa
s2 = (P*r)/(2*t) # Longitudinal stress in Pa
print "Circumferential stress is ", s1, "Pa"
print "Longitudinal stress is ", s2, "Pa"
# Part (b)
t_max_z = (s1-s2)/2.0 # Maximum inplane shear stress in Pa
t_max = s1/2.0 # Maximum out of plane shear stress in Pa
print "Maximum inplane shear stress is ", t_max_z, "Pa"
print "Maximum inplane shear stress is ", t_max, "Pa"
# Part (c)
e1 = (s1/(2*E))*(2-v) # Strain in circumferential direction
e2 = (s2/E)*(1-(2*v)) # Strain in longitudinal direction
print "Strain in circumferential direction is %e"%(e1)
print "Strain in longitudinal direction is ", e2
# Part (d)
# x1 is the direction along the helix
theta = 90 - a
sx1 = ((P*r)/(4*t))*(3-math.cos(math.radians(2*theta))) # Stress along x1 direction
tx1y1 = ((P*r)/(4*t))*(math.sin(math.radians(2*theta))) # Shear stress in x1y1 plane
sy1 = s1+s2-sx1 # Stress along y1 direction
print "Stress along y1 direction is ", sy1
# Mohr Circle Method
savg = (s1+s2)/2.0 # Average stress in Pa
R = (s1 - s2 )/2.0 # Radius of Mohr's Circle in Pa
sx1_ = savg - R*math.cos(math.radians(2*theta)) # Stress along x1 direction
tx1y1_ = R*math.sin(math.radians(2*theta)) # Shear stress in x1y1 plane
print "Stress along x1 direction is ", sx1_, "Pa"
%matplotlib inline
from matplotlib import *
from pylab import *
import numpy
#initialisation
L = 6.0 # Span of the beam in ft
P = 10800 # Pressure acting in lb
c = 2.0 # in ft
b = 2.0 # Width of cross section of the beam in inch
h = 6.0 # Height of the cross section of the beam in inch
x = 9.0 # in inch
#calculation
Ra = P/3.0 # Reaction at point at A
V = Ra # Shear force at section mn
M = Ra*x # Bending moment at the section mn
I = (b*h**3)/12.0 # Moment of inertia in in4
y = linspace(-3, 3, 61)
sx = -(M/I)*y # Normal stress on crossection mn
Q = (b*(h/2-y))*(y+((((h/2.0)-y)/2.0))) # First moment of recmath.tangular cross section
txy = (V*Q)/(I*b) # Shear stress acting on x face of the stress element
s1 = (sx/2.0)+numpy.sqrt((sx/2.0)**2+(txy)**2) # Principal Tesile stress on the cross section
s2 = (sx/2.0)-numpy.sqrt((sx/2.0)**2+(txy)**2) # Principal Compressive stress on the cross section
tmax = numpy.sqrt((sx/2)**2+(txy)**2) # Maximum shear stress on the cross section
plot(sx,y,'o',color='c')
plot(txy,y,'+',color='m')
plot(s1,y,'--',color='y')
plot(s2,y,'<',color='k')
plot(tmax,y,label="Maximum shear stress on cross section")
legend()
show()
#print "Principal Tesile stress on the cross section", s1, "psi"
#print "Principal Compressive stress on the cross section", s2, "psi"
# Conclusions
s1_max = 14400.0 # Maximum tensile stress in Psi
txy_max = 900.0 # Maximum shear stress in Psi
t_max = 14400.0/2.0 # Largest shear stress at 45 degree plane
import math
#initialisation
d = 0.05 # Diameter of shaft in m
T = 2400 # Torque transmitted by the shaft in N-m
P = 125000 # Tensile force
#calculation
s0 = (4*P)/(math.pi*d**2) # Tensile stress in
t0 = (16*T)/(math.pi*d**3) # Shear force
# Stresses along x and y direction
sx = 0
sy = s0
txy = -t0
s1 = (sx+sy)/2.0 + math.sqrt(((sx-sy)/2.0)**2 + (txy)**2) # Maximum tensile stress
s2 = (sx+sy)/2.0 - math.sqrt(((sx-sy)/2.0)**2 + (txy)**2) # Maximum compressive stress
tmax = math.sqrt(((sx-sy)/2)**2 + (txy)**2) # Maximum in plane shear stress
print "Maximum tensile stress %e" %s1, "Pa"
print "Maximum compressive stress %e" %s2, "Pa"
print "Maximum in plane shear stress %e " %tmax, "Pa"
import math
#initialisation
P = 12 # Axial load in K
r = 2.1 # Inner radius of the cylinder in inch
t = 0.15 # Thickness of the cylinder in inch
ta = 6500 # Allowable shear stress in Psi
#calculation
p1 = (ta - 3032)/3.5 # allowable internal pressure
p2 = (ta + 3032)/3.5 # allowable internal pressure
p3 = 6500/7.0 # allowable internal pressure
prs_allowable = min(p1,p2,p3) # Minimum pressure would govern the design
print "Maximum allowable internal pressure ", round(prs_allowable), "psi"
import math
#initialisation
d1 = 0.18 # Inner diameter of circular pole in m
d2 = 0.22 # Outer diameter of circular pole in m
P = 2000 # Pressure of wind in Pa
b = 1.5 # Distance between centre line of pole and board in m
h = 6.6 # Distance between centre line of board and bottom of the ploe in m
#calculation
W = P*(2*1.2) # Force at the midpoint of sign
V = W # Load
T = W*b # Torque acting on the pole
M = W*h # Moment at the bottom of the pole
I = (math.pi/64.0)*(d2**4-d1**4) # Momet of inertia of cross section of the pole
sa = (M*d2)/(2*I) # Tensile stress at A
Ip = (math.pi/32.0)*(d2**4-d1**4) # Polar momet of inertia of cross section of the pole
t1 = (T*d2)/(2*Ip) # Shear stress at A and B
r1 = d1/2.0 # Inner radius of circular pole in m
r2 = d2/2.0 # Outer radius of circular pole in m
A = math.pi*(r2**2-r1**2) # Area of the cross section
t2 = ((4*V)/(3*A))*((r2**2 + r1*r2 +r1**2)/(r2**2+r1**2)) # Shear stress at point B
# Principle stresses
sxa = 0
sya = sa
txya = t1
sxb = 0
syb = 0
txyb = t1+t2
# Stresses at A
s1a = (sxa+sya)/2.0 + math.sqrt(((sxa-sya)/2)**2 + (txya)**2) # Maximum tensile stress
s2a = (sxa+sya)/2.0 - math.sqrt(((sxa-sya)/2)**2 + (txya)**2) # Maximum compressive stress
tmaxa = math.sqrt(((sxa-sya)/2)**2 + (txya)**2) # Maximum in plane shear stress
print "Maximum tensile stress at point A is", s1a, "Pa"
print "Maximum compressive stress at point A is", s2a, "Pa"
print "Maximum in plane shear stress at point A is", tmaxa, "Pa"
# Stress at B
s1b = (sxb+syb)/2.0 + math.sqrt(((sxb-syb)/2)**2 + (txyb)**2) # Maximum tensile stress
s2b = (sxb+syb)/2.0 - math.sqrt(((sxb-syb)/2)**2 + (txyb)**2) # Maximum compressive stress
tmaxb = math.sqrt(((sxb-syb)/2.0)**2 + (txyb)**2) # Maximum in plane shear stress
print "Maximum tensile stress at point B is", s1b, "Pa"
print "Maximum compressive stress at point B is", s2b, "Pa"
print "Maximum in plane shear stress at point B is", tmaxb, "Pa"
import math
#initialisation
b = 6 # Outer dimension of the pole in inch
t = 0.5 # thickness of the pole
P1 = 20*(6.75*24) # Load acting at the midpoint of the platform
d = 9 # Distance between longitudinal axis of the post and midpoint of platform
P2 = 800 # Load in lb
h = 52 # Distance between base and point of action of P2
#calculation
M1 = P1*d # Moment due to P1
M2 = P2*h # Moment due to P2
A = b**2 - (b-2*t)**2 # Area of the cross section
sp1 = P1/A # Comoressive stress due to P1 at A and B
I = (1.0/12.0)*(b**4 - (b-2*t)**4) # Moment of inertia of the cross section
sm1 = (M1*b)/(2*I) # Comoressive stress due to M1 at A and B
Aweb = (2*t)*(b-(2*t)) # Area of the web
tp2 = P2/Aweb # Shear stress at point B by lpad P2
sm2 = (M2*b)/(2*I) # Comoressive stress due to M2 at A
sa = sp1+sm1+sm2 # Total Compressive stress at point A
sb = sp1+sm1 # Total compressive at point B
tb = tp2 # Shear stress at point B
# Principle stresses
sxa = 0
sya = -sa
txya = 0
sxb = 0
syb = -sb
txyb = tp2
# Stresses at A
s1a = (sxa+sya)/2 + math.sqrt(((sxa-sya)/2)**2 + (txya)**2) # Maximum tensile stress
s2a = (sxa+sya)/2 - math.sqrt(((sxa-sya)/2)**2 + (txya)**2) # Maximum compressive stress
tmaxa = math.sqrt(((sxa-sya)/2)**2 + (txya)**2) # Maximum in plane shear stress
print "Maximum tensile stress at point A is", s1a,"Psi"
print "Maximum compressive stress at point A is", round(s2a,2), "Psi"
print "Maximum in plane shear stress at point A is", round(tmaxa,2), "Psi"
# Stress at B
s1b = (sxb+syb)/2 + math.sqrt(((sxb-syb)/2)**2 + (txyb)**2) # Maximum tensile stress
s2b = (sxb+syb)/2 - math.sqrt(((sxb-syb)/2)**2 + (txyb)**2) # Maximum compressive stress
tmaxb = math.sqrt(((sxb-syb)/2)**2 + (txyb)**2) # Maximum in plane shear stress
print "Maximum tensile stress at point B is", round(s1b,2), "Psi"
print "Maximum compressive stress at point B is", round(s2b,2), "Psi"
print "Maximum in plane shear stress at point B is", round(tmaxb,2), "Psi"