from __future__ import division
from math import pi,sqrt,ceil
# Given Data
ps=2.5## MPa
D=1.5##m
sigma_t=80## MPa
tau=60## MPa
sigma_c=120## MPa
n=5## no. of rivets
print ' DESIGNING LONGITUDINAL JOINT - \n'
print ' \n Plate Thickness'
eta_l=80## % (efficiency)
t = ps*D*1000/2/sigma_t/(eta_l/100)+1## mm
print ' , t = %.2f mm'%(t)
t=32##mm (adopted for design)
print ' \n use t = %d mm'%(t)
print ' \n Diameter of rivet hole, do = '
d0=6*sqrt(t)##mm (for t>8 mm)
print ' %.2f mm'%(d0)
d0=34.5## suggested for design
print ' \n Use do = %.f mm'%(d0)
print ' \n Diameter of rivet, d = '
d=d0-1.5##mm
print ' %.2f mm'%(d)
print ' \n Pitch of rivets, p = '
Ps=(4*1.875+1)*pi/4*d0**2*tau## N
# Putting Pt=Ps where Pt=(p-d0)*t*sigma_t## N
Pt=Ps##N
p=Pt/(t*sigma_t)+d0## N
print ' %.1f mm'%(p)
C=6## for 5 no. of rivets
pmax=C*t+40## mm (as per IBR)
print ' \n as per IBR-\n pitch, pmax = %.f mm'%(pmax)
p=220## mm (adopted for design)
print ' \n Use p = %.f mm'%(p)
pi=p/2## mm
print ' \n pitch of rivets in inner row, pi = %.f mm'%(pi)
#Distance between rows of rivets
dis1=0.2*p+1.115*d0## mm
print ' \n distance between outer and adjacent row = %.1f mm'%(dis1)
dis1=85##mm (adopted for design)
print ' \n take & use this distance = %.f mm'%( dis1)
dis2=0.165*p+0.67*d0## mm
print ' \n distance between inner row for zig-zag riveting = %.1f mm'%( dis2)
dis2=60##mm (adopted for design)
print ' \n take & use this distance = %.f mm'%( dis2)
print ' \n Thickness of wide butt strap, t= '
t1=0.75*t## mm (wide butt strap)
print ' %.f mm'%(t1)
t2=0.625*t## mm (narrow butt strap)
print ' \n Thickness of narrow butt strap, t= %.f mm'%(t2)
#margin
m=ceil(1.5*d0)## mm
print ' \n margin, m = %.f mm'%(m)
# Efficiency of joint
Pt=(p-d0)*t*sigma_t## N
Ps=Ps## N (shearing resistance of rivets)
Pc=n*d0*t*sigma_c## N (crushing resistance of rivets)
sigma_com = (p-2*d0)*t*sigma_t+pi/4*d0**2*tau## N
print ' \n strength of the joint = %d N'%(sigma_com)
P=p*t*sigma_t##N (strength of solid plate)
print ' \n strength of solid plate = %d N'%(P)
eta_l=sigma_com/P*100## % (efficiency)
print ' \n Efficiency of joint, eta_l = %.1f %%'%(eta_l)
print ' \n\n DESIGNING CIRCUMFERENTIAL JOINT- \n'
t=32## mm
d0=34.5##mm
d=33##mm
print ' \n Plate Thickness'
print ' , t = %.2f mm'%(t)
print ' \n Diameter of rivet hole, do = '
print ' %.2f mm'%(d0)
print ' \n Diameter of rivet, d = '
print ' %.2f mm'%(d)
n=(D*1000/d0)**2*(ps/tau)## no. of rivets
print ' \n no. of rivets = %.1f'%(n)
n=80## adopted for design
print ' \n take n = %d'%(n)
# Pitch of rivets
n1=n/2## no. of rivets per row
pc=pi*(D*1000+t)/n1## mm (pitch of rivets)
print ' \n pitch of rivets, pc = %.2f mm\n use pc = %.f mm'%(pc,pc)
eta_c=(pc-d0)/pc*100## % (efficiency of joint)
print ' \n Efficiency of joint, eta_c = %.2f %%'%(eta_c)
dis=0.33*pc+0.67*d0## mm (distance between rows of rivets)
print ' \n for zig-zag riveting, distance between rows of rivets = %.1f mm. use 65 mm'%( dis)
m=1.5*d0## mm (Margin)
print ' \n margin, m = %.f mm'%(m)
from __future__ import division
from math import sqrt,pi,ceil
# Given Data
w=400##mm
t=20##mm
sigma_t=90## MPa
tau=60## MPa
sigma_c=140## MPa
print ' \n Diameter of rivet, do = '
d0=6*sqrt(t)##mm (for t>8 mm)
print ' %.2f mm'%(d0)
d0=29##mm (standard)
print ' \n Standard diameter of rivet hole, do = %.f mm & corresponding diameter of rivet = 27 mm'%(d0)
Pt=(w-d0)*t*sigma_t##N max. tearing strength of plate
Ps=1.75*pi/4*d0**2*tau## N (shearing strength of one rivet)
n1=Pt/Ps## no. of rivets
n=ceil(n1)#
print ' \n no. of rivets, n = %.3f. Use n = %.f '%(n1,n)
t1=0.75*t## mm
t2=t1## mm
print ' \n thickness of inner butt strap, t1 = %.f mm'%( t1)
print ' \n thickness of outer butt strap, t2 = %.f mm'%( t2)
# section 1-1
P1=(w-d0)*t*sigma_t##N
# section 2-2
P2=(w-2*d0)*t*sigma_t+1.75*pi/4*d0**2*tau##N
# section 3-3
P3=(w-3*d0)*t*sigma_t+1.75*3*pi/4*d0**2*tau##N
# section 4-4
P4=(w-4*d0)*t*sigma_t+1.75*6*pi/4*d0**2*tau##N
Ps=10*Ps## N (shearing stress of all rivets)
Pc=10*d0*t*sigma_c## N (shearing stress of all rivets)
Pj=P1## N (strength f joint)
P = w*t*sigma_t## N (strength of solid plate)
eta=P1/P*100# # % (efficiency of joint)
print ' \n efficiency of joint = %.2f %%'%( eta)
p1=3*d0+5## mm (pitch of rivets)
p=100##mm (adopt for design)
print ' \n pitch of rivets = %.f mm. Use %.f mm'%(p1,p)
m1=1.5*d0## mm (margin)
m=50##mm
w=3*p+2*m## mm
print ' \n margin,\n m = %.1f mm. Use %.f mm'%( m1,m)
print ' \n w = %.f mm'%(w)
dis=2.5*d0## mm
print ' \n distance between rows = %.1f mm. Use 75 mm'%(dis)
from __future__ import division
from math import sqrt,pi,ceil,acos,cos
# Given Data
n=6## no. of rivets
P=54## kN
e=200##mm
a=50##mm (from fig.5.13(a))
b=100##mm (from fig.5.13(a))
tau=120## MPa
Pd=P/n*1000## N (direct shear load in rivet)
C=P*e## kN.mm (Couple)
#l1=l3=l4=l6
l1=sqrt(a**2+b**2)## mm
l3=l1#l4=l1#l6=l1#mm
l2=a#l5=a##mm
# F1/l1*(4*l1**2+2*l2**2)=C
F1=C*1000/(4*l1**2+2*l2**2)*l1## N
theta1=acos(a/l1)## radian
R1=sqrt(Pd**2+F1**2+2*Pd*F1*cos(theta1))## N (resultant force in rivet 1)
#R1=pi/4*d0**2*tau
d0=sqrt(R1/(pi/4*tau))## mm
print ' \n diameter of rivets = %.2f mm. Use d0 = 17.5 mm & d=16 mm for design.'%(d0)
from __future__ import division
from math import ceil,sqrt,pi
# Given Data
D=0.75##m
ps=1.55## N/mm.sq
eta_l=0.75## efficiency
sigma_t=90## MPa
sigma_c=140## MPa
tau=56## MPa
n=2## no. of rivets
print ' DESIGNING LONGITUDINAL JOINT - \n'
print ' \n Plate Thickness'
t = ps*D*1000/2/sigma_t/eta_l+1## mm
print ' , t = %.2f mm'%(t)
t=ceil(t)##mm (adopted for design)
print ' \n use t = %d mm'%(t)
print ' \n Diameter of rivet hole, do = '
d0=6*sqrt(t)##mm (for t>8 mm)
print ' %.2f mm'%(d0)
d0=19.5## suggested for design
print ' \n Use do = %.1f mm'%(d0)
print ' \n Diameter of rivet, d = '
d=d0-1.5##mm
print ' %.2f mm'%(d)
print ' \n Pitch of rivets, p = '
Ps=(2*1.875)*pi/4*d0**2*tau## N
# Putting Pt=Ps where Pt=(p-d0)*t*sigma_t## N
Pt=Ps##N
p=Pt/(t*sigma_t)+d0## N
print ' %.2f mm'%(p)
C=3.5## for 2 no. of rivets
pmax=C*t+40## mm (as per IBR)
print ' \n as per IBR-\n pitch, pmax = %.f mm'%(pmax)
p=75## mm (adopted for design)
print ' \n Use p = %.f mm'%(p)
#Distance between rows of rivets
dis=0.33*p+0.67*d0## mm
print ' \n distance between rows of rivets = %.1f mm'%(dis)
dis=40##mm (adopted for design)
print ' \n take & use this distance = %.f mm'%( dis)
print ' \n Thickness of butt strap, t= '
t1=0.625*t## mm
print ' %.2f mm'%(t1)
t1=7## mm (adopted for design)
print ' \n Use thickness = %.f mm'%(t1)
#margin
m=ceil(1.5*d0)## mm
print ' \n margin, m = %.f mm'%(m)
# Efficiency of joint
Pt=(p-d0)*t*sigma_t## N
Ps=Ps## N (shearing resistance of rivets)
Pc=n*d0*t*sigma_c## N (crushing resistance of rivets)
sigma_com = (p-2*d0)*t*sigma_t+pi/4*d0**2*tau## N
print ' \n strength of the joint = %d N'%(Pt)
P=p*t*sigma_t##N (strength of solid plate)
print ' \n strength of solid plate = %d N'%(P)
eta_l=Pt/P*100## % (efficiency)
print ' \n Efficiency of joint, eta_l = %.2f %% = 75 %% as given'%(eta_l)
from __future__ import division
from math import cos,pi,sqrt,sin,atan,tan
# Given Data
n=5## no. of rivets
P=45## kN
alfa=30## degree
tau=120## MPa
Pd=P/n*1000## N (direct shear load in rivet)
# C.G. of rivet group
# values below are collected direct from figure
x_bar=(3*200)/5## mm
y_bar=(1*50+1*150+1*100+1*200)/5## mm
ex=300+x_bar+y_bar##mm
ey=100##mm
l1=sqrt(x_bar**2+(y_bar/2)**2)## mm
l2=l1##mm
l3=sqrt(100**2+80**2)## mm
l4=80##mm
l5=l3##mm
#2*F1*l1+2*F3*l3+F4*l4=P*cos(alfa)*ex+P*sin(alfa)*ey
F1=(P*1000*cos(pi/180*alfa)*ex+P*1000*sin(pi/180*alfa)*ey)/(2*l1**2+2*l3**2+l4**2)*l1##N
# rivet 1 is nearest
Beta = atan(x_bar/(y_bar/2))*180/pi## degree
theta1=Beta-(90-alfa)## degree
R1=sqrt(Pd**2+F1**2+2*Pd*F1*cos(pi/180*theta1))## N (resultant force in rivet 1)
#R1=pi/4*d0**2*tau
d0=sqrt(R1/(pi/4*tau))## mm
print ' \n diameter of rivets = %.2f mm. Use d0 = 21.5 mm & d=20 mm for design.'%(d0)
# Note - Ans in the textbook is wrong.
from __future__ import division
from math import pi,sqrt,floor
# Given Data
t=6##mm
sigma_t=220## MPa
tau=100## MPa
sigma_c=150## MPa
n=2## no. of rivets / pitch length
#Ps=n*pi/4**d0**2*tau## shearing strength of rivets
#Pc=2*d0*t*sigma_c## Crushing strength of rivets
d0=2*t*sigma_c/(n*pi/4*tau)## mm (equating Ps=Pc)
print ' Diameter of rivets, d0 = %.2f mm. Take d0=13.5 mm & d=12 mm'%(d0)
d0=13.5##mm
d=12##mm
#Pt=(p-d0)*t*sigma_t## tearing strength
# equating Pt=Ps
#p= n*pi/4**d0**2*tau/(t*sigma_t)+d0##mm
p= n*pi/4*d0**2*tau/(t*sigma_t)+d0
print ' \n Distance between rows of rivet = %.1f mm = %.f mm'%(p,p)
p=floor(p)##mm
pb=0.6*p##mm (back pitch)
print ' \n back pitch = %.f mm'%(pb)
Pt=(p-d0)*t*sigma_t## N (tearing strength)
print ' \n tearing strength = %.f N'%(Pt)
Ps=n*pi/4*d0**2*tau## N ( shearing strength)
print ' \n shearing strength = %.f N'%(Ps)
Pc=2*d0*t*sigma_c##N (Crushing strength of rivets)
print ' \n crushing strength = %.f N'%(Pc)
joint_strength = Pc## N
print ' \n joint strength = %.f N'%(joint_strength)
P=p*t*sigma_t##N (strength of solid plate)
print ' \n strength of solid plate = %.f N'%(P)
eta = joint_strength/P*100## % (efficiency)
print ' \n efficiency of joint = %.1f %%'%( eta)
from __future__ import division
from math import sqrt,pi
# Given Data
P=20## kN
e=80##mm
tau=150## MPa
Pd=P/4## kN
C=P*e## kN.mm (Couple)
# As C.G. lies at 45mm from top rivet
l1=45;l4=45##mm
l2=15;l3=15##mm
#(F1/l1)*(2*l1*l4+2*l2*l3) = C
F1= C*1000/(2*l1*l4+2*l2*l3)*l1##N
R1=sqrt(Pd**2+F1**2)## N
#R1=pi/4*d0**2*tau
d0=sqrt(R1/(pi/4*tau))##mm
print ' Diameter of rivets - \n d0 = %.3f mm'%(d0)
print ' \n Use d0 = 13.5 mm & d = 12 mm'