diff options
author | priyanka | 2015-06-24 15:03:17 +0530 |
---|---|---|
committer | priyanka | 2015-06-24 15:03:17 +0530 |
commit | b1f5c3f8d6671b4331cef1dcebdf63b7a43a3a2b (patch) | |
tree | ab291cffc65280e58ac82470ba63fbcca7805165 /764 | |
download | Scilab-TBC-Uploads-b1f5c3f8d6671b4331cef1dcebdf63b7a43a3a2b.tar.gz Scilab-TBC-Uploads-b1f5c3f8d6671b4331cef1dcebdf63b7a43a3a2b.tar.bz2 Scilab-TBC-Uploads-b1f5c3f8d6671b4331cef1dcebdf63b7a43a3a2b.zip |
initial commit / add all books
Diffstat (limited to '764')
615 files changed, 23667 insertions, 0 deletions
diff --git a/764/CH1/EX1.1.a/data1_1.sci b/764/CH1/EX1.1.a/data1_1.sci new file mode 100755 index 000000000..27c80b188 --- /dev/null +++ b/764/CH1/EX1.1.a/data1_1.sci @@ -0,0 +1,6 @@ +
+//(Introduction) Example 1.1
+//Initial value of the series
+a = 1
+//Final value of the series
+b = 10
diff --git a/764/CH1/EX1.1.b/result1_1.txt b/764/CH1/EX1.1.b/result1_1.txt new file mode 100755 index 000000000..5c9237834 --- /dev/null +++ b/764/CH1/EX1.1.b/result1_1.txt @@ -0,0 +1,29 @@ +-->//(Introduction) Example 1.1
+
+-->//Initial value of the series
+
+-->a = 1
+ a =
+
+ 1.
+
+-->//Final value of the series
+
+-->b = 10
+ b =
+
+ 10.
+
+
+Number 1: 1.000000 = 1.0
+
+Number 2: 1.584893 = 1.6
+
+Number 3: 2.511886 = 2.5
+
+Number 4: 3.981072 = 4.0
+
+Number 5: 6.309573 = 6.3
+
+Number 6: 10.000000 = 10.0
+
\ No newline at end of file diff --git a/764/CH1/EX1.1.b/solution1_1.sce b/764/CH1/EX1.1.b/solution1_1.sce new file mode 100755 index 000000000..91f6e7098 --- /dev/null +++ b/764/CH1/EX1.1.b/solution1_1.sce @@ -0,0 +1,19 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution1_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data1_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate series factor for R5 series
+f = 10^(1/5)
+//Total numbers in R5 series
+n = 5 + 1
+//Use 'for' loop in order to facilitate iterations
+for i = 1:1:n
+ printf('\nNumber %d: %f = %0.1f\n',i,a,a)
+//Obtain numbers in the series
+ a = a * f
+end
diff --git a/764/CH1/EX1.2.a/data1_2.sci b/764/CH1/EX1.2.a/data1_2.sci new file mode 100755 index 000000000..0d4ecc10d --- /dev/null +++ b/764/CH1/EX1.2.a/data1_2.sci @@ -0,0 +1,7 @@ +
+//(Introduction) Example 1.2
+//Initial value of the series
+a = 100
+//Final value of the series
+b = 1000
+
diff --git a/764/CH1/EX1.2.b/result1_2.txt b/764/CH1/EX1.2.b/result1_2.txt new file mode 100755 index 000000000..445c932e2 --- /dev/null +++ b/764/CH1/EX1.2.b/result1_2.txt @@ -0,0 +1,30 @@ +-->//(Introduction) Example 1.2
+
+-->//Initial value of the series
+
+-->a = 100
+ a =
+
+ 100.
+
+-->//Final value of the series
+
+-->b = 1000
+ b =
+
+ 1000.
+
+
+
+Number 1: 100.000000 = 100
+
+Number 2: 158.489319 = 158
+
+Number 3: 251.188643 = 251
+
+Number 4: 398.107171 = 398
+
+Number 5: 630.957344 = 630
+
+Number 6: 1000.000000 = 999
+
\ No newline at end of file diff --git a/764/CH1/EX1.2.b/solution1_2.sce b/764/CH1/EX1.2.b/solution1_2.sce new file mode 100755 index 000000000..aa4231139 --- /dev/null +++ b/764/CH1/EX1.2.b/solution1_2.sce @@ -0,0 +1,23 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution1_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data1_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate series factor for R20 series
+f = 10^(1/20)
+//Calculate ratio factor Fi
+Fi = f^4
+//Total numbers in R20/4 series
+n = (20/4) + 1
+//Use 'for' loop in order to facilitate iterations
+for i = 1:1:n
+//Round up a
+ c = ceil(a)
+ printf('\nNumber %d: %f = %d\n',i,a,a)
+//Obtain numbers in the series
+ a = a * Fi
+end
diff --git a/764/CH1/EX1.3.a/data1_3.sci b/764/CH1/EX1.3.a/data1_3.sci new file mode 100755 index 000000000..bbec76a81 --- /dev/null +++ b/764/CH1/EX1.3.a/data1_3.sci @@ -0,0 +1,10 @@ +
+//Introduction Example 1.3
+//Initial value of the series of power capacities kW
+a = 7.5
+//Final value of the series of power capacities kW
+b = 75
+//For five models
+m = 5 - 1
+//For nine models
+n = 9 - 1
\ No newline at end of file diff --git a/764/CH1/EX1.3.b/result1_3.txt b/764/CH1/EX1.3.b/result1_3.txt new file mode 100755 index 000000000..d107290c3 --- /dev/null +++ b/764/CH1/EX1.3.b/result1_3.txt @@ -0,0 +1,73 @@ +-->//Introduction Example 1.3
+
+-->//Initial value of the series of power capacities kW
+
+-->a = 7.5
+ a =
+
+ 7.5
+
+-->//Final value of the series of power capacities kW
+
+-->b = 75
+ b =
+
+ 75.
+
+-->//For five models
+
+-->m = 5 - 1
+ m =
+
+ 4.
+
+-->//For nine models
+
+-->n = 9 - 1
+ n =
+
+ 8.
+
+
+Part I: Starting Plan
+
+Rating of model 1 = 7.500000
+
+Rating of model 2 = 13.337096
+
+Rating of model 3 = 23.717082
+
+Rating of model 4 = 42.175599
+
+Rating of model 5 = 75.000000
+
+Part II: Expansion Plan
+
+Rating of model 5: 7.500000 = 7.500000
+
+Rating of model 5: 10.001411 = 10.000000
+
+Rating of model 5: 13.337096 = 13.000000
+
+Rating of model 5: 17.785303 = 18.000000
+
+Rating of model 5: 23.717082 = 24.000000
+
+Rating of model 5: 31.627238 = 32.000000
+
+Rating of model 5: 42.175599 = 42.000000
+
+Rating of model 5: 56.242066 = 56.000000
+
+Rating of model 5: 75.000000 = 75.000000
+
+4 additional models have following power ratings:
+
+10.000000
+
+18.000000
+
+32.000000
+
+56.000000
+
\ No newline at end of file diff --git a/764/CH1/EX1.3.b/solution1_3.sce b/764/CH1/EX1.3.b/solution1_3.sce new file mode 100755 index 000000000..16314da01 --- /dev/null +++ b/764/CH1/EX1.3.b/solution1_3.sce @@ -0,0 +1,69 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution1_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data1_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Part I: Starting Plan
+printf('\nPart I: Starting Plan\n')
+//Calculate the ratio factor Fi
+Fi = (b/a)^(1/m)
+//Calculate power ratings of models
+//Initialise c
+c = a
+//Use 'for' loop in order to facilitate iterations
+for i = 1:1:(m + 1)
+//Store the value in array r1
+ r1(i) = c
+ printf('\nRating of model %d = %f\n',i,a)
+//Obtain numbers in the series
+ a = a * Fi
+//Round a
+c = round(a)
+end
+//Part II: Expansion Plan
+printf('\nPart II: Expansion Plan\n')
+//Re-initialise a
+a = 7.5
+//Calculate the ratio factor Fi
+Fi = (b/a)^(1/n)
+//Calculate power ratings of models
+//Initialise c
+c = a
+//Use 'for' loop in order to facilitate iterations
+for j = 1:1:(n + 1)
+//Store the value in array r2
+ r2(j) = c
+ printf('\nRating of model %d: %f = %f\n',i,a,c)
+//Obtain numbers in the series
+ a = a * Fi
+//Round a
+ c = round(a)
+end
+//Display power capacities of additional models
+printf('\n%d additional models have following power ratings: \n',(j-i))
+//Display the elements present in array r2 and absent in array r1
+k = 1
+for j = 1:1:(n + 1)
+ for i = 1:1:(m + 1)
+ if(r2(j)==r1(i))
+ break
+ end
+ end
+ if (r1(i) == b)
+ r3(k) = r2(j)
+ k = k + 1
+ end
+end
+//Store k in l
+l = k
+for k = 1:1:l
+ if(r3(k) ~= b)
+ printf('\n%f\n',r3(k))
+ else
+ break
+ end
+end
diff --git a/764/CH1/EX1.4.a/data1_4.sci b/764/CH1/EX1.4.a/data1_4.sci new file mode 100755 index 000000000..5b1bd6ed9 --- /dev/null +++ b/764/CH1/EX1.4.a/data1_4.sci @@ -0,0 +1,8 @@ +
+//Introduction Example 1.4
+//Initial value of the series (diameter in mm)
+a = 100
+//Final value of the series (diameter in mm)
+b = 1000
+//Eleven shafts to be standardized
+n = 11 - 1
diff --git a/764/CH1/EX1.4.b/result1_4.txt b/764/CH1/EX1.4.b/result1_4.txt new file mode 100755 index 000000000..bc68c7aef --- /dev/null +++ b/764/CH1/EX1.4.b/result1_4.txt @@ -0,0 +1,46 @@ +-->//Introduction Example 1.4
+
+-->//Initial value of the series (diameter in mm)
+
+-->a = 100
+ a =
+
+ 100.
+
+-->//Final value of the series (diameter in mm)
+
+-->b = 1000
+ b =
+
+ 1000.
+
+-->//Eleven shafts to be standardized
+
+-->n = 11 - 1
+ n =
+
+ 10.
+
+
+Diameter 1: 100.000000 = 100.000000
+
+Diameter 2: 125.892541 = 126.000000
+
+Diameter 3: 158.489319 = 158.000000
+
+Diameter 4: 199.526231 = 200.000000
+
+Diameter 5: 251.188643 = 251.000000
+
+Diameter 6: 316.227766 = 316.000000
+
+Diameter 7: 398.107171 = 398.000000
+
+Diameter 8: 501.187234 = 501.000000
+
+Diameter 9: 630.957344 = 631.000000
+
+Diameter 10: 794.328235 = 794.000000
+
+Diameter 11: 1000.000000 = 1000.000000
+
\ No newline at end of file diff --git a/764/CH1/EX1.4.b/solution1_4.sce b/764/CH1/EX1.4.b/solution1_4.sce new file mode 100755 index 000000000..806445f00 --- /dev/null +++ b/764/CH1/EX1.4.b/solution1_4.sce @@ -0,0 +1,22 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution1_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data1_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate ratio factor Fi
+Fi = (b/a)^(1/n)
+//Use R10 series
+//Initialise c
+c = a
+//Use 'for' loop in order to facilitate iterations
+for i = 1:1:(n + 1)
+ printf('\nDiameter %d: %f = %f\n',i,a,c)
+//Obtain numbers in the series
+ a = a * Fi
+//Round a
+c = round(a)
+end
diff --git a/764/CH10/EX10.1.a/data10_1.sci b/764/CH10/EX10.1.a/data10_1.sci new file mode 100755 index 000000000..f18c55cac --- /dev/null +++ b/764/CH10/EX10.1.a/data10_1.sci @@ -0,0 +1,20 @@ +
+//(Springs) Example 10.1
+//Refer Fig.10.16 on page 408
+//Maximum force acting on the helical spring P (N)
+P = 1250
+//Deflection of the spring delta (mm)
+delta = 30
+//Spring index C
+C = 6
+//Ultimate tensile strength of the spring material Sut (N/mm2)
+Sut = 1090
+//Rigidity modulus of the material G (N/mm2)
+G = 81370
+//For plain ends, endtype = 1
+//For plain ends(ground), endtype = 2
+//For square ends, endtype = 3
+//For square ends(ground), endtype = 4
+endtype = 4
+//Gap between consecutive coils g (mm)
+g = 1
diff --git a/764/CH10/EX10.1.b/result10_1.txt b/764/CH10/EX10.1.b/result10_1.txt new file mode 100755 index 000000000..eded87371 --- /dev/null +++ b/764/CH10/EX10.1.b/result10_1.txt @@ -0,0 +1,72 @@ +-->//(Springs) Example 10.1
+
+-->//Refer Fig.10.16 on page 408
+
+-->//Maximum force acting on the helical spring P (N)
+
+-->P = 1250
+ P =
+
+ 1250.
+
+-->//Deflection of the spring delta (mm)
+
+-->delta = 30
+ delta =
+
+ 30.
+
+-->//Spring index C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1090
+ Sut =
+
+ 1090.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between consecutive coils g (mm)
+
+-->g = 1
+ g =
+
+ 1.
+
+
+Wire diameter(d) = 6.625083 or 7.000000 mm
+
+Mean coil diameter(D) = 42.000000 mm
+
+Number of active coils(N) = 8
+
+Total number of coils(Nt) = 10
+
+Free length of the spring(l) = 109.337611 or 110.000000 mm
+
+Pitch of the coil(p) = 12.148623 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.1.b/solution10_1.sce b/764/CH10/EX10.1.b/solution10_1.sce new file mode 100755 index 000000000..50e97d428 --- /dev/null +++ b/764/CH10/EX10.1.b/solution10_1.sce @@ -0,0 +1,44 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution10_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data10_1.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions10_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Calculate the permissible shear stress for the spring tau (N/mm2)
+tau = (50/100)*Sut
+//Calculate the Wahl factor K
+K = (((4*C)-1)/((4*C)-4)) + (0.615/C)
+//Calculate the wire diameter d (mm)
+d = sqrt((8 * K * P * C)/(%pi * tau))
+dround = ceil(d)
+//Calculate the mean coil diameter D (mm)
+D = C * dround
+//Calculate the number of active coils N
+N = (delta * G * (dround^4))/(8 * P * (D^3))
+N = ceil(N)
+//Calculate the total number of coils Nt
+Nt = active_coils(endtype, N)
+//Calculate the actual deflection of the spring delta1 (mm)
+delta1 = (8 * P * (D^3) * N)/(G * (dround^4))
+//Calculate the total axial gap between the coils gtotal (mm)
+gtotal = (Nt - 1)*g
+//Calculate the solid length of the spring s (mm)
+s = Nt * dround
+//Calculate the free length of the spring l (mm)
+l = s + gtotal + delta1
+//Calculate the pitch of the coil p (mm)
+p = l/(Nt - 1)
+//Print results
+printf("\nWire diameter(d) = %f or %f mm\n",d,dround)
+printf("\nMean coil diameter(D) = %f mm\n",D)
+printf("\nNumber of active coils(N) = %d\n",N)
+printf("\nTotal number of coils(Nt) = %d\n",Nt)
+printf("\nFree length of the spring(l) = %f or %f mm\n",l,ceil(l))
+printf("\nPitch of the coil(p) = %f mm\n",p)
diff --git a/764/CH10/EX10.1.c/functions10_1.sci b/764/CH10/EX10.1.c/functions10_1.sci new file mode 100755 index 000000000..e43b686e6 --- /dev/null +++ b/764/CH10/EX10.1.c/functions10_1.sci @@ -0,0 +1,17 @@ +
+//Function for calculating the number of active coils in a spring
+function[Nt] = active_coils(endtype, coil)
+ //For plain ends, endtype = 1
+ //For plain ends(ground), endtype = 2
+ //For square ends, endtype = 3
+ //For square ends(ground), endtype = 4
+ if (endtype == 1) then
+ Nt = coil
+ elseif (endtype == 2)
+ Nt = coil + 0.5
+ elseif (endtype == 3)
+ Nt = coil + 2
+ elseif (endtype == 4)
+ Nt = coil + 2
+ end
+endfunction
diff --git a/764/CH10/EX10.10.a/data10_10.sci b/764/CH10/EX10.10.a/data10_10.sci new file mode 100755 index 000000000..22d59daf2 --- /dev/null +++ b/764/CH10/EX10.10.a/data10_10.sci @@ -0,0 +1,25 @@ + +//(Springs) Example 10.10 +//Initial compression of the spring delta1 (mm) +delta1 = 30 +//Final compression of the spring delta2 (mm) +delta2 = delta1 + 50 +//Energy to be absorbed by the spring E (J) +E = 250 +//Spring index C +C = 6 +//Ultimate tensile strength of the spring material Sut (N/mm2) +Sut = 1500 +//Rigidity modulus of the material G (N/mm2) +G = 81370 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Gap between adjacent coils g (mm) +g = 2 +//Assume the spring stiffness to be 1N/mm k +k = 1 +//The permissible shear stress is r% of the Sut +r = 30 diff --git a/764/CH10/EX10.10.b/result10_10.txt b/764/CH10/EX10.10.b/result10_10.txt new file mode 100755 index 000000000..93625b33b --- /dev/null +++ b/764/CH10/EX10.10.b/result10_10.txt @@ -0,0 +1,93 @@ +-->//(Springs) Example 10.10
+
+-->//Initial compression of the spring delta1 (mm)
+
+-->delta1 = 30
+ delta1 =
+
+ 30.
+
+-->//Final compression of the spring delta2 (mm)
+
+-->delta2 = delta1 + 50
+ delta2 =
+
+ 80.
+
+-->//Energy to be absorbed by the spring E (J)
+
+-->E = 250
+ E =
+
+ 250.
+
+-->//Spring index C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1500
+ Sut =
+
+ 1500.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between adjacent coils g (mm)
+
+-->g = 2
+ g =
+
+ 2.
+
+-->//Assume the spring stiffness to be 1N/mm k
+
+-->k = 1
+ k =
+
+ 1.
+
+-->//The permissible shear stress is r% of the Sut
+
+-->r = 30
+ r =
+
+ 30.
+
+
+Wire diameter(d) = 17.586400 or 18.000000 mm
+
+Mean coil diameter(D) = 108.000000 mm
+
+Number of active coils(N) = 9.323646 or 10
+
+Total number of coils(Nt) = 12
+
+Solid length of the spring(s) = 216.000000 mm
+
+Free length of the spring(len) = 323.803345 or 325.000000 mm
+
+Pitch of the coil(p) = 29.545455 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.10.b/solution10_10.sce b/764/CH10/EX10.10.b/solution10_10.sce new file mode 100755 index 000000000..dec135082 --- /dev/null +++ b/764/CH10/EX10.10.b/solution10_10.sce @@ -0,0 +1,61 @@ +//Function to round-up a value such that it is divisible by 5 +function[v] = round_five(w) + v = ceil(w) + rem = pmodulo(v,5) + if (rem ~= 0) then + v = v + (5 - rem) + end +endfunction + +//Obtain path of solution file +path = get_absolute_file_path('solution10_10.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_10.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_10.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the initial spring force P1 (N) +P1 = k * delta1 +//Calculate the final spring force P2 (N) +P2 = k * delta2 +//Calculate the average force during compression P (N) +P = (P1 + P2)/2 +//Calculate the exact spring stiffness kact (N/mm) +kact = (E*1000)/(P*(delta2 - delta1)) +//Calculate the maximum spring force P2new (N) +P2new = delta2 * kact +//Calculate the permissible shear stress in the spring tau (N/mm2) +tau = (r/100)*Sut +//Calculate the Wahl factor K +K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Calculate the wire diameter d (mm) +d = sqrt(K * ((8 * P2new * C)/(%pi * tau))) +dround = ceil(d) +//Calculate the mean coil diameter D (mm) +D = C * dround +//Calculate the number of active turns N +N = (G * (dround^4))/(8 * (D^3) * kact) +Nround = ceil(N) +//Calculate the total number of turns +Nt = active_coils(endtype, Nround) +//Calculate the solid length of the spring s (mm) +s = Nt * dround +//Calculate the maximum deflection of the spring deltamax (mm) +deltamax = (8 * P2new * (D^3) * Nround)/(G * (dround^4)) +//Calculate the free length of the spring len (mm) +len = s + ((Nt - 1)*g) + deltamax +lround = round_five(len) +//Calculate the pitch of the coils p (mm) +p = lround/(Nt - 1) +//Print results +printf("\nWire diameter(d) = %f or %f mm\n",d,dround) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nNumber of active coils(N) = %f or %d\n",N, Nround) +printf("\nTotal number of coils(Nt) = %d\n",Nt) +printf("\nSolid length of the spring(s) = %f mm\n",s) +printf("\nFree length of the spring(len) = %f or %f mm\n",len,lround) +printf("\nPitch of the coil(p) = %f mm\n",p) diff --git a/764/CH10/EX10.10.c/functions10_10.sci b/764/CH10/EX10.10.c/functions10_10.sci new file mode 100755 index 000000000..44556f6ec --- /dev/null +++ b/764/CH10/EX10.10.c/functions10_10.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) then + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.11.a/data10_11.sci b/764/CH10/EX10.11.a/data10_11.sci new file mode 100755 index 000000000..13b6e719f --- /dev/null +++ b/764/CH10/EX10.11.a/data10_11.sci @@ -0,0 +1,33 @@ + +//(Springs) Example 10.11 +//Torque transmitted by the the friction clutch T (N-m) +T = 300 +//Number of pairs of contacting surfaces p +p = 2 +//Speed of the friction clutch n (rpm) +n = 1500 +//Inner diameter of the friction clutch d (mm) +d = 170 +//Outer diameter of the friction clutch D (mm) +D = 270 +//Coefficient of friction mu +mu = 0.35 +//Number of helical springs ns +ns = 9 +//Spring index C +C = 5 +//Number of active coils N +N = 6 +//Steel grade gr +gr = 2 +//Modulus of rigidity G (N/mm2) +G = 81370 +//Permissible shear stress is r% of Sut +r = 30 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Gap between each turn g (mm) +g = 1 diff --git a/764/CH10/EX10.11.a/table10_1.csv b/764/CH10/EX10.11.a/table10_1.csv new file mode 100755 index 000000000..f7baaae43 --- /dev/null +++ b/764/CH10/EX10.11.a/table10_1.csv @@ -0,0 +1,25 @@ +Mechanical properties of patented and cold-drawn steel wires ,,,,,Refer Table 10.1 on page 402 +Wire diameter d (mm) ,Minimum tensile strength (N/mm2),,,, +,Gr.1,Gr.2,Gr.3,Gr.4, +0.3,1720,2060,2460,2660, +0.4,1700,2040,2430,2620, +0.5,1670,2010,2390,2580, +0.6,1650,1990,2360,2550, +0.7,1630,1970,2320,2530, +0.8,1610,1950,2280,2480, +0.9,1590,1920,2250,2440, +1,1570,1900,2240,2400, +1.2,1540,1860,2170,2340, +1.4,1500,1820,2090,2290, +1.6,1470,1780,2080,2250, +1.8,1440,1750,2030,2190, +2,1420,1720,1990,2160, +2.5,1370,1640,1890,2050, +3,1320,1570,1830,1980, +3.6,1270,1510,1750,1890, +4,1250,1480,1700,1840, +4.5,1230,1440,1660,1800, +5,1190,1390,1600,1750, +6,1130,1320,1530,1670, +7,1090,1260,1460,1610, +8,1050,1220,1400,1540, diff --git a/764/CH10/EX10.11.b/result10_11.txt b/764/CH10/EX10.11.b/result10_11.txt new file mode 100755 index 000000000..5f1a24fe7 --- /dev/null +++ b/764/CH10/EX10.11.b/result10_11.txt @@ -0,0 +1,121 @@ +-->//(Springs) Example 10.11
+
+-->//Torque transmitted by the the friction clutch T (N-m)
+
+-->T = 300
+ T =
+
+ 300.
+
+-->//Number of pairs of contacting surfaces p
+
+-->p = 2
+ p =
+
+ 2.
+
+-->//Speed of the friction clutch n (rpm)
+
+-->n = 1500
+ n =
+
+ 1500.
+
+-->//Inner diameter of the friction clutch d (mm)
+
+-->d = 170
+ d =
+
+ 170.
+
+-->//Outer diameter of the friction clutch D (mm)
+
+-->D = 270
+ D =
+
+ 270.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.35
+ mu =
+
+ 0.35
+
+-->//Number of helical springs ns
+
+-->ns = 9
+ ns =
+
+ 9.
+
+-->//Spring index C
+
+-->C = 5
+ C =
+
+ 5.
+
+-->//Number of active coils N
+
+-->N = 6
+ N =
+
+ 6.
+
+-->//Steel grade gr
+
+-->gr = 2
+ gr =
+
+ 2.
+
+-->//Modulus of rigidity G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//Permissible shear stress is r% of Sut
+
+-->r = 30
+ r =
+
+ 30.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between each turn g (mm)
+
+-->g = 1
+ g =
+
+ 1.
+
+
+Number of trials= 18
+
+Wire diameter(dNew) = 4.500000 mm
+
+Mean coil diameter(DNew) = 22.500000 mm
+
+Number of active coils(N) = 6
+
+Total number of coils(Nt) = 8
+
+Solid length of the spring(s) = 36.000000 mm
+
+Free length of the spring(len) = 51.000000 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.11.b/solution10_11.sce b/764/CH10/EX10.11.b/solution10_11.sce new file mode 100755 index 000000000..ab354e252 --- /dev/null +++ b/764/CH10/EX10.11.b/solution10_11.sce @@ -0,0 +1,72 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_11.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_11.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_11.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the torque transmitted by each pair Mt (N-m) +Mt = T/p +//Calculate the force required to transmit the torque P1 (N) +P1 = (4 * Mt * 1000)/(mu * (D + d)) +//Calculate the force exerted by each spring P (N) +P = P1/ns +//Calculate the Wahl Factor K +K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Assume the wire diameter to be 1mm d +d = 1 +//Calculate the shear stress in the spring tau (N/mm2) +tau = (K * 8 * P * C)/(%pi * (d^2)) +trials = 0 +//Load .csv file containing data of table10.1 on page 402 +warning("off") +numeric = read_csv(path + filesep() + 'table10_1.csv') +while (gr~=1 & gr~=2 & gr~=3 & gr~=4) + printf("\n") + gr = input("Enter appropriate steel grade: ") +end +if (gr == 1 ) + col = 2 +elseif (gr == 2) + col = 3 +elseif (gr == 3) + col = 4 +elseif (gr == 4) + col = 5 +end +row = 4 +//Calculate the wire diameter dNew (mm) +for i = 1:1:%inf + trials = trials + 1 + dNew = evstr(numeric(row, 1)) + tauNew = tau/(dNew^2) + Sut = evstr(numeric(row, col)) + taud = (r/100)*Sut + if (taud > tauNew) + break() + end + row = row + 1 +end +//Calculate the mean coil diameter DNew (mm) +DNew = C * dNew +//Calculate the total number of coils +Nt = active_coils(endtype, N) +//Calculate the solid length of the spring s (mm) +s = Nt * dNew +//Calculate the maximum deflection of the spring deltamax (mm) +deltamax = (8 * P * (DNew^3) * N)/(G * (dNew^4)) +//Calculate the free length of the spring len (mm) +len = ceil(s + ((Nt - 1)*g) + deltamax) +//Print results +printf("\nNumber of trials= %d\n",trials) +printf("\nWire diameter(dNew) = %f mm\n",dNew) +printf("\nMean coil diameter(DNew) = %f mm\n",DNew) +printf("\nNumber of active coils(N) = %d\n",N) +printf("\nTotal number of coils(Nt) = %d\n",Nt) +printf("\nSolid length of the spring(s) = %f mm\n",s) +printf("\nFree length of the spring(len) = %f mm\n",len) diff --git a/764/CH10/EX10.11.c/functions10_11.sci b/764/CH10/EX10.11.c/functions10_11.sci new file mode 100755 index 000000000..44556f6ec --- /dev/null +++ b/764/CH10/EX10.11.c/functions10_11.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) then + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.12.a/data10_12.sci b/764/CH10/EX10.12.a/data10_12.sci new file mode 100755 index 000000000..5e4374f74 --- /dev/null +++ b/764/CH10/EX10.12.a/data10_12.sci @@ -0,0 +1,18 @@ + +//(Springs) Example 10.12 +//Length of the scale l (mm) +l = 100 +//Number of divisions on the scale div +div = 50 +//Indication on each division mi (kg) +mi = 0.5 +//Maximum capacity of the spring m (Kg) +m = 25 +//Spring index C +C = 6 +//Modulus of rigidity of the spring G (N/mm2) +G = 81370 +//The permissible shear stress is r% of the Sut +r = 50 +//Grade of the oil hardened and tempered steel gr +gr = 'SW' diff --git a/764/CH10/EX10.12.a/table10_2.csv b/764/CH10/EX10.12.a/table10_2.csv new file mode 100755 index 000000000..dd6075029 --- /dev/null +++ b/764/CH10/EX10.12.a/table10_2.csv @@ -0,0 +1,17 @@ +Mechanical properties of oil-hardened and tempered steel wire,,,,,,Refer Table10.2 on page 402 +Wire diameter d(mm),Minimum tensile strength (N/mm2),,,,, +,SW,VW,,,, +1,1760,1670,,,, +1.2,1720,1620,,,, +1.5,1670,1570,,,, +2,1620,1520,,,, +2.5,1570,1470,,,, +3,1520,1430,,,, +3.6,1480,1400,,,, +4,1480,1400,,,, +4.5,1440,1370,,,, +5,1440,1370,,,, +6,1400,1340,,,, +7,1360,1300,,,, +8,1290,,,,, +10,1250,,,,, diff --git a/764/CH10/EX10.12.b/result10_12.txt b/764/CH10/EX10.12.b/result10_12.txt new file mode 100755 index 000000000..752249ac1 --- /dev/null +++ b/764/CH10/EX10.12.b/result10_12.txt @@ -0,0 +1,73 @@ +-->//(Springs) Example 10.12
+
+-->//Length of the scale l (mm)
+
+-->l = 100
+ l =
+
+ 100.
+
+-->//Number of divisions on the scale div
+
+-->div = 50
+ div =
+
+ 50.
+
+-->//Indication on each division mi (kg)
+
+-->mi = 0.5
+ mi =
+
+ 0.5
+
+-->//Maximum capacity of the spring m (Kg)
+
+-->m = 25
+ m =
+
+ 25.
+
+-->//Spring index C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//Modulus of rigidity of the spring G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//The permissible shear stress is r% of the Sut
+
+-->r = 50
+ r =
+
+ 50.
+
+-->//Grade of the oil hardened and tempered steel gr
+
+-->gr = 'SW'
+ gr =
+
+ SW
+
+
+Number of trials= 5
+
+Wire diameter(dNew) = 2.500000 mm
+
+Mean coil diameter(DNew) = 15.000000 mm
+
+Number of active coils(N) = 48
+
+Total number of coils(Nt) = 48
+
+The helical tension spring has Nt = N
+
+Solid length of the spring(s) = 120.002855 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.12.b/solution10_12.sce b/764/CH10/EX10.12.b/solution10_12.sce new file mode 100755 index 000000000..cd03358d2 --- /dev/null +++ b/764/CH10/EX10.12.b/solution10_12.sce @@ -0,0 +1,60 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_12.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_12.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the maximum spring force P (N) +P = m * 9.81 +//Calculate the Wahl Factor K +K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Assume the wire diameter to be 1mm d +d = 1 +//Calculate the shear stress in the spring tau (N/mm2) +tau = (K * 8 * P * C)/(%pi * (d^2)) +trials = 0 +warning("off") +numeric = read_csv(path + filesep() + 'table10_2.csv') +while (gr~='SW' & gr~='VW') + printf("\n") + gr = input("Enter appropriate steel grade: ","string") +end +if (gr == 'SW') + col = 2 +elseif (gr == 'VW') + col = 3 +end +row = 4 +//Calculate the wire diameter dNew (mm) +for i = 1:1:%inf + trials = trials + 1 + dNew = evstr(numeric(row, 1)) + Sut = evstr(numeric(row, col)) + tauNew = tau/(dNew^2) + taud = (r/100)*Sut + if (taud > tauNew) + break() + end + row = row + 1 +end +//Calculate the mean coil diameter D (mm) +D = C * dNew +//Calculate the length of each division ld (mm) +ld = l/div +//Calculate the stiffness of the spring k (N/mm) +k = (mi * 9.81)/ld +//Calculate the number of active coils N +N = (G * (dNew^4))/(8 * (D^3) * k) +//Calculate the solid length of the spring s (mm) +s = N * dNew +//Print results +printf("\nNumber of trials= %d\n",trials) +printf("\nWire diameter(dNew) = %f mm\n",dNew) +printf("\nMean coil diameter(DNew) = %f mm\n",D) +printf("\nNumber of active coils(N) = %d\n",N) +printf("\nTotal number of coils(Nt) = %d\n",N) +printf("\nThe helical tension spring has Nt = N\n") +printf("\nSolid length of the spring(s) = %f mm\n",s) diff --git a/764/CH10/EX10.13.a/data10_13.sci b/764/CH10/EX10.13.a/data10_13.sci new file mode 100755 index 000000000..9923ba5f1 --- /dev/null +++ b/764/CH10/EX10.13.a/data10_13.sci @@ -0,0 +1,12 @@ + +//(Springs) Example 10.13 +//Initial preload on the spring Pmin (N) +Pmin = 50 +//Maximum operating force on the spring Pmax (N) +Pmax = 150 +//Wire diameter d (mm) +d = 3 +//Mean coil diameter D (mm) +D = 18 +//Ultimate tensile strength of the spring Sut (N/mm2) +Sut = 1430 diff --git a/764/CH10/EX10.13.b/result10_13.txt b/764/CH10/EX10.13.b/result10_13.txt new file mode 100755 index 000000000..cd19b4a08 --- /dev/null +++ b/764/CH10/EX10.13.b/result10_13.txt @@ -0,0 +1,39 @@ +-->//(Springs) Example 10.13
+
+-->//Initial preload on the spring Pmin (N)
+
+-->Pmin = 50
+ Pmin =
+
+ 50.
+
+-->//Maximum operating force on the spring Pmax (N)
+
+-->Pmax = 150
+ Pmax =
+
+ 150.
+
+-->//Wire diameter d (mm)
+
+-->d = 3
+ d =
+
+ 3.
+
+-->//Mean coil diameter D (mm)
+
+-->D = 18
+ D =
+
+ 18.
+
+-->//Ultimate tensile strength of the spring Sut (N/mm2)
+
+-->Sut = 1430
+ Sut =
+
+ 1430.
+
+
+Factor of safety(fs) = 1.26
\ No newline at end of file diff --git a/764/CH10/EX10.13.b/solution10_13.sce b/764/CH10/EX10.13.b/solution10_13.sce new file mode 100755 index 000000000..ba50c81f3 --- /dev/null +++ b/764/CH10/EX10.13.b/solution10_13.sce @@ -0,0 +1,31 @@ + +//Obtain the path of solution file +path = get_absolute_file_path("solution10_13.sce") +//Obtain the path of datafile +datapath = path + filesep() + 'data10_13.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the spring index C +C = D/d +//Calculate the Wahl Factor K +K = (4*C - 1)/(4*C - 4) + (0.615/C) +//Calculate the shear stress correction factor Ks +Ks = 1 + 0.5/C +//Calculate the mean force Pm (N) +Pm = (Pmax + Pmin)/2 +//Calculate the force amplitude Pa (N) +Pa = (Pmax - Pmin)/2 +//Calculate the mean shear stress taum (N/mm2) +taum = (Ks * 8 * Pm * D)/(%pi * d^3) +//Calculate the shear stress amplitude taua (N/mm2) +taua = (K * 8 * Pa * D)/(%pi * d^3) +//Calculate the endurance limit in shear Se (N/mm2) +Se = 0.22 * Sut +//Calculate the yield shear strength Ssy (N/mm2) +Ssy = 0.45 * Sut +//Calculate the factor of safety fs +fs = (((taua*(Ssy - Se/2))/(Se/2) + taum)/Ssy)^-1 +//Print results +printf("\nFactor of safety(fs) = %0.2f",fs) diff --git a/764/CH10/EX10.14.a/data10_14.sci b/764/CH10/EX10.14.a/data10_14.sci new file mode 100755 index 000000000..c6512d445 --- /dev/null +++ b/764/CH10/EX10.14.a/data10_14.sci @@ -0,0 +1,24 @@ +//(Springs) Example 10.14 +//Diameter of the eccentric cam d (mm) +d = 100 +//Eccentricity e (mm) +e = 10 +//Minimum force on the spring Pmin (N) +Pmin = 100 +//Maximum force on the spring Pmax (N) +Pmax = 350 +//The permissible shear stress is r% that of Sut (N/mm2) +r = 30 +//Grade of the oil hardened and tempered steel gr +gr = 'SW' +//Modulus of rigidity G (N/mm2) +G = 81370 +//Spring index C +C = 6 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Gap between each turn g (mm) +g = 0.5 diff --git a/764/CH10/EX10.14.a/table10_2.csv b/764/CH10/EX10.14.a/table10_2.csv new file mode 100755 index 000000000..dd6075029 --- /dev/null +++ b/764/CH10/EX10.14.a/table10_2.csv @@ -0,0 +1,17 @@ +Mechanical properties of oil-hardened and tempered steel wire,,,,,,Refer Table10.2 on page 402 +Wire diameter d(mm),Minimum tensile strength (N/mm2),,,,, +,SW,VW,,,, +1,1760,1670,,,, +1.2,1720,1620,,,, +1.5,1670,1570,,,, +2,1620,1520,,,, +2.5,1570,1470,,,, +3,1520,1430,,,, +3.6,1480,1400,,,, +4,1480,1400,,,, +4.5,1440,1370,,,, +5,1440,1370,,,, +6,1400,1340,,,, +7,1360,1300,,,, +8,1290,,,,, +10,1250,,,,, diff --git a/764/CH10/EX10.14.b/result10_14.txt b/764/CH10/EX10.14.b/result10_14.txt new file mode 100755 index 000000000..4814b8d94 --- /dev/null +++ b/764/CH10/EX10.14.b/result10_14.txt @@ -0,0 +1,89 @@ +-->//(Springs) Example 10.14
+
+-->//Diameter of the eccentric cam d (mm)
+
+-->d = 100
+ d =
+
+ 100.
+
+-->//Eccentricity e (mm)
+
+-->e = 10
+ e =
+
+ 10.
+
+-->//Minimum force on the spring Pmin (N)
+
+-->Pmin = 100
+ Pmin =
+
+ 100.
+
+-->//Maximum force on the spring Pmax (N)
+
+-->Pmax = 350
+ Pmax =
+
+ 350.
+
+-->//The permissible shear stress is r% that of Sut (N/mm2)
+
+-->r = 30
+ r =
+
+ 30.
+
+-->//Grade of the oil hardened and tempered steel gr
+
+-->gr = 'SW'
+ gr =
+
+ SW
+
+-->//Modulus of rigidity G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//Spring index C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between each turn g (mm)
+
+-->g = 0.5
+ g =
+
+ 0.5
+
+
+Factor of safety(fs) = 1.46
+
+Wire diameter(d) = 5.000000 mm
+
+Mean coil diameter(D) = 30.000000 mm
+
+Free length(len) = 145.000000 mm
+
+Total number of coils(Nt) = 21
+
\ No newline at end of file diff --git a/764/CH10/EX10.14.b/solution10_14.sce b/764/CH10/EX10.14.b/solution10_14.sce new file mode 100755 index 000000000..d8c23e23c --- /dev/null +++ b/764/CH10/EX10.14.b/solution10_14.sce @@ -0,0 +1,103 @@ +//Function to round-up a value such that it is divisible by 5 +function[v] = round_five(w) + v = ceil(w) + rem = pmodulo(v,5) + if (rem ~= 0) + v = v + (5 - rem) + end +endfunction + +//Obtain path of solution file +path = get_absolute_file_path('solution10_14.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_14.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_14.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the Wahl Factor K +K = ((4*C - 1)/(4*C - 4)) + (0.615/C) +//Calculate the shear stress concentration factor Ks +Ks = 1 + 0.5/C +//Assume the wire diameter to be 1mm d +d = 1 +//Calculate the shear stress in the spring tau (N/mm2) +tau = (K * 8 * Pmax * C)/(%pi * d^2) +while(gr ~= 'SW' & gr ~= 'VW') + printf("\n") + gr = input("Enter the appropriate steel grade: ","string") +end +if (gr == 'SW') + col = 2 +elseif (gr == 'VW') + col = 3 +end +row = 4 +trials = 0 +//Read the oil-hardened and tempered data-file +numeric = read_csv(path + filesep() + 'table10_2.csv') +//Calculate the actual wire diameter d +for i = 1:1:%inf + trials = trials + 1 + dNew = evstr(numeric(row, 1)) + tauNew = tau/(dNew^2) + Sut = evstr(numeric(row, col)) + taud = (r/100)*Sut + if (taud > tauNew) + break + end + row = row + 1 +end +//Account for fluctuating stresses dmod (mm) +dmod = dNew + 1 +//Retrieve the column number of dmod from the table10_2.csv file +row = 4 +for i = 1:1:%inf + if (evstr(numeric(row, 1)) == dmod) + SutNew = evstr(numeric(row, col)) + break + end + row = row + 1 +end +//Calculate the mean coil diameter D (mm) +D = C * dmod +//Deflection of the spring delta (mm) +delta = 2 * e +//Calculate the stiffness of the spring k (N/mm) +k = (Pmax - Pmin)/delta +//Calculate the number of active turns N +N = (G * (dmod^4))/(8 * (D^3) * k) +Nround = ceil(N) +//Calculate the total number of coils Nt +Nt = active_coils(endtype, Nround) +//Calculate the solid length of the spring s (mm) +s = Nt * dmod +//Calculate the maximum deflection of the spring deltamax (mm) +deltamax = (8 * Pmax * (D^3) * N)/(G * (dmod^4)) +//Calculate the free length of the spring len (mm) +len = ceil(s + ((Nt - 1)*g) + deltamax) +lenround = round_five(len) +//Calculate the mean force Pm (N) +Pm = (Pmax + Pmin)/2 +//Calculate the force amplitude Pa (N) +Pa = (Pmax - Pmin)/2 +//Calculate the mean shear stress taum (N/mm2) +taum = (Ks * 8 * Pm * D)/(%pi * dmod^3) +//Calculate the shear stress amplitude taua (N/mm2) +taua = (K * 8 * Pa * D)/(%pi * dmod^3) +//Calculate the endurance limit in shear Se (N/mm2) +Se = 0.22 * SutNew +//Calculate the yield shear strength Ssy (N/mm2) +Ssy = 0.45 * SutNew +//Calculate the factor of safety fs +fs = (((taua*(Ssy - Se/2))/(Se/2) + taum)/Ssy)^-1 +//Print results +printf("\nFactor of safety(fs) = %0.2f\n",fs) +//Print results +printf("\nWire diameter(d) = %f mm\n",dmod) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nFree length(len) = %f mm\n",lenround) +printf("\nTotal number of coils(Nt) = %d\n",Nt)
\ No newline at end of file diff --git a/764/CH10/EX10.14.c/functions10_14.sci b/764/CH10/EX10.14.c/functions10_14.sci new file mode 100755 index 000000000..8267bf0d2 --- /dev/null +++ b/764/CH10/EX10.14.c/functions10_14.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.15.a/data10_15.sci b/764/CH10/EX10.15.a/data10_15.sci new file mode 100755 index 000000000..65496c559 --- /dev/null +++ b/764/CH10/EX10.15.a/data10_15.sci @@ -0,0 +1,27 @@ + +//(Springs) Example 10.15 +//Valve diameter dvalve (mm) +dvalve = 32 +//Suction pressure in the cylinder P (N/mm2) +P = 0.03 +//Mass of the valve m (g) +m = 50 +//Maximum valve lift l (mm) +l = 10 +//Stiffness of the spring k (N/mm) +k = 10 +//The permissible shear stress is r% of the Sut +r = 30 +//Modulus of rigidity G (N/mm2) +G = 81370 +//Spring index C +C = 8 +//Grade of the oil hardened and tempered steel gr +gr = 'VW' +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Gap between each turn g (mm) +g = 0.5 diff --git a/764/CH10/EX10.15.a/table10_2.csv b/764/CH10/EX10.15.a/table10_2.csv new file mode 100755 index 000000000..dd6075029 --- /dev/null +++ b/764/CH10/EX10.15.a/table10_2.csv @@ -0,0 +1,17 @@ +Mechanical properties of oil-hardened and tempered steel wire,,,,,,Refer Table10.2 on page 402 +Wire diameter d(mm),Minimum tensile strength (N/mm2),,,,, +,SW,VW,,,, +1,1760,1670,,,, +1.2,1720,1620,,,, +1.5,1670,1570,,,, +2,1620,1520,,,, +2.5,1570,1470,,,, +3,1520,1430,,,, +3.6,1480,1400,,,, +4,1480,1400,,,, +4.5,1440,1370,,,, +5,1440,1370,,,, +6,1400,1340,,,, +7,1360,1300,,,, +8,1290,,,,, +10,1250,,,,, diff --git a/764/CH10/EX10.15.b/result10_15.txt b/764/CH10/EX10.15.b/result10_15.txt new file mode 100755 index 000000000..972015a2d --- /dev/null +++ b/764/CH10/EX10.15.b/result10_15.txt @@ -0,0 +1,96 @@ +-->//(Springs) Example 10.15
+
+-->//Valve diameter dvalve (mm)
+
+-->dvalve = 32
+ dvalve =
+
+ 32.
+
+-->//Suction pressure in the cylinder P (N/mm2)
+
+-->P = 0.03
+ P =
+
+ 0.03
+
+-->//Mass of the valve m (g)
+
+-->m = 50
+ m =
+
+ 50.
+
+-->//Maximum valve lift l (mm)
+
+-->l = 10
+ l =
+
+ 10.
+
+-->//Stiffness of the spring k (N/mm)
+
+-->k = 10
+ k =
+
+ 10.
+
+-->//The permissible shear stress is r% of the Sut
+
+-->r = 30
+ r =
+
+ 30.
+
+-->//Modulus of rigidity G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//Spring index C
+
+-->C = 8
+ C =
+
+ 8.
+
+-->//Grade of the oil hardened and tempered steel gr
+
+-->gr = 'VW'
+ gr =
+
+ VW
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between each turn g (mm)
+
+-->g = 0.5
+ g =
+
+ 0.5
+
+
+Factor of safety(fs) = 1.85
+
+Wire diameter(d) = 4.000000 mm
+
+Mean coil diameter(D) = 32.000000 mm
+
+Free length(len) = 60.000000 mm
+
+Total number of coils(Nt) = 10
+
\ No newline at end of file diff --git a/764/CH10/EX10.15.b/solution10_15.sce b/764/CH10/EX10.15.b/solution10_15.sce new file mode 100755 index 000000000..954c7fa6d --- /dev/null +++ b/764/CH10/EX10.15.b/solution10_15.sce @@ -0,0 +1,108 @@ +//Function to round-up a value such that it is divisible by 10 +function[v] = round_ten(w) + v = ceil(w) + rem = pmodulo(v,10) + if (rem ~= 0) + v = v + (10 - rem) + end +endfunction + +//Obtain path of solution file +path = get_absolute_file_path('solution10_15.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_15.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_15.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the suction force F (N) +F = P * ((%pi/4) * dvalve^2) +//Calculate the weight of the valve W (N) +W = (m/1000)*9.81 +//Calculate the minimum preload Pmin (N) +Pmin = F + W +Pmin = round_ten(Pmin) +//Maximum force acting on the spring Pmax (N) +Pmax = Pmin + (k*l) +//Calculate the Wahl Factor K +K = ((4*C - 1)/(4*C - 4)) + (0.615/C) +//Calculate the shear stress concentration factor Ks +Ks = 1 + 0.5/C +//Assume the wire diameter to be 1mm d +d = 1 +//Calculate the shear stress in the spring tau (N/mm2) +tau = (K * 8 * Pmax * C)/(%pi * d^2) +while(gr ~= 'SW' & gr ~= 'VW') + printf("\n") + gr = input("Enter the appropriate steel grade: ","string") +end +if (gr == 'SW') + col = 2 +elseif (gr == 'VW') + col = 3 +end +row = 4 +trials = 0 +//Read the oil-hardened and tempered data-file +numeric = read_csv(path + filesep() + 'table10_2.csv') +//Calculate the actual wire diameter d +for i = 1:1:%inf + trials = trials + 1 + dNew = evstr(numeric(row, 1)) + tauNew = tau/(dNew^2) + Sut = evstr(numeric(row, col)) + taud = (r/100)*Sut + if (taud > tauNew) + break + end + row = row + 1 +end +//Account for fluctuating stresses dmod (mm) +dmod = dNew + 1 +//Retrieve the column number of dmod from the table10_2.csv file +row = 4 +for i = 1:1:%inf + if (evstr(numeric(row, 1)) == dmod) + SutNew = evstr(numeric(row, col)) + break + end + row = row + 1 +end +//Calculate the mean coil diameter D (mm) +D = C * dmod +//Calculate the number of active turns N +N = (G * (dmod^4))/(8 * (D^3) * k) +Nround = ceil(N) +//Calculate the total number of coils Nt +Nt = active_coils(endtype, Nround) +//Calculate the solid length of the spring s (mm) +s = Nt * dmod +//Calculate the maximum deflection of the spring deltamax (mm) +deltamax = (8 * Pmax * (D^3) * Nround)/(G * (dmod^4)) +//Calculate the free length of the spring len (mm) +len = ceil(s + ((Nt - 1)*g) + deltamax) +lenround = round_ten(len) +//Calculate the mean force Pm (N) +Pm = (Pmax + Pmin)/2 +//Calculate the force amplitude Pa (N) +Pa = (Pmax - Pmin)/2 +//Calculate the mean shear stress taum (N/mm2) +taum = (Ks * 8 * Pm * D)/(%pi * dmod^3) +//Calculate the shear stress amplitude taua (N/mm2) +taua = (K * 8 * Pa * D)/(%pi * dmod^3) +//Calculate the endurance limit in shear Se (N/mm2) +Se = 0.22 * SutNew +//Calculate the yield shear strength Ssy (N/mm2) +Ssy = 0.45 * SutNew +//Calculate the factor of safety fs +fs = (((taua*(Ssy - Se/2))/(Se/2) + taum)/Ssy)^-1 +//Print results +printf("\nFactor of safety(fs) = %0.2f\n",fs) +//Print results +printf("\nWire diameter(d) = %f mm\n",dmod) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nFree length(len) = %f mm\n",lenround) +printf("\nTotal number of coils(Nt) = %d\n",Nt)
\ No newline at end of file diff --git a/764/CH10/EX10.15.c/functions10_15.sci b/764/CH10/EX10.15.c/functions10_15.sci new file mode 100755 index 000000000..8267bf0d2 --- /dev/null +++ b/764/CH10/EX10.15.c/functions10_15.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.16.a/data10_16.sci b/764/CH10/EX10.16.a/data10_16.sci new file mode 100755 index 000000000..dc4f30818 --- /dev/null +++ b/764/CH10/EX10.16.a/data10_16.sci @@ -0,0 +1,29 @@ + +//(Springs) Example 10.16 +//Pre-loaad on the spring Pmin (N) +Pmin = 100 +//Displacement of the plunger l (mm) +l = 10 +//Plunger diameter dia (mm) +dia = 40 +//Value of p1 during plunger displacement p1 (N/mm2) +p1 = 0.35 +//Value of p2 during plunger displacement p2 (N/mm2) +p2 = 0.25 +//Maximum diameter of the spring Dmax (mm) +Dmax = 25 +//The pemissible shear stress is r% of the Sut +r = 30 +//Modulus of rigidity G (N/mm2) +G = 81370 +//Spring index C +C = 5 +//Grade of the oil hardened and tempered steel gr +gr = 'VW' +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Gap between each turn g (mm) +g = 0.5 diff --git a/764/CH10/EX10.16.a/table10_2.csv b/764/CH10/EX10.16.a/table10_2.csv new file mode 100755 index 000000000..dd6075029 --- /dev/null +++ b/764/CH10/EX10.16.a/table10_2.csv @@ -0,0 +1,17 @@ +Mechanical properties of oil-hardened and tempered steel wire,,,,,,Refer Table10.2 on page 402 +Wire diameter d(mm),Minimum tensile strength (N/mm2),,,,, +,SW,VW,,,, +1,1760,1670,,,, +1.2,1720,1620,,,, +1.5,1670,1570,,,, +2,1620,1520,,,, +2.5,1570,1470,,,, +3,1520,1430,,,, +3.6,1480,1400,,,, +4,1480,1400,,,, +4.5,1440,1370,,,, +5,1440,1370,,,, +6,1400,1340,,,, +7,1360,1300,,,, +8,1290,,,,, +10,1250,,,,, diff --git a/764/CH10/EX10.16.b/result10_16.txt b/764/CH10/EX10.16.b/result10_16.txt new file mode 100755 index 000000000..37c05dc54 --- /dev/null +++ b/764/CH10/EX10.16.b/result10_16.txt @@ -0,0 +1,102 @@ +-->//(Springs) Example 10.16
+
+-->//Pre-loaad on the spring Pmin (N)
+
+-->Pmin = 100
+ Pmin =
+
+ 100.
+
+-->//Displacement of the plunger l (mm)
+
+-->l = 10
+ l =
+
+ 10.
+
+-->//Plunger diameter dia (mm)
+
+-->dia = 40
+ dia =
+
+ 40.
+
+-->//Value of p1 during plunger displacement p1 (N/mm2)
+
+-->p1 = 0.35
+ p1 =
+
+ 0.35
+
+-->//Value of p2 during plunger displacement p2 (N/mm2)
+
+-->p2 = 0.25
+ p2 =
+
+ 0.25
+
+-->//Maximum diameter of the spring Dmax (mm)
+
+-->Dmax = 25
+ Dmax =
+
+ 25.
+
+-->//The pemissible shear stress is r% of the Sut
+
+-->r = 30
+ r =
+
+ 30.
+
+-->//Modulus of rigidity G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//Spring index C
+
+-->C = 5
+ C =
+
+ 5.
+
+-->//Grade of the oil hardened and tempered steel gr
+
+-->gr = 'VW'
+ gr =
+
+ VW
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between each turn g (mm)
+
+-->g = 0.5
+ g =
+
+ 0.5
+
+
+Factor of safety(fs) = 1.48
+
+Wire diameter(d) = 3.600000 mm
+
+Mean coil diameter(D) = 18.000000 mm
+
+Free length(len) = 125.000000 mm
+
+Total number of coils(Nt) = 26
\ No newline at end of file diff --git a/764/CH10/EX10.16.b/solution10_16.sce b/764/CH10/EX10.16.b/solution10_16.sce new file mode 100755 index 000000000..09530c6fd --- /dev/null +++ b/764/CH10/EX10.16.b/solution10_16.sce @@ -0,0 +1,109 @@ +//Function to round-up a value such that it is divisible by 5 +function[v] = round_five(w) + v = ceil(w) + rem = pmodulo(v,5) + if (rem ~= 0) + v = v + (5 - rem) + end +endfunction + +//Obtain path of solution file +path = get_absolute_file_path('solution10_16.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_16.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_16.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the maximum force on the spring Pmax (N) +Pmax = Pmin + (p1 - p2)*((%pi/4) * dia^2) +//Calculate the spring stiffness k (N/mm) +k = (Pmax - Pmin)/l +//Calculate the Wahl Factor K +K = ((4*C - 1)/(4*C - 4)) + (0.615/C) +//Calculate the shear stress concentration factor Ks +Ks = 1 + 0.5/C +//Assume the wire diameter to be 1mm d +d = 1 +//Calculate the shear stress in the spring tau (N/mm2) +tau = (K * 8 * Pmax * C)/(%pi * d^2) +while(gr ~= 'SW' & gr ~= 'VW') + printf("\n") + gr = input("Enter the appropriate steel grade: ","string") +end +if (gr == 'SW') + col = 2 +elseif (gr == 'VW') + col = 3 +end +row = 4 +trials = 0 +//Read the oil-hardened and tempered data-file +numeric = read_csv(path + filesep() + 'table10_2.csv') +//Calculate the actual wire diameter d +for i = 1:1:%inf + trials = trials + 1 + dNew = evstr(numeric(row, 1)) + tauNew = tau/(dNew^2) + Sut = evstr(numeric(row, col)) + taud = (r/100)*Sut + if (taud > tauNew) + break() + end + row = row + 1 +end +dmod = dNew +val = (C * dmod) + dmod +//Account for fluctuating stresses dmod (mm) +while (val < (Dmax - 5)) +dmod = evstr(numeric((row + 1), 1)) +val = (C * dmod) + dmod +row = row + 1 +end +//Retrieve the column number of dmod from the table10_2.csv file +row = 4 +for i = 1:1:%inf + if (evstr(numeric(row, 1)) == dmod) + SutNew = evstr(numeric(row, col)) + break() + end + row = row + 1 +end +//Calculate the mean coil diameter D (mm) +D = C * dmod +//Calculate the number of active turns N +N = (G * (dmod^4))/(8 * (D^3) * k) +Nround = ceil(N) +//Calculate the total number of coils Nt +Nt = active_coils(endtype, Nround) +//Calculate the solid length of the spring s (mm) +s = Nt * dmod +//Calculate the maximum deflection of the spring deltamax (mm) +deltamax = (8 * Pmax * (D^3) * Nround)/(G * (dmod^4)) +//Calculate the free length of the spring len (mm) +len = ceil(s + ((Nt - 1)*g) + deltamax) +lenround = round_five(len) +//Calculate the mean force Pm (N) +Pm = (Pmax + Pmin)/2 +//Calculate the force amplitude Pa (N) +Pa = (Pmax - Pmin)/2 +//Calculate the mean shear stress taum (N/mm2) +taum = (Ks * 8 * Pm * D)/(%pi * dmod^3) +//Calculate the shear stress amplitude taua (N/mm2) +taua = (K * 8 * Pa * D)/(%pi * dmod^3) +//Calculate the endurance limit in shear Se (N/mm2) +Se = 0.22 * SutNew +//Calculate the yield shear strength Ssy (N/mm2) +Ssy = 0.45 * SutNew +//Calculate the factor of safety fs +fs = (((taua*(Ssy - Se/2))/(Se/2) + taum)/Ssy)^-1 +//Print results +printf("\nFactor of safety(fs) = %0.2f\n",fs) +//Print results +printf("\nWire diameter(d) = %f mm\n",dmod) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nFree length(len) = %f mm\n",lenround) +printf("\nTotal number of coils(Nt) = %d\n",Nt) diff --git a/764/CH10/EX10.16.c/functions10_16.sci b/764/CH10/EX10.16.c/functions10_16.sci new file mode 100755 index 000000000..8267bf0d2 --- /dev/null +++ b/764/CH10/EX10.16.c/functions10_16.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.17.a/data10_17.sci b/764/CH10/EX10.17.a/data10_17.sci new file mode 100755 index 000000000..1e5cc049f --- /dev/null +++ b/764/CH10/EX10.17.a/data10_17.sci @@ -0,0 +1,17 @@ + +//(Springs) Example 10.17 +//Maximum force on the composite spring P (N) +P = 6000 +//Deflection in both the springs delta (mm) +delta = 50 +//Maximum torsional shear stress in each spring tau (N/mm2) +tau = 800 +//Spring index of each spring C +C = 6 +//Modulus of rigidity of each spring G (N/mm2) +G = 81370 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 diff --git a/764/CH10/EX10.17.b/result10_17.txt b/764/CH10/EX10.17.b/result10_17.txt new file mode 100755 index 000000000..b1e04fac6 --- /dev/null +++ b/764/CH10/EX10.17.b/result10_17.txt @@ -0,0 +1,67 @@ +-->//(Springs) Example 10.17
+
+-->//Maximum force on the composite spring P (N)
+
+-->P = 6000
+ P =
+
+ 6000.
+
+-->//Deflection in both the springs delta (mm)
+
+-->delta = 50
+ delta =
+
+ 50.
+
+-->//Maximum torsional shear stress in each spring tau (N/mm2)
+
+-->tau = 800
+ tau =
+
+ 800.
+
+-->//Spring index of each spring C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//Modulus of rigidity of each spring G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+
+Axial force transmitted by the outer spring(P1) = 4153.846154 N
+
+Axial force transmitted by the inner spring(P2) = 1846.153846 N
+
+Wire diameter of the outer spring(d1) = 10.000000 mm
+
+Mean coil diameter of the outer spring(D1) = 60.000000 mm
+
+Wire diameter of the inner spring(d2) = 7.000000 mm
+
+Mean coil diameter of the inner spring(D2) = 42.000000 mm
+
+Number of active coils in outer spring(N1) = 6.000000
+
+Number of active coils in inner spring(N2) = 10.000000
+
\ No newline at end of file diff --git a/764/CH10/EX10.17.b/solution10_17.sce b/764/CH10/EX10.17.b/solution10_17.sce new file mode 100755 index 000000000..e7af4ff7a --- /dev/null +++ b/764/CH10/EX10.17.b/solution10_17.sce @@ -0,0 +1,47 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_17.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_17.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_17.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the ratio d1/d2 r +r = C/(C - 2) +//Calculate the force transmitted through inner spring P2 (N) +P2 = P/(1 + r^2) +//Calculate the force transmitted through outer spring P1 (N) +P1 = P - P2 +//Calculate the Wahl Factor K +K = (4*C - 1)/(4*C - 4) + 0.615/C +//Calculate the wire diameter of the outer spring d1 (mm) +d1 = sqrt((K * 8 * P1 * C)/(%pi * tau)) +d1round = ceil(d1) +//Calculate the mean coil diameter of the outer spring D1 (mm) +D1 = C * d1round +//Calculate the wire diameter of the inner spring d2 (mm) +d2 = sqrt((K * 8 * P2 * C)/(%pi * tau)) +d2round = ceil(d2) +//Calculate the mean coil diameter of the inner spring D2 (mm) +D2 = C * d2round +//Calculate the active number of coils of the outer spring N1 +N1 = ceil((delta * G * d1round^4)/(8 * P1 * D1^3)) +//Calculate the total number of coils in the outer spring Nt1 +Nt1 = active_coils(endtype, N1) +//Calculate the total number of coils in the inner spring Nt2 +Nt2 = ceil(Nt1 * d1/d2) +//Calculate the active number of coils of the inner spring N2 +N2 = Nt2 - (Nt1 - N1) +//Print results +printf("\nAxial force transmitted by the outer spring(P1) = %f N\n",P1) +printf("\nAxial force transmitted by the inner spring(P2) = %f N\n",P2) +printf("\nWire diameter of the outer spring(d1) = %f mm\n",d1round) +printf("\nMean coil diameter of the outer spring(D1) = %f mm\n",D1) +printf("\nWire diameter of the inner spring(d2) = %f mm\n",d2round) +printf("\nMean coil diameter of the inner spring(D2) = %f mm\n",D2) +printf("\nNumber of active coils in outer spring(N1) = %f\n",N1) +printf("\nNumber of active coils in inner spring(N2) = %f\n",N2)
\ No newline at end of file diff --git a/764/CH10/EX10.17.c/functions10_17.sci b/764/CH10/EX10.17.c/functions10_17.sci new file mode 100755 index 000000000..8267bf0d2 --- /dev/null +++ b/764/CH10/EX10.17.c/functions10_17.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.18.a/data10_18.sci b/764/CH10/EX10.18.a/data10_18.sci new file mode 100755 index 000000000..43a2d7886 --- /dev/null +++ b/764/CH10/EX10.18.a/data10_18.sci @@ -0,0 +1,18 @@ + +//(Springs) Example 10.18 +//Maximum force acting on the composite spring P (N) +P = 2000 +//Wire diameter of the inner spring d2 (mm) +d2 = 8 +//Mean coil diameter of the inner spring D2 (mm) +D2 = 64 +//Wire diameter of the outer spring d1 (mm) +d1 = 10 +//Mean coil diameter of the outer spring D1 (mm) +D1 = 80 +//Number of active coils in outer spring N1 +N1 = 8 +//Number of active coils in inner spring N2 +N2 = 12 +//Modulus of rigidity for the spring G (N/mm2) +G = 81370 diff --git a/764/CH10/EX10.18.b/result10_18.txt b/764/CH10/EX10.18.b/result10_18.txt new file mode 100755 index 000000000..6c5cce773 --- /dev/null +++ b/764/CH10/EX10.18.b/result10_18.txt @@ -0,0 +1,69 @@ +-->//(Springs) Example 10.18
+
+-->//Maximum force acting on the composite spring P (N)
+
+-->P = 2000
+ P =
+
+ 2000.
+
+-->//Wire diameter of the inner spring d2 (mm)
+
+-->d2 = 8
+ d2 =
+
+ 8.
+
+-->//Mean coil diameter of the inner spring D2 (mm)
+
+-->D2 = 64
+ D2 =
+
+ 64.
+
+-->//Wire diameter of the outer spring d1 (mm)
+
+-->d1 = 10
+ d1 =
+
+ 10.
+
+-->//Mean coil diameter of the outer spring D1 (mm)
+
+-->D1 = 80
+ D1 =
+
+ 80.
+
+-->//Number of active coils in outer spring N1
+
+-->N1 = 8
+ N1 =
+
+ 8.
+
+-->//Number of active coils in inner spring N2
+
+-->N2 = 12
+ N2 =
+
+ 12.
+
+-->//Modulus of rigidity for the spring G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+
+Force transmitted by the outer spring(P1) = 1304.347826 N
+
+Force transmitted by the inner spring(P2) = 695.652174 N
+
+Maximum deflection of the spring(delta) = 52.526569 mm
+
+Maximum torsional shear stress induced in the outer spring(tau1) = 314.616701 N/mm2
+
+Maximum torsional shear stress induced in the inner spring(tau2) = 262.180584 N/mm2
+
\ No newline at end of file diff --git a/764/CH10/EX10.18.b/solution10_18.sce b/764/CH10/EX10.18.b/solution10_18.sce new file mode 100755 index 000000000..1fa657f23 --- /dev/null +++ b/764/CH10/EX10.18.b/solution10_18.sce @@ -0,0 +1,42 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_18.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_18.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the force transmitted by the outer spring P1 (N) +val = (d2^4 * D1^3 * N1)/(d1^4 * D2^3 * N2) +P1 = P/(1 + val) +//Calculate the force transmitted by the inner spring P2 (N) +P2 = P - P1 +//Calculate the maximum deflection in each spring delta (mm) +delta = (8 * P1 * (D1^3) * N1)/(G * (d1^4)) +//Calculate the spring index of outer and inner springs C1 and C2 resp. +C1 = D1/d1 +C2 = D2/d2 +if (C1 == C2) + //Calculate the Wahl Factor + K = (4 * C1 - 1)/(4 * C1 - 4) + 0.615/C1 + //Calculate the torsional shear stress in the outer spring tau1 (N/mm2) + tau1 = (K * 8 * P1 * C1)/(%pi * d1^2) + //Calculate the torsional shear stress in the inner spring tau2 (N/mm2) + tau2 = (K * 8 * P2 * C2)/(%pi * d2^2) +elseif (C1 ~= C2) + //Calculate the Wahl Factor for the outer spring K1 + K1 = (4 * C1 - 1)/(4 * C1 - 4) + 0.615/C1 + //Calculate the Wahl Factor for the inner spring K2 + K2 = (4 * C2 - 1)/(4 * C2 - 4) + 0.615/C2 + //Calculate the torsional shear stress in the outer spring tau1 (N/mm2) + tau1 = (K1 * 8 * P1 * C1)/(%pi * d1^2) + //Calculate the torsional shear stress in the inner spring tau2 (N/mm2) + tau2 = (K2 * 8 * P2 * C2)/(%pi * d2^2) +end +//Print results +printf("\nForce transmitted by the outer spring(P1) = %f N\n",P1) +printf("\nForce transmitted by the inner spring(P2) = %f N\n",P2) +printf("\nMaximum deflection of the spring(delta) = %f mm\n",delta) +printf("\nMaximum torsional shear stress induced in the outer spring(tau1) = %f N/mm2\n",tau1) +printf("\nMaximum torsional shear stress induced in the inner spring(tau2) = %f N/mm2\n",tau2) diff --git a/764/CH10/EX10.19.a/data10_19.sci b/764/CH10/EX10.19.a/data10_19.sci new file mode 100755 index 000000000..ce0a3e026 --- /dev/null +++ b/764/CH10/EX10.19.a/data10_19.sci @@ -0,0 +1,20 @@ + +//(Springs) Example 10.19 +//Difference between the free lengths of the two springs dif (mm) +dif = 15 +//Maximum force acting on the composite spring P (N) +P = 1000 +//Wire diameter of the inner spring d2 (mm) +d2 = 5 +//Mean coil diameter of the inner spring D2 (mm) +D2 = 30 +//Wire diameter of the outer spring d1 (mm) +d1 = 6 +//Mean coil diameter of the outer spring D1 (mm) +D1 = 36 +//Number of active coils in outer spring N1 +N1 = 10 +//Number of active coils in inner spring N2 +N2 = 8 +//Modulus of rigidity for the spring G (N/mm2) +G = 81370 diff --git a/764/CH10/EX10.19.b/result10_19.txt b/764/CH10/EX10.19.b/result10_19.txt new file mode 100755 index 000000000..57dcaf583 --- /dev/null +++ b/764/CH10/EX10.19.b/result10_19.txt @@ -0,0 +1,78 @@ +-->//(Springs) Example 10.19
+
+-->//Difference between the free lengths of the two springs dif (mm)
+
+-->dif = 15
+ dif =
+
+ 15.
+
+-->//Maximum force acting on the composite spring P (N)
+
+-->P = 1000
+ P =
+
+ 1000.
+
+-->//Wire diameter of the inner spring d2 (mm)
+
+-->d2 = 5
+ d2 =
+
+ 5.
+
+-->//Mean coil diameter of the inner spring D2 (mm)
+
+-->D2 = 30
+ D2 =
+
+ 30.
+
+-->//Wire diameter of the outer spring d1 (mm)
+
+-->d1 = 6
+ d1 =
+
+ 6.
+
+-->//Mean coil diameter of the outer spring D1 (mm)
+
+-->D1 = 36
+ D1 =
+
+ 36.
+
+-->//Number of active coils in outer spring N1
+
+-->N1 = 10
+ N1 =
+
+ 10.
+
+-->//Number of active coils in inner spring N2
+
+-->N2 = 8
+ N2 =
+
+ 8.
+
+-->//Modulus of rigidity for the spring G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+
+Force transmitted by the outer spring(P1) = 706.021471 N
+
+Force transmitted by the inner spring(P2) = 293.978529 N
+
+Compression of the outer spring(delta1) = 24.988839 mm
+
+Compression of the inner spring(delta2) = 9.988839 mm
+
+Maximum torsional shear stress induced in the outer spring(tau1) = 375.305136 N/mm2
+
+Maximum torsional shear stress induced in the inner spring(tau2) = 225.032219 N/mm2
+
\ No newline at end of file diff --git a/764/CH10/EX10.19.b/solution10_19.sce b/764/CH10/EX10.19.b/solution10_19.sce new file mode 100755 index 000000000..e6726d00b --- /dev/null +++ b/764/CH10/EX10.19.b/solution10_19.sce @@ -0,0 +1,56 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_19.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_19.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the stiffness of the outer spring k1 (N/mm) +k1 = (G * d1^4)/(8 * D1^3 * N1) +//Calculate the stiffness of the inner spring k2 (N/mm) +k2 = (G * d2^4)/(8 * D2^3 * N2) +//Axial force on the outer spring corresponding to compression till delta Pa (N) +Pa = k1 * dif +//Remaining load shared by the two springs Prem (N) +Prem = P - Pa +//Combined stiffness of the two springs k (N/mm) +k = k1 + k2 +//Further compression of the two springs x (mm) +x = Prem/k +//Compression of the outer spring delta1 (mm) +delta1 = dif + x +//Compression of the inner spring delta2 (mm) +delta2 = x +//Force transmitted by the outer spring P1 (N) +P1 = k1 * delta1 +//Force transmitted by the inner spring P2 (N) +P2 = k2 * delta2 +//Calculate the spring index of outer and inner springs C1 and C2 resp. +C1 = D1/d1 +C2 = D2/d2 +if (C1 == C2) + //Calculate the Wahl Factor + K = (4 * C1 - 1)/(4 * C1 - 4) + 0.615/C1 + //Calculate the torsional shear stress in the outer spring tau1 (N/mm2) + tau1 = (K * 8 * P1 * C1)/(%pi * d1^2) + //Calculate the torsional shear stress in the inner spring tau2 (N/mm2) + tau2 = (K * 8 * P2 * C2)/(%pi * d2^2) +elseif (C1 ~= C2) + //Calculate the Wahl Factor for the outer spring K1 + K1 = (4 * C1 - 1)/(4 * C1 - 4) + 0.615/C1 + //Calculate the Wahl Factor for the inner spring K2 + K2 = (4 * C2 - 1)/(4 * C2 - 4) + 0.615/C2 + //Calculate the torsional shear stress in the outer spring tau1 (N/mm2) + tau1 = (K1 * 8 * P1 * C1)/(%pi * d1^2) + //Calculate the torsional shear stress in the inner spring tau2 (N/mm2) + tau2 = (K2 * 8 * P2 * C2)/(%pi * d2^2) +end +//Print results +printf("\nForce transmitted by the outer spring(P1) = %f N\n",P1) +printf("\nForce transmitted by the inner spring(P2) = %f N\n",P2) +printf("\nCompression of the outer spring(delta1) = %f mm\n",delta1) +printf("\nCompression of the inner spring(delta2) = %f mm\n",delta2) +printf("\nMaximum torsional shear stress induced in the outer spring(tau1) = %f N/mm2\n",tau1) +printf("\nMaximum torsional shear stress induced in the inner spring(tau2) = %f N/mm2\n",tau2) diff --git a/764/CH10/EX10.2.a/data10_2.sci b/764/CH10/EX10.2.a/data10_2.sci new file mode 100755 index 000000000..848b72e2e --- /dev/null +++ b/764/CH10/EX10.2.a/data10_2.sci @@ -0,0 +1,21 @@ +
+//(Springs) Example 10.2
+//Minimum force acting on the helical spring Pmin (kN)
+Pmin = 2.5
+//Maximum force acting on the helical spring Pmax (kN)
+Pmax = 3.5
+//Deflection of the spring delta (mm)
+delta = 5
+//Spring index C
+C = 5
+//Ultimate tensile strength of the spring material Sut (N/mm2)
+Sut = 1050
+//Rigidity modulus of the material G (N/mm2)
+G = 81370
+//For plain ends, endtype = 1
+//For plain ends(ground), endtype = 2
+//For square ends, endtype = 3
+//For square ends(ground), endtype = 4
+endtype = 4
+//Gap between consecutive coils g (mm)
+g = 0.5
diff --git a/764/CH10/EX10.2.b/result10_2.txt b/764/CH10/EX10.2.b/result10_2.txt new file mode 100755 index 000000000..7cd431325 --- /dev/null +++ b/764/CH10/EX10.2.b/result10_2.txt @@ -0,0 +1,79 @@ +-->//(Springs) Example 10.2
+
+-->//Minimum force acting on the helical spring Pmin (kN)
+
+-->Pmin = 2.5
+ Pmin =
+
+ 2.5
+
+-->//Maximum force acting on the helical spring Pmax (kN)
+
+-->Pmax = 3.5
+ Pmax =
+
+ 3.5
+
+-->//Deflection of the spring delta (mm)
+
+-->delta = 5
+ delta =
+
+ 5.
+
+-->//Spring index C
+
+-->C = 5
+ C =
+
+ 5.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1050
+ Sut =
+
+ 1050.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between consecutive coils g (mm)
+
+-->g = 0.5
+ g =
+
+ 0.5
+
+
+Wire diameter(d) = 10.546976 or 11.000000 mm
+
+Mean coil diameter(D) = 55.000000 mm
+
+Number of active coils(N) = 5
+
+Total number of coils(Nt) = 7
+
+Free length of the spring(l) = 99.551543 or 100.000000 mm
+
+Required spring rate(kreq) = 200.000000 N/mm
+
+Actual spring rate(kact) = 179.014000 N/mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.2.b/solution10_2.sce b/764/CH10/EX10.2.b/solution10_2.sce new file mode 100755 index 000000000..92e978f84 --- /dev/null +++ b/764/CH10/EX10.2.b/solution10_2.sce @@ -0,0 +1,47 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution10_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data10_2.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions10_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Calculate the permissible shear stress for the spring tau (N/mm2)
+tau = (50/100)*Sut
+//Calculate the Wahl factor K
+K = (((4*C)-1)/((4*C)-4)) + (0.615/C)
+//Calculate the wire diameter d (mm)
+d = sqrt((8 * K * Pmax * 1000 * C)/(%pi * tau))
+dround = ceil(d)
+//Calculate the mean coil diameter D (mm)
+D = C * dround
+//Calculate the number of active coils N
+N = (delta * G * (dround^4))/(8 * (Pmax - Pmin) * 1000 * (D^3))
+N = ceil(N)
+//Calculate the total number of coils Nt
+Nt = active_coils(endtype, N)
+//Calculate the actual deflection of the spring delta1 (mm)
+delta1 = (8 * Pmax * 1000 * (D^3) * N)/(G * (dround^4))
+//Calculate the total axial gap between the coils gtotal (mm)
+gtotal = (Nt - 1)*g
+//Calculate the solid length of the spring s (mm)
+s = Nt * dround
+//Calculate the free length of the spring l (mm)
+l = s + gtotal + delta1
+//Calculate the required spring rate kreq (N/mm)
+kreq = ((Pmax - Pmin)*1000)/delta
+//Calculate the actual spring rate kact (N/mm)
+kact = (G * (dround^4))/(8 * (D^3) * N)
+//Print results
+printf("\nWire diameter(d) = %f or %f mm\n",d,dround)
+printf("\nMean coil diameter(D) = %f mm\n",D)
+printf("\nNumber of active coils(N) = %d\n",N)
+printf("\nTotal number of coils(Nt) = %d\n",Nt)
+printf("\nFree length of the spring(l) = %f or %f mm\n",l,ceil(l))
+printf("\nRequired spring rate(kreq) = %f N/mm\n",kreq)
+printf("\nActual spring rate(kact) = %f N/mm\n",kact)
diff --git a/764/CH10/EX10.2.c/functions10_2.sci b/764/CH10/EX10.2.c/functions10_2.sci new file mode 100755 index 000000000..e43b686e6 --- /dev/null +++ b/764/CH10/EX10.2.c/functions10_2.sci @@ -0,0 +1,17 @@ +
+//Function for calculating the number of active coils in a spring
+function[Nt] = active_coils(endtype, coil)
+ //For plain ends, endtype = 1
+ //For plain ends(ground), endtype = 2
+ //For square ends, endtype = 3
+ //For square ends(ground), endtype = 4
+ if (endtype == 1) then
+ Nt = coil
+ elseif (endtype == 2)
+ Nt = coil + 0.5
+ elseif (endtype == 3)
+ Nt = coil + 2
+ elseif (endtype == 4)
+ Nt = coil + 2
+ end
+endfunction
diff --git a/764/CH10/EX10.20.a/data10_20.sci b/764/CH10/EX10.20.a/data10_20.sci new file mode 100755 index 000000000..ef02ae76c --- /dev/null +++ b/764/CH10/EX10.20.a/data10_20.sci @@ -0,0 +1,8 @@ + +//(Springs) Example 10.20 +//Pre-load on the compression spring Pmin (N) +Pmin = 375 +//Permissible torsional shear stress in the spring tau (N/mm2) +tau = 750 +//Permissible outer diameter of the spring D (mm) +D = 42 diff --git a/764/CH10/EX10.20.b/result10_20.txt b/764/CH10/EX10.20.b/result10_20.txt new file mode 100755 index 000000000..71db6702b --- /dev/null +++ b/764/CH10/EX10.20.b/result10_20.txt @@ -0,0 +1,30 @@ +-->//(Springs) Example 10.20
+
+-->//Pre-load on the compression spring Pmin (N)
+
+-->Pmin = 375
+ Pmin =
+
+ 375.
+
+-->//Permissible torsional shear stress in the spring tau (N/mm2)
+
+-->tau = 750
+ tau =
+
+ 750.
+
+-->//Permissible outer diameter of the spring D (mm)
+
+-->D = 42
+ D =
+
+ 42.
+
+
+The design is safe
+
+Wire diameter(d) = 5.000000 mm
+
+Mean coil diameter(Dmean) = 37.000000 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.20.b/solution10_20.sce b/764/CH10/EX10.20.b/solution10_20.sce new file mode 100755 index 000000000..d7b936abb --- /dev/null +++ b/764/CH10/EX10.20.b/solution10_20.sce @@ -0,0 +1,39 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_20.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_20.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the maximum force in the spring Pmax (N) +Pmax = 2 * Pmin +//Calculate the factor containing C and K fact +fact = (tau * D^2 * %pi)/(8 * Pmax) +//Assume values of C and calculate the factor +for C = 2:1:%inf + //Calculate the Wahl Factor K + K = (4*C - 1)/(4*C -4) + 0.615/C + val = C * (C+1)^2 * K + if (val > fact) + break + end +end +//Calculate the wire diameter d (mm) +d = ceil(D/(C + 1)) +//Calculate the mean coil diameter Dmean (mm) +Dmean = D - d +Cnew = Dmean/d +//Calculate the new Wahl Factor Knew +Knew = (4*Cnew - 1)/(4*Cnew -4) + 0.615/Cnew +///Calculate the maximum torsional shear stress tauMax (N/mm2) +tauMax = (Knew * 8 * Pmax * Cnew)/(%pi * d^2) +if (tau > tauMax) + printf("\nThe design is safe\n") +else + printf("\nThe design is not safe\n") +end +//Print results +printf("\nWire diameter(d) = %f mm\n",d) +printf("\nMean coil diameter(Dmean) = %f mm\n",Dmean) diff --git a/764/CH10/EX10.21.a/data10_21.sci b/764/CH10/EX10.21.a/data10_21.sci new file mode 100755 index 000000000..a8c811a99 --- /dev/null +++ b/764/CH10/EX10.21.a/data10_21.sci @@ -0,0 +1,16 @@ + +//(Springs) Example 10.21 +//Grade of the patented and cold-drawn steel gr +gr = 4 +//Yield strength of the material is r% of the Sut +r = 60 +//Factor of safety fs +fs = 2 +//Mean coil diameter D (mm) +D = 18 +//Maximum bending moment on the spring Mb (N-mm) +Mb = 250 +//Modulus of elasticity of the spring E (N/mm2) +E = 207000 +//Stiffness of the spring k (N-mm/rad) +k = 3 diff --git a/764/CH10/EX10.21.a/table10_1.csv b/764/CH10/EX10.21.a/table10_1.csv new file mode 100755 index 000000000..f7baaae43 --- /dev/null +++ b/764/CH10/EX10.21.a/table10_1.csv @@ -0,0 +1,25 @@ +Mechanical properties of patented and cold-drawn steel wires ,,,,,Refer Table 10.1 on page 402 +Wire diameter d (mm) ,Minimum tensile strength (N/mm2),,,, +,Gr.1,Gr.2,Gr.3,Gr.4, +0.3,1720,2060,2460,2660, +0.4,1700,2040,2430,2620, +0.5,1670,2010,2390,2580, +0.6,1650,1990,2360,2550, +0.7,1630,1970,2320,2530, +0.8,1610,1950,2280,2480, +0.9,1590,1920,2250,2440, +1,1570,1900,2240,2400, +1.2,1540,1860,2170,2340, +1.4,1500,1820,2090,2290, +1.6,1470,1780,2080,2250, +1.8,1440,1750,2030,2190, +2,1420,1720,1990,2160, +2.5,1370,1640,1890,2050, +3,1320,1570,1830,1980, +3.6,1270,1510,1750,1890, +4,1250,1480,1700,1840, +4.5,1230,1440,1660,1800, +5,1190,1390,1600,1750, +6,1130,1320,1530,1670, +7,1090,1260,1460,1610, +8,1050,1220,1400,1540, diff --git a/764/CH10/EX10.21.b/result10_21.txt b/764/CH10/EX10.21.b/result10_21.txt new file mode 100755 index 000000000..3552a39ea --- /dev/null +++ b/764/CH10/EX10.21.b/result10_21.txt @@ -0,0 +1,56 @@ +-->//(Springs) Example 10.21
+
+-->//Grade of the patented and cold-drawn steel gr
+
+-->gr = 4
+ gr =
+
+ 4.
+
+-->//Yield strength of the material is r% of the Sut
+
+-->r = 60
+ r =
+
+ 60.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Mean coil diameter D (mm)
+
+-->D = 18
+ D =
+
+ 18.
+
+-->//Maximum bending moment on the spring Mb (N-mm)
+
+-->Mb = 250
+ Mb =
+
+ 250.
+
+-->//Modulus of elasticity of the spring E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+-->//Stiffness of the spring k (N-mm/rad)
+
+-->k = 3
+ k =
+
+ 3.
+
+
+Wire diameter(d) = 1.600000 mm
+
+Number of active coils(N) = 393
+
\ No newline at end of file diff --git a/764/CH10/EX10.21.b/solution10_21.sce b/764/CH10/EX10.21.b/solution10_21.sce new file mode 100755 index 000000000..7c7c51cb3 --- /dev/null +++ b/764/CH10/EX10.21.b/solution10_21.sce @@ -0,0 +1,50 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_21.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_21.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +trials = 0 +//Load .csv file containing data of table10.1 on page 402 +warning("off") +numeric = read_csv(path + filesep() + 'table10_1.csv') +while (gr~=1 & gr~=2 & gr~=3 & gr~=4) + printf("\n") + gr = input("Enter appropriate steel grade: ") +end +if (gr == 1 ) + col = 2 +elseif (gr == 2) + col = 3 +elseif (gr == 3) + col = 4 +elseif (gr == 4) + col = 5 +end +row = 4 +//Calculate the wire diameter d (mm) +for i = 1:1:%inf + d = evstr(numeric(row, 1)) + Sut = evstr(numeric(row, col)) + //Calculate the permissible stress sigmat (N/mm2) + sigmat = (r/100 * Sut)/fs + //Calculate the spring index C + C = D/d + //Calculate the Wahl Factor for inner part of the spring Ki + Ki = (4*C^2 - C - 1)/(4*C*(C - 1)) + //Calculate the bending stress sigmab (N/mm2) + sigmab = (Ki * 32 * Mb)/(%pi * d^3) + if (sigmab < sigmat) + break() + end + row = row + 1 + trials = trials + 1 +end +//Calculate the number of active coils N +N = (E * d^4)/(64 * D * k) +//Print results +printf("\nWire diameter(d) = %f mm\n",d) +printf("\nNumber of active coils(N) = %d\n",ceil(N)) diff --git a/764/CH10/EX10.22.a/data10_22.sci b/764/CH10/EX10.22.a/data10_22.sci new file mode 100755 index 000000000..e294e1cfa --- /dev/null +++ b/764/CH10/EX10.22.a/data10_22.sci @@ -0,0 +1,12 @@ + +//(Springs) Example 10.22 +//Maximum torque to be provided by the spring M (N-mm) +M = 1200 +//Maximum bending stress sigmab (N/mm2) +sigmab = 800 +//Thickness of the steel strip t (mm) +t = 1.25 +//Modulus of elasticity E (N/mm2) +E = 207000 +//Number of rotations of the arbor when the bending stress decreases from sigmab to 0 n +n = 3 diff --git a/764/CH10/EX10.22.b/result10_22.txt b/764/CH10/EX10.22.b/result10_22.txt new file mode 100755 index 000000000..85d4889c2 --- /dev/null +++ b/764/CH10/EX10.22.b/result10_22.txt @@ -0,0 +1,42 @@ +-->//(Springs) Example 10.22
+
+-->//Maximum torque to be provided by the spring M (N-mm)
+
+-->M = 1200
+ M =
+
+ 1200.
+
+-->//Maximum bending stress sigmab (N/mm2)
+
+-->sigmab = 800
+ sigmab =
+
+ 800.
+
+-->//Thickness of the steel strip t (mm)
+
+-->t = 1.25
+ t =
+
+ 1.25
+
+-->//Modulus of elasticity E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+-->//Number of rotations of the arbor when the bending stress decreases from sigmab to 0 n
+
+-->n = 3
+ n =
+
+ 3.
+
+
+Width of the strip(b) = 11.520000 or 12.000000 mm
+
+Length of the strip(l) 6350.680462 mm or 6.350680 m
+
\ No newline at end of file diff --git a/764/CH10/EX10.22.b/solution10_22.sce b/764/CH10/EX10.22.b/solution10_22.sce new file mode 100755 index 000000000..345c75bcb --- /dev/null +++ b/764/CH10/EX10.22.b/solution10_22.sce @@ -0,0 +1,19 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_22.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_22.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the strip width b (mm) +b = (12 * M)/(sigmab * t^2) +bround = ceil(b) +//Calculate the angle of rotation theta (rad) +theta = n * 2 * %pi +//Calculate the length of the strip l (mm) +l = (theta * E * bround * t^3)/(12 * M) +//Print results +printf("\nWidth of the strip(b) = %f or %f mm\n",b,bround) +printf("\nLength of the strip(l) %f mm or %f m\n",l,l/1000) diff --git a/764/CH10/EX10.23.a/data10_23.sci b/764/CH10/EX10.23.a/data10_23.sci new file mode 100755 index 000000000..58e06330b --- /dev/null +++ b/764/CH10/EX10.23.a/data10_23.sci @@ -0,0 +1,14 @@ + +//(Springs) Example 10.23 +//Maximum force to be exerted against the retaining drum P (N) +P = 5 +//Distance between the line of action of the force and the spring C.G. r (mm) +r = 75 +//Modulus of elasticity of the spring E (N/mm2) +E = 106000 +//Maximum bending stress in the spring sigmab (N/mm2) +sigmab = 100 +//Width of the strip b (mm) +b = 12.5 +//Length of the strip l (mm) +l = 750 diff --git a/764/CH10/EX10.23.b/result10_23.txt b/764/CH10/EX10.23.b/result10_23.txt new file mode 100755 index 000000000..45f565040 --- /dev/null +++ b/764/CH10/EX10.23.b/result10_23.txt @@ -0,0 +1,49 @@ +-->//(Springs) Example 10.23
+
+-->//Maximum force to be exerted against the retaining drum P (N)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Distance between the line of action of the force and the spring C.G. r (mm)
+
+-->r = 75
+ r =
+
+ 75.
+
+-->//Modulus of elasticity of the spring E (N/mm2)
+
+-->E = 106000
+ E =
+
+ 106000.
+
+-->//Maximum bending stress in the spring sigmab (N/mm2)
+
+-->sigmab = 100
+ sigmab =
+
+ 100.
+
+-->//Width of the strip b (mm)
+
+-->b = 12.5
+ b =
+
+ 12.5
+
+-->//Length of the strip l (mm)
+
+-->l = 750
+ l =
+
+ 750.
+
+
+Thickness of the strip(t) = 1.897367 or 2.000000 mm
+
+Degrees of rotation(theta) = 18.242760
+
\ No newline at end of file diff --git a/764/CH10/EX10.23.b/solution10_23.sce b/764/CH10/EX10.23.b/solution10_23.sce new file mode 100755 index 000000000..6df74b92d --- /dev/null +++ b/764/CH10/EX10.23.b/solution10_23.sce @@ -0,0 +1,19 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_23.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_23.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the bending moment on the spring M (N-mm) +M = P * r +//Calculate the spring thickness t (mm) +t = sqrt((12 * M)/(sigmab * b)) +tround = ceil(t) +//Calculate the degrees of rotation theta (deg) +theta = (180/%pi) * ((12 * M * l)/(E * b * tround^3)) +//Print results +printf("\nThickness of the strip(t) = %f or %f mm\n",t,tround) +printf("\nDegrees of rotation(theta) = %f\n",theta) diff --git a/764/CH10/EX10.24.a/data10_24.sci b/764/CH10/EX10.24.a/data10_24.sci new file mode 100755 index 000000000..f5916268f --- /dev/null +++ b/764/CH10/EX10.24.a/data10_24.sci @@ -0,0 +1,17 @@ + +//(Springs) Example 10.24 +//Number of extra full length leaves nf +nf = 3 +//Number of graduated length leaves ng +ng = 15 +//Centre-to-centre distance between two eyes l (m) +l = 1 +L = l/2 +//Maximum force acting on each eye of the spring P (kN) +P = 75/2 +//Ratio of width to thickness of the spring r (mm) +r = 9 +//Modulus of elasticity E (N/mm2) +E = 207000 +//Stress induced in the leaves sigmab (N/mm2) +sigmab = 450 diff --git a/764/CH10/EX10.24.b/result10_24.txt b/764/CH10/EX10.24.b/result10_24.txt new file mode 100755 index 000000000..467be97a1 --- /dev/null +++ b/764/CH10/EX10.24.b/result10_24.txt @@ -0,0 +1,65 @@ +-->//(Springs) Example 10.24
+
+-->//Number of extra full length leaves nf
+
+-->nf = 3
+ nf =
+
+ 3.
+
+-->//Number of graduated length leaves ng
+
+-->ng = 15
+ ng =
+
+ 15.
+
+-->//Centre-to-centre distance between two eyes l (m)
+
+-->l = 1
+ l =
+
+ 1.
+
+-->L = l/2
+ L =
+
+ 0.5
+
+-->//Maximum force acting on each eye of the spring P (kN)
+
+-->P = 75/2
+ P =
+
+ 37.5
+
+-->//Ratio of width to thickness of the spring r (mm)
+
+-->r = 9
+ r =
+
+ 9.
+
+-->//Modulus of elasticity E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+-->//Stress induced in the leaves sigmab (N/mm2)
+
+-->sigmab = 450
+ sigmab =
+
+ 450.
+
+
+Thickness of the leaves(t) = 11.556021 or 12.000000 mm
+
+Width of the leaves(b) = 108.000000 mm
+
+Initial nip(C) = 13.482205 mm
+
+Initial pre-load(Pi) = 4807.692308 N
+
\ No newline at end of file diff --git a/764/CH10/EX10.24.b/solution10_24.sce b/764/CH10/EX10.24.b/solution10_24.sce new file mode 100755 index 000000000..2bb4b71c1 --- /dev/null +++ b/764/CH10/EX10.24.b/solution10_24.sce @@ -0,0 +1,23 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_24.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_24.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the thickness of the spring t (mm) +t = ((6 * P * 1000 * L * 1000)/(sigmab * (nf + ng) * r))^(1/3) +tround = ceil(t) +//Calculate the width of the leaves b (mm) +b = r * tround +//Calculate the initial nip C (mm) +C = (2 * P * 1000 * (L*1000)^3)/(E * (nf + ng) * b * tround^3) +//Calculate the initial pre-load Pi (N) +Pi = (2 * ng * nf * P * 1000)/((nf + ng) * (3*nf + 2*ng)) +//Print results +printf("\nThickness of the leaves(t) = %f or %f mm\n",t,tround) +printf("\nWidth of the leaves(b) = %f mm\n",b) +printf("\nInitial nip(C) = %f mm\n",C) +printf("\nInitial pre-load(Pi) = %f N\n",Pi) diff --git a/764/CH10/EX10.25.a/data10_25.sci b/764/CH10/EX10.25.a/data10_25.sci new file mode 100755 index 000000000..e339d3e7c --- /dev/null +++ b/764/CH10/EX10.25.a/data10_25.sci @@ -0,0 +1,19 @@ + +//(Springs) Example 10.25 +//Number of extra full length leaves nf +nf = 2 +//Number of graduated length leaves ng +ng = 10 +//Centre-to-centre distance between two eyes l (m) +l = 1.2 +L = l/2 +//Maximum force acting on each eye of the spring P (kN) +P = 30/2 +//Modulus of elasticity E (N/mm2) +E = 207000 +//Factor of safety fs +fs = 2.5 +//Tensile yield strength Syt (N/mm2) +Syt = 1500 +//Assume width b (mm) +b = 60 diff --git a/764/CH10/EX10.25.b/result10_25.txt b/764/CH10/EX10.25.b/result10_25.txt new file mode 100755 index 000000000..c3d6b78d0 --- /dev/null +++ b/764/CH10/EX10.25.b/result10_25.txt @@ -0,0 +1,68 @@ +-->//(Springs) Example 10.25
+
+-->//Number of extra full length leaves nf
+
+-->nf = 2
+ nf =
+
+ 2.
+
+-->//Number of graduated length leaves ng
+
+-->ng = 10
+ ng =
+
+ 10.
+
+-->//Centre-to-centre distance between two eyes l (m)
+
+-->l = 1.2
+ l =
+
+ 1.2
+
+-->L = l/2
+ L =
+
+ 0.6
+
+-->//Maximum force acting on each eye of the spring P (kN)
+
+-->P = 30/2
+ P =
+
+ 15.
+
+-->//Modulus of elasticity E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Tensile yield strength Syt (N/mm2)
+
+-->Syt = 1500
+ Syt =
+
+ 1500.
+
+-->//Assume width b (mm)
+
+-->b = 60
+ b =
+
+ 60.
+
+
+Cross-section of leaves = 60.000000 x 12.000000 mm
+
+Deflection of the spring end(delta) = 69.676700 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.25.b/solution10_25.sce b/764/CH10/EX10.25.b/solution10_25.sce new file mode 100755 index 000000000..577514046 --- /dev/null +++ b/764/CH10/EX10.25.b/solution10_25.sce @@ -0,0 +1,19 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_25.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_25.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculatet the maximum bending stress sigmab (N/mm2) +sigmab = Syt/fs +//Calculate the thickness of the spring t (mm) +t = ((6 * P * 1000 * L * 1000)/(sigmab * (nf + ng) * b))^(1/2) +tround = ceil(t) +//Calculate the spring deflection delta (mm) +delta = (12 * P * 1000 * (L*1000)^3)/(E * b * tround^3 * (3*nf + 2*ng)) +//Print results +printf("\nCross-section of leaves = %f x %f mm\n",b,tround) +printf("\nDeflection of the spring end(delta) = %f mm\n",delta) diff --git a/764/CH10/EX10.26.a/data10_26.sci b/764/CH10/EX10.26.a/data10_26.sci new file mode 100755 index 000000000..0cc132a90 --- /dev/null +++ b/764/CH10/EX10.26.a/data10_26.sci @@ -0,0 +1,14 @@ + +//(Springs) Example 10.26 +//Belleville spring is compressed completely flat when it is subjected to force P (N) +P = 4500 +//Maximum compressive stress sigma (N/m2) +sigma = 1375 * 10^6 +//Ratio of outer to inner diameter of the washer r1 +r1 = 1.75 +//Ratio of height to thickess of the washer r2 +r2 = 1.5 +//Modulus of elasticity E (N/mm2) +E = 207000 +//Poisson's ratio mu +mu = 0.3 diff --git a/764/CH10/EX10.26.b/result10_26.txt b/764/CH10/EX10.26.b/result10_26.txt new file mode 100755 index 000000000..cb847f357 --- /dev/null +++ b/764/CH10/EX10.26.b/result10_26.txt @@ -0,0 +1,53 @@ +-->//(Springs) Example 10.26
+
+-->//Belleville spring is compressed completely flat when it is subjected to force P (N)
+
+-->P = 4500
+ P =
+
+ 4500.
+
+-->//Maximum compressive stress sigma (N/m2)
+
+-->sigma = 1375 * 10^6
+ sigma =
+
+ 1.375D+09
+
+-->//Ratio of outer to inner diameter of the washer r1
+
+-->r1 = 1.75
+ r1 =
+
+ 1.75
+
+-->//Ratio of height to thickess of the washer r2
+
+-->r2 = 1.5
+ r2 =
+
+ 1.5
+
+-->//Modulus of elasticity E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+-->//Poisson's ratio mu
+
+-->mu = 0.3
+ mu =
+
+ 0.3
+
+
+Thickness of washer(t) = 2.652980 mm
+
+Free height of the washer(h) = 3.979470 mm
+
+Outer diameter of the washer(d0) = 154.818478 mm
+
+Inner diameter of the washer(di) = 88.467702 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.26.b/solution10_26.sce b/764/CH10/EX10.26.b/solution10_26.sce new file mode 100755 index 000000000..b87585f44 --- /dev/null +++ b/764/CH10/EX10.26.b/solution10_26.sce @@ -0,0 +1,30 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_26.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_26.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the values of M,C1 and C2 +M = (6/(%pi * log(r1)))*((r1 - 1)/r1)^2 +C1 = (6/(%pi * log(r1)))*(((r1 - 1)/log(r1)) - 1) +C2 = (6/(%pi * log(r1)))*(r1 - 1)/2 +//Assume thickness of the washer to be 1mm t +t = 1 +//Calculate the height of the washer h (mm) +h = r2 * t +//Calculate the actual thickness of the washer tact (mm) +tact = sqrt((P/sigma)*(C1 * (h/2) + C2))*1000 +//Caluclate the actual free height of the washer hact (mm) +hact = r2 * tact +//Calculate the outer diameter of the washer d0 (mm) +d0 = sqrt((4 * E * 10^6 * hact/1000 * (tact/1000)^3)/((1 - mu^2) * M * P))*1000 +//Calculate th inner diameter of the washer di (mm) +di = d0/r1 +//Print results +printf("\nThickness of washer(t) = %f mm\n",tact) +printf("\nFree height of the washer(h) = %f mm\n",hact) +printf("\nOuter diameter of the washer(d0) = %f mm\n",d0) +printf("\nInner diameter of the washer(di) = %f mm\n",di) diff --git a/764/CH10/EX10.3.a/data10_3.sci b/764/CH10/EX10.3.a/data10_3.sci new file mode 100755 index 000000000..1edbaa008 --- /dev/null +++ b/764/CH10/EX10.3.a/data10_3.sci @@ -0,0 +1,18 @@ +
+//(Springs) Example 10.3
+//Maximum force acting on the helical spring P (kN)
+P = 7.5
+//Mean coil diameter D (mm)
+D = 150
+//Spring rate k (N/mm)
+k = 75
+//Ultimate tensile strength of the spring material Sut (N/mm2)
+Sut = 1250
+//Rigidity modulus of the material G (N/mm2)
+G = 81370
+//Array of values C
+Cval = [5, 6, 7, 8, 7.5, 7.1, 7.2, 7.3]
+//Array of values K
+Kval = [1.311, 1.253, 1.213, 1,184, 1.197, 1.210, 1.206, 1.203]
+//Array of values K * (C^3)
+fact = [163.88, 270.65, 416.06, 606.21, 504.98, 433.07, 450.14, 467.99]
diff --git a/764/CH10/EX10.3.b/result10_3.txt b/764/CH10/EX10.3.b/result10_3.txt new file mode 100755 index 000000000..6d1f5258b --- /dev/null +++ b/764/CH10/EX10.3.b/result10_3.txt @@ -0,0 +1,63 @@ +-->//(Springs) Example 10.3
+
+-->//Maximum force acting on the helical spring P (kN)
+
+-->P = 7.5
+ P =
+
+ 7.5
+
+-->//Mean coil diameter D (mm)
+
+-->D = 150
+ D =
+
+ 150.
+
+-->//Spring rate k (N/mm)
+
+-->k = 75
+ k =
+
+ 75.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1250
+ Sut =
+
+ 1250.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//Array of values C
+
+-->Cval = [5, 6, 7, 8, 7.5, 7.1, 7.2, 7.3]
+ Cval =
+
+ 5. 6. 7. 8. 7.5 7.1 7.2 7.3
+
+-->//Array of values K
+
+-->Kval = [1.311, 1.253, 1.213, 1,184, 1.197, 1.210, 1.206, 1.203]
+ Kval =
+
+ 1.311 1.253 1.213 1. 184. 1.197 1.21 1.206 1.203
+
+-->//Array of values K * (C^3)
+
+-->fact = [163.88, 270.65, 416.06, 606.21, 504.98, 433.07, 450.14, 467.99]
+ fact =
+
+ 163.88 270.65 416.06 606.21 504.98 433.07 450.14 467.99
+
+
+Wire diameter(d) = 20.833333 or 21.000000 mm
+
+Number of active coils(N) = 7.814775 or 8.000000
+
\ No newline at end of file diff --git a/764/CH10/EX10.3.b/solution10_3.sce b/764/CH10/EX10.3.b/solution10_3.sce new file mode 100755 index 000000000..ae81322b8 --- /dev/null +++ b/764/CH10/EX10.3.b/solution10_3.sce @@ -0,0 +1,28 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution10_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data10_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible shear stress for the spring tau (N/mm2)
+tau = (30/100)*Sut
+//Calculate the factor K * (C^3) fac
+fac = (%pi * (D^2) * tau)/(8 * P * 1000)
+//Get appropriate values of C and K
+for i = 1:1:length(fact)-1
+ if (fac > fact(1, i) & fac < fact(1, (i+1))) then
+ C = Cval(1, (i+1))
+ K = Kval(1, (i+1))
+ end
+end
+//Calculate the wire diameter d (mm)
+d = D/C
+dround = ceil(d)
+//Calculate the number of active coils N
+N = (G * (dround^4))/(8 * (D^3) * k)
+//Print results
+printf("\nWire diameter(d) = %f or %f mm\n",d,dround)
+printf("\nNumber of active coils(N) = %f or %f\n",N,ceil(N))
diff --git a/764/CH10/EX10.4.a/data10_4.sci b/764/CH10/EX10.4.a/data10_4.sci new file mode 100755 index 000000000..a506c0f75 --- /dev/null +++ b/764/CH10/EX10.4.a/data10_4.sci @@ -0,0 +1,26 @@ + +//(Springs) Example 10.4 +//Refer Fig.10.17 on page 410 +//Axial force on the spring when the valve is open Pmax (N) +Pmax = 300 +//Axial force on the spring when the valve is closed Pmin (N) +Pmin = 150 +//Length of the spring when the valve is open lmax (mm) +lmax = 30 +//Length of the spring when the valve is closed lmin (mm) +lmin = 35 +//Ultimate tensile strength of the spring material Sut (N/mm2) +Sut = 1370 +//Rigidity modulus of the material G (N/mm2) +G = 81370 +//Minimum inside diameter of the spring Di (mm) +Di = 20 +//Array of values dia +dia = [5, 4, 3] +//Wahl factor K +K = 1 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 diff --git a/764/CH10/EX10.4.b/result10_4.txt b/764/CH10/EX10.4.b/result10_4.txt new file mode 100755 index 000000000..ff1cfb281 --- /dev/null +++ b/764/CH10/EX10.4.b/result10_4.txt @@ -0,0 +1,92 @@ +-->//(Springs) Example 10.4
+
+-->//Refer Fig.10.17 on page 410
+
+-->//Axial force on the spring when the valve is open Pmax (N)
+
+-->Pmax = 300
+ Pmax =
+
+ 300.
+
+-->//Axial force on the spring when the valve is closed Pmin (N)
+
+-->Pmin = 150
+ Pmin =
+
+ 150.
+
+-->//Length of the spring when the valve is open lmax (mm)
+
+-->lmax = 30
+ lmax =
+
+ 30.
+
+-->//Length of the spring when the valve is closed lmin (mm)
+
+-->lmin = 35
+ lmin =
+
+ 35.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1370
+ Sut =
+
+ 1370.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//Minimum inside diameter of the spring Di (mm)
+
+-->Di = 20
+ Di =
+
+ 20.
+
+-->//Array of values dia
+
+-->dia = [5, 4, 3]
+ dia =
+
+ 5. 4. 3.
+
+-->//Wahl factor K
+
+-->K = 1
+ K =
+
+ 1.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+Design is safe
+Wire diameter(d) = 4.000000 mm
+
+Mean coil diameter(D) = 24.000000 mm
+
+Number of active coils(N) = 6.278549 or 7
+
+Total number of coils(Nt) = 9
+
+Free length of the spring(len) = 48.821433 or 49.000000 mm
+
+Pitch of the coil(p) = 6.125000 mm
\ No newline at end of file diff --git a/764/CH10/EX10.4.b/solution10_4.sce b/764/CH10/EX10.4.b/solution10_4.sce new file mode 100755 index 000000000..11cb8f1bb --- /dev/null +++ b/764/CH10/EX10.4.b/solution10_4.sce @@ -0,0 +1,61 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_4.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_4.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_4.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) + +//Calculate the permissible shear stress for the spring tau (N/mm2) +tau = (30/100)*Sut +//Calculate the factor ((d^3)/(Di + d)) fac +fac = (K * 8 * Pmax)/(%pi * tau) +//Calculate array of values ((d^3)/(Di + d)) +for i = 1:1:length(dia) + fact(1, i) = ((dia(1, i)^3)/(Di + dia(1, i))) +end +for i = 1:1:length(dia)-1 + if(fac < fact(1, i) & fac > fact(1, (i+1))) + d = dia(1, i) + end +end +//Calculate the mean coil diameter D (mm) +D = Di + d +//Calculate the spring index C +C = D/d +//Calculate the correct Wahl factor Knew +Knew = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Calculate the shear stress tauNew (N/mm2) +tauNew = Knew*((8 * Pmax * D)/(%pi * (d^3))) +if (tauNew < tau) then + printf ("Design is safe") +else + printf("Design is unsafe.Further results are erroneous") +end +//Calculate the number of active coils N +N = ((lmin - lmax)*(G * (d^4)))/(8 * (Pmax - Pmin) * (D^3)) +Nceil = ceil(N) +//Calculate the total number of coils Nt +Nt = active_coils(endtype, Nceil) +//Calculate the true deflection delta (mm) +delta = (8 * Pmax * (D^3) * Nceil)/(G * (d^4)) +//Calculate the total gap between the adjacent coils g (mm) +g = (15/100)*delta +//Calculate the solid length of the spring s (mm) +s = Nt * d +//Calculate the free length of the spring len (mm) +len = s + g + delta +//Calculate the pitch of the coils p (mm) +p = ceil(len)/(Nt - 1) +//Print results +printf("\nWire diameter(d) = %f mm\n",d) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nNumber of active coils(N) = %f or %d\n",N, Nceil) +printf("\nTotal number of coils(Nt) = %d\n",Nt) +printf("\nFree length of the spring(len) = %f or %f mm\n",len,ceil(len)) +printf("\nPitch of the coil(p) = %f mm\n",p) diff --git a/764/CH10/EX10.4.c/functions10_4.sci b/764/CH10/EX10.4.c/functions10_4.sci new file mode 100755 index 000000000..44556f6ec --- /dev/null +++ b/764/CH10/EX10.4.c/functions10_4.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) then + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.5.a/data10_5.sci b/764/CH10/EX10.5.a/data10_5.sci new file mode 100755 index 000000000..6c2e2c548 --- /dev/null +++ b/764/CH10/EX10.5.a/data10_5.sci @@ -0,0 +1,13 @@ + +//(Springs) Example 10.5 +//Refer Fig.10.18 on page 411 +//Maximum weight attached to the spring balance P (N) +P = 1500 +//Length of the scale delta (mm) +delta = 100 +//Spring index C +C = 6 +//Ultimate tensile strength of the spring material Sut (N/mm2) +Sut = 1360 +//Rigidity modulus of the material G (N/mm2) +G = 81370 diff --git a/764/CH10/EX10.5.b/result10_5.txt b/764/CH10/EX10.5.b/result10_5.txt new file mode 100755 index 000000000..494a00088 --- /dev/null +++ b/764/CH10/EX10.5.b/result10_5.txt @@ -0,0 +1,50 @@ +-->//(Springs) Example 10.5
+
+-->//Refer Fig.10.18 on page 411
+
+-->//Maximum weight attached to the spring balance P (N)
+
+-->P = 1500
+ P =
+
+ 1500.
+
+-->//Length of the scale delta (mm)
+
+-->delta = 100
+ delta =
+
+ 100.
+
+-->//Spring index C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1360
+ Sut =
+
+ 1360.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+
+Wire diameter(d) = 6.497192 or 7.000000 mm
+
+Mean coil diameter(D) = 42.000000 mm
+
+Number of active coils(N) = 21.974923 or 22
+
+Required spring rate(k) = 15.000000 N/mm
+
+Actual spring rate(kact) = 14.982902 N/mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.5.b/solution10_5.sce b/764/CH10/EX10.5.b/solution10_5.sce new file mode 100755 index 000000000..9120d2444 --- /dev/null +++ b/764/CH10/EX10.5.b/solution10_5.sce @@ -0,0 +1,32 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_5.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_5.sci' +//Clear all +clc +//Execute the data file +exec(datapath) + +//Calculate the permissible shear stress for the spring tau (N/mm2) +tau = (50/100)*Sut +//Calculate the Wahl factor K +K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Calculate the wire diameter d (mm) +d = sqrt((K * 8 * P * C)/(%pi * tau)) +dround = ceil(d) +//Calculate the mean coil diameter D (mm) +D = C * dround +//Calculate the number of active coils N +N = (delta * G * (dround^4))/(8 * P * (D^3)) +Nceil = ceil(N) +//Calculate the required spring rate k (N/mm) +k = P/delta +//Calculate the actual spring rate kact (N/mm) +kact = (G * (dround^4))/(8 * (D^3) * Nceil) +//Print results +printf("\nWire diameter(d) = %f or %f mm\n",d, dround) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nNumber of active coils(N) = %f or %d\n",N, Nceil) +printf("\nRequired spring rate(k) = %f N/mm\n",k) +printf("\nActual spring rate(kact) = %f N/mm\n",kact) diff --git a/764/CH10/EX10.6.a/data10_6.sci b/764/CH10/EX10.6.a/data10_6.sci new file mode 100755 index 000000000..589d26666 --- /dev/null +++ b/764/CH10/EX10.6.a/data10_6.sci @@ -0,0 +1,23 @@ + +//(Springs) Example 10.6 +//Velocity of the railway wagon v (m/s) +v = 1.5 +//Mass of the wagon m (kg) +m = 1500 +//Spring compression delta (mm) +delta = 150 +//Spring index C +C = 6 +//Ultimate tensile strength of the spring material Sut (N/mm2) +Sut = 1250 +//Rigidity modulus of the material G (N/mm2) +G = 81370 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Number of springs n +n = 2 +//Gap between adjacent coils g (mm) +g = 2 diff --git a/764/CH10/EX10.6.b/result10_6.txt b/764/CH10/EX10.6.b/result10_6.txt new file mode 100755 index 000000000..44b2c8cfe --- /dev/null +++ b/764/CH10/EX10.6.b/result10_6.txt @@ -0,0 +1,88 @@ +-->//(Springs) Example 10.6
+
+-->//Velocity of the railway wagon v (m/s)
+
+-->v = 1.5
+ v =
+
+ 1.5
+
+-->//Mass of the wagon m (kg)
+
+-->m = 1500
+ m =
+
+ 1500.
+
+-->//Spring compression delta (mm)
+
+-->delta = 150
+ delta =
+
+ 150.
+
+-->//Spring index C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1250
+ Sut =
+
+ 1250.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Number of springs n
+
+-->n = 2
+ n =
+
+ 2.
+
+-->//Gap between adjacent coils g (mm)
+
+-->g = 2
+ g =
+
+ 2.
+
+
+Wire diameter(d) = 18.559694 or 20.000000 mm
+
+Mean coil diameter(D) = 120.000000 mm
+
+Number of active coils(N) = 12.557099 or 13
+
+Total number of coils(Nt) = 15
+
+Free length of the spring(len) = 483.290648 or 484.000000 mm
+
+Pitch of the coil(p) = 34.571429 mm
+
+Required spring rate(k) = 75.000000 N/mm
+
+Actual spring rate(kact) = 72.444801 N/mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.6.b/solution10_6.sce b/764/CH10/EX10.6.b/solution10_6.sce new file mode 100755 index 000000000..00ca675a7 --- /dev/null +++ b/764/CH10/EX10.6.b/solution10_6.sce @@ -0,0 +1,62 @@ +//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution10_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data10_6.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions10_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Calculate the kinetic energy absorbed by the spring KE (N-mm)
+KE = 0.5 * m * ((v)^2) * 1000
+//Calculate the maximum force acting on each spring P (N)
+P = KE/(n * 0.5 * delta)
+//Calculate the permissible shear stress for the spring tau (N/mm2)
+tau = (50/100)*Sut
+//Calculate the Wahl factor K
+K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C)
+//Calculate the wire diameter d (mm)
+d = sqrt((K * 8 * P * C)/(%pi * tau))
+dround = round_five(d)
+//Calculate the mean coil diameter D (mm)
+D = C * dround
+//Calculate the number of active coils N
+N = (delta * G * (dround^4))/(8 * P * (D^3))
+Nceil = ceil(N)
+//Calculate the total number of coils Nt
+Nt = active_coils(endtype, Nceil)
+//Calculate the true deflection delta (mm)
+deltaN = (8 * P * (D^3) * Nceil)/(G * (dround^4))
+//Calculate the total gap between the adjacent coils gt (mm)
+gt = (Nt - 1)*g
+//Calculate the solid length of the spring s (mm)
+s = Nt * dround
+//Calculate the free length of the spring len (mm)
+len = s + gt + deltaN
+//Calculate the pitch of the coils p (mm)
+p = ceil(len)/(Nt - 1)
+//Calculate the required spring rate k (N/mm)
+k = P/delta
+//Calculate the actual spring rate kact (N/mm)
+kact = (G * (dround^4))/(8 * (D^3) * Nceil)
+printf("\nWire diameter(d) = %f or %f mm\n",d,dround)
+printf("\nMean coil diameter(D) = %f mm\n",D)
+printf("\nNumber of active coils(N) = %f or %d\n",N, Nceil)
+printf("\nTotal number of coils(Nt) = %d\n",Nt)
+printf("\nFree length of the spring(len) = %f or %f mm\n",len,ceil(len))
+printf("\nPitch of the coil(p) = %f mm\n",p)
+printf("\nRequired spring rate(k) = %f N/mm\n",k)
+printf("\nActual spring rate(kact) = %f N/mm\n",kact)
\ No newline at end of file diff --git a/764/CH10/EX10.6.c/functions10_6.sci b/764/CH10/EX10.6.c/functions10_6.sci new file mode 100755 index 000000000..44556f6ec --- /dev/null +++ b/764/CH10/EX10.6.c/functions10_6.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) then + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.7.a/data10_7.sci b/764/CH10/EX10.7.a/data10_7.sci new file mode 100755 index 000000000..8555f9c38 --- /dev/null +++ b/764/CH10/EX10.7.a/data10_7.sci @@ -0,0 +1,22 @@ + +//(Springs) Example 10.7 +//Refer Fig.10.19 on page 413 +//Number of helical springs n +n = 8 +//Total spring force exerted by all the springs P (N) +P = 2400 +//Deflection of each spring delta (mm) +delta = 15 +//Spring index C +C = 8 +//Ultimate tensile strength of the spring material Sut (N/mm2) +Sut = 1390 +//Rigidity modulus of the material G (N/mm2) +G = 81370 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Gap between adjacent coils g (mm) +g = 1 diff --git a/764/CH10/EX10.7.b/result10_7.txt b/764/CH10/EX10.7.b/result10_7.txt new file mode 100755 index 000000000..11a7fd34a --- /dev/null +++ b/764/CH10/EX10.7.b/result10_7.txt @@ -0,0 +1,83 @@ +-->//(Springs) Example 10.7
+
+-->//Refer Fig.10.19 on page 413
+
+-->//Number of helical springs n
+
+-->n = 8
+ n =
+
+ 8.
+
+-->//Total spring force exerted by all the springs P (N)
+
+-->P = 2400
+ P =
+
+ 2400.
+
+-->//Deflection of each spring delta (mm)
+
+-->delta = 15
+ delta =
+
+ 15.
+
+-->//Spring index C
+
+-->C = 8
+ C =
+
+ 8.
+
+-->//Ultimate tensile strength of the spring material Sut (N/mm2)
+
+-->Sut = 1390
+ Sut =
+
+ 1390.
+
+-->//Rigidity modulus of the material G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Gap between adjacent coils g (mm)
+
+-->g = 1
+ g =
+
+ 1.
+
+
+Wire diameter(d) = 4.165688 or 5.000000 mm
+
+Mean coil diameter(D) = 40.000000 mm
+
+Number of active coils(N) = 4.966431 or 5
+
+Total number of coils(Nt) = 7
+
+Free length of the spring(len) = 56.101389 or 57.000000 mm
+
+Pitch of the coil(p) = 9.500000 mm
+
+Required spring rate(k) = 20.000000 N/mm
+
+Actual spring rate(kact) = 19.865723 N/mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.7.b/solution10_7.sce b/764/CH10/EX10.7.b/solution10_7.sce new file mode 100755 index 000000000..4f15cf4ee --- /dev/null +++ b/764/CH10/EX10.7.b/solution10_7.sce @@ -0,0 +1,50 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_7.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_7.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_7.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the force acting on each spring Pi (N) +Pi = P/n +//Calculate the permissible shear stress for the spring tau (N/mm2) +tau = (30/100)*Sut +//Calculate the Wahl factor K +K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Calculate the wire diameter d (mm) +d = sqrt((K * 8 * Pi * C)/(%pi * tau)) +dround = ceil(d) +//Calculate the mean coil diameter D (mm) +D = C * dround +//Calculate the number of active coils N +N = (delta * G * (dround^4))/(8 * Pi * (D^3)) +Nceil = ceil(N) +//Calculate the total number of coils Nt +Nt = active_coils(endtype, Nceil) +//Calculate the true deflection delta (mm) +deltaN = (8 * Pi * (D^3) * Nceil)/(G * (dround^4)) +//Calculate the total gap between the adjacent coils gt (mm) +gt = (Nt - 1)*g +//Calculate the solid length of the spring s (mm) +s = Nt * dround +//Calculate the free length of the spring len (mm) +len = s + gt + deltaN +//Calculate the pitch of the coils p (mm) +p = ceil(len)/(Nt - 1) +//Calculate the required spring rate k (N/mm) +k = Pi/delta +//Calculate the actual spring rate kact (N/mm) +kact = (G * (dround^4))/(8 * (D^3) * Nceil) +printf("\nWire diameter(d) = %f or %f mm\n",d,dround) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nNumber of active coils(N) = %f or %d\n",N, Nceil) +printf("\nTotal number of coils(Nt) = %d\n",Nt) +printf("\nFree length of the spring(len) = %f or %f mm\n",len,ceil(len)) +printf("\nPitch of the coil(p) = %f mm\n",p) +printf("\nRequired spring rate(k) = %f N/mm\n",k) +printf("\nActual spring rate(kact) = %f N/mm\n",kact)
\ No newline at end of file diff --git a/764/CH10/EX10.7.c/functions10_7.sci b/764/CH10/EX10.7.c/functions10_7.sci new file mode 100755 index 000000000..44556f6ec --- /dev/null +++ b/764/CH10/EX10.7.c/functions10_7.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) then + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH10/EX10.8.a/data10_8.sci b/764/CH10/EX10.8.a/data10_8.sci new file mode 100755 index 000000000..19ed73e8a --- /dev/null +++ b/764/CH10/EX10.8.a/data10_8.sci @@ -0,0 +1,23 @@ + +//(Springs) Example 10.8 +//Refer Fig.10.20 on page 414 +//Diameter of the valve dia (mm) +dia = 50 +//Pressure inside the chamber when the valve is closed Pc (N/mm2) +Pc = 0.5 +//Pressure inside the chamber when the valve just opens Po (N/mm2) +Po = 0.6 +//Maximum lift of the valve l (mm) +l = 5 +//Spring index C +C = 8 +//Ultimate tensile strength of the spring Sut (N/mm2) +Sut = 1200 +//Modulus of rigidity G (N/mm2) +G = 81370 +//Distance of the valve from the pivot dist_v (mm) +dist_v = 75 +//Distance of the spring from the pivot dist_s (mm) +dist_s = 150 +//The permissible shear stress for the spring wire is r% of the ultimate tensile strength +r = 30 diff --git a/764/CH10/EX10.8.b/result10_8.txt b/764/CH10/EX10.8.b/result10_8.txt new file mode 100755 index 000000000..ccb256ce6 --- /dev/null +++ b/764/CH10/EX10.8.b/result10_8.txt @@ -0,0 +1,81 @@ +-->//(Springs) Example 10.8
+
+-->//Refer Fig.10.20 on page 414
+
+-->//Diameter of the valve dia (mm)
+
+-->dia = 50
+ dia =
+
+ 50.
+
+-->//Pressure inside the chamber when the valve is closed Pc (N/mm2)
+
+-->Pc = 0.5
+ Pc =
+
+ 0.5
+
+-->//Pressure inside the chamber when the valve just opens Po (N/mm2)
+
+-->Po = 0.6
+ Po =
+
+ 0.6
+
+-->//Maximum lift of the valve l (mm)
+
+-->l = 5
+ l =
+
+ 5.
+
+-->//Spring index C
+
+-->C = 8
+ C =
+
+ 8.
+
+-->//Ultimate tensile strength of the spring Sut (N/mm2)
+
+-->Sut = 1200
+ Sut =
+
+ 1200.
+
+-->//Modulus of rigidity G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//Distance of the valve from the pivot dist_v (mm)
+
+-->dist_v = 75
+ dist_v =
+
+ 75.
+
+-->//Distance of the spring from the pivot dist_s (mm)
+
+-->dist_s = 150
+ dist_s =
+
+ 150.
+
+-->//The permissible shear stress for the spring wire is r% of the ultimate tensile strength
+
+-->r = 30
+ r =
+
+ 30.
+
+
+Wire diameter(d) = 6.282298 or 7.000000 mm
+
+Mean coil diameter(D) = 56.000000 mm
+
+Number of active coils(N) = 14.164541 or 15.000000
+
\ No newline at end of file diff --git a/764/CH10/EX10.8.b/solution10_8.sce b/764/CH10/EX10.8.b/solution10_8.sce new file mode 100755 index 000000000..2b0d4d1ca --- /dev/null +++ b/764/CH10/EX10.8.b/solution10_8.sce @@ -0,0 +1,43 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution10_8.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_8.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the force on the valve when it is closed Pvc (N) +Pvc = (%pi/4)*(dia^2)*(Pc) +//Calculate the force on the spring when the valve is closed Psc (N) +Psc = (Pvc * dist_v)/(dist_s) +//Calculate the force on the valve when it is open Pvo (N) +Pvo = (%pi/4)*(dia^2)*(Po) +//Calculate the force on the spring when the valve is open Pso (N) +Pso = (Pvo * dist_v)/(dist_s) +//Calculate the spring extension delta (mm) +delta = (l * dist_s)/dist_v +//Calculate the spring stiffness k (N/mm) +k = (Pso - Psc)/delta +//Calculate the permissible shear stress for the spring wire tau (N/mm2) +tau = (r/100)*Sut +//Calculate the Wahl Factor K +K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Determine maximum spring force P (N) +if (Psc > Pso) then + P = Psc +else + P = Pso +end +//Calculate the spring wire diameter d (mm) +d = sqrt(K * ((8 * P * C)/(%pi * tau))) +dround = ceil(d) +//Calculate the mean coil diameter D (mm) +D = C * dround +//Calculate the number of active coils N +N = (G * (dround^4))/(8 * (D^3) * k) +Nround = ceil(N) +//Print results +printf("\nWire diameter(d) = %f or %f mm\n", d, dround) +printf("\nMean coil diameter(D) = %f mm\n", D) +printf("\nNumber of active coils(N) = %f or %f\n", N, Nround) diff --git a/764/CH10/EX10.9.a/data10_9.sci b/764/CH10/EX10.9.a/data10_9.sci new file mode 100755 index 000000000..68bd80f73 --- /dev/null +++ b/764/CH10/EX10.9.a/data10_9.sci @@ -0,0 +1,25 @@ + +//(Springs) Example 10.9 +//Diameter of the safety valve dia (mm) +dia = 50 +//Blow off pressure of the valve Pb (MPa) +Pb = 1.5 +//Initial compression of the spring delta1 (mm) +delta1 = 25 +//Maximum lift of the valve l (mm) +l = 10 +//Spring index C +C = 6 +//Ultimate tensile strength of the spring Sut (N/mm2) +Sut = 1500 +//For plain ends, endtype = 1 +//For plain ends(ground), endtype = 2 +//For square ends, endtype = 3 +//For square ends(ground), endtype = 4 +endtype = 4 +//Modulus of rigidity of the spring G (N/mm2) +G = 81370 +//The permissible shear stress for the spring wire is r% of the Sut +r = 30 +//Gap between adjacent turns of the spring g (mm) +g = 2 diff --git a/764/CH10/EX10.9.b/result10_9.txt b/764/CH10/EX10.9.b/result10_9.txt new file mode 100755 index 000000000..ea601b774 --- /dev/null +++ b/764/CH10/EX10.9.b/result10_9.txt @@ -0,0 +1,93 @@ +-->//(Springs) Example 10.9
+
+-->//Diameter of the safety valve dia (mm)
+
+-->dia = 50
+ dia =
+
+ 50.
+
+-->//Blow off pressure of the valve Pb (MPa)
+
+-->Pb = 1.5
+ Pb =
+
+ 1.5
+
+-->//Initial compression of the spring delta1 (mm)
+
+-->delta1 = 25
+ delta1 =
+
+ 25.
+
+-->//Maximum lift of the valve l (mm)
+
+-->l = 10
+ l =
+
+ 10.
+
+-->//Spring index C
+
+-->C = 6
+ C =
+
+ 6.
+
+-->//Ultimate tensile strength of the spring Sut (N/mm2)
+
+-->Sut = 1500
+ Sut =
+
+ 1500.
+
+-->//For plain ends, endtype = 1
+
+-->//For plain ends(ground), endtype = 2
+
+-->//For square ends, endtype = 3
+
+-->//For square ends(ground), endtype = 4
+
+-->endtype = 4
+ endtype =
+
+ 4.
+
+-->//Modulus of rigidity of the spring G (N/mm2)
+
+-->G = 81370
+ G =
+
+ 81370.
+
+-->//The permissible shear stress for the spring wire is r% of the Sut
+
+-->r = 30
+ r =
+
+ 30.
+
+-->//Gap between adjacent turns of the spring g (mm)
+
+-->g = 2
+ g =
+
+ 2.
+
+
+Wire diameter(d) = 13.241979 or 14.000000 mm
+
+Mean coil diameter(D) = 84.000000 mm
+
+Number of active coils(N) = 5.595868 or 6
+
+Total number of coils(Nt) = 8
+
+Solid length of the spring(s) = 112.000000 mm
+
+Free length of the spring(len) = 163.527689 or 165.000000 mm
+
+Pitch of the coil(p) = 23.571429 mm
+
\ No newline at end of file diff --git a/764/CH10/EX10.9.b/solution10_9.sce b/764/CH10/EX10.9.b/solution10_9.sce new file mode 100755 index 000000000..5b03a3b41 --- /dev/null +++ b/764/CH10/EX10.9.b/solution10_9.sce @@ -0,0 +1,63 @@ +//Function to round-up a value such that it is divisible by 5 +function[v] = round_five(w) + v = ceil(w) + rem = pmodulo(v,5) + if (rem ~= 0) then + v = v + (5 - rem) + end +endfunction + +//Obtain path of solution file +path = get_absolute_file_path('solution10_9.sce') +//Obtain path of data file +datapath = path + filesep() + 'data10_9.sci' +//Obtain path of function file +funcpath = path + filesep() + 'functions10_9.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +exec(funcpath,[-1]) +//Calculate the initial force in the spring P1 (N) +P1 = (%pi/4)*(dia^2)*(Pb) +//Calculate the deflection of the spring when the valve is open delta2 (mm) +delta2 = delta1 + l +//Calculate the force in the spring when the valve is open P2 (N) +P2 = (delta2/delta1)*P1 +//Determine the maximum force in the spring P (N) +if (P2 > P1) then + P = P2 +else + P = P1 +end +//Calculate the permissible shear stress in the spring tau (N/mm2) +tau = (r/100)*Sut +//Calculate the Wahl Factor K +K = (((4 * C) - 1)/((4 * C) - 4)) + (0.615/C) +//Calculate the wire diameter d (mm) +d = sqrt(K * ((8 * P * C)/(%pi * tau))) +dround = ceil(d) +//Calculate the mean coil diameter D (mm) +D = C * dround +//Calculate the number of active turns N +N = (delta1 * G * (dround^4))/(8 * P1 * (D^3)) +Nround = ceil(N) +//Calculate the total number of turns +Nt = active_coils(endtype, Nround) +//Calculate the solid length of the spring s (mm) +s = Nt * dround +//Calculate the maximum deflection of the spring deltamax (mm) +deltamax = (8 * P * (D^3) * Nround)/(G * (dround^4)) +//Calculate the free length of the spring len (mm) +len = s + ((Nt - 1)*g) + deltamax +lround = round_five(len) +//Calculate the pitch of the coils p (mm) +p = lround/(Nt - 1) +//Print results +printf("\nWire diameter(d) = %f or %f mm\n",d,dround) +printf("\nMean coil diameter(D) = %f mm\n",D) +printf("\nNumber of active coils(N) = %f or %d\n",N, Nround) +printf("\nTotal number of coils(Nt) = %d\n",Nt) +printf("\nSolid length of the spring(s) = %f mm\n",s) +printf("\nFree length of the spring(len) = %f or %f mm\n",len,lround) +printf("\nPitch of the coil(p) = %f mm\n",p) diff --git a/764/CH10/EX10.9.c/functions10_9.sci b/764/CH10/EX10.9.c/functions10_9.sci new file mode 100755 index 000000000..44556f6ec --- /dev/null +++ b/764/CH10/EX10.9.c/functions10_9.sci @@ -0,0 +1,17 @@ + +//Function for calculating the number of active coils in a spring +function[Nt] = active_coils(endtype, coil) + //For plain ends, endtype = 1 + //For plain ends(ground), endtype = 2 + //For square ends, endtype = 3 + //For square ends(ground), endtype = 4 + if (endtype == 1) then + Nt = coil + elseif (endtype == 2) + Nt = coil + 0.5 + elseif (endtype == 3) + Nt = coil + 2 + elseif (endtype == 4) + Nt = coil + 2 + end +endfunction diff --git a/764/CH11/EX11.1.a/data11_1.sci b/764/CH11/EX11.1.a/data11_1.sci new file mode 100755 index 000000000..0e79ff175 --- /dev/null +++ b/764/CH11/EX11.1.a/data11_1.sci @@ -0,0 +1,12 @@ +
+//(Friction Clutches)Example 11.1
+//Inner diameter of the friction disk d (mm)
+d = 100
+//Outer diameter of the friction disk D (mm)
+D = 200
+//Coefficient of friction between the two contacting surfaces mu
+mu = 0.2
+//Permissible intensity of pressure Pa (MPa)
+Pa = 1
+//Number of revolutions of the friction disk per minute n (rpm)
+n = 750
\ No newline at end of file diff --git a/764/CH11/EX11.1.b/result11_1.txt b/764/CH11/EX11.1.b/result11_1.txt new file mode 100755 index 000000000..c4f135db7 --- /dev/null +++ b/764/CH11/EX11.1.b/result11_1.txt @@ -0,0 +1,48 @@ +-->//(Friction Clutches)Example 11.1
+
+-->//Inner diameter of the friction disk d (mm)
+
+-->d = 100
+ d =
+
+ 100.
+
+-->//Outer diameter of the friction disk D (mm)
+
+-->D = 200
+ D =
+
+ 200.
+
+-->//Coefficient of friction between the two contacting surfaces mu
+
+-->mu = 0.2
+ mu =
+
+ 0.2
+
+-->//Permissible intensity of pressure Pa (MPa)
+
+-->Pa = 1
+ Pa =
+
+ 1.
+
+-->//Number of revolutions of the friction disk per minute n (rpm)
+
+-->n = 750
+ n =
+
+ 750.
+
+
+Applying uniform-wear criterion
+
+Results
+
+Total operating force (P) = 15707.963268 N
+
+Torque transmitting capacity by friction(Mf) = 235619.449019 N-mm
+
+Power transmitting capacity of the clutch = 18.505508 kW
+
\ No newline at end of file diff --git a/764/CH11/EX11.1.b/solution11_1.sce b/764/CH11/EX11.1.b/solution11_1.sce new file mode 100755 index 000000000..f2639bbfe --- /dev/null +++ b/764/CH11/EX11.1.b/solution11_1.sce @@ -0,0 +1,20 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_1.sce')
+//Obtain path of data file
+datapath = path + filesep()+'data11_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nApplying uniform-wear criterion\n')
+//Evaluate total operating force P (N)
+P = ((%pi * Pa * d)*(D - d))/2
+//Evaluate torque transmitting capacity Mt (N-mm)
+Mt = ((mu * P)*(D + d))/4
+//Evaluate power transmitting capacity kW
+kW = (2 * %pi * n * Mt)/(60 * (10^6))
+printf('\nResults\n')
+printf('\nTotal operating force (P) = %f N\n',P)
+printf('\nTorque transmitting capacity by friction(Mf) = %f N-mm\n',Mt)
+printf('\nPower transmitting capacity of the clutch = %f kW\n',kW)
diff --git a/764/CH11/EX11.10.a/data11_10.sci b/764/CH11/EX11.10.a/data11_10.sci new file mode 100755 index 000000000..37c5b05dd --- /dev/null +++ b/764/CH11/EX11.10.a/data11_10.sci @@ -0,0 +1,15 @@ +
+//(Friction Clutches) Example 11.10
+//Total power transmitted by the cone clutch kW
+kW = 30
+//Number of revolutions of the cone clutch per minute (n) rpm
+n = 500
+//Coefficient of friction for asbestos friction lining mu
+mu = 0.2
+//Permissible intensity of pressure Pa (MPa)
+Pa = 0.35
+//Semi-cone angle of the cone clutch alpha (degree)
+alpha = 12.5
+//Outer diameter of the cone clutch due to space limitations D (mm)
+D = 300
+
\ No newline at end of file diff --git a/764/CH11/EX11.10.b/result11_10.txt b/764/CH11/EX11.10.b/result11_10.txt new file mode 100755 index 000000000..c83ae17ad --- /dev/null +++ b/764/CH11/EX11.10.b/result11_10.txt @@ -0,0 +1,70 @@ +-->//(Friction Clutches) Example 11.10
+
+-->//Total power transmitted by the cone clutch kW
+
+-->kW = 30
+ kW =
+
+ 30.
+
+-->//Number of revolutions of the cone clutch per minute (n) rpm
+
+-->n = 500
+ n =
+
+ 500.
+
+-->//Coefficient of friction for asbestos friction lining mu
+
+-->mu = 0.2
+ mu =
+
+ 0.2
+
+-->//Permissible intensity of pressure Pa (MPa)
+
+-->Pa = 0.35
+ Pa =
+
+ 0.35
+
+-->//Semi-cone angle of the cone clutch alpha (degree)
+
+-->alpha = 12.5
+ alpha =
+
+ 12.5
+
+-->//Outer diameter of the cone clutch due to space limitations D (mm)
+
+-->D = 300
+ D =
+
+ 300.
+
+
+
+Applying uniform-wear theory
+
+Inner diameter of the friction disk is d (mm)
+
+Using the torque transmitting capacity formula for cone clutch:
+
+Mf = (pi * mu * Pa * d)*((D^2)-(d^2)))/(8 * sina)
+we get the following cubic equation in d
+
+(d^3) + (-90000.000000d) + (4511297.390667)= 0
+
+x,y and z are the three real roots of this cubic equation
+x = 270.817104
+y = 51.657138
+z = -322.474241
+
+Results
+
+Inner diameter of the friction disk(d) = 270.000000 mm
+
+Face width of friction lining(b) = 69.303395 mm
+
+Force required to engage the clutch(P) = 4351.254877 N
+
\ No newline at end of file diff --git a/764/CH11/EX11.10.b/solution11_10.sce b/764/CH11/EX11.10.b/solution11_10.sce new file mode 100755 index 000000000..dad7fd9c3 --- /dev/null +++ b/764/CH11/EX11.10.b/solution11_10.sce @@ -0,0 +1,80 @@ +
+//Function to calculate the roots of a cubic equation
+function[r] = cubic(a, b, c)
+//Use Gerolamo Cardano's solution for cubic equations with real roots
+//roots function can also be used
+//Use auxiliary variables p and q
+p =((3 * b)-(a^2))/3
+q =(c)+((2 * (a^3))/27)-((a * b)/3)
+//Calculate discrimant Di for the cubic equation
+Di = ((p/2)^2)+((q/3)^3)
+//Calculate values of cos(Fi) and Fi
+if(p<0)
+//For |p|
+ p = p * -1
+end
+Fi = acos((-1 * q)/(2 * (sqrt((p/3)^3))))
+Fi1 = Fi/3
+Fi2 = (Fi + (4 *%pi))/3
+Fi3 = (Fi + (2 *%pi))/3
+//x,y and z are the three real distinct roots of the cubic equation
+x = (-1 * (a/3)) + (2 * cos(Fi1) * sqrt(p/3))
+y = (-1 * (a/3)) + (2 * cos(Fi2) * sqrt(p/3))
+z = (-1 * (a/3)) + (2 * cos(Fi3) * sqrt(p/3))
+printf('\nx,y and z are the three real roots of this cubic equation\n')
+printf('x = %f\ny = %f\nz = %f\n',x,y,z)
+//d should be maximum for cost and area of friction lining to be minimum
+//Assigning proper value to d
+if (x > y) then
+ e = x
+ if (e > z) then
+ r = e
+ else
+ r = z
+ end
+else
+ e = y
+ if (e > z) then
+ r = e
+ else
+ r = z
+ end
+end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_10.sce')
+//Obtain path of data file
+datapath = path + filesep()+'data11_10.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nApplying uniform-wear theory\n')
+//Convert semi-cone angle into radians
+alpha = alpha * (%pi/180)
+//Evaluate torque transmitting capacity Mt (N-mm)
+Mt = (60 * (10^6) * kW)/(2 * %pi * n)
+//Evaluate the inner diameter of the friction disk d (mm)
+printf('\nInner diameter of the friction disk is d (mm)\n')
+printf('\nUsing the torque transmitting capacity formula for cone clutch:\n')
+printf('\nMf = (pi * mu * Pa * d)*((D^2)-(d^2)))/(8 * sinα)\n')
+printf('we get the following cubic equation in d\n')
+//Representing cubic equation in the form x3 + ax2 + bx + c = 0 (x=d)
+a = 0
+b = -1 * (D^2)
+c = (8 * Mt * sin(alpha))/(%pi * mu * Pa)
+printf('\n(d^3) + (%fd) + (%f)= 0\n',b,c)
+//Call the declared function
+d = cubic(a, b, c)
+//round the inner diameter value to the nearest integer
+d = int(d)
+//Evaluate the face width of the friction lining b (mm)
+b = (D-d)/(2 * sin(alpha))
+//Evaluate the force required to engage the clutch
+P = (4 * Mt * sin(alpha))/(mu * (D+d))
+//Print results
+printf('\nResults\n')
+printf('\nInner diameter of the friction disk(d) = %f mm\n',d)
+printf('\nFace width of friction lining(b) = %f mm\n',b)
+printf('\nForce required to engage the clutch(P) = %f N\n',P)
diff --git a/764/CH11/EX11.11.a/data11_11.sci b/764/CH11/EX11.11.a/data11_11.sci new file mode 100755 index 000000000..98123a2a0 --- /dev/null +++ b/764/CH11/EX11.11.a/data11_11.sci @@ -0,0 +1,18 @@ +
+//(Friction Clutches) Example 11.11
+//Number of revolutions of the electric motor per minute e (rpm)
+e = 1440
+//Mass of the machine (rotor) m (kg)
+m = 150
+//Radius of gyration of the machine(rotor) k (mm)
+k = 250
+//Desired number of revolutions of the rotor per minute n (rpm)
+n = 1440
+//Time required to attain n rpm from stationary condition t (sec)
+t = 40
+//Semi-cone angle of the cone clutch alpha (degree)
+alpha = 12.5
+//Coefficient of friction mu
+mu = 0.2
+//Permissible normal intensity of pressure Pa (MPa)
+Pa = 0.1
diff --git a/764/CH11/EX11.11.b/result11_11.txt b/764/CH11/EX11.11.b/result11_11.txt new file mode 100755 index 000000000..4793c387e --- /dev/null +++ b/764/CH11/EX11.11.b/result11_11.txt @@ -0,0 +1,73 @@ +-->//(Friction Clutches) Example 11.11
+
+-->//Number of revolutions of the electric motor per minute e (rpm)
+
+-->e = 1440
+ e =
+
+ 1440.
+
+-->//Mass of the machine (rotor) m (kg)
+
+-->m = 150
+ m =
+
+ 150.
+
+-->//Radius of gyration of the machine(rotor) k (mm)
+
+-->k = 250
+ k =
+
+ 250.
+
+-->//Desired number of revolutions of the rotor per minute n (rpm)
+
+-->n = 1440
+ n =
+
+ 1440.
+
+-->//Time required to attain n rpm from stationary condition t (sec)
+
+-->t = 40
+ t =
+
+ 40.
+
+-->//Semi-cone angle of the cone clutch alpha (degree)
+
+-->alpha = 12.5
+ alpha =
+
+ 12.5
+
+-->//Coefficient of friction mu
+
+-->mu = 0.2
+ mu =
+
+ 0.2
+
+-->//Permissible normal intensity of pressure Pa (MPa)
+
+-->Pa = 0.1
+ Pa =
+
+ 0.1
+
+
+Applying uniform-wear theory
+
+Results
+
+Inner diameter of the cone clutch(d) = 159.085754 mm
+
+Outer diameter of the cone clutch(D) = 177.286843 mm
+
+Face width of the friction lining(b) = 42.046575 mm
+
+Force required to engage the clutch(P) = 454.829405 N
+
+Heat energy generated during clutch engagemant(Hg) = 106.591728 kJ
+
\ No newline at end of file diff --git a/764/CH11/EX11.11.b/solution11_11.sce b/764/CH11/EX11.11.b/solution11_11.sce new file mode 100755 index 000000000..f46724a83 --- /dev/null +++ b/764/CH11/EX11.11.b/solution11_11.sce @@ -0,0 +1,44 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_11.sce')
+//Obtain path of data file
+datapath = path + filesep()+'data11_11.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nApplying uniform-wear theory\n')
+//Convert alpha into radians
+alpha = alpha * (%pi/180)
+//Initial angular velocity w1 (rad/s)
+w1 = 0
+//Final angular velocity w2 (rad/s)
+w2 = (2 * %pi * n)/60
+//Evaluate angular acceleration of the cone clutch a (rad/s2)
+a = (w2 - w1)/t
+//Evaluate the torque transmitting capacity Mt (N-mm)
+Mt = (m * ((k/1000) ^ 2) * a)*1000
+//Evaluate ratio D/d
+ratio = (4 + sin(alpha))/(4 - sin(alpha))
+//Substitute the value of d/D in the torque transmitting capacity equation
+d = ((Mt * 8 * sin(alpha))/((%pi * mu * Pa)*((ratio^2) - 1)))^(1/3)
+//Evaluate the outer diameter of the cone clutch D (mm)
+D = d * ratio
+//Mean radius of the clutch is twice the face width
+//Evaluate the face width of the friction lining b (mm)
+b = (D + d)/8
+//Evaluate the force required to engage the clutch P (N)
+P = (4 * Mt * sin(alpha))/(mu * (D + d))
+wavg = (w1 + w2)/2
+//Evaluate the displacement of the cone clutch θ (rad)
+theta = wavg * t
+//Evaluate the heat generated during each engagement Hg (kJ)
+Hg = ((Mt/1000) * theta)/1000
+//Print results
+printf('\nResults\n')
+printf('\nInner diameter of the cone clutch(d) = %f mm\n',d)
+printf('\nOuter diameter of the cone clutch(D) = %f mm\n',D)
+printf('\nFace width of the friction lining(b) = %f mm\n',b )
+printf('\nForce required to engage the clutch(P) = %f N\n',P)
+printf('\nHeat energy generated during clutch engagemant(Hg) = %f kJ\n',Hg)
+
diff --git a/764/CH11/EX11.12.a/data11_12.sci b/764/CH11/EX11.12.a/data11_12.sci new file mode 100755 index 000000000..f82bc9c0b --- /dev/null +++ b/764/CH11/EX11.12.a/data11_12.sci @@ -0,0 +1,19 @@ +
+//(Friction Clutches) Example 11.12
+//Power transmitting capacity of the centrifugal clutch kW
+kW = 20
+//Number of revolutions of the clutch per minute n2 (rpm)
+n2 = 750
+//Number of revolutions of the clutch per minute
+//at the time of engagment n1 (rpm)
+n1 = 500
+//Inner radius of the drum rd (mm)
+rd = 165
+//Radius of the centre of gravity of the shoes rg (mm)
+rg = 140
+//Coefficient of friction mu
+mu = 0.3
+//Permissible pressure on friction lining Pa (MPa)
+Pa = 0.1
+//Number of shoes z
+z = 4
\ No newline at end of file diff --git a/764/CH11/EX11.12.b/result11_12.txt b/764/CH11/EX11.12.b/result11_12.txt new file mode 100755 index 000000000..94b0f8ead --- /dev/null +++ b/764/CH11/EX11.12.b/result11_12.txt @@ -0,0 +1,71 @@ +-->//(Friction Clutches) Example 11.12
+
+-->//Power transmitting capacity of the centrifugal clutch kW
+
+-->kW = 20
+ kW =
+
+ 20.
+
+-->//Number of revolutions of the clutch per minute n2 (rpm)
+
+-->n2 = 750
+ n2 =
+
+ 750.
+
+-->//Number of revolutions of the clutch per minute
+
+-->//at the time of engagment n1 (rpm)
+
+-->n1 = 500
+ n1 =
+
+ 500.
+
+-->//Inner radius of the drum rd (mm)
+
+-->rd = 165
+ rd =
+
+ 165.
+
+-->//Radius of the centre of gravity of the shoes rg (mm)
+
+-->rg = 140
+ rg =
+
+ 140.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.3
+ mu =
+
+ 0.3
+
+-->//Permissible pressure on friction lining Pa (MPa)
+
+-->Pa = 0.1
+ Pa =
+
+ 0.1
+
+-->//Number of shoes z
+
+-->z = 4
+ z =
+
+ 4.
+
+
+Results
+
+Mass of each shoe(m) = 2.680647 kg
+
+Dimensions of friction lining are as follows:
+
+Contact length of friction lining with drum(l) = 201.585529 mm
+
+Width of friction lining(b) = 63.799250 mm
+
\ No newline at end of file diff --git a/764/CH11/EX11.12.b/solution11_12.sce b/764/CH11/EX11.12.b/solution11_12.sce new file mode 100755 index 000000000..375748ab5 --- /dev/null +++ b/764/CH11/EX11.12.b/solution11_12.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_12.sce')
+//Obtain path of data file
+datapath = path + filesep()+'data11_12.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Final angular velocity of the shoe w2 (rad/s)
+w2 = (2 * %pi * n2)/60
+//Initial angular velocity of the shoe w1 (rad/s)
+w1 = (2 * %pi * n1)/60
+//Evaluate torque transmitting capacity Mt (N-mm)
+Mt = (kW * 60 * (10^6))/(2 * %pi * n2)
+//Evaluate mass of each shoe m (kg)
+m = (1000 * Mt)/(mu * rg * rd * z * ((w2^2)-(w1^2)))
+//Assume arc of contact of shoe subtends 70 degree at the centre of spider
+theta = 70
+//Evaluate contact length of the friction lining l (mm)
+l = rd * (theta * (%pi/180))
+//Evaluate width of friction lining b (mm)
+b = (m * rg * ((w2^2)-(w1^2)))/(Pa * l * 1000)
+//Print results
+printf('\nResults\n')
+printf('\nMass of each shoe(m) = %f kg\n',m)
+printf('\nDimensions of friction lining are as follows:\n')
+printf('\nContact length of friction lining with drum(l) = %f mm\n',l)
+printf('\nWidth of friction lining(b) = %f mm\n',b)
diff --git a/764/CH11/EX11.13.a/data11_13.sci b/764/CH11/EX11.13.a/data11_13.sci new file mode 100755 index 000000000..4545da153 --- /dev/null +++ b/764/CH11/EX11.13.a/data11_13.sci @@ -0,0 +1,17 @@ +
+//(Friction Clutches) Example 11.13
+//Number of shoes in the centrifugal clutch z
+z = 4
+//Mass of each shoe m (kg)
+m = 1.5
+//Radius to the centre of gravity of each shoe rg (mm)
+rg = 110
+//Inner radius of the drum rd (mm)
+rd = 140
+//Coefficient of friction mu
+mu = 0.3
+//Spring force at the beginning of engagement Ps (N)
+Ps = 700
+//Running speed n2 (rpm)
+n2 = 1440
+
\ No newline at end of file diff --git a/764/CH11/EX11.13.b/result11_13.txt b/764/CH11/EX11.13.b/result11_13.txt new file mode 100755 index 000000000..afcf9153f --- /dev/null +++ b/764/CH11/EX11.13.b/result11_13.txt @@ -0,0 +1,61 @@ +-->//(Friction Clutches) Example 11.13
+
+-->//Number of shoes in the centrifugal clutch z
+
+-->z = 4
+ z =
+
+ 4.
+
+-->//Mass of each shoe m (kg)
+
+-->m = 1.5
+ m =
+
+ 1.5
+
+-->//Radius to the centre of gravity of each shoe rg (mm)
+
+-->rg = 110
+ rg =
+
+ 110.
+
+-->//Inner radius of the drum rd (mm)
+
+-->rd = 140
+ rd =
+
+ 140.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.3
+ mu =
+
+ 0.3
+
+-->//Spring force at the beginning of engagement Ps (N)
+
+-->Ps = 700
+ Ps =
+
+ 700.
+
+-->//Running speed n2 (rpm)
+
+-->n2 = 1440
+ n2 =
+
+ 1440.
+
+
+
+Results
+
+Speed at which the engagement begins(n1) = 621.982879 rpm
+
+Torque transmitted by the clutch(Mt) = 512740.839932 N-mm
+
+Power transmitted by the clutch(kW) = 77.319497
+
\ No newline at end of file diff --git a/764/CH11/EX11.13.b/solution11_13.sce b/764/CH11/EX11.13.b/solution11_13.sce new file mode 100755 index 000000000..a73f4402b --- /dev/null +++ b/764/CH11/EX11.13.b/solution11_13.sce @@ -0,0 +1,24 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_13.sce')
+//Obtain path of data file
+datapath = path + filesep()+'data11_13.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Evaluate the initial angular velocity of each shoe w1 (rad/s)
+w1 = ((Ps * 1000)/(m * rg))^(1/2)
+//Evaluate the speed at the beginning of engagement n1 (rpm)
+n1 = (60 * w1)/(2 * %pi)
+//Evaluate the final angular velocity of each shoe w2 (rad/s)
+w2 = (2 * %pi * n2)/60
+//Evaluate the torque transmitted by the clutch Mt (N-mm)
+Mt = (mu * m * rg * rd * z * ((w2^2)-(w1^2)))/1000
+//Evaluate the power transmitted by the clutch kW
+kW = (2 * %pi * n2 * Mt)/(60 * (10^6))
+//Print results
+printf('\nResults\n')
+printf('\nSpeed at which the engagement begins(n1) = %f rpm\n',n1)
+printf('\nTorque transmitted by the clutch(Mt) = %f N-mm\n',Mt)
+printf('\nPower transmitted by the clutch(kW) = %f\n',kW)
diff --git a/764/CH11/EX11.14.a/data11_14.sci b/764/CH11/EX11.14.a/data11_14.sci new file mode 100755 index 000000000..9e226c7e1 --- /dev/null +++ b/764/CH11/EX11.14.a/data11_14.sci @@ -0,0 +1,14 @@ +
+//(Friction Clutches) Example 11.14
+//Power transmitted by single plate clutch kW
+kW = 10
+//Number of revolutions of the clutch per minute n1 (rpm)
+n1 = 2000
+//Equivalent mass of input shaft m1 (kg)
+m1 = 20
+//Equivalent radius of gyration of input shaft k1 (mm)
+k1 = 75
+//Equivalent mass of output shaft m2 (kg)
+m2 = 35
+//Equivalent radius of gyration of output shaft k2 (mm)
+k2 = 125
diff --git a/764/CH11/EX11.14.b/result11_14.txt b/764/CH11/EX11.14.b/result11_14.txt new file mode 100755 index 000000000..9c2cb6eec --- /dev/null +++ b/764/CH11/EX11.14.b/result11_14.txt @@ -0,0 +1,51 @@ +-->//(Friction Clutches) Example 11.14
+
+-->//Power transmitted by single plate clutch kW
+
+-->kW = 10
+ kW =
+
+ 10.
+
+-->//Number of revolutions of the clutch per minute n1 (rpm)
+
+-->n1 = 2000
+ n1 =
+
+ 2000.
+
+-->//Equivalent mass of input shaft m1 (kg)
+
+-->m1 = 20
+ m1 =
+
+ 20.
+
+-->//Equivalent radius of gyration of input shaft k1 (mm)
+
+-->k1 = 75
+ k1 =
+
+ 75.
+
+-->//Equivalent mass of output shaft m2 (kg)
+
+-->m2 = 35
+ m2 =
+
+ 35.
+
+-->//Equivalent radius of gyration of output shaft k2 (mm)
+
+-->k2 = 125
+ k2 =
+
+ 125.
+
+
+Results
+
+Time required to bring the output shaft to rated speed from rest(t1) = 0.409285 sec
+
+Heat generated during the clutch operation(E) = 2046.422713 J
+
\ No newline at end of file diff --git a/764/CH11/EX11.14.b/solution11_14.sce b/764/CH11/EX11.14.b/solution11_14.sce new file mode 100755 index 000000000..f17b5ba05 --- /dev/null +++ b/764/CH11/EX11.14.b/solution11_14.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_14.sce')
+//Obtain path of data file
+datapath = path + filesep()+'data11_14.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Evaluate mass moment of inertia of input shaft I1 (kg-m2)
+I1 = (m1 * ((k1/1000)^2))
+//Evaluate mass moment of inertia of output shaft I2 (kg-m2)
+I2 = (m2 * ((k2/1000)^2))
+//Evaluate the angular velocity of the clutch w1 (rad/s)
+w1 = (2 * %pi * n1)/60
+//Evaluate the torque transmission of the clutch Mt (N-m)
+Mt = ((60 * (10^6) * kW)/(2 * %pi * n1))/1000
+//Initial angular velocity of the output shaft w2 (rad/s)
+w2 = 0
+//Evaluate the time required to bring the output shaft
+//to the rated speed from rest t1 (sec)
+t1 = ((w1 - w2) * I1 * I2)/((I1 + I2) * Mt)
+//Evaluate the heat generated during clutch operation E (J)
+E = (((w1 - w2)^2) * I1 * I2)/(2 * (I1 + I2))
+//Print results
+printf('\nResults\n')
+printf('\nTime required to bring the output shaft to rated speed')
+printf(' from rest(t1) = %f sec\n',t1)
+printf('\nHeat generated during the clutch operation(E) = %f J\n',E)
diff --git a/764/CH11/EX11.2.a/data11_2.sci b/764/CH11/EX11.2.a/data11_2.sci new file mode 100755 index 000000000..f28a6fb1e --- /dev/null +++ b/764/CH11/EX11.2.a/data11_2.sci @@ -0,0 +1,12 @@ +
+//(Friction Clutches)Example 11.2
+//Inner diameter of the friction disk d (mm)
+d = 100
+//Outer diameter of the friction disk D (mm)
+D = 200
+//Coefficient of friction between the two contacting surfaces mu
+mu = 0.2
+//Permissible intensity of pressure Pa (MPa)
+Pa = 1
+//Number of revolutions of the friction disk per minute n (rpm)
+n = 750
\ No newline at end of file diff --git a/764/CH11/EX11.2.b/result11_2.txt b/764/CH11/EX11.2.b/result11_2.txt new file mode 100755 index 000000000..11123d591 --- /dev/null +++ b/764/CH11/EX11.2.b/result11_2.txt @@ -0,0 +1,48 @@ +-->//(Friction Clutches)Example 11.2
+
+-->//Inner diameter of the friction disk d (mm)
+
+-->d = 100
+ d =
+
+ 100.
+
+-->//Outer diameter of the friction disk D (mm)
+
+-->D = 200
+ D =
+
+ 200.
+
+-->//Coefficient of friction between the two contacting surfaces mu
+
+-->mu = 0.2
+ mu =
+
+ 0.2
+
+-->//Permissible intensity of pressure Pa (MPa)
+
+-->Pa = 1
+ Pa =
+
+ 1.
+
+-->//Number of revolutions of the friction disk per minute n (rpm)
+
+-->n = 750
+ n =
+
+ 750.
+
+
+Applying uniform-pressure criterion
+
+Results
+
+Total operating force (P) = 23561.944902 N
+
+Torque transmitting capacity by friction(Mf) = 366519.142919 N-mm
+
+Power transmitting capacity of the clutch = 28.786346 kW
+
\ No newline at end of file diff --git a/764/CH11/EX11.2.b/solution11_2.sce b/764/CH11/EX11.2.b/solution11_2.sce new file mode 100755 index 000000000..672bc1ec8 --- /dev/null +++ b/764/CH11/EX11.2.b/solution11_2.sce @@ -0,0 +1,21 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data11_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nApplying uniform-pressure criterion\n')
+//Evaluate total operating force P (N)
+P = (%pi * Pa)*((D^2)-(d^2))/4
+//Evaluate torque transmitting capacity Mt (N-mm)
+Mt = (mu * P * ((D^3)-(d^3)))/(3 * ((D^2)-(d^2)))
+//Evaluate power transmitting capacity kW
+kW = (2 * %pi * n * Mt)/(60 * (10^6))
+//Print results
+printf('\nResults\n')
+printf('\nTotal operating force (P) = %f N\n',P)
+printf('\nTorque transmitting capacity by friction(Mf) = %f N-mm\n',Mt)
+printf('\nPower transmitting capacity of the clutch = %f kW\n',kW)
\ No newline at end of file diff --git a/764/CH11/EX11.3.a/data11_3.sci b/764/CH11/EX11.3.a/data11_3.sci new file mode 100755 index 000000000..40153f81d --- /dev/null +++ b/764/CH11/EX11.3.a/data11_3.sci @@ -0,0 +1,11 @@ +
+//(Friction Clutches)Example 11.3
+//The automotive plate clutch consists two pairs of contacting surfaces
+//Total torque transmitting capacity of the clutch Mf (N-m)
+Mt = 550
+//Coefficient of friction between clutch-pressure plate-flywheel mu
+mu = 0.25
+//Permissible intensity of pressure Pa (MPa)
+Pa = 0.5
+//Outer diameter of the friction disk due to space limitations D (mm)
+D = 250
diff --git a/764/CH11/EX11.3.b/result11_3.txt b/764/CH11/EX11.3.b/result11_3.txt new file mode 100755 index 000000000..2ea31b733 --- /dev/null +++ b/764/CH11/EX11.3.b/result11_3.txt @@ -0,0 +1,53 @@ +-->//(Friction Clutches)Example 11.3
+
+-->//The automotive plate clutch consists two pairs of contacting surfaces
+
+-->//Total torque transmitting capacity of the clutch Mf (N-m)
+
+-->Mt = 550
+ Mt =
+
+ 550.
+
+-->//Coefficient of friction between clutch-pressure plate-flywheel mu
+
+-->mu = 0.25
+ mu =
+
+ 0.25
+
+-->//Permissible intensity of pressure Pa (MPa)
+
+-->Pa = 0.5
+ Pa =
+
+ 0.5
+
+-->//Outer diameter of the friction disk due to space limitations D (mm)
+
+-->D = 250
+ D =
+
+ 250.
+
+
+Applying uniform-wear theory
+
+Inner diameter of the friction disk is d (mm)
+
+Using the torque transmitting capacity formula:
+
+Mf = (pi * mu * Pa * d)*((D^2)-(d^2)))/8
+we get the following cubic equation in d
+
+(d^3) + (-62500.000000d) + (5602253.996835)= 0
+
+x,y and z are the three real roots of this cubic equation
+x = 174.166181
+y = 112.289942
+z = -286.456123
+
+Inner diameter of the friction disk(d)= 174.166181(mm)
+
+Spring force for keeping the clutch engaged(P)= 10373.292814(N)
+
\ No newline at end of file diff --git a/764/CH11/EX11.3.b/solution11_3.sce b/764/CH11/EX11.3.b/solution11_3.sce new file mode 100755 index 000000000..fe226cde5 --- /dev/null +++ b/764/CH11/EX11.3.b/solution11_3.sce @@ -0,0 +1,72 @@ +
+//Function to calculate the roots of a cubic equation
+function[r] = cubic(a, b, c)
+//Use Gerolamo Cardano's solution for cubic equations with real roots
+//roots function can also be used
+//Use auxiliary variables p and q
+p =((3 * b)-(a^2))/3
+q =(c)+((2 * (a^3))/27)-((a * b)/3)
+//Calculate discrimant Di for the cubic equation
+Di = ((p/2)^2)+((q/3)^3)
+//Calculate values of cos(Fi) and Fi
+if(p<0)
+//For |p|
+ p = p * -1
+end
+Fi = acos((-1 * q)/(2 * (sqrt((p/3)^3))))
+Fi1 = Fi/3
+Fi2 = (Fi + (4 *%pi))/3
+Fi3 = (Fi + (2 *%pi))/3
+//x,y and z are the three real distinct roots of the cubic equation
+x = (-1 * (a/3)) + (2 * cos(Fi1) * sqrt(p/3))
+y = (-1 * (a/3)) + (2 * cos(Fi2) * sqrt(p/3))
+z = (-1 * (a/3)) + (2 * cos(Fi3) * sqrt(p/3))
+printf('\nx,y and z are the three real roots of this cubic equation\n')
+printf('x = %f\ny = %f\nz = %f\n',x,y,z)
+//d should be maximum for cost and area of friction lining to be minimum
+//Assigning proper value to d
+if (x > y) then
+ e = x
+ if (e > z) then
+ r = e
+ else
+ r = z
+ end
+else
+ e = y
+ if (e > z) then
+ r = e
+ else
+ r = z
+ end
+end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data11_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Consider torque transmitted by one pair of contacting surfaces
+Mt = Mt / 2
+printf('\nApplying uniform-wear theory\n')
+//Evaluate the inner diameter of the friction disk d (mm)
+printf('\nInner diameter of the friction disk is d (mm)\n')
+printf('\nUsing the torque transmitting capacity formula:\n')
+printf('\nMf = (pi * mu * Pa * d)*((D^2)-(d^2)))/8\n')
+printf('we get the following cubic equation in d\n')
+//Representing cubic equation in the form x3 + ax2 + bx + c = 0 (x=d)
+a = 0
+b = -1 * (D^2)
+c = (8 * Mt * 1000)/(%pi * mu * Pa)
+printf('\n(d^3) + (%fd) + (%f)= 0\n',b,c)
+//Call the declared function
+d = cubic(a, b, c)
+//Evaluate spring force P (N)
+P = ((%pi * Pa * d)*(D - d))/2
+//Print results
+printf('\nInner diameter of the friction disk(d)= %f(mm)\n',d)
+printf('\nSpring force for keeping the clutch engaged(P)= %f(N)\n',P)
\ No newline at end of file diff --git a/764/CH11/EX11.4.a/function11_4.sci b/764/CH11/EX11.4.a/function11_4.sci new file mode 100755 index 000000000..90b9688bc --- /dev/null +++ b/764/CH11/EX11.4.a/function11_4.sci @@ -0,0 +1,6 @@ +
+//Declare tchar function for torque characteristic computation
+//x = d/D
+function [T] = tchar(x)
+ T = x * (1 - (x^2))
+endfunction
diff --git a/764/CH11/EX11.4.b/graph11_4.png b/764/CH11/EX11.4.b/graph11_4.png Binary files differnew file mode 100755 index 000000000..bb9511172 --- /dev/null +++ b/764/CH11/EX11.4.b/graph11_4.png diff --git a/764/CH11/EX11.4.b/result11_4.txt b/764/CH11/EX11.4.b/result11_4.txt new file mode 100755 index 000000000..e1d1df65b --- /dev/null +++ b/764/CH11/EX11.4.b/result11_4.txt @@ -0,0 +1,24 @@ +-->//Declare tchar function for torque characteristic computation
+
+-->//x = d/D
+
+-->function [T] = tchar(x)
+--> T = x * (1 - (x^2))
+-->endfunction
+
+
+Torque characteristic(T) is given by:
+
+T = (8 * Mt)/(pi * mu * Pa * (D^3))
+
+d/D = x
+
+Maximum value of torque characteristic(Tmax) = 0.384891
+
+x,y and z are the three real roots of this cubic equation
+x = 0.579697
+y = 0.575000
+z = -1.154697
+
+d/D value corresponding to Tmax = 0.579697
+
\ No newline at end of file diff --git a/764/CH11/EX11.4.b/solution11_4.sce b/764/CH11/EX11.4.b/solution11_4.sce new file mode 100755 index 000000000..502e71d00 --- /dev/null +++ b/764/CH11/EX11.4.b/solution11_4.sce @@ -0,0 +1,94 @@ +
+//(Friction Clutches) Example 11.4
+//Function to calculate the roots of a cubic equation
+function[r] = cubic(a, b, c)
+//Use Gerolamo Cardano's solution for cubic equations with real roots
+//roots function can also be used
+//Use auxiliary variables p and q
+p =((3 * b)-(a^2))/3
+q =(c)+((2 * (a^3))/27)-((a * b)/3)
+//Calculate discrimant Di for the cubic equation
+Di = ((p/2)^2)+((q/3)^3)
+//Calculate values of cos(Fi) and Fi
+if(p<0)
+//For |p|
+ p = p * -1
+end
+Fi = acos((-1 * q)/(2 * (sqrt((p/3)^3))))
+Fi1 = Fi/3
+Fi2 = (Fi + (4 *%pi))/3
+Fi3 = (Fi + (2 *%pi))/3
+//x,y and z are the three real distinct roots of the cubic equation
+x = (-1 * (a/3)) + (2 * cos(Fi1) * sqrt(p/3))
+y = (-1 * (a/3)) + (2 * cos(Fi2) * sqrt(p/3))
+z = (-1 * (a/3)) + (2 * cos(Fi3) * sqrt(p/3))
+printf('\nx,y and z are the three real roots of this cubic equation\n')
+printf('x = %f\ny = %f\nz = %f\n',x,y,z)
+//d should be maximum for cost and area of friction lining to be minimum
+//Assigning proper value to d
+if (x > y) then
+ e = x
+ if (e > z) then
+ r = e
+ else
+ r = z
+ end
+else
+ e = y
+ if (e > z) then
+ r = e
+ else
+ r = z
+ end
+end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_4.sce')
+//Obtain path of function file
+datapath = path + filesep()+'function11_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Define variable i and arrays y and z
+i = 1
+//Initialise y and z vectors
+y = zeros(1,11)
+z = zeros(1,11)
+printf('\nTorque characteristic(T) is given by:\n')
+printf('\nT = (8 * Mt)/(pi * mu * Pa * (D^3))\n')
+printf('\nd/D = x\n')
+//x is the independent variable and T is the dependent variable
+//Store values of x and T in y and z vectors
+for x=0:0.005:1
+ T = tchar(x)
+ y(1,i) = x
+ z(1,i) = T
+ i = i + 1
+end
+//Plot the graph
+plot(y,z)
+//Get the handle of current axes
+g = gca()
+//Give labels and set label properties
+g.labels_font_color=5
+g.font_size=2
+g.grid=[2,2]
+g.box="off"
+title('Variation of Torque against d/D')
+xlabel('d/D')
+ylabel('Torque characteristic')
+a = max(z)
+printf('\nMaximum value of torque characteristic(Tmax) = %f\n',a)
+//Find corresponding value of d/D
+r = cubic(0, -1, a)
+//As two positive roots are almost equal, print their average value
+printf('\nd/D value corresponding to Tmax = %f\n',r)
+
+
+
+
+
+
+
diff --git a/764/CH11/EX11.5.a/data11_5.sci b/764/CH11/EX11.5.a/data11_5.sci new file mode 100755 index 000000000..87c4b8ab0 --- /dev/null +++ b/764/CH11/EX11.5.a/data11_5.sci @@ -0,0 +1,10 @@ +
+//(Friction Clutches) Example 11.5
+//Engine develops maximum torque Mt (N-m)
+Mt = 120
+//Factor of safety to account for slippage at full-engine torque fs
+fs = 1.5
+//Permissible intensity of pressure Pa (kPa)
+Pa = 350
+//Coefficient of friction between the contacting surfaces mu
+mu = 0.35
diff --git a/764/CH11/EX11.5.b/result11_5.txt b/764/CH11/EX11.5.b/result11_5.txt new file mode 100755 index 000000000..47507e72d --- /dev/null +++ b/764/CH11/EX11.5.b/result11_5.txt @@ -0,0 +1,37 @@ +-->//(Friction Clutches) Example 11.5
+
+-->//Engine develops maximum torque Mt (N-m)
+
+-->Mt = 120
+ Mt =
+
+ 120.
+
+-->//Factor of safety to account for slippage at full-engine torque fs
+
+-->fs = 1.5
+ fs =
+
+ 1.5
+
+-->//Permissible intensity of pressure Pa (kPa)
+
+-->Pa = 350
+ Pa =
+
+ 350.
+
+-->//Coefficient of friction between the contacting surfaces mu
+
+-->mu = 0.35
+ mu =
+
+ 0.35
+
+
+Results
+
+Inner diameter of the friction lining(d) = 123.220276 mm
+
+Outer diameter of the friction lining(D) = 213.553339 mm
+
\ No newline at end of file diff --git a/764/CH11/EX11.5.b/solution11_5.sce b/764/CH11/EX11.5.b/solution11_5.sce new file mode 100755 index 000000000..633b3582d --- /dev/null +++ b/764/CH11/EX11.5.b/solution11_5.sce @@ -0,0 +1,21 @@ +
+//Obtain the path of solution file
+path = get_absolute_file_path('solution11_5.sce')
+//Obtain the path of data file
+datapath = path + filesep() + 'data11_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Consider the factor of safety fs, Mt is in N-m
+Mt = fs * Mt
+//For maximum torque transmission, d/D = 0.577
+ratio = 0.577
+//Evaluate inner diameter of the friction disk d (mm)
+d = ((8 * Mt * 1000)/(%pi * mu * Pa * (10^-3) * 2))^(1/3)
+//Evaluate outer diameter of the friction disk from ratio D (mm)
+D = d/ratio
+//Print results
+printf('\nResults\n')
+printf('\nInner diameter of the friction lining(d) = %f mm\n',d)
+printf('\nOuter diameter of the friction lining(D) = %f mm\n',D)
diff --git a/764/CH11/EX11.6.a/data11_6.sci b/764/CH11/EX11.6.a/data11_6.sci new file mode 100755 index 000000000..d8669f19e --- /dev/null +++ b/764/CH11/EX11.6.a/data11_6.sci @@ -0,0 +1,16 @@ +
+//(Friction Clutch) Example 11.6
+//Maximum engine torque Mt (N-m)
+Mt = 250
+//Coeffecient of friction between the contacting surfaces mu
+mu = 0.35
+//Inner diameter of the friction lining d (mm)
+d = 175
+//Outer diameter of the friction lining D (mm)
+D = 250
+//Number of springs n
+n = 9
+//Force required from the springs P (N)
+P = 800
+//Spring compression in order to obtain the required force delta (mm)
+delta = 5
\ No newline at end of file diff --git a/764/CH11/EX11.6.b/result11_6.txt b/764/CH11/EX11.6.b/result11_6.txt new file mode 100755 index 000000000..e2b9ea53b --- /dev/null +++ b/764/CH11/EX11.6.b/result11_6.txt @@ -0,0 +1,62 @@ +-->//(Friction Clutch) Example 11.6
+
+-->//Maximum engine torque Mt (N-m)
+
+-->Mt = 250
+ Mt =
+
+ 250.
+
+-->//Coeffecient of friction between the contacting surfaces mu
+
+-->mu = 0.35
+ mu =
+
+ 0.35
+
+-->//Inner diameter of the friction lining d (mm)
+
+-->d = 175
+ d =
+
+ 175.
+
+-->//Outer diameter of the friction lining D (mm)
+
+-->D = 250
+ D =
+
+ 250.
+
+-->//Number of springs n
+
+-->n = 9
+ n =
+
+ 9.
+
+-->//Force required from the springs P (N)
+
+-->P = 800
+ P =
+
+ 800.
+
+-->//Spring compression in order to obtain the required force delta (mm)
+
+-->delta = 5
+ delta =
+
+ 5.
+
+
+Step1: Clutch being brand new,applying uniform-pressure theory
+
+Factor of safety(fsp) = 2.164235
+
+Step2: Clutch being subjected to initial wear,applying uniform-wear theory
+
+Factor of safety(fsw) = 2.142000
+
+Step3: Allowable wear of friction lining(x) = 2.665733 mm
+
\ No newline at end of file diff --git a/764/CH11/EX11.6.b/solution11_6.sce b/764/CH11/EX11.6.b/solution11_6.sce new file mode 100755 index 000000000..8949422e8 --- /dev/null +++ b/764/CH11/EX11.6.b/solution11_6.sce @@ -0,0 +1,41 @@ +
+//Obtain the path of solution file
+path = get_absolute_file_path('solution11_6.sce')
+//Obtain the path of data file
+datapath = path + filesep() + 'data11_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Step1: Clutch being brand new, apply uniform-pressure theory
+//Consider torque transmission by one pair of contacting surfaces
+Mt = Mt / 2
+//Total force obtained from n springs
+P = n * P
+//Evaluate torque transmitting capacity Mtp (N-mm)
+Mtp = (mu * P * ((D^3)-(d^3)))/(3 * ((D^2)-(d^2)))
+//Evaluate corresponding factor of safety
+fsp = Mtp / (Mt * 1000)
+//Step2: Clutch subjected to initial wear, apply uniform-wear theory
+//Assuming there is negligible change in spring force after wear
+//Evaluate torque transmitting capacity Mtw (N-mm)
+Mtw = (mu * P * (D + d))/4
+//Evaluate corresponding factor of safety
+fsw = Mtw / (Mt * 1000)
+//Step3: Wear of friction lining before slippage
+//Evaluate spring force required to transmit the torque(Mt) Pmax (N)
+Pmax = (Mt * 4 * 1000)/(mu * (D + d))
+//Evaluate force provided by each spring
+Pmax = Pmax / n
+//Evaluate stiffness of spring s (N/mm)
+s = P / (delta * n)
+//Evaluate allowable wear of friction lining x (mm)
+x = delta - (Pmax / s)
+//Print results
+printf('\nStep1: Clutch being brand new,')
+printf('applying uniform-pressure theory\n')
+printf('\nFactor of safety(fsp) = %f\n',fsp)
+printf('\nStep2: Clutch being subjected to initial wear,')
+printf('applying uniform-wear theory\n')
+printf('\nFactor of safety(fsw) = %f\n',fsw)
+printf('\nStep3: Allowable wear of friction lining(x) = %f mm\n',x)
diff --git a/764/CH11/EX11.7.a/data11_7.sci b/764/CH11/EX11.7.a/data11_7.sci new file mode 100755 index 000000000..069af9183 --- /dev/null +++ b/764/CH11/EX11.7.a/data11_7.sci @@ -0,0 +1,15 @@ +
+//(Friction Clutches) Example 11.7
+//Refer Fig. 11.9 in the book
+//Torque transmitting capacity of the multi-disk clutch Mt (N-m)
+Mt = 10
+//Coefficient of friction for cork sheet-steel plate in wet condition mu
+mu = 0.2
+//Permissible pressure on cork sheet Pa (MPa)
+Pa = 0.1
+//Inner diameter of the friction lining d (mm)
+d = 65
+//Outer diameter of the friction lining D (mm)
+D = 95
+//Percentage increase in contact surface area to account for radial slots
+r = 5
\ No newline at end of file diff --git a/764/CH11/EX11.7.b/result11_7.txt b/764/CH11/EX11.7.b/result11_7.txt new file mode 100755 index 000000000..3825688fe --- /dev/null +++ b/764/CH11/EX11.7.b/result11_7.txt @@ -0,0 +1,53 @@ +-->//(Friction Clutches) Example 11.7
+
+-->//Refer Fig. 11.9 in the book
+
+-->//Torque transmitting capacity of the multi-disk clutch Mt (N-m)
+
+-->Mt = 10
+ Mt =
+
+ 10.
+
+-->//Coefficient of friction for cork sheet-steel plate in wet condition mu
+
+-->mu = 0.2
+ mu =
+
+ 0.2
+
+-->//Permissible pressure on cork sheet Pa (MPa)
+
+-->Pa = 0.1
+ Pa =
+
+ 0.1
+
+-->//Inner diameter of the friction lining d (mm)
+
+-->d = 65
+ d =
+
+ 65.
+
+-->//Outer diameter of the friction lining D (mm)
+
+-->D = 95
+ D =
+
+ 95.
+
+-->//Percentage increase in contact surface area to account for radial slots
+
+-->r = 5
+ r =
+
+ 5.
+
+
+Applying uniform-wear theory
+
+Results
+Total operating force(P)= 306.305284 N
+Required number of contacting surfaces(z)= 5.000000
+
\ No newline at end of file diff --git a/764/CH11/EX11.7.b/solution11_7.sce b/764/CH11/EX11.7.b/solution11_7.sce new file mode 100755 index 000000000..0be4cdb55 --- /dev/null +++ b/764/CH11/EX11.7.b/solution11_7.sce @@ -0,0 +1,22 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data11_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Evaluate total operating force P (N)
+P = ((%pi * Pa * d)*(D - d))/2
+//Evaluate number of contacting surfaces z
+z = (4 * Mt * 1000)/(mu * P * (D + d))
+//Considering the effect of radial slots
+z = z * (1 + (r / 100))
+//Round up z
+z = ceil(z)
+//Print results
+printf('\nApplying uniform-wear theory\n')
+printf('\nResults\n')
+printf('Total operating force(P)= %f N\n',P)
+printf('Required number of contacting surfaces(z)= %f\n',z)
diff --git a/764/CH11/EX11.8.a/data11_8.sci b/764/CH11/EX11.8.a/data11_8.sci new file mode 100755 index 000000000..b047bb756 --- /dev/null +++ b/764/CH11/EX11.8.a/data11_8.sci @@ -0,0 +1,16 @@ +
+//(Friction CLutches) Example 11.8
+//Number of steel plates in the multi-disk friction clutch s
+s = 5
+//Number of bronze plates in the multi-disk friction clutch b
+b = 4
+//Inner diameter of the friction disk d (mm)
+d = 75
+//Outer diameter of the friction disk D (mm)
+D = 150
+//Coefficient of friction between steel and bronze plates mu
+mu = 0.1
+//Permissible intensity of pressure on friction lining Pa (MPa)
+Pa = 0.3
+//Number of revolutions of the clutch per minute n (rpm)
+n = 750
\ No newline at end of file diff --git a/764/CH11/EX11.8.b/result11_8.txt b/764/CH11/EX11.8.b/result11_8.txt new file mode 100755 index 000000000..2529f3a07 --- /dev/null +++ b/764/CH11/EX11.8.b/result11_8.txt @@ -0,0 +1,64 @@ +-->//(Friction CLutches) Example 11.8
+
+-->//Number of steel plates in the multi-disk friction clutch s
+
+-->s = 5
+ s =
+
+ 5.
+
+-->//Number of bronze plates in the multi-disk friction clutch b
+
+-->b = 4
+ b =
+
+ 4.
+
+-->//Inner diameter of the friction disk d (mm)
+
+-->d = 75
+ d =
+
+ 75.
+
+-->//Outer diameter of the friction disk D (mm)
+
+-->D = 150
+ D =
+
+ 150.
+
+-->//Coefficient of friction between steel and bronze plates mu
+
+-->mu = 0.1
+ mu =
+
+ 0.1
+
+-->//Permissible intensity of pressure on friction lining Pa (MPa)
+
+-->Pa = 0.3
+ Pa =
+
+ 0.3
+
+-->//Number of revolutions of the clutch per minute n (rpm)
+
+-->n = 750
+ n =
+
+ 750.
+
+
+Applying uniform-wear theory
+
+Results
+
+The total operating force(P)= 2650.718801 N
+
+Number of pairs of contacting surfaces(z)= 8.000000
+
+The torque transmitting capacity of the clutch(Mf)= 119282.346066 N-mm
+
+The power transmitting capacity of the clutch(kW)= 9.368414
+
\ No newline at end of file diff --git a/764/CH11/EX11.8.b/solution11_8.sce b/764/CH11/EX11.8.b/solution11_8.sce new file mode 100755 index 000000000..1310e6963 --- /dev/null +++ b/764/CH11/EX11.8.b/solution11_8.sce @@ -0,0 +1,25 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_8.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data11_8.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nApplying uniform-wear theory\n')
+//Evaluate the total operating force P (N)
+P = ((%pi * Pa * d)*(D - d))/2
+//Evaluate number of pairs of contacting surfaces z
+z = s + b -1
+//Evaluate the torque transmitting capacity of the clutch Mt (N-mm)
+Mt = ((mu * P * z)*(D + d))/4
+//Evaluate power transmitting capacity of the clutch kW
+kW = (2 * %pi * n * Mt)/(60 * (10^6))
+//Print results
+printf('\nResults\n')
+printf('\nThe total operating force(P)= %f N\n',P)
+printf('\nNumber of pairs of contacting surfaces(z)= %f\n',z)
+printf('\nThe torque transmitting capacity of the clutch(Mf)= %f N-mm\n',Mt)
+printf('\nThe power transmitting capacity of the clutch(kW)= %f\n',kW)
+
\ No newline at end of file diff --git a/764/CH11/EX11.9.a/data11_9.sci b/764/CH11/EX11.9.a/data11_9.sci new file mode 100755 index 000000000..9b1b850c1 --- /dev/null +++ b/764/CH11/EX11.9.a/data11_9.sci @@ -0,0 +1,11 @@ +
+//(Friction Clutches) Example 11.9
+//Torque transmitted by oil-immersed multi-disk clutch Mt (N-m)
+Mt = 75
+//Coefficient of friction between the asbestos lining and steel plate mu
+mu = 0.1
+//Permissible intensity of pressure on the asbestos lining Pa (kPa)
+Pa = 500
+//Outer diameter of the friction lining due to space limitations D (mm)
+D = 100
+
\ No newline at end of file diff --git a/764/CH11/EX11.9.b/result11_9.txt b/764/CH11/EX11.9.b/result11_9.txt new file mode 100755 index 000000000..e5d7a1d6c --- /dev/null +++ b/764/CH11/EX11.9.b/result11_9.txt @@ -0,0 +1,42 @@ +-->//(Friction Clutches) Example 11.9
+
+-->//Torque transmitted by oil-immersed multi-disk clutch Mt (N-m)
+
+-->Mt = 75
+ Mt =
+
+ 75.
+
+-->//Coefficient of friction between the asbestos lining and steel plate mu
+
+-->mu = 0.1
+ mu =
+
+ 0.1
+
+-->//Permissible intensity of pressure on the asbestos lining Pa (kPa)
+
+-->Pa = 500
+ Pa =
+
+ 500.
+
+-->//Outer diameter of the friction lining due to space limitations D (mm)
+
+-->D = 100
+ D =
+
+ 100.
+
+
+
+Applying uniform-wear theory
+
+Inner diameter of the friction disks(d) = 57.700000 mm
+
+Total clamping force(P) = 1916.929151 N
+
+The total number disks required(n) = 11.000000
+
+6.00 plane steel disks and 5.00 steel disks with attached asbestos lining can be used or vice versa
+
\ No newline at end of file diff --git a/764/CH11/EX11.9.b/solution11_9.sce b/764/CH11/EX11.9.b/solution11_9.sce new file mode 100755 index 000000000..f57c166bd --- /dev/null +++ b/764/CH11/EX11.9.b/solution11_9.sce @@ -0,0 +1,31 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution11_9.sce')
+//Obtain path of data file
+datapath = path + filesep()+'data11_9.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nApplying uniform-wear theory\n')
+//Assume the clutch transmits maximum torque
+//This implies d/D is 0.577
+ratio = 0.577
+//Evaluate inner diameter of the friction disks d (mm)
+d = ratio * D
+//Evaluate the clamping force P (N)
+P = (%pi * Pa * d * (D-d))/(2 * 1000)
+//Evaluate the pairs of contacting surfaces z
+z = (4 * Mt * 1000)/(mu * P * (D+d))
+//round up z
+z = ceil(z)
+//Evaluate the number of disks n
+n = z + 1
+n1 = ceil(n/2)
+//Print results
+printf('\nInner diameter of the friction disks(d) = %f mm\n',d)
+printf('\nTotal clamping force(P) = %f N\n',P)
+printf('\nThe total number disks required(n) = %f\n',n)
+printf('\n%0.2f plane steel disks ',n1)
+printf('and %0.2f steel disks with attached asbestos lining ',(n-n1))
+printf('can be used or vice versa\n')
\ No newline at end of file diff --git a/764/CH12/EX12.1.a/data12_1.sci b/764/CH12/EX12.1.a/data12_1.sci new file mode 100755 index 000000000..26255bb1f --- /dev/null +++ b/764/CH12/EX12.1.a/data12_1.sci @@ -0,0 +1,14 @@ + +//(Brakes) Example 12.1 +//Diameter of the disk D (m) +D = 1 +//Thickness of the disk t (m) +t = 0.2 +//Speed of the flywheel n1 (rpm) +n1 = 350 +//Time required to bring the disk to rest ts (s) +ts = 1.5 +//Mass density of the disk rho (kg/m3) +rho = 7200 +//Final angular speed of the disk w2 (rad/s) +w2 = 0 diff --git a/764/CH12/EX12.1.b/result12_1.txt b/764/CH12/EX12.1.b/result12_1.txt new file mode 100755 index 000000000..5b8f8a1f3 --- /dev/null +++ b/764/CH12/EX12.1.b/result12_1.txt @@ -0,0 +1,49 @@ +-->//(Brakes) Example 12.1
+
+-->//Diameter of the disk D (m)
+
+-->D = 1
+ D =
+
+ 1.
+
+-->//Thickness of the disk t (m)
+
+-->t = 0.2
+ t =
+
+ 0.2
+
+-->//Speed of the flywheel n1 (rpm)
+
+-->n1 = 350
+ n1 =
+
+ 350.
+
+-->//Time required to bring the disk to rest ts (s)
+
+-->ts = 1.5
+ ts =
+
+ 1.5
+
+-->//Mass density of the disk rho (kg/m3)
+
+-->rho = 7200
+ rho =
+
+ 7200.
+
+-->//Final angular speed of the disk w2 (rad/s)
+
+-->w2 = 0
+ w2 =
+
+ 0.
+
+
+Energy absorbed by the brakes(E) = 94956.722333 J
+
+Torque capacity of the brakes(Mt) = 3454.361540 N-m
+
\ No newline at end of file diff --git a/764/CH12/EX12.1.b/solution12_1.sce b/764/CH12/EX12.1.b/solution12_1.sce new file mode 100755 index 000000000..3120af0a5 --- /dev/null +++ b/764/CH12/EX12.1.b/solution12_1.sce @@ -0,0 +1,24 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_1.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_1.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the mass of the disk m (kg) +m = (%pi/4)*(D^2 * t * rho) +//Calculate the radius of gyration of the disk k (m) +k = D/sqrt(8) +//Calculatet the initial angular speed of the disk w1 (rad/s) +w1 = (2 * %pi * n1)/60 +//Calculate the energy absorbed by the brakes (J) +E = (1/2)*(m * k^2 * (w1^2 - w2^2)) +//Calculate the average velocity during the braking period wavg (rad/s) +wavg = (w1 + w2)/2 +//Calculate the torque capacity of the brake Mt (N-m) +Mt = E/(wavg * ts) +//Print results +printf("\nEnergy absorbed by the brakes(E) = %f J\n",E) +printf("\nTorque capacity of the brakes(Mt) = %f N-m\n",Mt) diff --git a/764/CH12/EX12.10.a/data12_10.sci b/764/CH12/EX12.10.a/data12_10.sci new file mode 100755 index 000000000..4f5617148 --- /dev/null +++ b/764/CH12/EX12.10.a/data12_10.sci @@ -0,0 +1,20 @@ + +//(Brakes) Example 12.10 +//Width of the steel band w (mm) +w = 100 +//Thickness of the steel band t (mm) +t = 3 +//Maximum tensile stress in the band sigmat (N/mm2) +sigmat = 50 +//Coefficient of friction between the friction lining and the drum mu +mu = 0.25 +//Radius of the drum R (mm) +R = 300 +//Angle of wrap theta (deg) +theta = 240 +//Distance of the loose end from the pivot d1 (mm) +d1 = 200 +//Distance of the tight end from the pivot d2 (mm) +d2 = 50 +//Distance of the force from the loose end d3 (mm) +d3 = 750 diff --git a/764/CH12/EX12.10.b/result12_10.txt b/764/CH12/EX12.10.b/result12_10.txt new file mode 100755 index 000000000..774e9da1f --- /dev/null +++ b/764/CH12/EX12.10.b/result12_10.txt @@ -0,0 +1,76 @@ +-->//(Brakes) Example 12.10
+
+-->//Width of the steel band w (mm)
+
+-->w = 100
+ w =
+
+ 100.
+
+-->//Thickness of the steel band t (mm)
+
+-->t = 3
+ t =
+
+ 3.
+
+-->//Maximum tensile stress in the band sigmat (N/mm2)
+
+-->sigmat = 50
+ sigmat =
+
+ 50.
+
+-->//Coefficient of friction between the friction lining and the drum mu
+
+-->mu = 0.25
+ mu =
+
+ 0.25
+
+-->//Radius of the drum R (mm)
+
+-->R = 300
+ R =
+
+ 300.
+
+-->//Angle of wrap theta (deg)
+
+-->theta = 240
+ theta =
+
+ 240.
+
+-->//Distance of the loose end from the pivot d1 (mm)
+
+-->d1 = 200
+ d1 =
+
+ 200.
+
+-->//Distance of the tight end from the pivot d2 (mm)
+
+-->d2 = 50
+ d2 =
+
+ 50.
+
+-->//Distance of the force from the loose end d3 (mm)
+
+-->d3 = 750
+ d3 =
+
+ 750.
+
+
+The brake is not self-locking
+
+Tension in the band on the tight side(P1) = 15000.000000 N
+
+Tension in the band on the loose side(P2) = 5263.797108 N
+
+Actuating force(P) = 318.694128 N
+
+Torque capacity of the brake(Mt) = 2920.860868 N-m
+
\ No newline at end of file diff --git a/764/CH12/EX12.10.b/solution12_10.sce b/764/CH12/EX12.10.b/solution12_10.sce new file mode 100755 index 000000000..f91e5cd00 --- /dev/null +++ b/764/CH12/EX12.10.b/solution12_10.sce @@ -0,0 +1,28 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_10.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_10.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the tension in the band on tight side P1 (N) +P1 = sigmat * w * t +//Calculate the tension in the band on the loose side P2 (N) +P2 = P1/(%e^(mu * theta * %pi/180)) +//Calculate the actuating force on the lever P (N) +P = (P2 * d1 - P1 * d2)/(d3 + d1) +//Calculate the torque capacity of the brake Mt (N-m) +Mt = (P1 - P2)*R +//Check self-locking +if ((d1 / d2)>(%e^(mu * theta * %pi/180))) + printf("\nThe brake is not self-locking\n") +else + printf("\nThe brake is self-locking\n") +end +//Print results +printf("\nTension in the band on the tight side(P1) = %f N\n",P1) +printf("\nTension in the band on the loose side(P2) = %f N\n",P2) +printf("\nActuating force(P) = %f N\n",P) +printf("\nTorque capacity of the brake(Mt) = %f N-m\n",Mt/1000) diff --git a/764/CH12/EX12.11.a/result12_11.sce b/764/CH12/EX12.11.a/result12_11.sce new file mode 100755 index 000000000..3b47d037b --- /dev/null +++ b/764/CH12/EX12.11.a/result12_11.sce @@ -0,0 +1,2 @@ +//Example 12.11 from 'Brakes' cannot be coded because almost all the information is obtained from
+//the figure by construction.
diff --git a/764/CH12/EX12.12.a/data12_12.sci b/764/CH12/EX12.12.a/data12_12.sci new file mode 100755 index 000000000..7e19db69b --- /dev/null +++ b/764/CH12/EX12.12.a/data12_12.sci @@ -0,0 +1,14 @@ + +//(Brakes) Example 12.12 +//Troque capacity of the disk brake Mt (N-m) +Mt = 1500 +//Outer radius of the pad Ro (mm) +Ro = 150 +//Inner radius of the pad Ri (mm) +Ri = 100 +//Coefficient of friction mu +mu = 0.35 +//Average pressure on the pad pavg (MPa) +pavg = 2 +//Number of pads n +n = 2 diff --git a/764/CH12/EX12.12.b/result12_12.txt b/764/CH12/EX12.12.b/result12_12.txt new file mode 100755 index 000000000..a3917c001 --- /dev/null +++ b/764/CH12/EX12.12.b/result12_12.txt @@ -0,0 +1,47 @@ +-->//(Brakes) Example 12.12
+
+-->//Troque capacity of the disk brake Mt (N-m)
+
+-->Mt = 1500
+ Mt =
+
+ 1500.
+
+-->//Outer radius of the pad Ro (mm)
+
+-->Ro = 150
+ Ro =
+
+ 150.
+
+-->//Inner radius of the pad Ri (mm)
+
+-->Ri = 100
+ Ri =
+
+ 100.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.35
+ mu =
+
+ 0.35
+
+-->//Average pressure on the pad pavg (MPa)
+
+-->pavg = 2
+ pavg =
+
+ 2.
+
+-->//Number of pads n
+
+-->n = 2
+ n =
+
+ 2.
+
+
+Angular dimension of the pad(theta) = 77.543160 deg
+
\ No newline at end of file diff --git a/764/CH12/EX12.12.b/solution12_12.sce b/764/CH12/EX12.12.b/solution12_12.sce new file mode 100755 index 000000000..8a76cdef1 --- /dev/null +++ b/764/CH12/EX12.12.b/solution12_12.sce @@ -0,0 +1,21 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_12.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_12.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the torque capacity of each pad mt (N-m) +mt = Mt/n +//Calculate the friction radius Rf (mm) +Rf = (2 * (Ro^3 - Ri^3))/(3 * (Ro^2 - Ri^2)) +//Calculate the actuating force P (N) +P = (mt * 1000)/(mu * Rf) +//Calculate the area of the pad A (mm2) +A = P/pavg +//Calculate the angular dimension of the pad theta (deg) +theta = ((2 * A)/(Ro^2 - Ri^2))*180/%pi +//Print results +printf("\nAngular dimension of the pad(theta) = %f deg\n",theta) diff --git a/764/CH12/EX12.13.a/data12_13.sci b/764/CH12/EX12.13.a/data12_13.sci new file mode 100755 index 000000000..35731d7cd --- /dev/null +++ b/764/CH12/EX12.13.a/data12_13.sci @@ -0,0 +1,14 @@ + +//(Brakes) Example 12.13 +//Troque capacity of the disk brake Mt (N-m) +Mt = 1500 +//Number of caliper brakes on the wheel nb +nb = 3 +//Number of pads on each caliper brake np +np = 2 +//Coefficient of friction mu +mu = 0.35 +//Average pressure on the pad pavg (MPa) +pavg = 2 +//R/e ratio r +r = 0.2 diff --git a/764/CH12/EX12.13.a/table12_13.csv b/764/CH12/EX12.13.a/table12_13.csv new file mode 100755 index 000000000..be520b13a --- /dev/null +++ b/764/CH12/EX12.13.a/table12_13.csv @@ -0,0 +1,8 @@ +Refer Table 12.1 on page 495, +R/e,delta +0,1 +0.1,0.9833 +0.2,0.9693 +0.3,0.9572 +0.4,0.9467 +0.5,0.9375 diff --git a/764/CH12/EX12.13.b/result12_13.txt b/764/CH12/EX12.13.b/result12_13.txt new file mode 100755 index 000000000..78046e7a7 --- /dev/null +++ b/764/CH12/EX12.13.b/result12_13.txt @@ -0,0 +1,47 @@ +-->//(Brakes) Example 12.13
+
+-->//Troque capacity of the disk brake Mt (N-m)
+
+-->Mt = 1500
+ Mt =
+
+ 1500.
+
+-->//Number of caliper brakes on the wheel nb
+
+-->nb = 3
+ nb =
+
+ 3.
+
+-->//Number of pads on each caliper brake np
+
+-->np = 2
+ np =
+
+ 2.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.35
+ mu =
+
+ 0.35
+
+-->//Average pressure on the pad pavg (MPa)
+
+-->pavg = 2
+ pavg =
+
+ 2.
+
+-->//R/e ratio r
+
+-->r = 0.2
+ r =
+
+ 0.2
+
+
+Radius of the pad(R) = 28.625602 mm
+
\ No newline at end of file diff --git a/764/CH12/EX12.13.b/solution12_13.sce b/764/CH12/EX12.13.b/solution12_13.sce new file mode 100755 index 000000000..57eb6595d --- /dev/null +++ b/764/CH12/EX12.13.b/solution12_13.sce @@ -0,0 +1,24 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_13.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_13.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the torque capacity of one pad mt (N-m) +mt = Mt/(nb * np) +//Read the csv file containing table 12.1 +numeric = read_csv(path + filesep() + 'table12_13.csv') +//Obtain the value of delta +for row = 3:1:%inf + if (evstr(numeric(row,1)) == r) + delta = evstr(numeric(row,2)) + break + end +end +//Calculate the radius of the pad R (mm) +R = (mt * 1000/(mu * pavg * %pi * (delta/r)))^(1/3) +//Print results +printf("\nRadius of the pad(R) = %f mm\n",R) diff --git a/764/CH12/EX12.14.a/data12_14.sci b/764/CH12/EX12.14.a/data12_14.sci new file mode 100755 index 000000000..57e133519 --- /dev/null +++ b/764/CH12/EX12.14.a/data12_14.sci @@ -0,0 +1,14 @@ + +//(Brakes) Example 12.14 +//Mass of the flywheel M (kg) +M = 100 +//Radius of gyration of the flywheel k (mm) +k = 350 +//Speed of the flywheel n (rpm) +n = 500 +//Mass of the brake drum m (kg) +m = 5 +//Specific heat capacity of the brake drum c (J/kgK) +c = 460 +//Final velocity of the flywheel w2 (rad/s) +w2 = 0 diff --git a/764/CH12/EX12.14.b/result12_14.txt b/764/CH12/EX12.14.b/result12_14.txt new file mode 100755 index 000000000..66a403cdb --- /dev/null +++ b/764/CH12/EX12.14.b/result12_14.txt @@ -0,0 +1,49 @@ +-->//(Brakes) Example 12.14
+
+-->//Mass of the flywheel M (kg)
+
+-->M = 100
+ M =
+
+ 100.
+
+-->//Radius of gyration of the flywheel k (mm)
+
+-->k = 350
+ k =
+
+ 350.
+
+-->//Speed of the flywheel n (rpm)
+
+-->n = 500
+ n =
+
+ 500.
+
+-->//Mass of the brake drum m (kg)
+
+-->m = 5
+ m =
+
+ 5.
+
+-->//Specific heat capacity of the brake drum c (J/kgK)
+
+-->c = 460
+ c =
+
+ 460.
+
+-->//Final velocity of the flywheel w2 (rad/s)
+
+-->w2 = 0
+ w2 =
+
+ 0.
+
+
+Temperature rise of the brake drum(t) = 7.300885 deg celsius
+
+The printed answer is erroneous
+
\ No newline at end of file diff --git a/764/CH12/EX12.14.b/solution12_14.sce b/764/CH12/EX12.14.b/solution12_14.sce new file mode 100755 index 000000000..8142093ed --- /dev/null +++ b/764/CH12/EX12.14.b/solution12_14.sce @@ -0,0 +1,18 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_14.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_14.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the initial angular velocity of the flywheel w1 (rad/s) +w1 = (2 * %pi * n)/60 +//Calculate the KE of the flywheel KE (J) +KE = 0.5 * M * (k/1000)^2 * (w1^2 - w2^2) +//Calculate the temperature rise of the drum t (deg celsius) +t = KE/(m * c) +//Print results +printf("\nTemperature rise of the brake drum(t) = %f deg celsius\n",t) +printf("\nThe printed answer is erroneous\n") diff --git a/764/CH12/EX12.2.a/data12_2.sci b/764/CH12/EX12.2.a/data12_2.sci new file mode 100755 index 000000000..4d113a906 --- /dev/null +++ b/764/CH12/EX12.2.a/data12_2.sci @@ -0,0 +1,20 @@ + +//(Brakes) Example 12.2 +//Total mass of the car m (kg) +m = 1000 +//Moment of inertia of each wheel about its transverse axis I (kg-m2) +I = 0.5 +//Rolling radius of the wheel R (m) +R = 0.35 +//Moment of inertia of other parts of the car Ie (kg-m2) +Ie = 2.5 +//Ratio of speed of engine to the speed of wheels r +r = 5 +//Speed of the car v1 (km/h) +v1 = 100 +//Car deceleration dec (m/s2) +dec = 0.5 * 9.81 +//Final speed of the car v2 (km/h) +v2 = 0 +//Number of wheels n +n = 4 diff --git a/764/CH12/EX12.2.b/result12_2.txt b/764/CH12/EX12.2.b/result12_2.txt new file mode 100755 index 000000000..0fd8cbe6e --- /dev/null +++ b/764/CH12/EX12.2.b/result12_2.txt @@ -0,0 +1,72 @@ +-->//(Brakes) Example 12.2
+
+-->//Total mass of the car m (kg)
+
+-->m = 1000
+ m =
+
+ 1000.
+
+-->//Moment of inertia of each wheel about its transverse axis I (kg-m2)
+
+-->I = 0.5
+ I =
+
+ 0.5
+
+-->//Rolling radius of the wheel R (m)
+
+-->R = 0.35
+ R =
+
+ 0.35
+
+-->//Moment of inertia of other parts of the car Ie (kg-m2)
+
+-->Ie = 2.5
+ Ie =
+
+ 2.5
+
+-->//Ratio of speed of engine to the speed of wheels r
+
+-->r = 5
+ r =
+
+ 5.
+
+-->//Speed of the car v1 (km/h)
+
+-->v1 = 100
+ v1 =
+
+ 100.
+
+-->//Car deceleration dec (m/s2)
+
+-->dec = 0.5 * 9.81
+ dec =
+
+ 4.905
+
+-->//Final speed of the car v2 (km/h)
+
+-->v2 = 0
+ v2 =
+
+ 0.
+
+-->//Number of wheels n
+
+-->n = 4
+ n =
+
+ 4.
+
+
+Energy absorbed by each brake(E) = 147234.819854 J
+
+Torque capacity of each brake(Mt) = 655.167857 N-m
+
+There is an error in the printed answer
+
\ No newline at end of file diff --git a/764/CH12/EX12.2.b/solution12_2.sce b/764/CH12/EX12.2.b/solution12_2.sce new file mode 100755 index 000000000..4a3d4edf6 --- /dev/null +++ b/764/CH12/EX12.2.b/solution12_2.sce @@ -0,0 +1,31 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_2.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_2.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the KE of the car KEcar (J) +KEcar = 0.5 * m * ((v1*(5/18))^2 - (v2*(5/18))^2) +//Calculate the initial angular velocity of the wheels w1 (rad/s) +w1 = ((v1*(5/18))/R) +//Calculate the final angular velocity of the wheels w2 (rad/s) +w2 = ((v2*(5/18))/R) +//Calculate the KE of the wheels KEwheel (J) +KEwheel = n * 0.5 * I * (w1^2 - w2^2) +//Calculate the KE of other parts KEother (J) +KEother = 0.5 * Ie * ((r * w1)^2 - w2^2) +//Calculate the energy absorbed by each brake E (J) +E = (KEcar + KEwheel + KEother)/n +//Calculate the time required to bring the car to the rest t (sec) +t = ((v1*(5/18)) - (v2*(5/18)))/dec +//Calculate the average velocity during the braking period wavg (rad/s) +wavg = (w1 + w2)/2 +//Calculate the torque capacity of each brake Mt (N-m) +Mt = E/(wavg * t) +//Print results +printf("\nEnergy absorbed by each brake(E) = %f J\n",E) +printf("\nTorque capacity of each brake(Mt) = %f N-m\n",Mt) +printf("\nThere is an error in the printed answer\n") diff --git a/764/CH12/EX12.3.a/data12_3.sci b/764/CH12/EX12.3.a/data12_3.sci new file mode 100755 index 000000000..20a9d8d34 --- /dev/null +++ b/764/CH12/EX12.3.a/data12_3.sci @@ -0,0 +1,16 @@ + +//(Brakes) Example 12.3 +//Mass m (kg) +m = 2500 +//Initial velocity of the mass v1 (m/s) +v1 = 1.5 +//Mass of the drum M (kg) +M = 50 +//Radius of gyration of the drum k (m) +k = 0.7 +//Mass is brought to rest in a distance of h (m) +h = 0.5 +//Radius of the drum R (m) +R = 0.75 +//Final velocity of the mass v2 (m/s) +v2 = 0 diff --git a/764/CH12/EX12.3.b/result12_3.txt b/764/CH12/EX12.3.b/result12_3.txt new file mode 100755 index 000000000..50bbbf19c --- /dev/null +++ b/764/CH12/EX12.3.b/result12_3.txt @@ -0,0 +1,56 @@ +-->//(Brakes) Example 12.3
+
+-->//Mass m (kg)
+
+-->m = 2500
+ m =
+
+ 2500.
+
+-->//Initial velocity of the mass v1 (m/s)
+
+-->v1 = 1.5
+ v1 =
+
+ 1.5
+
+-->//Mass of the drum M (kg)
+
+-->M = 50
+ M =
+
+ 50.
+
+-->//Radius of gyration of the drum k (m)
+
+-->k = 0.7
+ k =
+
+ 0.7
+
+-->//Mass is brought to rest in a distance of h (m)
+
+-->h = 0.5
+ h =
+
+ 0.5
+
+-->//Radius of the drum R (m)
+
+-->R = 0.75
+ R =
+
+ 0.75
+
+-->//Final velocity of the mass v2 (m/s)
+
+-->v2 = 0
+ v2 =
+
+ 0.
+
+
+Energy absorbed by the brakes(E) = 15124.000000 J
+
+Torque capacity of the brakes(Mt) = 22686.000000 N-m
+
\ No newline at end of file diff --git a/764/CH12/EX12.3.b/solution12_3.sce b/764/CH12/EX12.3.b/solution12_3.sce new file mode 100755 index 000000000..eb0ea4c1e --- /dev/null +++ b/764/CH12/EX12.3.b/solution12_3.sce @@ -0,0 +1,28 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_3.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_3.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the KE of the mass KEmass (J) +KEmass = 0.5 * m * (v1^2 - v2^2) +//Calculate the initial velocity of the drum w1 (rad/s) +w1 = v1/R +//Calculate the final velocity of the drum w2 (rad/s) +w2 = v2/R +//Calculate the KE of the drum KEdrum (J) +KEdrum = 0.5 * M * k^2 * (w1^2 - w2^2) +//Calculate the PE of the mass PEmass (J) +PEmass = m * 9.81 * h +//Calculate the total energy absorbed by the brakes E (J) +E = KEmass + KEdrum + PEmass +//Calculate the angle through which the drum rotates during the braking period theta (rad) +theta = (h/R) +//Calculate the torque capacity of the brake Mt (N-m) +Mt = E/theta +//Print results +printf("\nEnergy absorbed by the brakes(E) = %f J\n",E) +printf("\nTorque capacity of the brakes(Mt) = %f N-m\n",Mt) diff --git a/764/CH12/EX12.4.a/data12_4.sci b/764/CH12/EX12.4.a/data12_4.sci new file mode 100755 index 000000000..ba74a4137 --- /dev/null +++ b/764/CH12/EX12.4.a/data12_4.sci @@ -0,0 +1,22 @@ + +//(Brakes) Example 12.4 +//Torque capacity of the block brake Mt (N-m) +Mt = 250 +//Speed of the brake n (rpm) +n = 100 +//Coefficient of friction mu +mu = 0.35 +//Intensity of pressure between the block and the drum p (N/mm2) +p = 1 +//Ratio of the length of the block to its width r +r = 2 +//Distance of the actuating force from the block d1 (mm) +d1 = 300 +//Distance of the lever pivot from the block d2 (mm) +d2 = 200 +//Distance between the lever pivot from the contact area d3 (mm) +d3 = 50 +//Radius of the drum R (mm) +R = 200 +//Final velocity of the brake drum v2 (m/s) +v2 = 0 diff --git a/764/CH12/EX12.4.b/result12_4.txt b/764/CH12/EX12.4.b/result12_4.txt new file mode 100755 index 000000000..4e63e6150 --- /dev/null +++ b/764/CH12/EX12.4.b/result12_4.txt @@ -0,0 +1,93 @@ +-->//(Brakes) Example 12.4
+
+-->//Torque capacity of the block brake Mt (N-m)
+
+-->Mt = 250
+ Mt =
+
+ 250.
+
+-->//Speed of the brake n (rpm)
+
+-->n = 100
+ n =
+
+ 100.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.35
+ mu =
+
+ 0.35
+
+-->//Intensity of pressure between the block and the drum p (N/mm2)
+
+-->p = 1
+ p =
+
+ 1.
+
+-->//Ratio of the length of the block to its width r
+
+-->r = 2
+ r =
+
+ 2.
+
+-->//Distance of the actuating force from the block d1 (mm)
+
+-->d1 = 300
+ d1 =
+
+ 300.
+
+-->//Distance of the lever pivot from the block d2 (mm)
+
+-->d2 = 200
+ d2 =
+
+ 200.
+
+-->//Distance between the lever pivot from the contact area d3 (mm)
+
+-->d3 = 50
+ d3 =
+
+ 50.
+
+-->//Radius of the drum R (mm)
+
+-->R = 200
+ R =
+
+ 200.
+
+-->//Final velocity of the brake drum v2 (m/s)
+
+-->v2 = 0
+ v2 =
+
+ 0.
+
+
+The brake is not self-locking
+
+FOR CLOCKWISE ROTATION
+
+Actuating force(Pc) = 1303.571429 N
+
+Reaction at the hinge pin(Rc) = 2589.532008 N
+
+FOR ANTICLOCKWISE ROTATION
+
+Actuating force(Pcc) = 1553.571429 N
+
+Reaction at the hinge pin(Rcc) = 2373.656978 N
+
+Rate of heat generated(E) = 1308.996939 W
+
+Width of the block(w) = 42.257713 or 45.000000 mm
+
+Length of the block(l) = 90.000000 mm
+
\ No newline at end of file diff --git a/764/CH12/EX12.4.b/solution12_4.sce b/764/CH12/EX12.4.b/solution12_4.sce new file mode 100755 index 000000000..25b7d4c67 --- /dev/null +++ b/764/CH12/EX12.4.b/solution12_4.sce @@ -0,0 +1,55 @@ +//Function to round-up a value such that it is divisible by 5 +function[v] = round_five(w) + v = ceil(w) + rem = pmodulo(v,5) + if (rem ~= 0) + v = v + (5 - rem) + end +endfunction + +//Obtain path of solution file +path = get_absolute_file_path('solution12_4.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_4.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the normal reaction of the drum on the lever N (N) +N = (Mt * 1000)/(mu * R) +//For CLOCKWISE ROTATION +//Calculate the actuating force P (N) +Pc = ((N * d2) - (mu * N * d3))/(d1 + d2) +//Calculate the reaction at the pivot R (N) +Rc = sqrt((mu * N)^2 + (N - Pc)^2) +//For ANTICLOCKWISE ROTATION +//Calculate the actuating force P (N) +Pcc = ((N * d2) + (mu * N * d3))/(d1 + d2) +//Calculate the reaction at the pivot R (N) +Rcc = sqrt((mu * N)^2 + (N - Pcc)^2) +//Calculate the initial velocity of the drum v1 (m/s) +v1 = (2 * %pi * n * (R/1000))/60 +//Calculate the average velocity of the drum vavg (m/s) +vavg = (v1 + v2)/2 +//Calculate the rate of heat generated during braking action E (W) +E = mu * N * vavg +//Calculate the width of the block w (mm) +w = sqrt(N/(p * r)) +//Calculate the length of the block l (mm) +l = r * round_five(w) +//Check self-locking tendency +if ((d2/d3) == mu) + printf("\nThe brake is self-locking\n") +else + printf("\nThe brake is not self-locking\n") +end +//Print results +printf("\nFOR CLOCKWISE ROTATION\n") +printf("\nActuating force(Pc) = %f N\n",Pc) +printf("\nReaction at the hinge pin(Rc) = %f N\n",Rc) +printf("\nFOR ANTICLOCKWISE ROTATION\n") +printf("\nActuating force(Pcc) = %f N\n",Pcc) +printf("\nReaction at the hinge pin(Rcc) = %f N\n",Rcc) +printf("\nRate of heat generated(E) = %f W\n",E) +printf("\nWidth of the block(w) = %f or %f mm\n",w,round_five(w)) +printf("\nLength of the block(l) = %f mm\n",l) diff --git a/764/CH12/EX12.5.a/result12_5.sce b/764/CH12/EX12.5.a/result12_5.sce new file mode 100755 index 000000000..3beaf3b81 --- /dev/null +++ b/764/CH12/EX12.5.a/result12_5.sce @@ -0,0 +1,2 @@ +//Example 12.5 from 'Brakes' cannot be coded because almost all the information is obtained from the figure.
+//The entire solution is based on the free-body diagram and not on formulae.
\ No newline at end of file diff --git a/764/CH12/EX12.6.a/data12_6.sci b/764/CH12/EX12.6.a/data12_6.sci new file mode 100755 index 000000000..c07d0209d --- /dev/null +++ b/764/CH12/EX12.6.a/data12_6.sci @@ -0,0 +1,16 @@ + +//(Brakes) Example 12.6 +//Limit of the product pv +pv = 2 +//Coefficient of friction between the drum and the friction lining mu +mu = 0.2 +//Gear ratio between the brake and cable drum g +g = 4 +//Permissible intensity of pressure on friction lining pmax (N/mm2) +pmax = 1 +//Radius of the brake drum Rb (mm) +Rb = 200 +//Radius of the cable drum Rc (mm) +Rc = 150 +//Mass attached to the cable drum m (kg) +m = 500 diff --git a/764/CH12/EX12.6.b/result12_6.txt b/764/CH12/EX12.6.b/result12_6.txt new file mode 100755 index 000000000..7f3ca7639 --- /dev/null +++ b/764/CH12/EX12.6.b/result12_6.txt @@ -0,0 +1,58 @@ +-->//(Brakes) Example 12.6
+
+-->//Limit of the product pv
+
+-->pv = 2
+ pv =
+
+ 2.
+
+-->//Coefficient of friction between the drum and the friction lining mu
+
+-->mu = 0.2
+ mu =
+
+ 0.2
+
+-->//Gear ratio between the brake and cable drum g
+
+-->g = 4
+ g =
+
+ 4.
+
+-->//Permissible intensity of pressure on friction lining pmax (N/mm2)
+
+-->pmax = 1
+ pmax =
+
+ 1.
+
+-->//Radius of the brake drum Rb (mm)
+
+-->Rb = 200
+ Rb =
+
+ 200.
+
+-->//Radius of the cable drum Rc (mm)
+
+-->Rc = 150
+ Rc =
+
+ 150.
+
+-->//Mass attached to the cable drum m (kg)
+
+-->m = 500
+ m =
+
+ 500.
+
+
+Brake shoe force(P) = 4598.437500 N
+
+Area of friction lining(A) = 4598.437500 mm2
+
+Uniform velocity at which the mass can be lowered(v1) = 0.375000 m/s or 22.500000 m/min
+
\ No newline at end of file diff --git a/764/CH12/EX12.6.b/solution12_6.sce b/764/CH12/EX12.6.b/solution12_6.sce new file mode 100755 index 000000000..6411e914e --- /dev/null +++ b/764/CH12/EX12.6.b/solution12_6.sce @@ -0,0 +1,25 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_6.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_6.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the actuating force P (N) +P = (m * 9.81 * Rc)/(g * mu * Rb) +//Calculate the area of friction lining A (mm2) +A = P/pmax +//Calculate the peripheral velocity of the brake drum v2 (m/s) +v2 = pv/pmax +//Calculate the angular velocity of the brake drum w2 (rad/s) +w2 = v2/Rb +//Calculate the angular velocity of the cable drum w1 (rad/s) +w1 = w2/g +//Calculate the peripheral velocity of the cable drum v1 (m/s) +v1 = w1 * Rc +//Print results +printf("\nBrake shoe force(P) = %f N\n",P) +printf("\nArea of friction lining(A) = %f mm2\n",A) +printf("\nUniform velocity at which the mass can be lowered(v1) = %f m/s or %f m/min\n",v1,v1*60) diff --git a/764/CH12/EX12.7.a/data12_7.sci b/764/CH12/EX12.7.a/data12_7.sci new file mode 100755 index 000000000..b2bdb3939 --- /dev/null +++ b/764/CH12/EX12.7.a/data12_7.sci @@ -0,0 +1,12 @@ + +//(Brakes) Example 12.7 +//Angle subtended by the block at the drum theta (deg) +theta = 100 +//Diameter of the brake drum D (mm) +D = 500 +//Width of the friction lining w (mm) +w = 100 +//Coefficient of friction mu +mu = 0.2 +//Maximum intensity of pressure pmax (N/mm2) +pmax = 0.5 diff --git a/764/CH12/EX12.7.b/result12_7.txt b/764/CH12/EX12.7.b/result12_7.txt new file mode 100755 index 000000000..35a61dff0 --- /dev/null +++ b/764/CH12/EX12.7.b/result12_7.txt @@ -0,0 +1,46 @@ +-->//(Brakes) Example 12.7
+
+-->//Angle subtended by the block at the drum theta (deg)
+
+-->theta = 100
+ theta =
+
+ 100.
+
+-->//Diameter of the brake drum D (mm)
+
+-->D = 500
+ D =
+
+ 500.
+
+-->//Width of the friction lining w (mm)
+
+-->w = 100
+ w =
+
+ 100.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.2
+ mu =
+
+ 0.2
+
+-->//Maximum intensity of pressure pmax (N/mm2)
+
+-->pmax = 0.5
+ pmax =
+
+ 0.5
+
+
+Distance of pivot from axis of the drum(h) = 280.588279 mm
+
+Torque capacity of each shoe(Mt) = 957555.553899 N-mm
+
+Reaction in x-direction(Rx) = 17063.356281 N
+
+Reaction in y-direction(Ry) = 3412.671256 N
+
\ No newline at end of file diff --git a/764/CH12/EX12.7.b/solution12_7.sce b/764/CH12/EX12.7.b/solution12_7.sce new file mode 100755 index 000000000..8c340cd2a --- /dev/null +++ b/764/CH12/EX12.7.b/solution12_7.sce @@ -0,0 +1,21 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_7.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_7.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the distance of the pivot from the axis of the drum h (mm) +h = (4 * (D/2) * sind(theta/2))/((theta * %pi/180) + sind(theta)) +//Calculate the torque capacity of each shoe Mt (N-mm) +Mt = 2 * mu * (D/2)^2 * w * pmax * sind(theta/2) +//Calculate the reactions at the pivot Rx and Ry (N) +Rx = 0.5 * (D/2) * w * pmax * ((theta * %pi/180) + sind(theta)) +Ry = 0.5 * mu * (D/2) * w * pmax * ((theta * %pi/180) + sind(theta)) +//Print results +printf("\nDistance of pivot from axis of the drum(h) = %f mm\n",h) +printf("\nTorque capacity of each shoe(Mt) = %f N-mm\n",Mt) +printf("\nReaction in x-direction(Rx) = %f N\n",Rx) +printf("\nReaction in y-direction(Ry) = %f N\n",Ry) diff --git a/764/CH12/EX12.8.a/data12_8.sci b/764/CH12/EX12.8.a/data12_8.sci new file mode 100755 index 000000000..4b77be821 --- /dev/null +++ b/764/CH12/EX12.8.a/data12_8.sci @@ -0,0 +1,26 @@ + +//(Brakes) Example 12.8 +//Face width of the friction lining w (mm) +w = 40 +//Maximum intensity of normal pressure pmax (N/mm2) +pmax = 1 +//Coefficient of friction mu +mu = 0.32 +//Radius of the drum R (mm) +R = 125 +//All angles are taken from the same reference +//Angles of the shoe theta1 and theta2 +theta1 = 0 +theta2 = 120 +//Distance of the force from the horizontal centerline d1 (mm) +d1 = 100.9 +//Distance of the pivot from the horizontal centerline d2 (mm) +d2 = 86.6 +//Distance of the pivot from the vertical centerline d3 (mm) +d3 = 50 +//Maximum normal pressure occurs at angle fi (deg) +if (theta2 > 90) + fi = 90 +else + fi = theta2 +end diff --git a/764/CH12/EX12.8.b/result12_8.txt b/764/CH12/EX12.8.b/result12_8.txt new file mode 100755 index 000000000..45480db8b --- /dev/null +++ b/764/CH12/EX12.8.b/result12_8.txt @@ -0,0 +1,81 @@ +-->//(Brakes) Example 12.8
+
+-->//Face width of the friction lining w (mm)
+
+-->w = 40
+ w =
+
+ 40.
+
+-->//Maximum intensity of normal pressure pmax (N/mm2)
+
+-->pmax = 1
+ pmax =
+
+ 1.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.32
+ mu =
+
+ 0.32
+
+-->//Radius of the drum R (mm)
+
+-->R = 125
+ R =
+
+ 125.
+
+-->//All angles are taken from the same reference
+
+-->//Angles of the shoe theta1 and theta2
+
+-->theta1 = 0
+ theta1 =
+
+ 0.
+
+-->theta2 = 120
+ theta2 =
+
+ 120.
+
+-->//Distance of the force from the horizontal centerline d1 (mm)
+
+-->d1 = 100.9
+ d1 =
+
+ 100.9
+
+-->//Distance of the pivot from the horizontal centerline d2 (mm)
+
+-->d2 = 86.6
+ d2 =
+
+ 86.6
+
+-->//Distance of the pivot from the vertical centerline d3 (mm)
+
+-->d3 = 50
+ d3 =
+
+ 50.
+
+-->//Maximum normal pressure occurs at angle fi (deg)
+
+-->if (theta2 > 90)
+--> fi = 90
+ fi =
+
+ 90.
+-->else
+--> fi = theta2
+-->end
+
+
+Actuating force(P) = 2089.795894 N
+
+Torque absorbing capacity of the brake(Mt) = 434831.051530 N-mm
+
\ No newline at end of file diff --git a/764/CH12/EX12.8.b/solution12_8.sce b/764/CH12/EX12.8.b/solution12_8.sce new file mode 100755 index 000000000..ab5e86c78 --- /dev/null +++ b/764/CH12/EX12.8.b/solution12_8.sce @@ -0,0 +1,36 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_8.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_8.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//Calculate the distance of the pivot from the axis of the brake drum h (mm) +h= sqrt(d2^2 + d3^2) +//For RIGHT SHOE +//Calculate the moment of the frictional force about the pivot Mf (N-mm) +Mf = mu * pmax * R * w * (4 * R * (cosd(theta1) - cosd(theta2)) - h * (cosd(2 * theta1) - cosd(2 * theta2)))/(4 * sind(fi)) +//Calculate the moment of the normal force about the pivot Mn (N-mm) +Mn = pmax * R * w * h * (2 * (theta2 - theta1) * (%pi/180) - (sind(2 * theta2) - sind(2 * theta1)))/(4 * sind(fi)) +//Calculate the actuating force P (N) +P = (Mn - Mf)/(d1 + d2) +//Calculate the torque absorbing capacity Mtr +Mtr = mu * R^2 * pmax * w * (cosd(theta1) - cosd(theta2))/sind(fi) +//For LEFT SHOE +//Assume the maximum intensity of pressure for LEFT SHOE to be 1 N/mm2 plmax +plmax = 1 +//Calculate the moment of the frictional force about the pivot Mfl (N-mm) +Mlf = Mf * plmax/pmax +//Calculate the moment of the normal force about the pivot Mnl (N-mm) +Mln = Mn * plmax/pmax +//Calculate the actual maximum intensity of pressure plmax (N/mm2) +plmax = P * (d1 + d2)/(Mlf + Mln) +//Calculate the torque absorbing capacity Mtl (N-mm) +Mtl = Mtr * (plmax/pmax) +//Calculate the total torque absorbing capacity of the brake Mt (N-mm) +Mt = Mtr + Mtl +//Print results +printf("\nActuating force(P) = %f N\n",P) +printf("\nTorque absorbing capacity of the brake(Mt) = %f N-mm\n",Mt) diff --git a/764/CH12/EX12.9.a/data12_9.sci b/764/CH12/EX12.9.a/data12_9.sci new file mode 100755 index 000000000..c716f7203 --- /dev/null +++ b/764/CH12/EX12.9.a/data12_9.sci @@ -0,0 +1,26 @@ + +//(Brakes) Example 12.9 +//Face width of the friction lining w (mm) +w = 50 +//Maximum intensity of normal pressure pmax (N/mm2) +pmax = 1 +//Coefficient of friction mu +mu = 0.3 +//Radius of the drum R (mm) +R = 250 +//All angles are taken from the same reference +//Angles of the shoe theta1 and theta2 +theta1 = 15 +theta2 = 75 +//Maximum normal pressure occurs at angle fi (deg) +if (theta2 > 90) + fi = 90 +else + fi = theta2 +end +//Distance of the force from the horizontal centerline d1 (mm) +d1 = 200 +//The distance of the pivot from the axis of the brake drum h (mm) +h= 200 +//Distance of the pivot from the vertical centerline d2 (mm) +d2 = 50 diff --git a/764/CH12/EX12.9.b/result12_9.txt b/764/CH12/EX12.9.b/result12_9.txt new file mode 100755 index 000000000..6cf2d5555 --- /dev/null +++ b/764/CH12/EX12.9.b/result12_9.txt @@ -0,0 +1,81 @@ +-->//(Brakes) Example 12.9
+
+-->//Face width of the friction lining w (mm)
+
+-->w = 50
+ w =
+
+ 50.
+
+-->//Maximum intensity of normal pressure pmax (N/mm2)
+
+-->pmax = 1
+ pmax =
+
+ 1.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.3
+ mu =
+
+ 0.3
+
+-->//Radius of the drum R (mm)
+
+-->R = 250
+ R =
+
+ 250.
+
+-->//All angles are taken from the same reference
+
+-->//Angles of the shoe theta1 and theta2
+
+-->theta1 = 15
+ theta1 =
+
+ 15.
+
+-->theta2 = 75
+ theta2 =
+
+ 75.
+
+-->//Maximum normal pressure occurs at angle fi (deg)
+
+-->if (theta2 > 90)
+--> fi = 90
+-->else
+--> fi = theta2
+ fi =
+
+ 75.
+-->end
+
+-->//Distance of the force from the horizontal centerline d1 (mm)
+
+-->d1 = 200
+ d1 =
+
+ 200.
+
+-->//The distance of the pivot from the axis of the brake drum h (mm)
+
+-->h= 200
+ h =
+
+ 200.
+
+-->//Distance of the pivot from the vertical centerline d2 (mm)
+
+-->d2 = 50
+ d2 =
+
+ 50.
+
+
+Actuating force(P) = 5025.457606 N
+
+Torque absorbing capacity of the brake with 4 shoes(Mt) = 2181614.276244 N-mm
+
\ No newline at end of file diff --git a/764/CH12/EX12.9.b/solution12_9.sce b/764/CH12/EX12.9.b/solution12_9.sce new file mode 100755 index 000000000..f219618a5 --- /dev/null +++ b/764/CH12/EX12.9.b/solution12_9.sce @@ -0,0 +1,34 @@ + +//Obtain path of solution file +path = get_absolute_file_path('solution12_9.sce') +//Obtain path of data file +datapath = path + filesep() + 'data12_9.sci' +//Clear all +clc +//Execute the data file +exec(datapath) +//For RIGHT SHOE +//Calculate the moment of the frictional force about the pivot Mf (N-mm) +Mf = mu * pmax * R * w * (4 * R * (cosd(theta1) - cosd(theta2)) - h * (cosd(2 * theta1) - cosd(2 * theta2)))/(4 * sind(fi)) +//Calculate the moment of the normal force about the pivot Mn (N-mm) +Mn = pmax * R * w * h * (2 * (theta2 - theta1) * (%pi/180) - (sind(2 * theta2) - sind(2 * theta1)))/(4 * sind(fi)) +//Calculate the actuating force P (N) +P = (Mn - Mf)/d1 +//Calculate the torque absorbing capacity Mtr +Mtr = mu * R^2 * pmax * w * (cosd(theta1) - cosd(theta2))/sind(fi) +//For LEFT SHOE +//Assume the maximum intensity of pressure for LEFT SHOE to be 1 N/mm2 plmax +plmax = 1 +//Calculate the moment of the frictional force about the pivot Mfl (N-mm) +Mlf = Mf * plmax/pmax +//Calculate the moment of the normal force about the pivot Mnl (N-mm) +Mln = Mn * plmax/pmax +//Calculate the actual maximum intensity of pressure plmax (N/mm2) +plmax = P * d1/(Mlf + Mln) +//Calculate the torque absorbing capacity Mtl (N-mm) +Mtl = Mtr * (plmax/pmax) +//Calculate the total torque absorbing capacity of the brake Mt (N-mm) +Mt = Mtr + Mtl +//Print results +printf("\nActuating force(P) = %f N\n",P) +printf("\nTorque absorbing capacity of the brake with 4 shoes(Mt) = %f N-mm\n",2*Mt) diff --git a/764/CH14/EX14.1.a/data14_1.sci b/764/CH14/EX14.1.a/data14_1.sci new file mode 100755 index 000000000..2e1a0cc23 --- /dev/null +++ b/764/CH14/EX14.1.a/data14_1.sci @@ -0,0 +1,14 @@ +
+//(Chain Drives) Example 14.1
+//Number of teeth on the driving sprocket z1
+z1 = 17
+//Speed of the driving sprocket n1 (rpm)
+n1 = 1000
+//Change the following data according to ISO chain number from table 14.1 on page 547
+//For single stranded Chain-12A
+//pitch p (mm)
+p = 19.05
+//breaking load Pmax (N)
+Pmax = 31100
+//Refer table 14.2 on page 550 for power rating kW at given rpm
+kW = 14.32
diff --git a/764/CH14/EX14.1.b/result14_1.txt b/764/CH14/EX14.1.b/result14_1.txt new file mode 100755 index 000000000..b11445db1 --- /dev/null +++ b/764/CH14/EX14.1.b/result14_1.txt @@ -0,0 +1,44 @@ +-->//(Chain Drives) Example 14.1
+
+-->//Number of teeth on the driving sprocket z1
+
+-->z1 = 17
+ z1 =
+
+ 17.
+
+-->//Speed of the driving sprocket n1 (rpm)
+
+-->n1 = 1000
+ n1 =
+
+ 1000.
+
+-->//Change the following data according to ISO chain number from table 14.1 on page 547
+
+-->//For single stranded Chain-12A
+
+-->//pitch p (mm)
+
+-->p = 19.05
+ p =
+
+ 19.05
+
+-->//breaking load Pmax (N)
+
+-->Pmax = 31100
+ Pmax =
+
+ 31100.
+
+-->//Refer table 14.2 on page 550 for power rating kW at given rpm
+
+-->kW = 14.32
+ kW =
+
+ 14.32
+
+
+Factor of safety for standard power rating(fs) = 11.722224
+
\ No newline at end of file diff --git a/764/CH14/EX14.1.b/solution14_1.sce b/764/CH14/EX14.1.b/solution14_1.sce new file mode 100755 index 000000000..120a82fc7 --- /dev/null +++ b/764/CH14/EX14.1.b/solution14_1.sce @@ -0,0 +1,17 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution14_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data14_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the velocity of the sprocket v (m/s)
+v = z1 * p * n1/(60 * (10^3))
+//Calculate the chain tension at the rated power P1 (N)
+P1 = (1000 * kW)/v
+//Calculate the factor of safety fs
+fs = Pmax/P1
+//Print results
+printf("\nFactor of safety for standard power rating(fs) = %f\n",fs)
diff --git a/764/CH14/EX14.2.a/data14_2.sci b/764/CH14/EX14.2.a/data14_2.sci new file mode 100755 index 000000000..d05b33819 --- /dev/null +++ b/764/CH14/EX14.2.a/data14_2.sci @@ -0,0 +1,19 @@ +
+//(Chain Drives) Example 14.2
+//Power delivered by the rotary engine kW
+kWd = 30
+//Efficiency of the drive between the engine and the intermediate shaft eta (%)
+eta = 90
+//Number of teeth on the driving sprocket z1
+z1 = 17
+//Speed of the driving sprocket n1 (rpm)
+n1 = 300
+//Change the following data accordingly
+//Find service factor for moderate shock conditions from table 14.3 on page 551
+Ks = 1.4
+//Find multiple strand factor from table 14.4 on page 551
+//For 4 strands
+K1 = 3.3
+//Find the tooth correction factor from table 14.5 on page 551
+//For 17 teeth
+K2 = 1
diff --git a/764/CH14/EX14.2.b/result14_2.txt b/764/CH14/EX14.2.b/result14_2.txt new file mode 100755 index 000000000..67c15bebd --- /dev/null +++ b/764/CH14/EX14.2.b/result14_2.txt @@ -0,0 +1,62 @@ +-->//(Chain Drives) Example 14.2
+
+-->//Power delivered by the rotary engine kW
+
+-->kWd = 30
+ kWd =
+
+ 30.
+
+-->//Efficiency of the drive between the engine and the intermediate shaft eta (%)
+
+-->eta = 90
+ eta =
+
+ 90.
+
+-->//Number of teeth on the driving sprocket z1
+
+-->z1 = 17
+ z1 =
+
+ 17.
+
+-->//Speed of the driving sprocket n1 (rpm)
+
+-->n1 = 300
+ n1 =
+
+ 300.
+
+-->//Change the following data accordingly
+
+-->//Find service factor for moderate shock conditions from table 14.3 on page 551
+
+-->Ks = 1.4
+ Ks =
+
+ 1.4
+
+-->//Find multiple strand factor from table 14.4 on page 551
+
+-->//For 4 strands
+
+-->K1 = 3.3
+ K1 =
+
+ 3.3
+
+-->//Find the tooth correction factor from table 14.5 on page 551
+
+-->//For 17 teeth
+
+-->K2 = 1
+ K2 =
+
+ 1.
+
+
+Choose appropriate chain from table 14.2 on page 550 from obtained kw value at a given rpm
+
+Here, for 11.454545 kW rating at 300.000000 rpm, chain-16A is chosen
+
\ No newline at end of file diff --git a/764/CH14/EX14.2.b/solution14_2.sce b/764/CH14/EX14.2.b/solution14_2.sce new file mode 100755 index 000000000..4a1bb7fab --- /dev/null +++ b/764/CH14/EX14.2.b/solution14_2.sce @@ -0,0 +1,13 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution14_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data14_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the kW rating for the chain
+kW = kWd * (eta/100) * Ks/(K1 * K2)
+printf("\nChoose appropriate chain from table 14.2 on page 550 from obtained kw value at a given rpm\n")
+printf("\nHere, for %f kW rating at %f rpm, chain-16A (11.63 kW rating) is chosen\n",kW,n1)
diff --git a/764/CH14/EX14.3.a/data14_3.sci b/764/CH14/EX14.3.a/data14_3.sci new file mode 100755 index 000000000..f5352cc04 --- /dev/null +++ b/764/CH14/EX14.3.a/data14_3.sci @@ -0,0 +1,24 @@ +
+//(Chain Drives) Example 14.3
+//Power rating of electric motor kW
+kWd = 5
+//Speed of the motor n1 (rpm)
+n1 = 1400
+//Speed reduction i
+i = 3/1
+//Centre distance a (mm)
+a = 500
+//Number of teeth on the driving sprocket z1
+z1 = 21
+//Change the following data accordingly
+//Find service factor for moderate shock conditions from table 14.3 on page 551
+Ks = 1.3
+//Find multiple strand factor from table 14.4 on page 551
+//For 1 strand
+K1 = 1
+//Find the tooth correction factor from table 14.5 on page 551
+//For 21 teeth
+K2 = 1.26
+//After choosing the chain, alter following data accordingly from table 14.2 on page 550
+//pitch p (mm)
+p = 12.7
diff --git a/764/CH14/EX14.3.b/result14_3.txt b/764/CH14/EX14.3.b/result14_3.txt new file mode 100755 index 000000000..ad658277f --- /dev/null +++ b/764/CH14/EX14.3.b/result14_3.txt @@ -0,0 +1,82 @@ +-->//(Chain Drives) Example 14.3
+
+-->//Power rating of electric motor kW
+
+-->kWd = 5
+ kWd =
+
+ 5.
+
+-->//Speed of the motor n1 (rpm)
+
+-->n1 = 1400
+ n1 =
+
+ 1400.
+
+-->//Speed reduction i
+
+-->i = 3/1
+ i =
+
+ 3.
+
+-->//Centre distance a (mm)
+
+-->a = 500
+ a =
+
+ 500.
+
+-->//Number of teeth on the driving sprocket z1
+
+-->z1 = 21
+ z1 =
+
+ 21.
+
+-->//Change the following data accordingly
+
+-->//Find service factor for moderate shock conditions from table 14.3 on page 551
+
+-->Ks = 1.3
+ Ks =
+
+ 1.3
+
+-->//Find multiple strand factor from table 14.4 on page 551
+
+-->//For 1 strand
+
+-->K1 = 1
+ K1 =
+
+ 1.
+
+-->//Find the tooth correction factor from table 14.5 on page 551
+
+-->//For 21 teeth
+
+-->K2 = 1.26
+ K2 =
+
+ 1.26
+
+-->//After choosing the chain, alter following data accordingly
+
+-->//pitch p (mm)
+
+-->p = 12.7
+ p =
+
+ 12.7
+
+
+Choose appropriate chain from table 14.2 on page 550 for 5.158730 kW power transmitted at 1400.000000 rpm
+
+Here, we choose chain 8A (5.28 kW rating)
+
+Number of chain links(Ln) = 121.875097 or 122.000000
+
+Correct centre distance between the sprocket axes(a) = 500.804717 mm
+
\ No newline at end of file diff --git a/764/CH14/EX14.3.b/solution14_3.sce b/764/CH14/EX14.3.b/solution14_3.sce new file mode 100755 index 000000000..4f7d4f4e0 --- /dev/null +++ b/764/CH14/EX14.3.b/solution14_3.sce @@ -0,0 +1,25 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution14_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data14_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the kW rating of the chain
+kW = kWd * Ks/(K1 * K2)
+printf("\nChoose appropriate chain from table 14.2 on page 550 for %f kW power transmitted at %f rpm\n",kW,n1)
+printf("\nHere, we choose chain 8A (5.28 kW rating)\n")
+//Calculate the number of teeth on driven sprocket z2
+z2 = i * z1
+//Calculate the number of chain links Ln
+Ln = 2*(a/p) + (z1 + z2)/2 + ((z2 - z1)/(2*%pi))^2 * (p/a)
+Lnround = ceil(Ln)
+val = (Lnround - (z1 + z2)/2)
+//Calculate the correct centre distance anew (mm)
+anew = (p/4)*(val + sqrt(val^2 - 8*((z2 - z1)/(2*%pi))^2))
+//Print results
+printf("\nNumber of chain links(Ln) = %f or %f\n",Ln,Lnround)
+printf("\nCorrect centre distance between the sprocket axes(a) = %f mm\n",anew)
+
\ No newline at end of file diff --git a/764/CH14/EX14.4.a/data14_4.sci b/764/CH14/EX14.4.a/data14_4.sci new file mode 100755 index 000000000..04f8c8407 --- /dev/null +++ b/764/CH14/EX14.4.a/data14_4.sci @@ -0,0 +1,28 @@ +
+//(Chain Drives) Example 14.4
+//Rating of the electric motor kwd (kW)
+kWd = 12
+//Speed of the electric motor n1 (rpm)
+n1 = 1400
+//Speed of the centrifugal pump n2 (rpm)
+n2 = 700
+//Number of teeth on the driving sprocket z1
+z1 = 17
+//Change the following data accordingly
+//Find service factor for moderate shock conditions from table 14.3 on page 551
+Ks = 1.3
+//Find multiple strand factor from table 14.4 on page 551
+//For 1 strand
+K1 = 1
+//Find the tooth correction factor from table 14.5 on page 551
+//For 17 teeth
+K2 = 1
+//After choosing the chain, alter following data accordingly from table 14.2 on page 550
+//pitch p (mm)
+p = 19.05
+//roller diameter d1 (mm)
+d1 = 12.07
+//roller width b1 (mm)
+b1 = 11.68
+//Reduction factor for providing sag by reducing the centre distance between the sprockets fact
+fact = 0.002
diff --git a/764/CH14/EX14.4.b/result14_4.txt b/764/CH14/EX14.4.b/result14_4.txt new file mode 100755 index 000000000..6004390de --- /dev/null +++ b/764/CH14/EX14.4.b/result14_4.txt @@ -0,0 +1,100 @@ +-->//(Chain Drives) Example 14.4
+
+-->//Rating of the electric motor kwd (kW)
+
+-->kWd = 12
+ kWd =
+
+ 12.
+
+-->//Speed of the electric motor n1 (rpm)
+
+-->n1 = 1400
+ n1 =
+
+ 1400.
+
+-->//Speed of the centrifugal pump n2 (rpm)
+
+-->n2 = 700
+ n2 =
+
+ 700.
+
+-->//Number of teeth on the driving sprocket z1
+
+-->z1 = 17
+ z1 =
+
+ 17.
+
+-->//Change the following data accordingly
+
+-->//Find service factor for moderate shock conditions from table 14.3 on page 551
+
+-->Ks = 1.3
+ Ks =
+
+ 1.3
+
+-->//Find multiple strand factor from table 14.4 on page 551
+
+-->//For 1 strand
+
+-->K1 = 1
+ K1 =
+
+ 1.
+
+-->//Find the tooth correction factor from table 14.5 on page 551
+
+-->//For 17 teeth
+
+-->K2 = 1
+ K2 =
+
+ 1.
+
+-->//After choosing the chain, alter following data accordingly from table 14.2 on page 550
+
+-->//pitch p (mm)
+
+-->p = 19.05
+ p =
+
+ 19.05
+
+-->//roller diameter d1 (mm)
+
+-->d1 = 12.07
+ d1 =
+
+ 12.07
+
+-->//roller width b1 (mm)
+
+-->b1 = 11.68
+ b1 =
+
+ 11.68
+
+-->//Reduction factor for providing sag by reducing the centre distance between the sprockets fact
+
+-->fact = 0.002
+ fact =
+
+ 0.002
+
+
+Choose appropriate chain from table 14.2 on page 550 for 15.600000 kW power transmitted at 1400.000000 rpm
+
+Here, we choose chain 12B (18.15 kW rating)
+
+Pitch circle diameter of the driving sprocket(D1) = 103.673741 mm
+
+Pitch circle diameter of the driven sprocket(D2) = 206.462975 mm
+
+Number of chain links(Ln) = 105.683011 or 106.000000
+
+Correct centre distance between the sprockets(asag) = 763.496160 mm
+
\ No newline at end of file diff --git a/764/CH14/EX14.4.b/solution14_4.sce b/764/CH14/EX14.4.b/solution14_4.sce new file mode 100755 index 000000000..1db51be91 --- /dev/null +++ b/764/CH14/EX14.4.b/solution14_4.sce @@ -0,0 +1,32 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution14_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data14_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the kW rating of the chain
+kW = kWd * Ks/(K1 * K2)
+printf("\nChoose appropriate chain from table 14.2 on page 550 for %f kW power transmitted at %f rpm\n",kW,n1)
+printf("\nHere, we choose chain 12B (18.15 kW rating)\n")
+//Calculate the pitch circle of driving and driven pulleys D1 and D2 (mm)
+D1 = p/sind(180/z1)
+z2 = z1 * (n1/n2)
+D2 = p/sind(180/z2)
+//Calculate the centre distance between two sprockets a (mm)
+a = 40 * p
+//Calculate the number of chain links Ln
+Ln = 2*(a/p) + (z1 + z2)/2 + ((z2 - z1)/(2*%pi))^2 * (p/a)
+Lnround = ceil(Ln)
+val = (Lnround - (z1 + z2)/2)
+//Calculate the correct centre distance anew (mm)
+anew = (p/4)*(val + sqrt(val^2 - 8*((z2 - z1)/(2*%pi))^2))
+//Accounting for small sag asag (mm)
+asag = (1 - fact) * anew
+//Print results
+printf("\nPitch circle diameter of the driving sprocket(D1) = %f mm\n",D1)
+printf("\nPitch circle diameter of the driven sprocket(D2) = %f mm\n",D2)
+printf("\nNumber of chain links(Ln) = %f or %f\n",Ln,Lnround)
+printf("\nCorrect centre distance between the sprockets(asag) = %f mm\n",asag)
diff --git a/764/CH14/EX14.5.a/data14_5.sci b/764/CH14/EX14.5.a/data14_5.sci new file mode 100755 index 000000000..7f41bcda2 --- /dev/null +++ b/764/CH14/EX14.5.a/data14_5.sci @@ -0,0 +1,11 @@ +
+//(Chain Drives) Example 14.5
+//Data from Example 14.4
+//Pitch of the chain drive p (mm)
+p = 19.05
+//Diameter of the roller d1 (mm)
+d1 = 12.07
+//Width of the roller b1 (mm)
+b1 = 11.68
+//Number of teeth on the driving sprocket z1
+z1 = 17
diff --git a/764/CH14/EX14.5.b/result14_5.txt b/764/CH14/EX14.5.b/result14_5.txt new file mode 100755 index 000000000..82212c6ea --- /dev/null +++ b/764/CH14/EX14.5.b/result14_5.txt @@ -0,0 +1,45 @@ +-->//(Chain Drives) Example 14.5
+
+-->//Data from Example 14.4
+
+-->//Pitch of the chain drive p (mm)
+
+-->p = 19.05
+ p =
+
+ 19.05
+
+-->//Diameter of the roller d1 (mm)
+
+-->d1 = 12.07
+ d1 =
+
+ 12.07
+
+-->//Width of the roller b1 (mm)
+
+-->b1 = 11.68
+ b1 =
+
+ 11.68
+
+-->//Number of teeth on the driving sprocket z1
+
+-->z1 = 17
+ z1 =
+
+ 17.
+
+
+Outer diameter(Da) = 112.138521 mm
+
+Root diameter(Df) = 91.324764 mm
+
+Tooth flank radius(re) = 36.403120 mm
+
+Tooth side radius(rx) = 19.050000 mm
+
+Tooth width(bf1) = 11.096000 mm
+
+Tooth side relief(ba) = 2.381250 mm
+
\ No newline at end of file diff --git a/764/CH14/EX14.5.b/solution14_5.sce b/764/CH14/EX14.5.b/solution14_5.sce new file mode 100755 index 000000000..6f435b8ce --- /dev/null +++ b/764/CH14/EX14.5.b/solution14_5.sce @@ -0,0 +1,46 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution14_5.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data14_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the pitch circle diameter of the driving sprocket D (mm)
+D = p/sind(180/z1)
+//Calculate the maximum outer diameter Dmax (mm)
+Dmax = D + 1.25 * p - d1
+//Calculate the minimum outer diameter Dmin (mm)
+Dmin = D + p * (1 - 1.6/z1) - d1
+//Calculate the outer diameter Da (mm)
+Da = (Dmax + Dmin)/2
+//Calculate the maximum roller seating diameter rmax (mm)
+rmax = 0.505 * d1 + 0.069 * (d1^(1/3))
+//Calculate the minimum roller seating diameter rmin (mm)
+rmin = 0.505 * d1
+//Calculate the roller seating diameter ri (mm)
+ri = (rmax + rmin)/2
+//Calculate the root diameter Df (mm)
+Df = D - 2 * ri
+//Calculate the maximum tooth flank radius remax (mm)
+remax = 0.008 * d1 * (z1^2 + 180)
+//Calculate the minimum tooth flank radius remin (mm)
+remin = 0.12 * d1 * (z1 + 2)
+//Calculate the tooth flank radius re (mm)
+re = (remax + remin)/2
+//Calculate the tooth side radius rx (mm)
+rx = p
+//Calculate the tooth width bf1 (mm)
+bf1 = 0.95 * b1
+//Calculate the tooth side relief ba (mm)
+bamax = 0.15 * p
+bamin = 0.1 * p
+ba = (bamax + bamin)/2
+//Print results
+printf("\nOuter diameter(Da) = %f mm\n",Da)
+printf("\nRoot diameter(Df) = %f mm\n",Df)
+printf("\nTooth flank radius(re) = %f mm\n",re)
+printf("\nTooth side radius(rx) = %f mm\n",rx)
+printf("\nTooth width(bf1) = %f mm\n",bf1)
+printf("\nTooth side relief(ba) = %f mm\n",ba)
diff --git a/764/CH14/EX14.6.a/data14_6.sci b/764/CH14/EX14.6.a/data14_6.sci new file mode 100755 index 000000000..d9e46b379 --- /dev/null +++ b/764/CH14/EX14.6.a/data14_6.sci @@ -0,0 +1,36 @@ +
+//(Chain Drives) Example 14.6
+//Power rating of the petrol engine kWd
+kWd = 10
+//Speed of the engine n1 (rpm)
+n1 = 900
+//Number of teeth on the driving sprocket z1
+z1 = 21
+//Alternate number of teeth on the driving sprocket alt_z1 (rpm)
+alt_z1 = 25
+//Minimum speed of the conveyor shaft n2min (rpm)
+n2min = 225
+//Maximum speed of the conveyor shaft n2max (rpm)
+n2max = 245
+//Alternate number of teeth on the driven sprocket alt_z2 (rpm)
+alt_z2 = 96
+
+//Change the following data accordingly
+//Find service factor for moderate shock conditions from table 14.3 on page 551
+Ks = 1.4
+//Find multiple strand factor from table 14.4 on page 551
+//For 1 strand
+K1 = 1
+//For alternative 4 strands
+alt_K1 = 3.3
+//Find the tooth correction factor from table 14.5 on page 551
+//For 21 teeth
+K2 = 1.26
+
+//After choosing the chain, alter following data accordingly from table 14.2 on page 550
+//pitch p (mm)
+p = 19.05
+
+//After choosing the chain for alternate design, alter following data accordingly from table 14.2 on page 550
+//alternate pitch alt_p (mm)
+alt_p = 12.7
diff --git a/764/CH14/EX14.6.b/result14_6.txt b/764/CH14/EX14.6.b/result14_6.txt new file mode 100755 index 000000000..6e22df332 --- /dev/null +++ b/764/CH14/EX14.6.b/result14_6.txt @@ -0,0 +1,131 @@ +-->//(Chain Drives) Example 14.6
+
+-->//Power rating of the petrol engine kWd
+
+-->kWd = 10
+ kWd =
+
+ 10.
+
+-->//Speed of the engine n1 (rpm)
+
+-->n1 = 900
+ n1 =
+
+ 900.
+
+-->//Number of teeth on the driving sprocket z1
+
+-->z1 = 21
+ z1 =
+
+ 21.
+
+-->//Alternate number of teeth on the driving sprocket alt_z1 (rpm)
+
+-->alt_z1 = 25
+ alt_z1 =
+
+ 25.
+
+-->//Minimum speed of the conveyor shaft n2min (rpm)
+
+-->n2min = 225
+ n2min =
+
+ 225.
+
+-->//Maximum speed of the conveyor shaft n2max (rpm)
+
+-->n2max = 245
+ n2max =
+
+ 245.
+
+-->//Alternate number of teeth on the driven sprocket alt_z2 (rpm)
+
+-->alt_z2 = 96
+ alt_z2 =
+
+ 96.
+
+
+-->//Change the following data accordingly
+
+-->//Find service factor for moderate shock conditions from table 14.3 on page 551
+
+-->Ks = 1.4
+ Ks =
+
+ 1.4
+
+-->//Find multiple strand factor from table 14.4 on page 551
+
+-->//For 1 strand
+
+-->K1 = 1
+ K1 =
+
+ 1.
+
+-->//For alternative 4 strands
+
+-->alt_K1 = 3.3
+ alt_K1 =
+
+ 3.3
+
+-->//Find the tooth correction factor from table 14.5 on page 551
+
+-->//For 21 teeth
+
+-->K2 = 1.26
+ K2 =
+
+ 1.26
+
+
+-->//After choosing the chain, alter following data accordingly from table 14.2 on page 550
+
+-->//pitch p (mm)
+
+-->p = 19.05
+ p =
+
+ 19.05
+
+
+-->//After choosing the chain for alternate design, alter following data accordingly from table 14.2 on page 550
+
+-->//alternate pitch alt_p (mm)
+
+-->alt_p = 12.7
+ alt_p =
+
+ 12.7
+
+
+Choose appropriate chain from table 14.2 on page 550 for 11.111111 kW power transmitted at 900.000000 rpm
+
+Here, we choose chain 12A (13.12 kW rating (by interpolation))
+
+Choose appropriate chain from table 14.2 on page 550 for 3.367003 alternate kW power transmitted at 900.000000 rpm
+
+Here, we choose chain 8A (3.61 kW rating (by interpolation))
+
+Normal Design
+
+Pitch circle diameter of the driving sprocket(D1) = 127.816092 mm
+
+Pitch circle diameter of the driven sprocket(D2) = 485.228971 mm
+
+Number of chain links(Ln) = 132.704369 or 132.000000
+
+Correct centre distance between the sprockets(anew) = 755.098993 mm
+
+Alternate Design
+
+Number of chain links(Ln) = 124.756334 or 124.000000
+
+Correct centre distance between the sprockets(anew) = 375.825124 mm
+
\ No newline at end of file diff --git a/764/CH14/EX14.6.b/solution14_6.sce b/764/CH14/EX14.6.b/solution14_6.sce new file mode 100755 index 000000000..183e21058 --- /dev/null +++ b/764/CH14/EX14.6.b/solution14_6.sce @@ -0,0 +1,51 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution14_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data14_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the kW rating of the chain
+kW = kWd * Ks/(K1 * K2)
+printf("\nChoose appropriate chain from table 14.2 on page 550 for %f kW power transmitted at %f rpm\n",kW,n1)
+printf("\nHere, we choose chain 12A (13.12 kW rating (by interpolation))\n")
+//Calculate the pitch circle diameter of the driving and the driven sprockets D1 and D2 (mm)
+D1 = p/sind(180/z1)
+z2 = floor(z1 * n1/((n2max + n2min)/2))
+D2 = p/sind(180/z2)
+//Calculate the centre distance between two sprockets a (mm)
+a = 40 * p
+//Calculate the number of chain links Ln
+Ln = 2*(a/p) + (z1 + z2)/2 + ((z2 - z1)/(2*%pi))^2 * (p/a)
+Lnround = floor(Ln)
+val = (Lnround - (z1 + z2)/2)
+//Calculate the correct centre distance anew (mm)
+anew = (p/4)*(val + sqrt(val^2 - 8*((z2 - z1)/(2*%pi))^2))
+
+//ALTERNATIVE DESIGN (add prefix alt_ to each variable name)
+//Calculate the alternate kW rating of the chain
+alt_kW = kWd * Ks/(alt_K1 * K2)
+printf("\nChoose appropriate chain from table 14.2 on page 550 for %f alternate kW power transmitted at %f rpm\n",alt_kW,n1)
+printf("\nHere, we choose chain 8A (3.61 kW rating (by interpolation))\n")
+//Calculate the output speed alt_n2 (rpm)
+alt_n2 = (alt_z1/alt_z2)*n1
+//Calculate the centre distance between two sprockets alt_a (mm)
+alt_a = 30 * alt_p
+//Calculate the number of chain links alt_Ln
+alt_Ln = 2*(alt_a/alt_p) + (alt_z1 + alt_z2)/2 + ((alt_z2 - alt_z1)/(2*%pi))^2 * (alt_p/alt_a)
+alt_Lnround = floor(alt_Ln)
+alt_val = (alt_Lnround - (alt_z1 + alt_z2)/2)
+//Calculate the correct centre distance alt_anew (mm)
+alt_anew = (alt_p/4)*(alt_val + sqrt(alt_val^2 - 8*((alt_z2 - alt_z1)/(2*%pi))^2))
+
+//Print results
+printf("\nNormal Design\n")
+printf("\nPitch circle diameter of the driving sprocket(D1) = %f mm\n",D1)
+printf("\nPitch circle diameter of the driven sprocket(D2) = %f mm\n",D2)
+printf("\nNumber of chain links(Ln) = %f or %f\n",Ln,Lnround)
+printf("\nCorrect centre distance between the sprockets(anew) = %f mm\n",anew)
+printf("\nAlternate Design\n")
+printf("\nNumber of chain links(Ln) = %f or %f\n",alt_Ln,alt_Lnround)
+printf("\nCorrect centre distance between the sprockets(anew) = %f mm\n",alt_anew)
diff --git a/764/CH14/EX14.7.a/data14_7.sci b/764/CH14/EX14.7.a/data14_7.sci new file mode 100755 index 000000000..d704e14c6 --- /dev/null +++ b/764/CH14/EX14.7.a/data14_7.sci @@ -0,0 +1,23 @@ +
+//(Chain Drives) Example 14.7
+//Speed of the electric motor n1 (rpm)
+n1 = 1400
+//Speed of the line shaft n2 (rpm)
+n2 = 350
+//Number of teeth on the driving sprocket z1
+z1 = 19
+//kW rating of 10B chain for n1 rpm from table 14.2 on page 550 kW
+kW = 11.67
+//Pitch of the chain p (mm)
+p = 15.875
+//Breaking load for the chain Pb (N)
+Pb = 22200
+//Change the following data accordingly
+//Find service factor for moderate shock conditions from table 14.3 on page 551
+Ks = 1
+//Find multiple strand factor from table 14.4 on page 551
+//For 1 strand
+K1 = 1
+//Find the tooth correction factor from table 14.5 on page 551
+//For 19 teeth
+K2 = 1.11
diff --git a/764/CH14/EX14.7.b/result14_7.txt b/764/CH14/EX14.7.b/result14_7.txt new file mode 100755 index 000000000..3afc9fb93 --- /dev/null +++ b/764/CH14/EX14.7.b/result14_7.txt @@ -0,0 +1,78 @@ +-->//(Chain Drives) Example 14.7
+
+-->//Speed of the electric motor n1 (rpm)
+
+-->n1 = 1400
+ n1 =
+
+ 1400.
+
+-->//Speed of the line shaft n2 (rpm)
+
+-->n2 = 350
+ n2 =
+
+ 350.
+
+-->//Number of teeth on the driving sprocket z1
+
+-->z1 = 19
+ z1 =
+
+ 19.
+
+-->//kW rating of 10B chain for n1 rpm from table 14.2 on page 550 kW
+
+-->kW = 11.67
+ kW =
+
+ 11.67
+
+-->//Pitch of the chain p (mm)
+
+-->p = 15.875
+ p =
+
+ 15.875
+
+-->//Breaking load for the chain Pb (N)
+
+-->Pb = 22200
+ Pb =
+
+ 22200.
+
+-->//Change the following data accordingly
+
+-->//Find service factor for moderate shock conditions from table 14.3 on page 551
+
+-->Ks = 1
+ Ks =
+
+ 1.
+
+-->//Find multiple strand factor from table 14.4 on page 551
+
+-->//For 1 strand
+
+-->K1 = 1
+ K1 =
+
+ 1.
+
+-->//Find the tooth correction factor from table 14.5 on page 551
+
+-->//For 19 teeth
+
+-->K2 = 1.11
+ K2 =
+
+ 1.11
+
+
+Rated power for which the chain drive can be recommended(kWd) = 12.953700 kW
+
+Tension in the chain(P1) = 1840.558878 N
+
+Factor of safety for the chain based on the breaking load(fs) = 12.061554
+
\ No newline at end of file diff --git a/764/CH14/EX14.7.b/solution14_7.sce b/764/CH14/EX14.7.b/solution14_7.sce new file mode 100755 index 000000000..1537d910d --- /dev/null +++ b/764/CH14/EX14.7.b/solution14_7.sce @@ -0,0 +1,21 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution14_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data14_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the power to be transmitted kWd
+kWd = kW * K1 * K2/Ks
+//Calculate the velocity of the driving sprocket v (m/s)
+v = z1 * p * n1/(60000)
+//Calculate the tension in the chain P1
+P1 = 1000 *kWd/v
+//Calculate the factor of safety fs
+fs = Pb/P1
+//Print results
+printf("\nRated power for which the chain drive can be recommended(kWd) = %f kW\n",kWd)
+printf("\nTension in the chain(P1) = %f N\n",P1)
+printf("\nFactor of safety for the chain based on the breaking load(fs) = %f\n",fs)
diff --git a/764/CH14/EX14.8.a/result14_8.sce b/764/CH14/EX14.8.a/result14_8.sce new file mode 100755 index 000000000..cda54fca0 --- /dev/null +++ b/764/CH14/EX14.8.a/result14_8.sce @@ -0,0 +1,2 @@ +//Example 14.8 from 'Chain Drives' cannot be coded because almost all the information is obtained from the figure.
+//The entire solution is based on the free-body diagram and not on formulae.
diff --git a/764/CH2/EX2.1.a/data2_1.sci b/764/CH2/EX2.1.a/data2_1.sci new file mode 100755 index 000000000..cbdfebcbe --- /dev/null +++ b/764/CH2/EX2.1.a/data2_1.sci @@ -0,0 +1,17 @@ +
+// (Engineering Materials)Example 2.1
+//Refer Table 2.13 on page 52
+//Store data in respective arrays in the order:
+//Sequence: {Low alloy steel, Plain carbon steel, Stainless steel, Chromium steel}
+//Ulimate tensile strengths U N/mm2
+U = {850 850 1200 950}
+//Hardenability Index H
+H = {60 80 30 100}
+//Cost (Rs/unit) C
+C = {40 50 100 80}
+//Point weightage for ultimate tensile strength
+Uw = 5
+//Point weightage for hardenability
+Hw = 3
+//Point weightage for cost-economy
+Cw = 2
\ No newline at end of file diff --git a/764/CH2/EX2.1.b/result2_1.txt b/764/CH2/EX2.1.b/result2_1.txt new file mode 100755 index 000000000..43c903a96 --- /dev/null +++ b/764/CH2/EX2.1.b/result2_1.txt @@ -0,0 +1,69 @@ +-->// (Engineering Materials)Example 2.1
+
+-->//Refer Table 2.13 on page 52
+
+-->//Store data in respective arrays in the order:
+
+-->//Sequence: {Low alloy steel, Plain carbon steel, Stainless steel, Chromium steel}
+
+-->//Ulimate tensile strengths U N/mm2
+
+-->U = {850 850 1200 950}
+ U =
+
+ 850. 850. 1200. 950.
+
+-->//Hardenability Index H
+
+-->H = {60 80 30 100}
+ H =
+
+ 60. 80. 30. 100.
+
+-->//Cost (Rs/unit) C
+
+-->C = {40 50 100 80}
+ C =
+
+ 40. 50. 100. 80.
+
+-->//Point weightage for ultimate tensile strength
+
+-->Uw = 5
+ Uw =
+
+ 5.
+
+-->//Point weightage for hardenability
+
+-->Hw = 3
+ Hw =
+
+ 3.
+
+-->//Point weightage for cost-economy
+
+-->Cw = 2
+ Cw =
+
+ 2.
+
+
+ |Material Property |Low alloy steel |Plain carbon steel |Stainless steel |Chromium steel
+
+a) Tensile Strength
+ Per cent 0.221 0.221 0.312 0.247
+ Points 1.104 1.104 1.558 1.234
+
+b) Hardenability
+ Per cent 0.222 0.296 0.111 0.370
+ Points 0.667 0.889 0.333 1.111
+
+c) Cost
+ Per cent 0.370 0.296 0.148 0.185
+ Points 0.741 0.593 0.296 0.370
+
+ Total Points 2.511 2.585 2.188 2.715
+
+Chromium steel is the best material for the component
+
\ No newline at end of file diff --git a/764/CH2/EX2.1.b/solution2_1.sce b/764/CH2/EX2.1.b/solution2_1.sce new file mode 100755 index 000000000..ab892e3cb --- /dev/null +++ b/764/CH2/EX2.1.b/solution2_1.sce @@ -0,0 +1,89 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution2_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data2_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate weightage points for all materials
+//U - Ultimate tensile strength, H - Hardenability index, C - Cost
+//Store the summations of each category in Uweigh, Hweigh and Cweigh respectively
+Uweigh = 0
+Hweigh = 0
+Cweigh = 0
+for i = 1:1:4
+ Uweigh = Uweigh + U(i)
+ Hweigh = Hweigh + H(i)
+ Cweigh = Cweigh + (C(i)^(-1))
+end
+//Store percent strength for each material in Uper, Hper and Cper arrays according to respective categories
+//Store points for each material in Up, Hp and Cp arrays according to respective categories
+for i = 1:1:4
+ Uper(i) = U(i)/Uweigh
+ Up(i) = Uper(i) * Uw
+ Hper(i) = H(i)/Hweigh
+ Hp(i) = Hper(i) * Hw
+ Cper(i) = (C(i)^(-1))/Cweigh
+ Cp(i) = Cper(i) * Cw
+end
+//Store total points for each material in t array
+for i = 1:1:4
+ t(i) = Up(i) + Hp(i) + Cp(i)
+end
+//Print result table. Refer Table 2.14 on page 53
+printf('\n\t|Material Property\t|Low alloy steel\t|Plain carbon steel\t|Stainless steel\t|Chromium steel\n')
+printf('\na)\tTensile Strength')
+printf('\n\tPer cent')
+for i = 1:1:4
+ printf('\t\t%0.3f\t',Uper(i))
+end
+printf('\n\tPoints')
+for i = 1:1:4
+ printf('\t\t\t%0.3f',Up(i))
+end
+printf('\n\nb)\tHardenability')
+printf('\n\tPer cent')
+for i = 1:1:4
+ printf('\t\t%0.3f\t',Hper(i))
+end
+printf('\n\tPoints')
+for i = 1:1:4
+ printf('\t\t\t%0.3f',Hp(i))
+end
+printf('\n\nc)\tCost')
+printf('\n\tPer cent')
+for i = 1:1:4
+ printf('\t\t%0.3f\t',Cper(i))
+end
+printf('\n\tPoints')
+for i = 1:1:4
+ printf('\t\t\t%0.3f',Cp(i))
+end
+printf('\n\n\tTotal Points')
+for i = 1:1:4
+ printf('\t\t%0.3f\t',t(i))
+end
+//Store all values of t in s array
+for i = 1:1:4
+ s(i) = t(i)
+end
+//Find the material with largest value of total points using s array
+for i = 1:1:3
+ if (s(i)>s(i+1)) then
+ s(i+1) = s(i)
+ end
+end
+//Largest value is obtained when i becomes 3 and the value is stored in s(i+1)
+//Display the best material
+choice = s(i+1)
+if(choice == t(1))
+ printf('\n\nLow alloy steel is the best material for the component\n')
+ else if (choice == t(2))
+ printf('\n\nPlain carbon steel is the best material for the component\n')
+ else if (choice == t(3))
+ printf('\n\nStainless steel is the best material for the component\n')
+ else
+ printf('\n\nChromium steel is the best material for the component\n')
+end
diff --git a/764/CH22/EX22.1.a/data22_1.sci b/764/CH22/EX22.1.a/data22_1.sci new file mode 100755 index 000000000..cdeb255b9 --- /dev/null +++ b/764/CH22/EX22.1.a/data22_1.sci @@ -0,0 +1,12 @@ +
+//(Cylinders and Pressure Vessels) Example 22.1
+//Storage capacity of the seamless cylinder V (m3)
+V = 0.025
+//Internal pressure in the cylinder Pi (MPa)
+Pi = 20
+//Ultimate tensile strength of the material of the cylinder Sut (N/mm2)
+Sut = 390
+//Factor of safety fs
+fs = 2.5
+//Ratio of length of the cylinder to its diameter ratio
+ratio = 2
diff --git a/764/CH22/EX22.1.b/result22_1.txt b/764/CH22/EX22.1.b/result22_1.txt new file mode 100755 index 000000000..58882f769 --- /dev/null +++ b/764/CH22/EX22.1.b/result22_1.txt @@ -0,0 +1,44 @@ +-->//(Cylinders and Pressure Vessels) Example 22.1
+
+-->//Storage capacity of the seamless cylinder V (m3)
+
+-->V = 0.025
+ V =
+
+ 0.025
+
+-->//Internal pressure in the cylinder Pi (MPa)
+
+-->Pi = 20
+ Pi =
+
+ 20.
+
+-->//Ultimate tensile strength of the material of the cylinder Sut (N/mm2)
+
+-->Sut = 390
+ Sut =
+
+ 390.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Ratio of length of the cylinder to its diameter ratio
+
+-->ratio = 2
+ ratio =
+
+ 2.
+
+
+Diameter of the cylinder(Di) = 251.539800 mm
+
+Length of the cylinder(L) = 503.079599 mm
+
+Thickness of the cylinder(t) = 16.124346 mm
+
\ No newline at end of file diff --git a/764/CH22/EX22.1.b/solution22_1.sce b/764/CH22/EX22.1.b/solution22_1.sce new file mode 100755 index 000000000..d5711e179 --- /dev/null +++ b/764/CH22/EX22.1.b/solution22_1.sce @@ -0,0 +1,21 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution22_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate diameter of the cylinder Di (mm)
+Di = 1000 * ((4 * V )/(%pi * ratio))^(1/3)
+//Calculate length of the cylinder L (mm)
+L = ratio * Di
+//Allowable tensile stress in the cylinder sigmat (N/mm2)
+sigmat = Sut/fs
+//Calculate the thickness of the cylinder t (mm)
+t = Pi * Di/(2 * sigmat)
+//Print results
+printf("\nDiameter of the cylinder(Di) = %f mm\n",Di)
+printf("\nLength of the cylinder(L) = %f mm\n",L)
+printf("\nThickness of the cylinder(t) = %f mm\n",t)
diff --git a/764/CH22/EX22.2.a/data22_2.sci b/764/CH22/EX22.2.a/data22_2.sci new file mode 100755 index 000000000..984a43b4f --- /dev/null +++ b/764/CH22/EX22.2.a/data22_2.sci @@ -0,0 +1,12 @@ +
+//(Cylinders and Pressure Vessels) Example 22.2
+//Storage capacity of the cylinder V (m3)
+V = 0.25
+//Operating internal pressure Pi (MPa)
+Pi = 5
+//Ultimate tensile strength of the material of the cylinder Sut (N/mm2)
+Sut = 340
+//Factor of safety fs
+fs = 4
+//Ratio of length of cylinder to its diameter ratio
+ratio = 2
diff --git a/764/CH22/EX22.2.b/result22_2.txt b/764/CH22/EX22.2.b/result22_2.txt new file mode 100755 index 000000000..2492712e6 --- /dev/null +++ b/764/CH22/EX22.2.b/result22_2.txt @@ -0,0 +1,46 @@ +-->//(Cylinders and Pressure Vessels) Example 22.2
+
+-->//Storage capacity of the cylinder V (m3)
+
+-->V = 0.25
+ V =
+
+ 0.25
+
+-->//Operating internal pressure Pi (MPa)
+
+-->Pi = 5
+ Pi =
+
+ 5.
+
+-->//Ultimate tensile strength of the material of the cylinder Sut (N/mm2)
+
+-->Sut = 340
+ Sut =
+
+ 340.
+
+-->//Factor of safety fs
+
+-->fs = 4
+ fs =
+
+ 4.
+
+-->//Ratio of length of cylinder to its diameter ratio
+
+-->ratio = 2
+ ratio =
+
+ 2.
+
+
+Diameter of the cylinder(Di) = 492.372511 mm
+
+Length of the cylinder(L) = 984.745022 mm
+
+Thickness of the cylindrical portion(tc) = 14.481544 mm
+
+Thickness of the hemispherical portion(th) = 7.240772 mm
+
\ No newline at end of file diff --git a/764/CH22/EX22.2.b/solution22_2.sce b/764/CH22/EX22.2.b/solution22_2.sce new file mode 100755 index 000000000..b52ffa779 --- /dev/null +++ b/764/CH22/EX22.2.b/solution22_2.sce @@ -0,0 +1,24 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution22_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the diameter of the cylindrical portion Di (mm)
+Di = 1000 * ((V * 24)/(%pi * (6 * ratio + 4)))^(1/3)
+//Calculate the length of the cylinder L (mm)
+L = ratio * Di
+//Calculate the allowable stress in the cylinder sigmat (N/mm2)
+sigmat = Sut/fs
+//Calculate the thickness of the cylindrical portion tc (mm)
+tc = Pi * Di/(2 * sigmat)
+//Calculate the thickness of the hemispherical ends th (mm)
+th = Pi * Di/(4 * sigmat)
+//Print results
+printf("\nDiameter of the cylinder(Di) = %f mm\n",Di)
+printf("\nLength of the cylinder(L) = %f mm\n",L)
+printf("\nThickness of the cylindrical portion(tc) = %f mm\n",tc)
+printf("\nThickness of the hemispherical portion(th) = %f mm\n",th)
diff --git a/764/CH22/EX22.3.a/data22_3.sci b/764/CH22/EX22.3.a/data22_3.sci new file mode 100755 index 000000000..972ec9277 --- /dev/null +++ b/764/CH22/EX22.3.a/data22_3.sci @@ -0,0 +1,17 @@ +
+//(Cylinders and Pressure Vessels) Example 22.3
+//Force exerted by the piston rod F (kN)
+F = 10
+//Friction force due to piston packing as a percentage of operating force frac(%)
+frac = 10
+//Pressure inside the cylinder Pi (MPa)
+Pi = 10
+//Ultimate tensile strength of the cylinder material Sut (N/mm2)
+Sut = 200
+//Factor of safety fs
+fs = 5
+//Check the behavior of the material
+behavior = 'brittle'
+//Change the behavior to 'ductile' if the material is ductile and uncomment the
+//next line specifying the poisson's ratio
+//mu = 0.26
diff --git a/764/CH22/EX22.3.b/Ex22_3.sce b/764/CH22/EX22.3.b/Ex22_3.sce new file mode 100755 index 000000000..868697183 --- /dev/null +++ b/764/CH22/EX22.3.b/Ex22_3.sce @@ -0,0 +1,42 @@ +clear
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0)
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Depends on data22_3.sci file
+//Obtain path of solution file
+path = get_absolute_file_path('Ex22_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the total force acting on the piston P (kN)
+P = F + (frac/100)*F
+//Calculate the inner diameter of the cylinder Di (mm)
+Di = sqrt((4 * P * 1000)/(%pi * Pi))
+Diround = round_five(Di)
+//Calculate the permissible strength of the material sigmat (N/mm2)
+sigmat = Sut/fs
+//Calculate the thickness of the cylinder t (mm)
+if (behavior == 'brittle') then
+ t = (Diround/2) * (sqrt((sigmat + Pi)/(sigmat - Pi)) - 1)
+ tround = round(t)
+ //Print results
+ printf("\nInner diameter of the cylinder(Di) = %f mm \n",Diround)
+ printf("\nThickness of the cylinder(t) = %f mm \n",tround)
+elseif (behavior == 'ductile')
+ t = (Di/2) * (sqrt((sigmat + (1-2*mu)*Pi)/(sigmat - (1+mu)*Pi)) - 1)
+ tround = round(t)
+ //Print results
+ printf("\nInner diameter of the cylinder(Di) = %f mm \n",Diround)
+ printf("\nThickness of the cylinder(t) = %f mm \n",tround)
+else
+ printf("Specify the material behavior")
+end
diff --git a/764/CH22/EX22.3.b/result22_3.txt b/764/CH22/EX22.3.b/result22_3.txt new file mode 100755 index 000000000..e57f6c479 --- /dev/null +++ b/764/CH22/EX22.3.b/result22_3.txt @@ -0,0 +1,55 @@ +-->//(Cylinders and Pressure Vessels) Example 22.3
+
+-->//Force exerted by the piston rod F (kN)
+
+-->F = 10
+ F =
+
+ 10.
+
+-->//Friction force due to piston packing as a percentage of operating force frac(%)
+
+-->frac = 10
+ frac =
+
+ 10.
+
+-->//Pressure inside the cylinder Pi (MPa)
+
+-->Pi = 10
+ Pi =
+
+ 10.
+
+-->//Ultimate tensile strength of the cylinder material Sut (N/mm2)
+
+-->Sut = 200
+ Sut =
+
+ 200.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Check the behavior of the material
+
+-->behavior = 'brittle'
+ behavior =
+
+ brittle
+
+-->//Change the behavior to 'ductile' if the material is ductile and uncomment the
+
+-->//next line specifying the poisson's ratio
+
+-->//mu = 0.26
+
+
+Inner diameter of the cylinder(Di) = 40.000000 mm
+
+Thickness of the cylinder(t) = 6.000000 mm
+
\ No newline at end of file diff --git a/764/CH22/EX22.4.a/data22_4.sci b/764/CH22/EX22.4.a/data22_4.sci new file mode 100755 index 000000000..e7840a914 --- /dev/null +++ b/764/CH22/EX22.4.a/data22_4.sci @@ -0,0 +1,15 @@ +
+//(Cylinders and Pressure Vessels) Example 22.4
+//Inner diameter of the cylinder Di (mm)
+Di = 250
+//Gas pressure Pi (MPa)
+Pi = 15
+//Ultimate tensile strength of the cylinder material Sut (N/mm2)
+Sut = 340
+//Poisson's ratio of the material mu
+mu = 0.27
+//Factor of safety fs
+fs = 5
+//Check the behavior of the material
+behavior = 'ductile'
+//Change the behavior to 'brittle' if the material is brittle
diff --git a/764/CH22/EX22.4.b/Ex22_4.sce b/764/CH22/EX22.4.b/Ex22_4.sce new file mode 100755 index 000000000..58b1aa8c1 --- /dev/null +++ b/764/CH22/EX22.4.b/Ex22_4.sce @@ -0,0 +1,26 @@ +clear
+//Depends on data22_4.sci file
+//Obtain path of solution file
+path = get_absolute_file_path('Ex22_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible strength of the material sigma (N/mm2)
+sigma = Sut/fs
+//Calculate the thickness of the cylinder t (mm)
+if (behavior == 'brittle') then
+ t = (Diround/2) * (sqrt((sigma + Pi)/(sigma - Pi)) - 1)
+ tround = round(t)
+ printf("\nThickness of the cylinder(t) = %f mm \n",tround)
+elseif (behavior == 'ductile')
+ t = (Di/2) * (sqrt((sigma + (1-2*mu)*Pi)/(sigma - (1+mu)*Pi)) - 1)
+ tround = round(t)
+ //Print results
+ printf("\nThickness of the cylinder(t) = %f mm \n",tround)
+else
+ //Print results
+ printf("Specify the material behavior")
+end
diff --git a/764/CH22/EX22.4.b/result22_4.txt b/764/CH22/EX22.4.b/result22_4.txt new file mode 100755 index 000000000..6084b4588 --- /dev/null +++ b/764/CH22/EX22.4.b/result22_4.txt @@ -0,0 +1,49 @@ +-->//(Cylinders and Pressure Vessels) Example 22.4
+
+-->//Inner diameter of the cylinder Di (mm)
+
+-->Di = 250
+ Di =
+
+ 250.
+
+-->//Gas pressure Pi (MPa)
+
+-->Pi = 15
+ Pi =
+
+ 15.
+
+-->//Ultimate tensile strength of the cylinder material Sut (N/mm2)
+
+-->Sut = 340
+ Sut =
+
+ 340.
+
+-->//Poisson's ratio of the material mu
+
+-->mu = 0.27
+ mu =
+
+ 0.27
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Check the behavior of the material
+
+-->behavior = 'ductile'
+ behavior =
+
+ ductile
+
+-->//Change the behavior to 'brittle' if the material is brittle
+
+
+Thickness of the cylinder(t) = 30.000000 mm
+
\ No newline at end of file diff --git a/764/CH22/EX22.5.a/data22_5.sci b/764/CH22/EX22.5.a/data22_5.sci new file mode 100755 index 000000000..3845d5637 --- /dev/null +++ b/764/CH22/EX22.5.a/data22_5.sci @@ -0,0 +1,13 @@ +
+//This code is applicable only to open or seamless cylinders
+//(Cylinders and Pressure Vessels) Example 22.5
+//Inner diameter of the pipe Di (mm)
+Di = 100
+//Internal pressure Pi (MPa)
+Pi = 12
+//Yield strength of the material Syt (N/mm2)
+Syt = 230
+//Poisson's ratio of the material mu
+mu = 0.27
+//Factor of safety fs
+fs = 2.5
diff --git a/764/CH22/EX22.5.b/Ex22_5.sce b/764/CH22/EX22.5.b/Ex22_5.sce new file mode 100755 index 000000000..8fdedfa09 --- /dev/null +++ b/764/CH22/EX22.5.b/Ex22_5.sce @@ -0,0 +1,17 @@ +clear
+//Depends on data22_5.sci file
+//Obtain path of solution file
+path = get_absolute_file_path('Ex22_5.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible strength of the pipe sigma (N/mm2)
+sigma = Syt/fs
+//Calculate the thickness of the pipe t (mm)
+t = (Di/2) * (sqrt((sigma + (1-mu)*Pi)/(sigma - (1+mu)*Pi)) - 1)
+tround = ceil(t)
+//Print results
+printf("\nThickness of the pipe(t) = %f or %f mm \n",t,tround)
diff --git a/764/CH22/EX22.5.b/result22_5.txt b/764/CH22/EX22.5.b/result22_5.txt new file mode 100755 index 000000000..566860e9e --- /dev/null +++ b/764/CH22/EX22.5.b/result22_5.txt @@ -0,0 +1,42 @@ +-->//This code is applicable only to open or seamless cylinders
+
+-->//(Cylinders and Pressure Vessels) Example 22.5
+
+-->//Inner diameter of the pipe Di (mm)
+
+-->Di = 100
+ Di =
+
+ 100.
+
+-->//Internal pressure Pi (MPa)
+
+-->Pi = 12
+ Pi =
+
+ 12.
+
+-->//Yield strength of the material Syt (N/mm2)
+
+-->Syt = 230
+ Syt =
+
+ 230.
+
+-->//Poisson's ratio of the material mu
+
+-->mu = 0.27
+ mu =
+
+ 0.27
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+
+Thickness of the pipe(t) = 7.285750 or 8.000000 mm
+
\ No newline at end of file diff --git a/764/CH22/EX22.6.a/data22_6.sci b/764/CH22/EX22.6.a/data22_6.sci new file mode 100755 index 000000000..e1f80cc21 --- /dev/null +++ b/764/CH22/EX22.6.a/data22_6.sci @@ -0,0 +1,11 @@ +//(Cylinders and Pressure Vessels) Example 22.6
+//Inner diameter of the steel tube D1 (mm)
+D1 = 20
+//Outer diameter of the steel tube D2 (mm)
+D2 = 40
+//Outer diameter of the jacket steel tube D3 (mm)
+D3 = 60
+//Limiting maximum principal stress induced in any tube sigmaMax (N/mm2)
+sigmaMax = 100
+//Young's modulus of the steel tube E (N/mm2)
+E = 207000
diff --git a/764/CH22/EX22.6.b/Ex22_6.sce b/764/CH22/EX22.6.b/Ex22_6.sce new file mode 100755 index 000000000..38430c4dd --- /dev/null +++ b/764/CH22/EX22.6.b/Ex22_6.sce @@ -0,0 +1,21 @@ +clear
+//Depends on data22_6.sci file
+//Obtain path of solution file
+path = get_absolute_file_path('Ex22_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the shrinkage pressure P (N/mm2)
+P = sigmaMax * (D3^2 - D2^2)/(D3^2 + D2^2)
+//Calculate the total change in the inner diameter of the jacket delta (mm)
+delta = (P * D2/E)*((2* D2^2 * (D3^2 - D1^2))/((D3^2 - D2^2) * (D2^2 - D1^2)))
+//Calculate the outer diameter of the inner tube od (mm)
+od = D2
+//Calculate the inner diameter of the jacket id (mm)
+id = D2 - delta
+//Print results
+printf("Outer diameter of the inner tube(od) = %f mm \n",od)
+printf("Inner diameter of the jacket(id) = %f mm \n",id)
diff --git a/764/CH22/EX22.6.b/result22_6.txt b/764/CH22/EX22.6.b/result22_6.txt new file mode 100755 index 000000000..930df964e --- /dev/null +++ b/764/CH22/EX22.6.b/result22_6.txt @@ -0,0 +1,40 @@ +-->//(Cylinders and Pressure Vessels) Example 22.6
+
+-->//Inner diameter of the steel tube D1 (mm)
+
+-->D1 = 20
+ D1 =
+
+ 20.
+
+-->//Outer diameter of the steel tube D2 (mm)
+
+-->D2 = 40
+ D2 =
+
+ 40.
+
+-->//Outer diameter of the jacket steel tube D3 (mm)
+
+-->D3 = 60
+ D3 =
+
+ 60.
+
+-->//Limiting maximum principal stress induced in any tube sigmaMax (N/mm2)
+
+-->sigmaMax = 100
+ sigmaMax =
+
+ 100.
+
+-->//Young's modulus of the steel tube E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+Outer diameter of the inner tube(od) = 40.000000 mm
+Inner diameter of the jacket(id) = 39.968289 mm
+
\ No newline at end of file diff --git a/764/CH22/EX22.7.a/data22_7.sci b/764/CH22/EX22.7.a/data22_7.sci new file mode 100755 index 000000000..2fc8040e1 --- /dev/null +++ b/764/CH22/EX22.7.a/data22_7.sci @@ -0,0 +1,14 @@ +//(Cylinders and Pressure Vessels) Example 22.7
+//(Input data of 22.6)
+//Inner diameter of the steel tube D1 (mm)
+D1 = 20
+//Outer diameter of the steel tube D2 (mm)
+D2 = 40
+//Outer diameter of the jacket steel tube D3 (mm)
+D3 = 60
+//Limiting maximum principal stress induced in any tube sigmaMax (N/mm2)
+sigmaMax = 100
+//Young's modulus of the steel tube E (N/mm2)
+E = 207000
+//Internal pressure acting on the cylinder Pi (MPa)
+Pi = 300
diff --git a/764/CH22/EX22.7.b/Ex22_7.sce b/764/CH22/EX22.7.b/Ex22_7.sce new file mode 100755 index 000000000..be3bc75e6 --- /dev/null +++ b/764/CH22/EX22.7.b/Ex22_7.sce @@ -0,0 +1,93 @@ +clear
+//Depends on data22_7.sci file
+//Obtain path of solution file
+path = get_absolute_file_path('Ex22_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the shrinkage pressure P (N/mm2)
+P = sigmaMax * (D3^2 - D2^2)/(D3^2 + D2^2)
+//Calculate the radial and tangential stresses in the jacket
+//Store the results in arrays for plotting purposes sigmar1, sigmat1 (N/mm2)
+sigmar1 = [];
+sigmat1 = [];
+rad1 = [];
+count = 0;
+//Jacket radius varies from D2/2 to D3/2
+for r = D2/2:2:D3/2
+ count = count + 1;
+ rad1(1,count) = r;
+ sigmar1(1,count) = ((-1 * P * D2^2)/(D3^2 - D2^2))*((D3^2/(4 * r^2)) - 1);
+ sigmat1(1,count) = ((P * D2^2)/(D3^2 - D2^2))*((D3^2/(4 * r^2)) + 1);
+end
+//Calculate the radial and tangential stresses in the inner tube
+//Store the results in arrays for plotting purposes sigmar2, sigmat2 (N/mm2)
+sigmar2 = [];
+sigmat2 = [];
+rad2 = [];
+count = 0;
+//Inner tube radius varies from D1/2 to D2/2
+for r = D1/2:2:D2/2
+ count = count + 1;
+ rad2(1,count) = r;
+ sigmar2(1,count) = ((-1 * P * D2^2)/(D2^2 - D1^2))*(1 - (D1^2/(4 * r^2)));
+ sigmat2(1,count) = ((-1 * P * D2^2)/(D2^2 - D1^2))*(1 + (D1^2/(4 * r^2)));
+end
+//Calculate the radial and tangential stresses due to internal pressure
+//Store the results in arrays for plotting purposes sigmar3, sigmat3 (N/mm2)
+sigmar3 = [];
+sigmat3 = [];
+rad3 = [];
+count = 0;
+//Radius varies from D1/2 to D3/2
+for r = D1/2:2:D3/2
+ count = count + 1;
+ rad3(1,count) = r;
+ sigmar3(1,count) = ((-1 * Pi * D1^2)/(D3^2 - D1^2))*((D3^2/(4 * r^2)) - 1);
+ sigmat3(1,count) = ((Pi * D1^2)/(D3^2 - D1^2))*((D3^2/(4 * r^2)) + 1);
+end
+//Calculate the resultant stresses
+//Store the results in arrays for plotting purposes sigmar4, sigmat4 (N/mm2)
+//For inner tube
+sigmar4i = sigmar3(1,1:length(sigmar2)) + sigmar2(1,:);
+sigmat4i = sigmat3(1,1:length(sigmat2)) + sigmat2(1,:);
+//For jacket
+sigmar4j = sigmar3(1,length(sigmar2):length(sigmar3)) + sigmar1(1,:);
+sigmat4j = sigmat3(1,length(sigmat2):length(sigmat3)) + sigmat1(1,:);
+//Plot stresses due to internal pressure
+subplot(231)
+plot(rad3, sigmar3, '-o')
+title("Radial stress distribution due to internal pressure")
+xlabel("Radius(mm)")
+ylabel("Radial stress(N/mm2)")
+subplot(232)
+plot(rad3, sigmat3, '-o')
+title("Tangential stress distribution due to internal pressure")
+xlabel("Radius(mm)")
+ylabel("Tangential stress(N/mm2)")
+//Plot stresses due to shrink fit
+subplot(233)
+plot([rad2 rad1], [sigmar2,sigmar1], '-o')
+title("Radial stress distribution due to shrink fit")
+xlabel("Radius(mm)")
+ylabel("Radial stress(N/mm2)")
+subplot(234)
+plot([rad2 rad1], [sigmat2,sigmat1], '-o')
+title("Tangential stress distribution due to shrink fit")
+xlabel("Radius(mm)")
+ylabel("Tangential stress(N/mm2)")
+//Plot resultant stresses
+subplot(235)
+plot([rad2 rad1], [sigmar4i,sigmar4j], '-o')
+title("Resultant radial stress distribution")
+xlabel("Radius(mm)")
+ylabel("Radial stress(N/mm2)")
+subplot(236)
+plot([rad2 rad1], [sigmat4i,sigmat4j], '-o')
+title("Resultant tangential stress distribution")
+xlabel("Radius(mm)")
+ylabel("Tangential stress(N/mm2)")
+
diff --git a/764/CH22/EX22.7.b/plot22_7.jpeg b/764/CH22/EX22.7.b/plot22_7.jpeg Binary files differnew file mode 100755 index 000000000..554b95baa --- /dev/null +++ b/764/CH22/EX22.7.b/plot22_7.jpeg diff --git a/764/CH22/EX22.8.a/data22_8.sci b/764/CH22/EX22.8.a/data22_8.sci new file mode 100755 index 000000000..1aabbbee9 --- /dev/null +++ b/764/CH22/EX22.8.a/data22_8.sci @@ -0,0 +1,11 @@ +//(Cylinders and Pressure Vessels) Example 22.8
+//Inner diameter of the tube D1 (mm)
+D1 = 50
+//Outer diameter of the tube D2 (mm)
+D2 = 75
+//Outer diameter of the jacket D3 (mm)
+D3 = 100
+//Internal pressure on the compound tube Pi (MPa)
+Pi = 35
+//Young's modulus of the of the tube E (N/mm2)
+E = 207000
diff --git a/764/CH22/EX22.8.b/Ex22_8.sce b/764/CH22/EX22.8.b/Ex22_8.sce new file mode 100755 index 000000000..ff6c5ffba --- /dev/null +++ b/764/CH22/EX22.8.b/Ex22_8.sce @@ -0,0 +1,81 @@ +clear
+//Depends on data22_8.sci file
+//Obtain path of solution file
+path = get_absolute_file_path('Ex22_8.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data22_8.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Make radius array rad
+rad = [D1/2, D2/2, D3/2];
+//Calculate the tangential stress due to internal pressure sigmat1 (N/mm2)
+//Store the results in sigmat1 array
+//Radius varies from D1/2 to D3/2
+sigmat1 = [];
+count = 0;
+for i = 1:1:3
+ r = rad(i);
+ count = count + 1;
+ sigmat1(1,count) = ((Pi * D1^2)/(D3^2 - D1^2))*((D3^2/(4 * r^2)) + 1);
+end
+//Calculate the tangential stress due to shrinkage pressure for jacket sigmat2 (N/mm2)
+//Store the results in sigmat2 array
+//Radius varies from D2/2 to D3/2
+//Assume the shrinkage pressure to be 1MPa P
+P = 1;
+sigmat2 = [];
+count = 0;
+for i = 2:1:3
+ r = rad(i);
+ count = count + 1;
+ sigmat2(1,count) = ((P * D2^2)/(D3^2 - D2^2))*((D3^2/(4 * r^2)) + 1);
+end
+//Calculate the tangential stress due to shrinkage pressure for inner tube sigmat3 (N/mm2)
+//Store the results in sigmat3 array
+//Radius varies from D1/2 to D2/2
+sigmat3 = [];
+count = 0;
+for i = 1:1:2
+ r = rad(i);
+ count = count + 1;
+ sigmat3(1,count) = ((-1 * P * D2^2)/(D2^2 - D1^2))*((D1^2/(4 * r^2)) + 1);
+end
+//Calculate the shrinkage pressure P (MPa)
+P = (sigmat1(1) - sigmat1(2))/(sigmat2(1) - sigmat3(1))
+//Update sigmat2 and sigmat3 with exact values
+sigmat2 = sigmat2.*P
+sigmat3 = sigmat3.*P
+//Calculate the total change in diameter delta (mm)
+delta = (P * D2/E)*((2* D2^2 * (D3^2 - D1^2))/((D3^2 - D2^2) * (D2^2 - D1^2)))
+//Calculate the inner diameter of the jacket id (mm)
+id = D2 - delta
+//Calculate the resultant stress sigmat4 (N/mm2)
+//Inner tube
+sigmat4i = sigmat1(1,1:2) + sigmat3
+//Jacket
+sigmat4j = sigmat1(1,2:3) + sigmat2
+//Print results
+printf("Shrinkage pressure(P) = %f N/mm2 \n",P)
+printf("Inner diameter of the jacket(id) = %f mm \n",id)
+printf("Lines are plotted in the curve due to the consideration of only 3 points")
+//Plot all the tangential stresses in single plot
+figure(1);
+//Internal pressure
+//xset("line style", 4)
+//plot2d(rad, sigmat1, style = 6)
+plot(rad, sigmat1, '-ro')
+//Shrinkage pressure
+//xset("line style", 3)
+//plot2d([rad(1,1:2), rad(1,2:3)], [sigmat3, sigmat2], style = 7)
+plot([rad(1,1:2), rad(1,2:3)], [sigmat3, sigmat2], '-bx')
+//Resultant stress
+//xset("line style", 5)
+//plot2d([rad(1,1:2), rad(1,2:3)], [sigmat4i, sigmat4j], style = 2)
+plot([rad(1,1:2), rad(1,2:3)], [sigmat4i, sigmat4j], '-m*')
+title("Tangential stresses distribution")
+xlabel("Radius(mm)")
+ylabel("Tangential stress(N/mm2)")
+legend('Due to internal pressure', 'Due to shrinkage pressure', 'Resultant stresses')
+
diff --git a/764/CH22/EX22.8.b/plot1_22_8.jpeg b/764/CH22/EX22.8.b/plot1_22_8.jpeg Binary files differnew file mode 100755 index 000000000..4c27abb92 --- /dev/null +++ b/764/CH22/EX22.8.b/plot1_22_8.jpeg diff --git a/764/CH22/EX22.8.b/result22_8.txt b/764/CH22/EX22.8.b/result22_8.txt new file mode 100755 index 000000000..4a1b13bb9 --- /dev/null +++ b/764/CH22/EX22.8.b/result22_8.txt @@ -0,0 +1,40 @@ +-->//(Cylinders and Pressure Vessels) Example 22.8
+
+-->//Inner diameter of the tube D1 (mm)
+
+-->D1 = 50
+ D1 =
+
+ 50.
+
+-->//Outer diameter of the tube D2 (mm)
+
+-->D2 = 75
+ D2 =
+
+ 75.
+
+-->//Outer diameter of the jacket D3 (mm)
+
+-->D3 = 100
+ D3 =
+
+ 100.
+
+-->//Internal pressure on the compound tube Pi (MPa)
+
+-->Pi = 35
+ Pi =
+
+ 35.
+
+-->//Young's modulus of the of the tube E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+Shrinkage pressure(P) = 3.615169 N/mm2
+Inner diameter of the jacket(id) = 74.991916 mm
+Lines are plotted in the curve due to the consideration of only 3 points
\ No newline at end of file diff --git a/764/CH3/EX3.1.a/data3_1.sci b/764/CH3/EX3.1.a/data3_1.sci new file mode 100755 index 000000000..7f2098d48 --- /dev/null +++ b/764/CH3/EX3.1.a/data3_1.sci @@ -0,0 +1,16 @@ +
+//(Manufacturing Considerations in Design) Example 3.1
+//Refer Fig. 3.25 on page 70
+//Basic diameter of bush Db mm
+Db = 20
+//Refer tables 3.2 and 3.3a for tolerances of H6-e7 fit
+//Upper deviation for bush Ub mm
+Ub = 0.013
+//Lower deviation for bush Lb mm
+Lb = 0.000
+//Basic diameter of crank pin Dc mm
+Dc = 20
+//Upper deviation for crankpin Uc mm
+Uc = -0.040
+//Lower deviation for crankpin Lc mm
+Lc = -0.061
diff --git a/764/CH3/EX3.1.b/result3_1.txt b/764/CH3/EX3.1.b/result3_1.txt new file mode 100755 index 000000000..c1fd198ec --- /dev/null +++ b/764/CH3/EX3.1.b/result3_1.txt @@ -0,0 +1,61 @@ +-->//(Manufacturing Considerations in Design) Example 3.1
+
+-->//Refer Fig. 3.25 on page 70
+
+-->//Basic diameter of bush Db mm
+
+-->Db = 20
+ Db =
+
+ 20.
+
+-->//Refer tables 3.2 and 3.3a for tolerances of H6-e7 fit
+
+-->//Upper deviation for bush Ub mm
+
+-->Ub = 0.013
+ Ub =
+
+ 0.013
+
+-->//Lower deviation for bush Lb mm
+
+-->Lb = 0.000
+ Lb =
+
+ 0.
+
+-->//Basic diameter of crank pin Dc mm
+
+-->Dc = 20
+ Dc =
+
+ 20.
+
+-->//Upper deviation for crankpin Uc mm
+
+-->Uc = -0.040
+ Uc =
+
+ - 0.04
+
+-->//Lower deviation for crankpin Lc mm
+
+-->Lc = -0.061
+ Lc =
+
+ - 0.061
+
+
+Maximum diameter of bush is: 20.013000 mm
+
+Minimum diameter of bush is: 20.000000 mm
+
+Maximum diameter of crankpin is: 19.960000 mm
+
+Minimum diameter of crankpin is: 19.939000 mm
+
+Maximum clearance is: 0.074000 mm
+
+Minimum clearance is: 0.040000 mm
+
\ No newline at end of file diff --git a/764/CH3/EX3.1.b/solution3_1.sce b/764/CH3/EX3.1.b/solution3_1.sce new file mode 100755 index 000000000..caa784a14 --- /dev/null +++ b/764/CH3/EX3.1.b/solution3_1.sce @@ -0,0 +1,15 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution3_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data3_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nMaximum diameter of bush is: %f mm\n',(Db + Ub))
+printf('\nMinimum diameter of bush is: %f mm\n',(Db + Lb))
+printf('\nMaximum diameter of crankpin is: %f mm\n',(Dc + Uc))
+printf('\nMinimum diameter of crankpin is: %f mm\n',(Dc + Lc))
+printf('\nMaximum clearance is: %f mm\n',((Db + Ub)-(Dc + Lc)))
+printf('\nMinimum clearance is: %f mm\n',((Db + Lb)-(Dc + Uc)))
diff --git a/764/CH3/EX3.2.a/data3_2.sci b/764/CH3/EX3.2.a/data3_2.sci new file mode 100755 index 000000000..cacb63f86 --- /dev/null +++ b/764/CH3/EX3.2.a/data3_2.sci @@ -0,0 +1,16 @@ +
+//(Manufacturing Considerations in Design) Example 3.2
+//Refer Fig. 3.26 on page 70
+//Basic diameter of housing Dh mm
+Dh = 20
+//Refer tables 3.2 and 3.3b for tolerances of H7-s6 fit
+//Upper deviation for housing Uh mm
+Uh = 0.021
+//Lower deviation for housing Lh mm
+Lh = 0.000
+//Basic diameter of valve seat(outer diameter) Dv mm
+Dv = 20
+//Upper deviation for valve seat Uv mm
+Uv = 0.048
+//Lower deviation for valve seat Lv mm
+Lv = 0.035
diff --git a/764/CH3/EX3.2.b/result3_2.txt b/764/CH3/EX3.2.b/result3_2.txt new file mode 100755 index 000000000..90fdf1840 --- /dev/null +++ b/764/CH3/EX3.2.b/result3_2.txt @@ -0,0 +1,61 @@ +-->//(Manufacturing Considerations in Design) Example 3.2
+
+-->//Refer Fig. 3.26 on page 70
+
+-->//Basic diameter of housing Dh mm
+
+-->Dh = 20
+ Dh =
+
+ 20.
+
+-->//Refer tables 3.2 and 3.3b for tolerances of H7-s6 fit
+
+-->//Upper deviation for housing Uh mm
+
+-->Uh = 0.021
+ Uh =
+
+ 0.021
+
+-->//Lower deviation for housing Lh mm
+
+-->Lh = 0.000
+ Lh =
+
+ 0.
+
+-->//Basic diameter of valve seat(outer diameter) Dv mm
+
+-->Dv = 20
+ Dv =
+
+ 20.
+
+-->//Upper deviation for valve seat Uv mm
+
+-->Uv = 0.048
+ Uv =
+
+ 0.048
+
+-->//Lower deviation for valve seat Lv mm
+
+-->Lv = 0.035
+ Lv =
+
+ 0.035
+
+
+Maximum diameter of housing is: 20.021000 mm
+
+Minimum diameter of housing is: 20.000000 mm
+
+Maximum diameter of valve seating is: 20.048000 mm
+
+Minimum diameter of valve seating is: 20.035000 mm
+
+Minimum interference is: 0.014000 mm
+
+Maximum interference is: 0.048000 mm
+
\ No newline at end of file diff --git a/764/CH3/EX3.2.b/solution3_2.sce b/764/CH3/EX3.2.b/solution3_2.sce new file mode 100755 index 000000000..dc4a375f2 --- /dev/null +++ b/764/CH3/EX3.2.b/solution3_2.sce @@ -0,0 +1,15 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution3_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data3_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nMaximum diameter of housing is: %f mm\n',(Dh + Uh))
+printf('\nMinimum diameter of housing is: %f mm\n',(Dh + Lh))
+printf('\nMaximum diameter of valve seating is: %f mm\n',(Dv + Uv))
+printf('\nMinimum diameter of valve seating is: %f mm\n',(Dv + Lv))
+printf('\nMinimum interference is: %f mm\n',((Dv + Lv)-(Dh + Uh)))
+printf('\nMaximum interference is: %f mm\n',((Dv + Uv)-(Dh + Lh)))
diff --git a/764/CH3/EX3.3.a/data3_3.sci b/764/CH3/EX3.3.a/data3_3.sci new file mode 100755 index 000000000..54e82a95a --- /dev/null +++ b/764/CH3/EX3.3.a/data3_3.sci @@ -0,0 +1,16 @@ +
+//(Manufacturing Considerations in Design) Example 3.3
+//Refer Fig. 3.26 on page 70
+//Basic diameter of hub Dh mm
+Dh = 50
+//Refer tables 3.2 and 3.3b for tolerances of H7-s6 fit
+//Upper deviation for hub Uh mm
+Uh = 0.025
+//Lower deviation for hub Lh mm
+Lh = 0.000
+//Basic diameter of shaft Ds mm
+Ds = 50
+//Upper deviation for shaft Us mm
+Us = 0.059
+//Lower deviation for shaft Ls mm
+Ls = 0.043
diff --git a/764/CH3/EX3.3.b/result3_3.txt b/764/CH3/EX3.3.b/result3_3.txt new file mode 100755 index 000000000..a2f144e5a --- /dev/null +++ b/764/CH3/EX3.3.b/result3_3.txt @@ -0,0 +1,71 @@ +-->//(Manufacturing Considerations in Design) Example 3.3
+
+-->//Refer Fig. 3.26 on page 70
+
+-->//Basic diameter of hub Dh mm
+
+-->Dh = 50
+ Dh =
+
+ 50.
+
+-->//Refer tables 3.2 and 3.3b for tolerances of H7-s6 fit
+
+-->//Upper deviation for hub Uh mm
+
+-->Uh = 0.025
+ Uh =
+
+ 0.025
+
+-->//Lower deviation for hub Lh mm
+
+-->Lh = 0.000
+ Lh =
+
+ 0.
+
+-->//Basic diameter of shaft Ds mm
+
+-->Ds = 50
+ Ds =
+
+ 50.
+
+-->//Upper deviation for shaft Us mm
+
+-->Us = 0.059
+ Us =
+
+ 0.059
+
+-->//Lower deviation for shaft Ls mm
+
+-->Ls = 0.043
+ Ls =
+
+ 0.043
+
+
+Maximum diameter of hub is: 50.025000 mm
+
+Minimum diameter of hub is: 50.000000 mm
+
+Maximum diameter of shaft is: 50.059000 mm
+
+Minimum diameter of shaft is: 50.043000 mm
+
+Maximum interference is: 0.059000 mm
+
+Minimum interference is: 0.018000 mm
+
+Maximum interferences for A, B and C are as follows:
+0.048000 mm
+0.047000 mm
+0.043000 mm
+
+Minimum interferences for A, B and C are as follows:
+0.035000 mm
+0.032000 mm
+0.030000 mm
+
\ No newline at end of file diff --git a/764/CH3/EX3.3.b/solution3_3.sce b/764/CH3/EX3.3.b/solution3_3.sce new file mode 100755 index 000000000..18e20661e --- /dev/null +++ b/764/CH3/EX3.3.b/solution3_3.sce @@ -0,0 +1,40 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution3_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data3_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nMaximum diameter of hub is: %f mm\n',(Dh + Uh))
+printf('\nMinimum diameter of hub is: %f mm\n',(Dh + Lh))
+printf('\nMaximum diameter of shaft is: %f mm\n',(Ds + Us))
+printf('\nMinimum diameter of shaft is: %f mm\n',(Ds + Ls))
+printf('\nMaximum interference is: %f mm\n',((Ds + Us)-(Dh + Lh)))
+printf('\nMinimum interference is: %f mm\n',((Ds + Ls)-(Dh + Uh)))
+//Refer the table given on page 71
+//Array for upper limit of hub diameter in A,B and C groups respectively U1
+U1 = {(Dh + Uh - 0.017),(Dh + Uh - 0.009),(Dh + Uh)}
+//Array for lower limit of hub diameter in A,B and C groups respectively L1
+L1 = {(Dh + Lh),(Dh + Lh + 0.008),(Dh + Lh + 0.016)}
+//Array for upper limit of shaft diameter in A,B and C groups respectively U2
+U2 = {(Ds + Us - 0.011),(Ds + Us - 0.004),(Ds + Us)}
+//Array for lower limit of shaft diameter in A,B and C groups respectively L2
+L2 = {(Ds + Ls),(Ds + Ls + 0.005),(Ds + Ls + 0.012)}
+printf('\nMaximum interferences for A, B and C are as follows:\n')
+for i = 1:1:3
+ Imax(i) = U2(i) - L1(i)
+//Check the given condition
+ if(0.030<Imax(i) & Imax(i)<0.050)
+ printf('%f mm\n',Imax(i))
+ end
+end
+printf('\nMinimum interferences for A, B and C are as follows:\n')
+for i = 1:1:3
+ Imin(i) = L2(i) - U1(i)
+//Check the given condition
+ if(0.030<Imin(i) & Imin(i)<0.050)
+ printf('%f mm\n',Imin(i))
+ end
+end
diff --git a/764/CH3/EX3.4.a/data3_4.sci b/764/CH3/EX3.4.a/data3_4.sci new file mode 100755 index 000000000..4a61e2086 --- /dev/null +++ b/764/CH3/EX3.4.a/data3_4.sci @@ -0,0 +1,17 @@ +
+//(Manufacturing Considerations in Design) Example 3.4
+//Basic centre distance between two bolts C mm
+C = 50
+//Basic diameter of bolt Db mm
+Db = 12
+//Refer tables 3.2 and 3.3a for tolerances of H11-d11 fit
+//Upper deviation for bolt Ub mm
+Ub = -0.050
+//Lower deviation for bolt Lb mm
+Lb = -0.160
+//Basic diameter of hole Dh mm
+Dh = 12
+//Upper deviation for hole Uh mm
+Uh = 0.110
+//Lower deviation for hole Lh mm
+Lh = 0.000
diff --git a/764/CH3/EX3.4.b/result3_4.txt b/764/CH3/EX3.4.b/result3_4.txt new file mode 100755 index 000000000..c7a4ab94b --- /dev/null +++ b/764/CH3/EX3.4.b/result3_4.txt @@ -0,0 +1,66 @@ +-->//(Manufacturing Considerations in Design) Example 3.4
+
+-->//Basic centre distance between two bolts C mm
+
+-->C = 50
+ C =
+
+ 50.
+
+-->//Basic diameter of bolt Db mm
+
+-->Db = 12
+ Db =
+
+ 12.
+
+-->//Refer tables 3.2 and 3.3a for tolerances of H11-d11 fit
+
+-->//Upper deviation for bolt Ub mm
+
+-->Ub = -0.050
+ Ub =
+
+ - 0.05
+
+-->//Lower deviation for bolt Lb mm
+
+-->Lb = -0.160
+ Lb =
+
+ - 0.16
+
+-->//Basic diameter of hole Dh mm
+
+-->Dh = 12
+ Dh =
+
+ 12.
+
+-->//Upper deviation for hole Uh mm
+
+-->Uh = 0.110
+ Uh =
+
+ 0.11
+
+-->//Lower deviation for hole Lh mm
+
+-->Lh = 0.000
+ Lh =
+
+ 0.
+
+
+Maximum diameter of hole is: 12.110000 mm
+
+Minimum diameter of hole is: 12.000000 mm
+
+Maximum diameter of bolt is: 11.950000 mm
+
+Minimum diameter of bolt is: 11.840000 mm
+
+Maximum centre to centre distance between bolts:50.050000 mm
+
+Minimum centre to centre distance between bolts:49.950000 mm
+
\ No newline at end of file diff --git a/764/CH3/EX3.4.b/solution3_4.sce b/764/CH3/EX3.4.b/solution3_4.sce new file mode 100755 index 000000000..fc9355333 --- /dev/null +++ b/764/CH3/EX3.4.b/solution3_4.sce @@ -0,0 +1,18 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution3_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data3_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf('\nMaximum diameter of hole is: %f mm\n',(Dh + Uh))
+printf('\nMinimum diameter of hole is: %f mm\n',(Dh + Lh))
+printf('\nMaximum diameter of bolt is: %f mm\n',(Db + Ub))
+printf('\nMinimum diameter of bolt is: %f mm\n',(Db + Lb))
+//Calculate the value of tolerance x mm
+x = (Dh + Lh)-(Db + Ub)
+printf('\nMaximum centre to centre distance between bolts:%f mm\n',(C + x))
+printf('\nMinimum centre to centre distance between bolts:%f mm\n',(C - x))
+
diff --git a/764/CH4/EX4.1.a/data4_1.sci b/764/CH4/EX4.1.a/data4_1.sci new file mode 100755 index 000000000..24a2b04c6 --- /dev/null +++ b/764/CH4/EX4.1.a/data4_1.sci @@ -0,0 +1,13 @@ +
+//(Design against Static Load) Example 4.1
+//Refer Fig.4.10 on page 85
+//Tensile force acting on two plates P (kN)
+P = 50
+//Tensile yield strength of the plates Syt (N/mm2)
+Syt = 250
+//Factor of safety fs
+fs = 2.5
+//Number of rivets n
+n = 3
+//Length of plate L (mm)
+L = 200
diff --git a/764/CH4/EX4.1.b/result4_1.txt b/764/CH4/EX4.1.b/result4_1.txt new file mode 100755 index 000000000..80fe0019d --- /dev/null +++ b/764/CH4/EX4.1.b/result4_1.txt @@ -0,0 +1,44 @@ +-->//(Design against Static Load) Example 4.1
+
+-->//Refer Fig.4.10 on page 85
+
+-->//Tensile force acting on two plates P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Tensile yield strength of the plates Syt (N/mm2)
+
+-->Syt = 250
+ Syt =
+
+ 250.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Number of rivets n
+
+-->n = 3
+ n =
+
+ 3.
+
+-->//Length of plate L (mm)
+
+-->L = 200
+ L =
+
+ 200.
+
+
+Diameter of the rivet(d) = 21.000000 mm
+
+Thickness of plates(t) = 4.000000 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.1.b/solution4_1.sce b/764/CH4/EX4.1.b/solution4_1.sce new file mode 100755 index 000000000..89d1b9949 --- /dev/null +++ b/764/CH4/EX4.1.b/solution4_1.sce @@ -0,0 +1,26 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Yield strength in shear for the plates Ssy (N/mm2)
+Ssy = (50/100) * Syt
+//Permissible shear stress for rivets Tau (N/mm2)
+Tau = Ssy / fs
+//Diameter of rivets d (mm)
+d = sqrt((P * 1000 * 4)/(n * %pi * Tau))
+//Round up d
+d = ceil(d)
+//Permissible tensile stress for plates Sigma (N/mm2)
+Sigma = (Syt/fs)
+//Thickness of plates t (mm)
+t = (P * 1000)/(Sigma * (L - (n * d)))
+//Round up t
+t = ceil(t)
+//Print results
+printf('\nDiameter of the rivet(d) = %f mm\n',d)
+printf('\nThickness of plates(t) = %f mm\n',t)
diff --git a/764/CH4/EX4.10.a/data4_10.sci b/764/CH4/EX4.10.a/data4_10.sci new file mode 100755 index 000000000..3eb5a2289 --- /dev/null +++ b/764/CH4/EX4.10.a/data4_10.sci @@ -0,0 +1,13 @@ +
+//(Design against Static Load) Example 4.10
+//Refer Fig.4.29
+//Distance between the axis of the column and the load e (mm)
+e = 500
+//Tensile yield strength of FeE200 Syt (N/mm2)
+Syt = 200
+//Factor of safety fs
+fs = 4
+//Load supported by the column P (kN)
+P = 25
+//Ratio of outer diameter to inner diameter ratio
+ratio = 0.8
\ No newline at end of file diff --git a/764/CH4/EX4.10.b/result4_10.txt b/764/CH4/EX4.10.b/result4_10.txt new file mode 100755 index 000000000..9be912889 --- /dev/null +++ b/764/CH4/EX4.10.b/result4_10.txt @@ -0,0 +1,44 @@ +-->//(Design against Static Load) Example 4.10
+
+-->//Refer Fig.4.29
+
+-->//Distance between the axis of the column and the load e (mm)
+
+-->e = 500
+ e =
+
+ 500.
+
+-->//Tensile yield strength of FeE200 Syt (N/mm2)
+
+-->Syt = 200
+ Syt =
+
+ 200.
+
+-->//Factor of safety fs
+
+-->fs = 4
+ fs =
+
+ 4.
+
+-->//Load supported by the column P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Ratio of outer diameter to inner diameter ratio
+
+-->ratio = 0.8
+ ratio =
+
+ 0.8
+
+
+Outer diameter(d0) = 160.000000 mm
+
+Inner diameter(di) = 128.000000 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.10.b/solution4_10.sce b/764/CH4/EX4.10.b/solution4_10.sce new file mode 100755 index 000000000..ec317545f --- /dev/null +++ b/764/CH4/EX4.10.b/solution4_10.sce @@ -0,0 +1,44 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0)
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_10.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_10.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible tensile stress sigmat (N/mm2)
+sigmat = Syt/fs
+//Let the outer diameter of the cross-section be 1mm d0
+d0 = 1
+//Calculate the direct compressive stress D (N/mm2)
+D = (P * 1000)/((%pi/4)*((1 - (ratio^2))*(d0^2)))
+//Calculate the value of y (mm)
+y = d0/2
+//Calculate the second moment of area I (mm4)
+I = (%pi/64)*((1 - (ratio^4))*(d0^4))
+//Calculate the tensile stress due to bending moment B (N/mm2)
+B = (P * 1000 * e * y)/I
+//Coefficients of the resultant cubic equation
+p = [sigmat 0 D (-1 * B)]
+r = roots(p)
+real_part = real(r)
+for i = 1:1:3
+ if(real_part(i)>0)
+ d0 = real_part(i)
+ break
+ end
+end
+d0 = round_five(d0)
+//Print results
+printf('\nOuter diameter(d0) = %f mm\n',d0)
+printf('\nInner diameter(di) = %f mm\n',(0.8 * d0))
diff --git a/764/CH4/EX4.11.a/data4_11.sci b/764/CH4/EX4.11.a/data4_11.sci new file mode 100755 index 000000000..f1afd7ba4 --- /dev/null +++ b/764/CH4/EX4.11.a/data4_11.sci @@ -0,0 +1,16 @@ +
+//(Design against Static Load) Example 4.11
+//Refer Fig.4.38
+//Tension in the wire rope P (kN)
+P = 5
+//Ultimate tensile strength of FG200 Sut (N/mm2)
+Sut = 200
+//Factor of safety fs
+fs = 2.5
+//Ratio of depth to width of cross-section ratio
+ratio = 2
+//Distance between the load and cantilever support A dist (mm)
+dist = 1500 + 500
+//Distance between the free end and pulley centre pdist (mm)
+pdist = 500
+
\ No newline at end of file diff --git a/764/CH4/EX4.11.b/graph4_11.png b/764/CH4/EX4.11.b/graph4_11.png Binary files differnew file mode 100755 index 000000000..518222afa --- /dev/null +++ b/764/CH4/EX4.11.b/graph4_11.png diff --git a/764/CH4/EX4.11.b/result4_11.txt b/764/CH4/EX4.11.b/result4_11.txt new file mode 100755 index 000000000..2b9fd99fc --- /dev/null +++ b/764/CH4/EX4.11.b/result4_11.txt @@ -0,0 +1,44 @@ +-->//(Design against Static Load) Example 4.11
+
+-->//Refer Fig.4.38
+
+-->//Tension in the wire rope P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Ultimate tensile strength of FG200 Sut (N/mm2)
+
+-->Sut = 200
+ Sut =
+
+ 200.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Ratio of depth to width of cross-section ratio
+
+-->ratio = 2
+ ratio =
+
+ 2.
+
+-->//Distance between the load and cantilever support A d (mm)
+
+-->d = 1500 + 500
+ d =
+
+ 2000.
+
+
+Width of the cross-section(w) = 60.000000 mm
+
+Depth of the cross-section(d) = 120.000000 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.11.b/solution4_11.sce b/764/CH4/EX4.11.b/solution4_11.sce new file mode 100755 index 000000000..fe83fab3e --- /dev/null +++ b/764/CH4/EX4.11.b/solution4_11.sce @@ -0,0 +1,63 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0)
+ v = v + (5 - rem)
+ end
+endfunction
+
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_11.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_11.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate permissible bending stress sigmab (N/mm2)
+sigmab = Sut/fs
+//Distance of B l (mm)
+l = pdist
+//Increment length by 20mm and plot the bending moment variation over cantilever
+//Infinite for loop
+for i = 1:1:%inf
+ Mb(i) = (P * 1000)*(l)
+ len(i) = l
+ if(l == dist)
+ break
+ end
+ l = l + 20
+end
+plot(len,Mb)
+plot_format()
+title('Variation of bending moment against cantilever length')
+xlabel('Cantilever Length(mm)')
+ylabel('Bending Moment (Hogging) (N-mm)')
+//Calculate maximum bending moment at A Mbmax (N-mm) from the plot
+Mbmax = max(Mb)
+//Assume the width of the cross-section to be 1mm w
+w = 1
+//Calculate the value of y (mm)
+y = w
+//Calculate second moment of area I (mm4)
+I = (w * ((ratio * w)^3))/12
+//Calculate the width of the cross-section (mm)
+w = ((Mbmax * y)/(I * sigmab))^(1/3)
+w = round_five(w)
+//Calculate the depth of the cross-section d (mm)
+d = 2 * w
+//Print results
+printf('\nWidth of the cross-section(w) = %f mm\n',w)
+printf('\nDepth of the cross-section(d) = %f mm\n',d)
diff --git a/764/CH4/EX4.12.a/data4_12.sci b/764/CH4/EX4.12.a/data4_12.sci new file mode 100755 index 000000000..630a480e4 --- /dev/null +++ b/764/CH4/EX4.12.a/data4_12.sci @@ -0,0 +1,17 @@ +
+//(Design against Static Load) Example 4.12
+//Refer Fig.4.39
+//Force acting on the bracket P (kN)
+P = 5
+//Ultimate tensile strength of FG200 material Sut (N/mm2)
+Sut = 200
+//Factor of safety fs
+fs = 3.5
+//Angle made by the line of force with the vertical theta (radian)
+theta = (60 * (%pi/180))
+//Distance between the point load and the horizontal axis h (mm)
+h = 150
+//Distance between the point load and the rigid support r (mm)
+r = 300
+//Ratio of depth to width of the cross-section ratio
+ratio = 2
diff --git a/764/CH4/EX4.12.b/result4_12.txt b/764/CH4/EX4.12.b/result4_12.txt new file mode 100755 index 000000000..2c972d98c --- /dev/null +++ b/764/CH4/EX4.12.b/result4_12.txt @@ -0,0 +1,58 @@ +-->//(Design against Static Load) Example 4.12
+
+-->//Refer Fig.4.39
+
+-->//Force acting on the bracket P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Ultimate tensile strength of FG200 material Sut (N/mm2)
+
+-->Sut = 200
+ Sut =
+
+ 200.
+
+-->//Factor of safety fs
+
+-->fs = 3.5
+ fs =
+
+ 3.5
+
+-->//Angle made by the line of force with the vertical theta (radian)
+
+-->theta = (60 * (%pi/180))
+ theta =
+
+ 1.0471976
+
+-->//Distance between the point load and the horizontal axis h (mm)
+
+-->h = 150
+ h =
+
+ 150.
+
+-->//Distance between the point load and the rigid support r (mm)
+
+-->r = 300
+ r =
+
+ 300.
+
+-->//Ratio of depth to width of the cross-section ratio
+
+-->ratio = 2
+ ratio =
+
+ 2.
+
+
+Value of t = 35.000000 mm
+
+Area of cross-section = (35.000000 x 70.000000) mm2
+
\ No newline at end of file diff --git a/764/CH4/EX4.12.b/solution4_12.sce b/764/CH4/EX4.12.b/solution4_12.sce new file mode 100755 index 000000000..b26cdec54 --- /dev/null +++ b/764/CH4/EX4.12.b/solution4_12.sce @@ -0,0 +1,51 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0)
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_12.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_12.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible tensile stress sigmat (N/mm2)
+sigmat = Sut/fs
+//Calculate the horizontal component of the force Ph (N)
+Ph = (P * 1000) * sin(theta)
+//Calculate the vertical component of the force Pv (N)
+Pv = (P * 1000) * cos(theta)
+//Calculate the maximum bending moment Mb (N-mm)
+Mb = (Ph * h) + (Pv * r)
+//Assume the value of t to be 1mm
+t = 1
+//Calculate the value of y (mm)
+y = t
+//Calculate the second moment of area I (mm4)
+I = (t * ((ratio * t)^3))/12
+//Calculate the bending stress sigmab (N/mm2)
+sigmab = (Mb * y)/I
+//Calculate the direct tensile stress D (N/mm2)
+D = Ph/(ratio * (t^2))
+//Coefficients of the resulting cubic equation
+p = [sigmat 0 (-1 * D) (-1 * sigmab)]
+//Calculate the roots to obtain the the true value of t
+r = roots(p)
+real_part = real(r)
+for i = 1:1:3
+ if(real_part(i)>0)
+ t = real_part(i)
+ break
+ end
+end
+t = round_five(t)
+//Print results
+printf('\nValue of t = %f mm\n',t)
+printf('\nArea of cross-section = (%f x %f) mm2\n',t,(ratio * t))
diff --git a/764/CH4/EX4.13.a/data4_13.sci b/764/CH4/EX4.13.a/data4_13.sci new file mode 100755 index 000000000..f880eb8a1 --- /dev/null +++ b/764/CH4/EX4.13.a/data4_13.sci @@ -0,0 +1,13 @@ +
+//(Design against Satic Load) Example 4.13
+//Refer Fig.4.40
+//Force acting on the overhang crank P (kN)
+P = 1
+//Tensile yield strength of 45C8 material Syt (N/mm2)
+Syt = 380
+//Factor of safety fs
+fs = 2
+//Horizontal distance between the point load and A h (mm)
+h = 500
+//Vertical distance between the point load and A v (mm)
+v = 250
diff --git a/764/CH4/EX4.13.b/result4_13.txt b/764/CH4/EX4.13.b/result4_13.txt new file mode 100755 index 000000000..3948fa064 --- /dev/null +++ b/764/CH4/EX4.13.b/result4_13.txt @@ -0,0 +1,41 @@ +-->//(Design against Satic Load) Example 4.13
+
+-->//Refer Fig.4.40
+
+-->//Force acting on the overhang crank P (kN)
+
+-->P = 1
+ P =
+
+ 1.
+
+-->//Tensile yield strength of 45C8 material Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Horizontal distance between the point load and A h (mm)
+
+-->h = 500
+ h =
+
+ 500.
+
+-->//Vertical distance between the point load and A v (mm)
+
+-->v = 250
+ v =
+
+ 250.
+
+The value of diameter(d) = 31.061601 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.13.b/solution4_13.sce b/764/CH4/EX4.13.b/solution4_13.sce new file mode 100755 index 000000000..72a4a0fe2 --- /dev/null +++ b/764/CH4/EX4.13.b/solution4_13.sce @@ -0,0 +1,36 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_13.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_13.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the yield strength in shear Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Calculate the permissible shear stress tau (N/mm2)
+tau = Ssy/fs
+//Calculate the bending moment Mb (N-mm)
+Mb = (P * 1000)*v
+//Calculate the torsional moment Mt (N-mm)
+Mt = (P * 1000)*h
+//Assume value of diameter to be 1mm d
+d = 1
+//Calculate the value of y (mm)
+y = d/2
+//Calculate the second moment of area I (mm4)
+I = (%pi/64)*(d^4)
+//Calculate the polar moment of area J (mm4)
+J = (%pi/32)*(d^4)
+//Calculate the bending shear stress B (N/mm2)
+B = (Mb * y)/I
+//Calculate the torsional shear stress T (N/mm2)
+T = (Mt * (d/2))/J
+//Refer Fig.4.40(c) for Mohr's Circle
+taumax = sqrt(((B/2)^2) + (T^2))
+//Calculate the true value of diameter d (mm)
+d = ((taumax/tau)^(1/3))
+//Print results
+printf('The value of diameter(d) = %f mm\n',d)
+
diff --git a/764/CH4/EX4.14.a/data4_14.sci b/764/CH4/EX4.14.a/data4_14.sci new file mode 100755 index 000000000..1b920daf8 --- /dev/null +++ b/764/CH4/EX4.14.a/data4_14.sci @@ -0,0 +1,13 @@ +
+//(Design against Static Load) Example 4.14
+//Refer Fig.4.41
+//Force acting on the overhang crank P (kN)
+P = 1
+//Tensile yield strength of 30C8 material Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 2
+//Horizontal distance between the point load and D h (mm)
+h = 500
+//Vertical distance between the point load and D v (mm)
+v = 50 + 25 + 100
diff --git a/764/CH4/EX4.14.b/result4_14.txt b/764/CH4/EX4.14.b/result4_14.txt new file mode 100755 index 000000000..3a5c7eabb --- /dev/null +++ b/764/CH4/EX4.14.b/result4_14.txt @@ -0,0 +1,41 @@ +-->//(Design against Static Load) Example 4.14
+
+-->//Refer Fig.4.41
+
+-->//Force acting on the overhang crank P (kN)
+
+-->P = 1
+ P =
+
+ 1.
+
+-->//Tensile yield strength of 30C8 material Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Horizontal distance between the point load and D h (mm)
+
+-->h = 500
+ h =
+
+ 500.
+
+-->//Vertical distance between the point load and D v (mm)
+
+-->v = 50 + 25 + 100
+ v =
+
+ 175.
+
+The value of diameter(d) = 29.992391 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.14.b/solution4_14.sce b/764/CH4/EX4.14.b/solution4_14.sce new file mode 100755 index 000000000..63858ab65 --- /dev/null +++ b/764/CH4/EX4.14.b/solution4_14.sce @@ -0,0 +1,36 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_14.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_14.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the yield strength in shear Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Calculate the permissible shear stress tau (N/mm2)
+tau = Ssy/fs
+//Calculate the bending moment Mb (N-mm)
+Mb = (P * 1000)*v
+//Calculate the torsional moment Mt (N-mm)
+Mt = (P * 1000)*h
+//Assume value of diameter to be 1mm d
+d = 1
+//Calculate the value of y (mm)
+y = d/2
+//Calculate the second moment of area I (mm4)
+I = (%pi/64)*(d^4)
+//Calculate the polar moment of area J (mm4)
+J = (%pi/32)*(d^4)
+//Calculate the bending shear stress B (N/mm2)
+B = (Mb * y)/I
+//Calculate the torsional shear stress T (N/mm2)
+T = (Mt * (d/2))/J
+//Refer Fig.4.40(c) for Mohr's Circle
+taumax = sqrt(((B/2)^2) + (T^2))
+//Calculate the true value of diameter d (mm)
+d = ((taumax/tau)^(1/3))
+//Print results
+printf('The value of diameter(d) = %f mm\n',d)
+
diff --git a/764/CH4/EX4.15.a/data4_15.sci b/764/CH4/EX4.15.a/data4_15.sci new file mode 100755 index 000000000..b25032893 --- /dev/null +++ b/764/CH4/EX4.15.a/data4_15.sci @@ -0,0 +1,20 @@ +
+//(Design against Static Load) Example 4.15
+//Refer Fig.4.50 on page 121
+//Safety valve blow-off pressure p (MPa)
+p = 1.5
+//Effective diameter of the valve opening d (mm)
+de = 50
+//Distance between fulcrum and lever dead weights l1 (mm)
+l1 = 1000
+//Distance between the fulcrum and the pin connecting the valve spindle to the lever l2 (mm)
+l2 = 100
+//Tensile yield strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 5
+//Permissible bearing pressure at the pin in the lever Bp (N/mm2)
+Bp = 25
+//Ratio of width to thickness ratio
+ratio = 3
+
\ No newline at end of file diff --git a/764/CH4/EX4.15.b/result4_15.txt b/764/CH4/EX4.15.b/result4_15.txt new file mode 100755 index 000000000..44ecb8d05 --- /dev/null +++ b/764/CH4/EX4.15.b/result4_15.txt @@ -0,0 +1,74 @@ +-->//(Design against Static Load) Example 4.15
+
+-->//Refer Fig.4.50 on page 121
+
+-->//Safety valve blow-off pressure p (MPa)
+
+-->p = 1.5
+ p =
+
+ 1.5
+
+-->//Effective diameter of the valve opening d (mm)
+
+-->de = 50
+ de =
+
+ 50.
+
+-->//Distance between fulcrum and lever dead weights l1 (mm)
+
+-->l1 = 1000
+ l1 =
+
+ 1000.
+
+-->//Distance between the fulcrum and the pin connecting the valve spindle to the lever l2 (mm)
+
+-->l2 = 100
+ l2 =
+
+ 100.
+
+-->//Tensile yield strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Permissible bearing pressure at the pin in the lever Bp (N/mm2)
+
+-->Bp = 25
+ Bp =
+
+ 25.
+
+-->//Ratio of width to thickness ratio
+
+-->ratio = 3
+ ratio =
+
+ 3.
+
+
+
+The diamater of the pin(dp) = 11.000000 mm
+
+The length of the pin(lp) = 20.000000 mm
+
+The thickness of the lever cross-section(b) = 15.000000 mm
+
+The width of the lever cross-sectio(d) = 45.000000 mm
+
+The dead weight(P) = 294.524311 mm
+
+The lever design is safe
+
\ No newline at end of file diff --git a/764/CH4/EX4.15.b/solution4_15.sce b/764/CH4/EX4.15.b/solution4_15.sce new file mode 100755 index 000000000..49c6f60b5 --- /dev/null +++ b/764/CH4/EX4.15.b/solution4_15.sce @@ -0,0 +1,82 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Function to round-up a value such that it is divisible by 10
+function[v] = round_ten(w)
+ v = ceil(w)
+ rem = pmodulo(v,10)
+ if (rem ~= 0) then
+ v = v + (10 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_15.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_15.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible stresses for lever and pin sigmat (N/mm2)
+sigmat = Syt/fs
+//Calculate the yield strength in shear Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Calculate the permissible stress in shear tau (N/mm2)
+tau = Ssy/fs
+//Calculate the maximum steam load F (N)
+F = (%pi/4)*((de^2) * p)
+//Calculate the dead weight P (N)
+P = (F * l2)/l1
+//Calculate reaction at fulcrum R (N)
+R = F - P
+//Assume length and diameter of pin to be equal (lp = dp)
+dp = sqrt(F/Bp)
+dp = ceil(dp)
+lp = dp
+//Calculate the shear stress in pin tau1 (N/mm2)
+tau1 = F/(2 * (%pi/4) * (dp^2))
+//Calculate gunmetal bush thickness t (mm)
+t = 2
+//Calculate inside diameter of the boss di (mm)
+di = dp + (2 * t)
+//Calculate the outside diameter of the boss d0 (mm)
+d0 = 2 * di
+//Calculate the maximum banding moment Mb (N-mm)
+Mb = P*(l1 - l2)
+//Assume the thickness of the cross-section to be 1mm b
+b = 1
+//Calculate the width of the cross-section d (mm)
+d = ratio * b
+//Calculate the value of y (mm)
+y = d/2
+//Calculate the second moment of area I (mm4)
+I = (b * ((ratio * b)^3))/12
+//Calculate the true value of b (mm)
+b = ((Mb * y)/(sigmat * I))^(1/3)
+b = round_five(b)
+//Calculate the true value of d (mm)
+d = ratio * b
+lp = round_ten(lp)
+//For lever cross-section
+y1 = d/2
+I1 = ((b * (d^3)) + ((lp - b) * (d0^3)) - (lp * (di^3)))/12
+//Calculate the bending stress for the modified design sigmab (N/mm2)
+sigmab = (Mb * y1)/I1
+//Print results
+printf('\nThe diamater of the pin(dp) = %f mm\n',dp)
+printf('\nThe length of the pin(lp) = %f mm\n',lp)
+printf('\nThe thickness of the lever cross-section(b) = %f mm\n',b)
+printf('\nThe width of the lever cross-sectio(d) = %f mm\n',d)
+printf('\nThe dead weight(P) = %f mm\n',P)
+//Check for design safety
+if(tau1<tau & sigmab<sigmat)
+ printf('\nThe lever design is safe\n')
+end
diff --git a/764/CH4/EX4.16.a/data4_16.sci b/764/CH4/EX4.16.a/data4_16.sci new file mode 100755 index 000000000..353c23f28 --- /dev/null +++ b/764/CH4/EX4.16.a/data4_16.sci @@ -0,0 +1,19 @@ +
+//(Design against Static Load) Example 4.16
+//Refer Fig.4.53 on page 123
+//Load to be raised F (kN)
+F = 5
+//Length of short arm l1 (mm)
+l1 = 100
+//Length of long arm l2 (mm)
+l2 = 450
+//Tensile yield strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 5
+//Permissible bearing pressure at the pin in the lever p (N/mm2)
+p = 10
+//Ratio of width to thickness ratio
+ratio = 3
+//Ratio of length to diameter of the fulcrum pin rf
+rf = 1.25
diff --git a/764/CH4/EX4.16.b/result4_16.txt b/764/CH4/EX4.16.b/result4_16.txt new file mode 100755 index 000000000..4fa2729aa --- /dev/null +++ b/764/CH4/EX4.16.b/result4_16.txt @@ -0,0 +1,71 @@ +-->//(Design against Static Load) Example 4.16
+
+-->//Refer Fig.4.53 on page 123
+
+-->//Load to be raised F (kN)
+
+-->F = 5
+ F =
+
+ 5.
+
+-->//Length of short arm l1 (mm)
+
+-->l1 = 100
+ l1 =
+
+ 100.
+
+-->//Length of long arm l2 (mm)
+
+-->l2 = 450
+ l2 =
+
+ 450.
+
+-->//Tensile yield strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Permissible bearing pressure at the pin in the lever p (N/mm2)
+
+-->p = 10
+ p =
+
+ 10.
+
+-->//Ratio of width to thickness ratio
+
+-->ratio = 3
+ ratio =
+
+ 3.
+
+-->//Ratio of length to diameter of the fulcrum pin rf
+
+-->rf = 1.25
+ rf =
+
+ 1.25
+
+
+Diameter of the fulcrum pin(df) = 20.242469 mm
+
+Length of the fulcrum pin(lf) = 25.303086 mm
+
+Force to be applied at the long arm end(P) = 1111.111111 mm
+
+Thickness of the cross-section of the lever(b) = 16.091490 mm
+
+Width of the cross-section of the lever(d) = 48.274469 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.16.b/solution4_16.sce b/764/CH4/EX4.16.b/solution4_16.sce new file mode 100755 index 000000000..8408277ca --- /dev/null +++ b/764/CH4/EX4.16.b/solution4_16.sce @@ -0,0 +1,52 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_16.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_16.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible stresses for lever and pin sigmat (N/mm2)
+sigmat = Syt/fs
+//Calculate the yield strength in shear Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Calculate the permissible stress in shear tau (N/mm2)
+tau = Ssy/fs
+//Calculate force acting on the lever P (N)
+P = (F * 1000 * l1)/l2
+//Calculate the reaction at the fulcrum R (N)
+R = sqrt(((F * 1000)^2) + (P^2))
+//Calculate the diameter of the fulcrum pin df (mm)
+df = (R/(p * rf))^(1/2)
+//Calculate the length of the fulcrum pin lf (mm)
+lf = df * rf
+//Calculate the shear stress in pin tau1 (N/mm2)
+tau1 = R/(2 * (%pi/4) * (df^2))
+//Dimensions of the boss
+//Inner diameter di (mm)
+di = ceil(df)
+//Outer diameter d0 (mm)
+d0 = 2 * di
+//Length l (mm)
+l = ceil(lf)
+//Dimensions of cross-section of lever
+//Calculate the maximum bending moment Mb (N-mm)
+Mb = (F * 1000)*l1
+//Assume the thickness b to be 1mm
+b = 1
+d = ratio * b
+//Calculate the value of y (mm)
+y = d/2
+//Calculate second moment of area I (mm4)
+I = (b * (d^3))/12
+//Calculate the true value of b (mm)
+b = ((Mb * y)/(sigmat * I))^(1/3)
+//Calculate the width of lever cross-section d (mm)
+d = ratio * b
+//Print results
+printf('\nDiameter of the fulcrum pin(df) = %f mm\n',df)
+printf('\nLength of the fulcrum pin(lf) = %f mm\n',lf)
+printf('\nForce to be applied at the long arm end(P) = %f mm\n',P)
+printf('\nThickness of the cross-section of the lever(b) = %f mm\n',b)
+printf('\nWidth of the cross-section of the lever(d) = %f mm\n',d)
diff --git a/764/CH4/EX4.17.a/data4_17.sci b/764/CH4/EX4.17.a/data4_17.sci new file mode 100755 index 000000000..8706943e5 --- /dev/null +++ b/764/CH4/EX4.17.a/data4_17.sci @@ -0,0 +1,24 @@ +
+//(Design against Static Load) Example 4.17
+//Refer Fig.4.54 on page 124
+//For beam
+//Tensile yield strength of FeE250 Syt (N/mm2)
+Syt = 250
+//Factor of safety fs
+fs = 5
+//Ratio of width to thickness of the beam cross-section ratio
+ratio = 2
+//For vessel
+//Ultimate tensile strength of FG200 Sut(N/mm2)
+Sut = 200
+//Internal guage pressure p (MPa)
+p = 0.25
+//Diameter D (mm)
+D = 500
+//Refer table for ISO Metric threads-Coarse series
+//Area mm2
+area = [561 817 1120 1470]
+//Pitch (mm)
+pitch = [3.5 4 4.5 5]
+//Distance between vessel centre line and beam end l (mm)
+l = 325
diff --git a/764/CH4/EX4.17.b/result4_17.txt b/764/CH4/EX4.17.b/result4_17.txt new file mode 100755 index 000000000..ea87d2b4f --- /dev/null +++ b/764/CH4/EX4.17.b/result4_17.txt @@ -0,0 +1,92 @@ +-->//(Design against Static Load) Example 4.17
+
+-->//Refer Fig.4.54 on page 124
+
+-->//For beam
+
+-->//Tensile yield strength of FeE250 Syt (N/mm2)
+
+-->Syt = 250
+ Syt =
+
+ 250.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Ratio of width to thickness of the beam cross-section ratio
+
+-->ratio = 2
+ ratio =
+
+ 2.
+
+-->//For vessel
+
+-->//Ultimate tensile strength of FG200 Sut(N/mm2)
+
+-->Sut = 200
+ Sut =
+
+ 200.
+
+-->//Internal guage pressure p (MPa)
+
+-->p = 0.25
+ p =
+
+ 0.25
+
+-->//Diameter D (mm)
+
+-->D = 500
+ D =
+
+ 500.
+
+-->//Refer table for ISO Metric threads-Coarse series
+
+-->//Area mm2
+
+-->area = [561 817 1120 1470]
+ area =
+
+ 561. 817. 1120. 1470.
+
+-->//Pitch (mm)
+
+-->pitch = [3.5 4 4.5 5]
+ pitch =
+
+ 3.5 4. 4.5 5.
+
+-->//Distance between vessel centre line and beam end l (mm)
+
+-->l = 325
+ l =
+
+ 325.
+
+
+Select M42 screw
+
+The nominal diameter and pitch of the screw are 42.000000 mm and 4.500000 mm respectively
+
+The width of the beam cross-section(h) = 130.000000 mm
+
+The thickness of the beam cross-section(b) = 65.000000 mm
+
+The value of d0 = 107.000000 mm
+
+The diameter of the pins(d) = 25.000000 mm
+
+The diameter of links 1 and 2(d2) = 25.000000 mm
+
+The width of the vessel extension cross-section(h1) = 90.000000 mm
+
+The thickness of the vessel extension cross-section(b1) = 45.000000 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.17.b/solution4_17.sce b/764/CH4/EX4.17.b/solution4_17.sce new file mode 100755 index 000000000..9dedee473 --- /dev/null +++ b/764/CH4/EX4.17.b/solution4_17.sce @@ -0,0 +1,100 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_17.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_17.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible stresses for steel parts sigmat1 (N/mm2)
+sigmat1 = Syt/fs
+//Compressive stress sigmac1 (N/mm2)
+sigmac1 = sigmat1
+//Yield strength in shear Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Shear stress tau1 (N/mm2)
+tau1 = Ssy/fs
+//For cast iron parts
+//Permissible tensile stress sigmat2 (N/mm2)
+sigmat2 = Sut/fs
+//Calculate the force acting on the cover F (N)
+F = (%pi/4)*(p * (D^2))
+//Calculate the stressed area of the screw a (mm2)
+a = F/sigmac1
+//Select the standard screw from the table
+for i = 1:1:4
+ if(a < area(i))
+ break
+ end
+end
+//Print the size of the standard screw selected
+if(i==1)
+ printf('\nSelect M30 screw\n')
+ d1 = 30
+elseif(i==2)
+ printf('\nSelect M36 screw\n')
+ d1 = 36
+elseif(i==3)
+ printf('\nSelect M42 screw\n')
+ d1 = 42
+else
+ printf('\nSelect M48 screw\n')
+ d1 = 48
+end
+//Calculate the maximum bending moment on the beam Mb (N-mm)
+Mb = l * (F/2)
+//Assume the thickness of the beam to be 1mm b
+b = 1
+h = ratio * b
+//Calculate the second moment of area I (mm4)
+I = (b * ((ratio * b)^3))/12
+//Calculate the value of y (mm)
+y = h/2
+//Calculate the true value of b (mm)
+b = ((Mb * y)/(sigmat1 * I))^(1/3)
+b = round_five(b)
+//Calculate the true value of h (mm)
+h = ratio * b
+//Calculate the value of d0 (mm)
+d0 = d1 + (b/2) + (b/2)
+//Calculate the diameter of the pins d (mm)
+d = (((F/2) * 4)/(2 * %pi * tau1))^(1/2)
+//Calculate the diameter of links 1 and 2 d2 (mm)
+d2 = (((F/2) * 4)/(%pi * sigmat1))^(1/2)
+//Maximum length of the vessel extension e (mm)
+e = l - (D/2)
+//Calculate the maximum bending moment on the extension Mb1 (N-mm)
+Mb1 = (F/2)*e
+//Assume the width of extension to be 1mm b1
+b1 = 1
+h1 = ratio * b1
+//Calculate y1 (mm)
+y1 = h1/2
+//Calculate I1 (mm4)
+I1 = (b1 * (h1^3))/12
+//Calculate the true value of b1 (mm)
+b1 = ((Mb1 * y1)/(sigmat2 * I1))^(1/3)
+b1 = round_five(b1)
+//Calculate the true value of h1
+h1 = ratio * b1
+//Print results
+printf('\nThe nominal diameter and pitch of the screw are %f mm and %f mm respectively\n',d1,pitch(i))
+printf('\nThe width of the beam cross-section(h) = %f mm\n',h)
+printf('\nThe thickness of the beam cross-section(b) = %f mm\n',b)
+printf('\nThe value of d0 = %f mm\n',d0)
+printf('\nThe diameter of the pins(d) = %f mm\n',d)
+printf('\nThe diameter of links 1 and 2(d2) = %f mm\n',d2)
+printf('\nThe width of the vessel extension cross-section(h1) = %f mm\n',h1)
+printf('\nThe thickness of the vessel extension cross-section(b1) = %f mm\n',b1)
+
+
diff --git a/764/CH4/EX4.18.a/data4_18.sci b/764/CH4/EX4.18.a/data4_18.sci new file mode 100755 index 000000000..55ce19a95 --- /dev/null +++ b/764/CH4/EX4.18.a/data4_18.sci @@ -0,0 +1,25 @@ +
+//(Design against Static Load) Example 4.18
+//Refer Fig.4.57 on page 126
+//Tensile yield strength of FeE250 Syt (N/mm2)
+Syt = 250
+//Factor of safety fs
+fs = 5
+//Diameter of bars to be sheared D (mm)
+D = 6.25
+//Ultimate shear strength of the material Sus (N/mm2)
+Sus = 350
+//Permissible bearing pressure on the pins p (N/mm2)
+p = 10
+//Pin length to diameter ratio r1
+r1 = 1.25
+//Link cross-section width to thickness ratio r2
+r2 = 2
+//Distance between pinA and pinB l1 (mm)
+l4 = 400
+//Distance between bar to be sheared and pinA & force application point and pinC l2 (mm)
+l2 = 100
+//Distance between the force applied and pinD l3 (mm)
+l3 = 1000
+//Thickness of gunmetal bush over pin C t (mm)
+t = 2.5
diff --git a/764/CH4/EX4.18.b/result4_18.txt b/764/CH4/EX4.18.b/result4_18.txt new file mode 100755 index 000000000..2579a2ab0 --- /dev/null +++ b/764/CH4/EX4.18.b/result4_18.txt @@ -0,0 +1,94 @@ +-->//(Design against Static Load) Example 4.18
+
+-->//Refer Fig.4.57 on page 126
+
+-->//Tensile yield strength of FeE250 Syt (N/mm2)
+
+-->Syt = 250
+ Syt =
+
+ 250.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Diameter of bars to be sheared D (mm)
+
+-->D = 6.25
+ D =
+
+ 6.25
+
+-->//Ultimate shear strength of the material Sus (N/mm2)
+
+-->Sus = 350
+ Sus =
+
+ 350.
+
+-->//Permissible bearing pressure on the pins p (N/mm2)
+
+-->p = 10
+ p =
+
+ 10.
+
+-->//Pin length to diameter ratio r1
+
+-->r1 = 1.25
+ r1 =
+
+ 1.25
+
+-->//Link cross-section width to thickness ratio r2
+
+-->r2 = 2
+ r2 =
+
+ 2.
+
+-->//Distance between pinA and pinB l1 (mm)
+
+-->l4 = 400
+ l4 =
+
+ 400.
+
+-->//Distance between bar to be sheared and pinA & force application point and pinC l2 (mm)
+
+-->l2 = 100
+ l2 =
+
+ 100.
+
+-->//Distance between the force applied and pinD l3 (mm)
+
+-->l3 = 1000
+ l3 =
+
+ 1000.
+
+-->//Thickness of gunmetal bush over pin C t (mm)
+
+-->t = 2.5
+ t =
+
+ 2.5
+
+
+Diameter of pins(d1) = 15.000000 mm
+
+Length of pins(l1) = 20.000000 mm
+
+Diameter of link(d) = 10.000000 mm
+
+Width of lever cross-section(h) = 40.000000 mm
+
+Thickness of lever cross-section(b) = 20.000000 mm
+
+The design is safe
+
\ No newline at end of file diff --git a/764/CH4/EX4.18.b/solution4_18.sce b/764/CH4/EX4.18.b/solution4_18.sce new file mode 100755 index 000000000..aecb236f9 --- /dev/null +++ b/764/CH4/EX4.18.b/solution4_18.sce @@ -0,0 +1,81 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_18.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_18.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate permissible stresses
+//Permissible tensile stress sigmat (N/mm2)
+sigmat = Syt/fs
+//Calculate the yield strength in shear Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Calculate the permissible stress in shear tau (N/mm2)
+tau = Ssy/fs
+//Maximum force required to shear the bar Ps (N)
+Ps = (%pi/4)*(D^2)*Sus
+//Calculate the force acting on each pin P1 (N)
+P1 = (Ps * l2)/l4
+//Calculate reaction at pinA RA (N)
+RA = Ps - P1
+//Calculate the force applied at lever P (N)
+P = (P1 * l2)/l3
+//Calculate reaction at pinD RD (N)
+RD = P1 - P
+//Calculate the diameter of pins d1 (mm)
+d1 = (P1/(p * r1))^(1/2)
+d1 = round_five(d1)
+//Calculate the length of pin l1 (mm)
+l1 = r1 * d1
+l1 = round_five(l1)
+//Calculate the shear stress in pin tau1 (N/mm2)
+tau1 = (P1 * 4)/(2 * %pi * (d1^2))
+//Calculate the diameter of the link d (mm)
+d = ((P1 * 4)/(%pi * sigmat))^(1/2)
+d = round_five(d)
+//Calculate the maximum bending moment on lever Mb (N-mm)
+Mb = P * (l3 - l2)
+//Assume the thickness of the cross-section to be 1mm b
+b = 1
+//Calculate the width of the cross-section h (mm)
+h = r2 * b
+//Calculate the value of y (mm)
+y = h/2
+//Calculate the second moment of area I (mm4)
+I = (b * ((r2 * b)^3))/12
+//Calculate the true value of b (mm)
+b = ((Mb * y)/(sigmat * I))^(1/3)
+b = round_five(b)
+//Calculate the true value of h (mm)
+h = r2 * b
+//Calculate the inner diameter of the boss di (mm)
+di = d1 + (2 * t)
+//Calculate the outer diameter of the boss d0 (mm)
+d0 = 2 * di
+//Calculate the second moment of area I1 (mm4)
+I1 = ((l1 * (d0^3)) - (l1 * (di^3)))/12
+//Calculate y1 (mm)
+y1 = d0/2
+//Calculate the bending stress B (N/mm2)
+B = (Mb * y1)/I1
+//Print results
+printf('\nDiameter of pins(d1) = %f mm\n',d1)
+printf('\nLength of pins(l1) = %f mm\n',l1)
+printf('\nDiameter of link(d) = %f mm\n',d)
+printf('\nWidth of lever cross-section(h) = %f mm\n',h)
+printf('\nThickness of lever cross-section(b) = %f mm\n',b)
+//Chech design
+if((tau1 < tau) & (B - sigmat)<2)
+ printf('\nThe design is safe\n')
+end
\ No newline at end of file diff --git a/764/CH4/EX4.19.a/data4_19.sci b/764/CH4/EX4.19.a/data4_19.sci new file mode 100755 index 000000000..87310fd51 --- /dev/null +++ b/764/CH4/EX4.19.a/data4_19.sci @@ -0,0 +1,14 @@ +
+//(Design against Static Load) Example 4.19
+//Refer Fig.4.65 and Fig.4.66
+//Tensile yield strength of 45C8 Syt (N/mm2)
+Syt = 380
+//Factor of safety fs
+fs = 3.5
+//All dimensions in mm
+bi = 90
+bo = 30
+h = 120
+Ro = 170
+Ri = 50
+
diff --git a/764/CH4/EX4.19.b/result4_19.txt b/764/CH4/EX4.19.b/result4_19.txt new file mode 100755 index 000000000..7c458f537 --- /dev/null +++ b/764/CH4/EX4.19.b/result4_19.txt @@ -0,0 +1,49 @@ +-->//(Design against Static Load) Example 4.19
+
+-->//Refer Fig.4.65 and Fig.4.66
+
+-->//Tensile yield strength of 45C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Factor of safety fs
+
+-->fs = 3.5
+ fs =
+
+ 3.5
+
+-->//All dimensions in mm
+
+-->bi = 90
+ bi =
+
+ 90.
+
+-->bo = 30
+ bo =
+
+ 30.
+
+-->h = 120
+ h =
+
+ 120.
+
+-->Ro = 170
+ Ro =
+
+ 170.
+
+-->Ri = 50
+ Ri =
+
+ 50.
+
+
+
+The load carrying capacity(P) = 94828.181768 N
+
\ No newline at end of file diff --git a/764/CH4/EX4.19.b/solution4_19.sce b/764/CH4/EX4.19.b/solution4_19.sce new file mode 100755 index 000000000..d7fa73adc --- /dev/null +++ b/764/CH4/EX4.19.b/solution4_19.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_19.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_19.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible stresses for steel parts sigmat (N/mm2)
+sigmat = Syt/fs
+//Calculate the eccentricity e (mm)
+Rn = (((bi + bo)/2)*h)/((((bi * Ro) - (bo * Ri))/h)*log(Ro/Ri)-(bi - bo))
+R = Ri + ((h*(bi + (2 * bo)))/(3 * (bi + bo)))
+e = R - Rn
+hi = Rn - Ri
+A = (h * (bi + bo))/2
+//Assume the value load P to be 1N
+P = 1
+//Calculate the bending moment Mb (N-mm)
+Mb = R * P
+//Calculate bending stress at the inner fibre B (N/mm2)
+B = (Mb * hi)/(A * e * Ri)
+//Calculate the direct tensile stress T (N/mm2)
+T = P/A
+//Calculate the actual load carrying capacity P (N)
+P = sigmat/(B + T)
+//Print results
+printf('\nThe load carrying capacity(P) = %f N\n',P)
diff --git a/764/CH4/EX4.2.a/data4_2.sci b/764/CH4/EX4.2.a/data4_2.sci new file mode 100755 index 000000000..ea5c0fb30 --- /dev/null +++ b/764/CH4/EX4.2.a/data4_2.sci @@ -0,0 +1,11 @@ +
+//(Design against Static Load) Example 4.2
+//Refer section 4.10 on page 90
+//Axial tensile force acting on acting on each rod P (kN)
+P = 50
+//Tensile yield strength of the material Syt (N/mm2)
+Syt = 400
+//Factor of safety for rod f1
+f1 = 6
+//Factor of safety for cotter f2
+f2 = 4
diff --git a/764/CH4/EX4.2.b/result4_2.txt b/764/CH4/EX4.2.b/result4_2.txt new file mode 100755 index 000000000..61640e334 --- /dev/null +++ b/764/CH4/EX4.2.b/result4_2.txt @@ -0,0 +1,51 @@ +-->//(Design against Static Load) Example 4.2
+
+-->//Refer section 4.10 on page 90
+
+-->//Axial tensile force acting on acting on each rod P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Tensile yield strength of the material Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety for rod f1
+
+-->f1 = 6
+ f1 =
+
+ 6.
+
+-->//Factor of safety for cotter f2
+
+-->f2 = 4
+ f2 =
+
+ 4.
+
+
+Diameter of the rods(d) = 31.000000 mm
+
+Thickness of cotter(t) = 10.000000 mm
+
+Diameter of spigot(d2) = 40.000000 mm
+
+Outer diameter of socket(d1) = 55.000000 mm
+
+Diameter of spigot collar(d3) = 47.000000 mm
+
+Diameter of socket collar(d4) = 80.000000 mm
+
+Width of cotter(b) = 50.000000 mm
+
+Thickness of spigot collar(t1) = 15.000000 mm
+
+Design of cotter joint is safe
+
\ No newline at end of file diff --git a/764/CH4/EX4.2.b/solution4_2.sce b/764/CH4/EX4.2.b/solution4_2.sce new file mode 100755 index 000000000..0f4a52c27 --- /dev/null +++ b/764/CH4/EX4.2.b/solution4_2.sce @@ -0,0 +1,105 @@ +
+//Function to calculate roots of a quadratic equation
+function[r] = quadratic(a,b,c)
+ //Calculate discriminant D
+ D = (b^2)-(4 * a * c)
+ r1 = ((-1 * b)+ sqrt(D))/(2 * a)
+ r2 = ((-1 * b)- sqrt(D))/(2 * a)
+ if(r1 > 0)
+ r = r1
+ else
+ r = r2
+ end
+endfunction
+
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ v = v + (5 - rem)
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Refer Fig.4.17 on page 93
+//For rod
+//Permissible tensile stress sr1 (N/mm2)
+sr1 = Syt/f1
+//Permissible compressive stress sr2 (N/mm2)
+sr2 = 2 * sr1
+//Yield strength of the material in shear Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Permissible shear stress tau1 (N/mm2)
+tau1 = Ssy/f1
+//For cotter
+//Permissible tensile stress sc1 (N/mm2)
+sc1 = Syt/f2
+//Permissible shear stress tau2 (N/mm2)
+tau2 = Ssy/f2
+//Calculate diameter of the rods d (mm)
+d = sqrt((4 * P * 1000)/(%pi * sr1))
+//Round up d
+d = ceil(d)
+//Calculate thickness of cotter t (mm)
+t = 0.31 * d
+//Round up t
+t = ceil(t)
+//Calculate the diameter of spigot d2 (mm)
+//a,b,c are the coefficients of the resulting quadratic equation
+//ax^2 + bx + c = 0 x=d2
+a = (%pi/4)*sr1
+b = -1* t * sr1
+c = -1 * P * 1000
+//Call the declared functions
+d2 = quadratic(a, b, c)
+d2 = round_five(d2)
+//Calculate outer daimeter of the socket d1 (mm)
+//a,b,c are the coefficients of the resulting quadratic equation
+//ax^2 + bx + c = 0 x=d1
+a = (%pi/4)*(sr1)
+b = (-1)*(t * sr1)
+c = (((-1 * (%pi/4) * (d2^2))+(t * d2))*sr1)-(P * 1000)
+//Call the declared functions
+d1 = quadratic(a, b, c)
+d1 = round_five(d1)
+//Calculate diameters of spigot collar d3 and socket collar d4 (mm)
+d3 = 1.5 * d
+d3 = ceil(d3)
+d4 = 2.4 * d
+d4 = round_five(d4)
+//Calculate dimensions a1 and c1 (mm)
+a1 = 0.75 * d
+a1 = ceil(a1)
+c1 = 0.75 * d
+c1 = ceil(c1)
+//Calculate width of cotter b (mm)
+b = (P * 1000)/(2 * tau2 * t)
+//Calculate thickness of spigot collar t1 mm
+t1 = 0.45 * d
+t1 = round_five(t1)
+//Print results
+printf('\nDiameter of the rods(d) = %f mm\n',d)
+printf('\nThickness of cotter(t) = %f mm\n',t)
+printf('\nDiameter of spigot(d2) = %f mm\n',d2)
+printf('\nOuter diameter of socket(d1) = %f mm\n',d1)
+printf('\nDiameter of spigot collar(d3) = %f mm\n',d3)
+printf('\nDiameter of socket collar(d4) = %f mm\n',d4)
+printf('\nWidth of cotter(b) = %f mm\n',b)
+printf('\nThickness of spigot collar(t1) = %f mm\n',t1)
+//Check for crushing and shear stresses in spigot end
+sigc = (P * 1000)/(t * d2)
+tauc = (P * 1000)/(2 * a1 * d2)
+//Check for crushing and shear stresses in socket end
+sigs = (P * 1000)/((d4 - d2) * t)
+taus = (P * 1000)/(2 * (d4 - d2) * c1)
+if ((sigc < sr2) & (tauc < tau1) & (sigs < sr2) & (taus < tau1))
+ printf('\nDesign of cotter joint is safe\n')
+else
+ printf('\nDesign of cotter joint is not safe\n')
+end
diff --git a/764/CH4/EX4.20.a/data4_20.sci b/764/CH4/EX4.20.a/data4_20.sci new file mode 100755 index 000000000..1091703a4 --- /dev/null +++ b/764/CH4/EX4.20.a/data4_20.sci @@ -0,0 +1,9 @@ +
+//(Design against Static Load) Example 4.20
+//Refer Fig.4.67
+//Tensile yield strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 3.5
+//Load on the curved link P (kN)
+P = 1
diff --git a/764/CH4/EX4.20.b/result4_20.txt b/764/CH4/EX4.20.b/result4_20.txt new file mode 100755 index 000000000..413f733c4 --- /dev/null +++ b/764/CH4/EX4.20.b/result4_20.txt @@ -0,0 +1,28 @@ +-->//(Design against Static Load) Example 4.20
+
+-->//Refer Fig.4.67
+
+-->//Tensile yield strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 3.5
+ fs =
+
+ 3.5
+
+-->//Load on the curved link P (kN)
+
+-->P = 1
+ P =
+
+ 1.
+
+
+The diameter of the link(D) = 20.105902 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.20.b/solution4_20.sce b/764/CH4/EX4.20.b/solution4_20.sce new file mode 100755 index 000000000..ddfa0d549 --- /dev/null +++ b/764/CH4/EX4.20.b/solution4_20.sce @@ -0,0 +1,31 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_20.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_20.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible stresses for steel parts sigmat (N/mm2)
+sigmat = Syt/fs
+//Assume the diameter of the link to be 1mm D
+D = 1
+R = 4 * D
+Ri = (4 * D)-(0.5 * D)
+Ro = (4 * D)+(0.5 * D)
+Rn = ((sqrt(Ro) + sqrt(Ri))^2)/4
+//Calculate the eccentricity e (mm)
+e = R - Rn
+hi = Rn - Ri
+A = (%pi/4)*(D^2)
+//Calculate the bending moment Mb (N-mm)
+Mb = (P * 1000)*(4 * D)
+//Calculate the bending stress B (N/mm2)
+B = (Mb * hi)/(A * e * Ri)
+//Calculate the direct tensile stress T (N/mm2)
+T = (P * 1000)/A
+//Calculate the true diameter of the link D (mm)
+D = ((B + T)/sigmat)^(1/2)
+//Print results
+printf('\nThe diameter of the link(D) = %f mm\n',D)
diff --git a/764/CH4/EX4.21.a/data4_21.sci b/764/CH4/EX4.21.a/data4_21.sci new file mode 100755 index 000000000..b238cca70 --- /dev/null +++ b/764/CH4/EX4.21.a/data4_21.sci @@ -0,0 +1,11 @@ +
+//(Design against Static Load) Example 4.21
+//Refer Fig.4.68 and 4.65
+//Load capacity of press P (kN)
+P = 100
+//Ultimate tensile strength of FG200 Sut (N/mm2)
+Sut = 200
+//Factor of safety fs
+fs = 3
+//Distance between force application point and C-Frame centre l (mm)
+l = 1000
diff --git a/764/CH4/EX4.21.b/result4_21.txt b/764/CH4/EX4.21.b/result4_21.txt new file mode 100755 index 000000000..db2ed2f0f --- /dev/null +++ b/764/CH4/EX4.21.b/result4_21.txt @@ -0,0 +1,35 @@ +-->//(Design against Static Load) Example 4.21
+
+-->//Refer Fig.4.68 and 4.65
+
+-->//Load capacity of press P (kN)
+
+-->P = 100
+ P =
+
+ 100.
+
+-->//Ultimate tensile strength of FG200 Sut (N/mm2)
+
+-->Sut = 200
+ Sut =
+
+ 200.
+
+-->//Factor of safety fs
+
+-->fs = 3
+ fs =
+
+ 3.
+
+-->//Distance between force application point and C-Frame centre l (mm)
+
+-->l = 1000
+ l =
+
+ 1000.
+
+
+The value of t = 100.000000 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.21.b/solution4_21.sce b/764/CH4/EX4.21.b/solution4_21.sce new file mode 100755 index 000000000..5181a08a8 --- /dev/null +++ b/764/CH4/EX4.21.b/solution4_21.sce @@ -0,0 +1,55 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_21.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_21.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate permissible tensile stress sigma (N/mm2)
+sigma = Sut/fs
+//Assume value of t to be 1mm
+t = 1
+//All dimensions in mm
+bi = 3 * t
+h = 3 * t
+Ri = 2 * t
+Ro = 5 * t
+ti = t
+to = 0.75 * t
+Rn = ((ti * (bi - to)) + (to * h))/((bi - to)*log((Ri + ti)/Ri)+(to * log(Ro/Ri)))
+R = Ri + ((((1/2)*to*(h^2)) + ((1/2)*(ti^2)*(bi - to)))/((to*h) + (ti*(bi - to))))
+//Calculate eccentricity e (mm)
+e = R - Rn
+hi = Rn - Ri
+A = (bi * ti) + (to * Ri)
+//Calculate the direct tensile stress T (N/mm2)
+T = (P * 1000)/A
+//The polynomial obtained is as follows
+C = (((R * P * 1000 * hi)/(A * e * Ri)) + T)
+D = (P * 1000 * l * hi)/(A * e * Ri)
+p = [(-1 * sigma) 0 C D]
+r = roots(p)
+//Calculate the true value of t (mm)
+real_part = real(r)
+for i = 1:1:3
+ if(real_part(i)>0)
+ t = real_part(i)
+ break
+ end
+end
+t = round_five(t)
+//Print results
+printf('\nThe value of t = %f mm\n',t)
+
+
diff --git a/764/CH4/EX4.22.a/data4_22.sci b/764/CH4/EX4.22.a/data4_22.sci new file mode 100755 index 000000000..69717ce68 --- /dev/null +++ b/764/CH4/EX4.22.a/data4_22.sci @@ -0,0 +1,17 @@ +
+//(Design against Static Load) Example 4.22
+//Refer Fig.4.70 on page 136
+//Initial temperature of the steel tube Ti (degree)
+Ti = 25
+//Final temperature of the steel tube Tf (degree)
+Tf = 250
+//Length of the tube l (mm)
+l = 200
+//Area of cross-section of the tube A (mm2)
+A = 300
+//Joint separation j (mm)
+j = 0.15
+//Modulus of elasticity of steel E (N/mm2)
+E = 207000
+//Coefficient of thermal expansion of steel alpha (per degree celsius)
+alpha = 10.8 * (10^(-6))
diff --git a/764/CH4/EX4.22.b/result4_22.txt b/764/CH4/EX4.22.b/result4_22.txt new file mode 100755 index 000000000..5f5da5883 --- /dev/null +++ b/764/CH4/EX4.22.b/result4_22.txt @@ -0,0 +1,58 @@ +-->//(Design against Static Load) Example 4.22
+
+-->//Refer Fig.4.70 on page 136
+
+-->//Initial temperature of the steel tube Ti (degree)
+
+-->Ti = 25
+ Ti =
+
+ 25.
+
+-->//Final temperature of the steel tube Tf (degree)
+
+-->Tf = 250
+ Tf =
+
+ 250.
+
+-->//Length of the tube l (mm)
+
+-->l = 200
+ l =
+
+ 200.
+
+-->//Area of cross-section of the tube A (mm2)
+
+-->A = 300
+ A =
+
+ 300.
+
+-->//Joint separation j (mm)
+
+-->j = 0.15
+ j =
+
+ 0.15
+
+-->//Modulus of elasticity of steel E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+-->//Coefficient of thermal expansion of steel alpha (per degree celsius)
+
+-->alpha = 10.8 * (10^(-6))
+ alpha =
+
+ 0.0000108
+
+
+Force acting on the tube(P) = 104328.000000 N
+
+Resultant stress(sigma) = 347.760000 N/mm2
+
\ No newline at end of file diff --git a/764/CH4/EX4.22.b/solution4_22.sce b/764/CH4/EX4.22.b/solution4_22.sce new file mode 100755 index 000000000..208c1f522 --- /dev/null +++ b/764/CH4/EX4.22.b/solution4_22.sce @@ -0,0 +1,22 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_22.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_22.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Temperature change Dt (degree)
+Dt = Tf - Ti
+//Calculate the expansion of tube delta (mm)
+delta = alpha * l * Dt
+//Net compression of tube c (mm)
+c = delta - j
+//Calculation of force P (N)
+P = (A * E * c)/l
+//Calculate the resultant stress sigma (N/mm2)
+sigma = P/A
+//Print results
+printf('\nForce acting on the tube(P) = %f N\n',P)
+printf('\nResultant stress(sigma) = %f N/mm2\n',sigma)
diff --git a/764/CH4/EX4.3.a/data4_3.sci b/764/CH4/EX4.3.a/data4_3.sci new file mode 100755 index 000000000..f2f580f44 --- /dev/null +++ b/764/CH4/EX4.3.a/data4_3.sci @@ -0,0 +1,12 @@ +
+//(Design against Static Load) Example 4.3
+//Tensile yield strength of steel 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 4
+//Tensile force acting on the rods P (kN)
+P = 50
+//Inside diameter of the socket d2 (mm)
+d2 = 50
+//Outside diameter of the socket d4 (mm)
+d4 = 100
diff --git a/764/CH4/EX4.3.b/result4_3.txt b/764/CH4/EX4.3.b/result4_3.txt new file mode 100755 index 000000000..5d1cfdedd --- /dev/null +++ b/764/CH4/EX4.3.b/result4_3.txt @@ -0,0 +1,50 @@ +-->//(Design against Static Load) Example 4.3
+
+-->//Tensile yield strength of steel 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 4
+ fs =
+
+ 4.
+
+-->//Tensile force acting on the rods P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Inside diameter of the socket d2 (mm)
+
+-->d2 = 50
+ d2 =
+
+ 50.
+
+-->//Outside diameter of the socket d4 (mm)
+
+-->d4 = 100
+ d4 =
+
+ 100.
+
+
+Shear failure criterion
+
+Thickness of cotter(t) = 10.000000 mm
+
+Width of cotter(b) = 50.000000 mm
+
+Bending failure criterion
+
+Thickness of cotter(t1) = 11.000000 mm
+
+Width of cotter(b1) = 55.000000 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.3.b/solution4_3.sce b/764/CH4/EX4.3.b/solution4_3.sce new file mode 100755 index 000000000..5f3fd332a --- /dev/null +++ b/764/CH4/EX4.3.b/solution4_3.sce @@ -0,0 +1,35 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate permissible stresses for cotter (N/mm2)
+//Tensile stress sigma
+sigma = Syt/fs
+//Yield strength in shear for cotter Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Shear stress tau
+tau = Ssy/fs
+//Shear failure criterion
+//Calculate thickness of cotter t (mm)
+t = sqrt((P * 1000)/(2 * 5 * tau))
+//Calculate width of cotter b (mm)
+b = 5 * t
+//Bending failure criterion
+//Calculate thickness of cotter t1 (mm)
+t1 = ((((P * 1000)/2)*((d2/4) + ((d4 - d2)/6))*(5/2))/((100 * (5^3))/12))^(1/3)
+//Round up t1
+t1 = ceil(t1)
+//Calculate width of cotter b1 (mm)
+b1 = 5 * t1
+//Print results
+printf('\nShear failure criterion\n')
+printf('\nThickness of cotter(t) = %f mm\n',t)
+printf('\nWidth of cotter(b) = %f mm\n',b)
+printf('\nBending failure criterion\n')
+printf('\nThickness of cotter(t1) = %f mm\n',t1)
+printf('\nWidth of cotter(b1) = %f mm\n',b1)
\ No newline at end of file diff --git a/764/CH4/EX4.4.a/data4_4.sci b/764/CH4/EX4.4.a/data4_4.sci new file mode 100755 index 000000000..7bcc8d6ae --- /dev/null +++ b/764/CH4/EX4.4.a/data4_4.sci @@ -0,0 +1,10 @@ +
+//(Design against Static Load) Example 4.4
+//Tensile yield strength of plain carbon steel 40C8 Syt (N/mm2)
+Syt = 380
+//Diameter of each rod d (mm)
+d = 50
+//Thickness of cotter t (mm)
+t = 15
+//Factor of safety fs
+fs = 6
diff --git a/764/CH4/EX4.4.b/result4_4.txt b/764/CH4/EX4.4.b/result4_4.txt new file mode 100755 index 000000000..d288900e3 --- /dev/null +++ b/764/CH4/EX4.4.b/result4_4.txt @@ -0,0 +1,43 @@ +-->//(Design against Static Load) Example 4.4
+
+-->//Tensile yield strength of plain carbon steel 40C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Diameter of each rod d (mm)
+
+-->d = 50
+ d =
+
+ 50.
+
+-->//Thickness of cotter t (mm)
+
+-->t = 15
+ t =
+
+ 15.
+
+-->//Factor of safety fs
+
+-->fs = 6
+ fs =
+
+ 6.
+
+
+Load acting on rods(P) = 124354.709205 N
+
+Inside diameter of socket(d2) = 65.000000 mm
+
+Outside diameter of socket(d1) = 85.000000 mm
+
+Diameter of socket collar(d4) = 135.000000 mm
+
+a = 35.000000 mm
+
+c = 30.000000 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.4.b/solution4_4.sce b/764/CH4/EX4.4.b/solution4_4.sce new file mode 100755 index 000000000..dd24a6e23 --- /dev/null +++ b/764/CH4/EX4.4.b/solution4_4.sce @@ -0,0 +1,73 @@ +
+//Function to calculate roots of a quadratic equation
+function[r] = quadratic(a,b,c)
+ //Calculate discriminant D
+ D = (b^2)-(4 * a * c)
+ r1 = ((-1 * b)+ sqrt(D))/(2 * a)
+ r2 = ((-1 * b)- sqrt(D))/(2 * a)
+ if(r1 > 0)
+ r = r1
+ else
+ r = r2
+ end
+endfunction
+
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0)
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Permissible stresses (N/mm2)
+//Compressive stress sigmac
+sigmac = (2 * Syt)/fs
+//Yield strength in shear of the material Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Shear stress tau
+tau = Ssy/fs
+//Tensile stress sigmat
+sigmat = Syt/fs
+//Calculate the load acting on the rods P (N)
+P = (%pi/4)*((d^2) * sigmat)
+//Calculate inside diameter of the socket d2 (mm)
+//a,b,c are the coefficients of the resulting quadratic equation
+//ax^2 + bx + c = 0 x=d2
+a = (%pi/4)*sigmat
+b = (-1)*(t * sigmat)
+c = (-1)*(P)
+d2 = quadratic(a, b, c)
+d2 = round_five(d2)
+//Calculate outside of socket d1 (mm)
+//a,b,c are the coefficients of the resulting quadratic equation
+//ax^2 + bx + c = 0 x=d1
+a = (%pi/4)*(sigmat)
+b = (-1)*(t * sigmat)
+c = (((-1 * (%pi/4) * (d2^2))+(t * d2))*sigmat)-(P)
+d1 = quadratic(a, b, c)
+d1 = round_five(d1)
+//Calculate daimeter of socket collar d4 (mm)
+d4 = (P/(sigmac * t)) + d2
+d4 = round_five(d4)
+//Calculate dimensions of a and c (mm)
+a = P/(2 * d2 * tau)
+a = round_five(a)
+c = P/(2 * (d4 - d2) * tau)
+c = round_five(c)
+//Print results
+printf('\nLoad acting on rods(P) = %f N\n',P)
+printf('\nInside diameter of socket(d2) = %f mm\n',d2)
+printf('\nOutside diameter of socket(d1) = %f mm\n',d1)
+printf('\nDiameter of socket collar(d4) = %f mm\n',d4)
+printf('\na = %f mm\n\nc = %f mm\n',a,c)
+
diff --git a/764/CH4/EX4.5.a/data4_5.sci b/764/CH4/EX4.5.a/data4_5.sci new file mode 100755 index 000000000..f40ea4781 --- /dev/null +++ b/764/CH4/EX4.5.a/data4_5.sci @@ -0,0 +1,8 @@ +
+//(Design against Static Load) Example 4.5
+//Tensile force acting on the rods P (N)
+P = 50000
+//Tensile yield strength for 30C8 material Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 5
diff --git a/764/CH4/EX4.5.b/result4_5.txt b/764/CH4/EX4.5.b/result4_5.txt new file mode 100755 index 000000000..5f7cffaa2 --- /dev/null +++ b/764/CH4/EX4.5.b/result4_5.txt @@ -0,0 +1,36 @@ +-->//(Design against Static Load) Example 4.5
+
+-->//Tensile force acting on the rods P (N)
+
+-->P = 50000
+ P =
+
+ 50000.
+
+-->//Tensile yield strength for 30C8 material Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+
+Diameter of rods(D) = 30.000000 mm
+
+Enlarged diameter of rods(D1) = 33.000000 mm
+
+Dimensions of a and b are 25.000000 mm and 40.000000 mm respectively
+
+Diameter of pin(d) = 40.000000 mm
+
+Dimensions of d0 and d1 are 80.000000 mm and 60.000000 mm respectively
+
+Design of knuckle joint is safe
+
\ No newline at end of file diff --git a/764/CH4/EX4.5.b/solution4_5.sce b/764/CH4/EX4.5.b/solution4_5.sce new file mode 100755 index 000000000..64726a76c --- /dev/null +++ b/764/CH4/EX4.5.b/solution4_5.sce @@ -0,0 +1,63 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0)
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_5.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Refer Fig.4.24
+//Permissible stresses (N/mm2)
+//Tensile stress sigmat
+sigmat = Syt/fs
+//Compressive stress
+sigmac = Syt/fs
+//Yield strength in shear for the material Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Shear stress tau
+tau = Ssy/fs
+//Calculate diameter of the rods D (mm)
+D = sqrt((4 * P)/(%pi * sigmat))
+D = round_five(D)
+//Calculate enlarged diameter of rods D1 (mm)
+D1 = 1.1 * D
+//Calculate dimensions a and b (mm)
+a = 0.75 * D
+a = round_five(a)
+b = 1.25 * D
+b = round_five(b)
+//Calculate diameter of pin d
+d = ((32/(%pi * sigmat))*((P/2)*((b/4) + (a/3))))^(1/3)
+d = round_five(d)
+//Calculate dimensions d0 and d1
+d0 = 2 * d
+d1 = 1.5 * d
+//Print results
+printf('\nDiameter of rods(D) = %f mm\n',D)
+printf('\nEnlarged diameter of rods(D1) = %f mm\n',D1)
+printf('\nDimensions of a and b are %f mm and %f mm respectively\n',a,b)
+printf('\nDiameter of pin(d) = %f mm\n',d)
+printf('\nDimensions of d0 and d1 are %f mm and %f mm respectively\n',d0,d1)
+//Check for stresses in eye
+s1 = (P/(b * (d0 - d)))
+c1 = (P/(b * d))
+t1 = (P/(b * (d0 - d)))
+//Check for stresses in fork
+s2 = (P/(2 * a * (d0 - d)))
+c2 = (P/(2 * a * d))
+t2 = (P/(2 * a * (d0 - d)))
+if ((s1<sigmat) & (c1<sigmac) & (t1<tau) & (s2<sigmat) & (c2<sigmac) & (t2<tau))
+ printf('\nDesign of knuckle joint is safe\n')
+else
+ printf('\nDesign of knuckle joint is not safe\n')
+end
\ No newline at end of file diff --git a/764/CH4/EX4.6.a/data4_6.sci b/764/CH4/EX4.6.a/data4_6.sci new file mode 100755 index 000000000..4990b0207 --- /dev/null +++ b/764/CH4/EX4.6.a/data4_6.sci @@ -0,0 +1,13 @@ +
+//(Design against Static Load) Example 4.6
+//Refer Fig.4.25
+//Data according to standard table h (mm)
+h = {150,175,200,225,250}
+//Ixx (mm4)
+Ixx = {(688.2 * (10^4)), (1096.2 * (10^4)), (1696.6 * (10^4)), (2501.9 * (10^4)), (3717.8 * (10^4))}
+//Total weight of the bars W (kN)
+W = 75
+//Permissible bending stress sigmab (N/mm2)
+sigmab = 165
+//Length of cantilever beam l (mm)
+l = 2000
diff --git a/764/CH4/EX4.6.b/result4_6.txt b/764/CH4/EX4.6.b/result4_6.txt new file mode 100755 index 000000000..53ed0da1c --- /dev/null +++ b/764/CH4/EX4.6.b/result4_6.txt @@ -0,0 +1,42 @@ +-->//(Design against Static Load) Example 4.6
+
+-->//Refer Fig.4.25
+
+-->//Data according to standard table h (mm)
+
+-->h = {150,175,200,225,250}
+ h =
+
+ 150. 175. 200. 225. 250.
+
+-->//Ixx (mm4)
+
+-->Ixx = {(688.2 * (10^4)), (1096.2 * (10^4)), (1696.6 * (10^4)), (2501.9 * (10^4)), (3717.8 * (10^4))}
+ Ixx =
+
+ 6882000. 10962000. 16966000. 25019000. 37178000.
+
+-->//Total weight of the bars W (kN)
+
+-->W = 75
+ W =
+
+ 75.
+
+-->//Permissible bending stress sigmab (N/mm2)
+
+-->sigmab = 165
+ sigmab =
+
+ 165.
+
+-->//Length of cantilever beam l (mm)
+
+-->l = 2000
+ l =
+
+ 2000.
+
+
+ISLB200 is suitable for this application
+
\ No newline at end of file diff --git a/764/CH4/EX4.6.b/solution4_6.sce b/764/CH4/EX4.6.b/solution4_6.sce new file mode 100755 index 000000000..e25066af7 --- /dev/null +++ b/764/CH4/EX4.6.b/solution4_6.sce @@ -0,0 +1,44 @@ +
+//Function to print the designation
+function[] = desig(z)
+ printf('\nISLB%d is suitable for this application\n',z)
+endfunction
+
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Load supported by each beam P (kN)
+P = (W/2)
+//Distance of centre of gravity of the load from the rigid support d (mm)
+d = (l/3)
+//Calculate the bending moment Mb (N-mm)
+Mb = (P * 1000)*d
+//Calculation of ratio Ixx/y (mm3)
+ratio = Mb/sigmab
+//Selection of beam
+//There are 5 standard beams provided
+for i = 1:1:5
+ x = Ixx(i)/(h(i)/2)
+//Break the loop if value of x exceeds value of ratio
+ if (x > ratio)
+ break
+ end
+end
+//Print the suitable beam designation obtained
+if (i == 1)
+ desig(150)
+elseif (i == 2)
+ desig(175)
+elseif (i == 3)
+ desig(200)
+elseif (i == 4)
+ desig(250)
+else
+ desig(250)
+end
diff --git a/764/CH4/EX4.7.a/data4_7.sci b/764/CH4/EX4.7.a/data4_7.sci new file mode 100755 index 000000000..236870223 --- /dev/null +++ b/764/CH4/EX4.7.a/data4_7.sci @@ -0,0 +1,13 @@ +
+//(Design against Static Load) Example 4.7
+//Refer Fig.4.26
+//Initial tension in the hacksaw blade P (N)
+P = 300
+//Tensile yield strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety (fs)
+fs = 2.5
+//Ratio of depth to width of cross-section ratio
+ratio = 3
+//Length of hacksaw frame l (mm)
+l = 200
diff --git a/764/CH4/EX4.7.b/result4_7.txt b/764/CH4/EX4.7.b/result4_7.txt new file mode 100755 index 000000000..0d16b4371 --- /dev/null +++ b/764/CH4/EX4.7.b/result4_7.txt @@ -0,0 +1,44 @@ +-->//(Design against Static Load) Example 4.7
+
+-->//Refer Fig.4.26
+
+-->//Initial tension in the hacksaw blade P (N)
+
+-->P = 300
+ P =
+
+ 300.
+
+-->//Tensile yield strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety (fs)
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Ratio of depth to width of cross-section ratio
+
+-->ratio = 3
+ ratio =
+
+ 3.
+
+-->//Length of hacksaw frame l (mm)
+
+-->l = 200
+ l =
+
+ 200.
+
+
+Value of t = 6.266535 mm
+
+Area of cross-section = (6.266535 x 18.799604) mm2
+
\ No newline at end of file diff --git a/764/CH4/EX4.7.b/solution4_7.sce b/764/CH4/EX4.7.b/solution4_7.sce new file mode 100755 index 000000000..a67b1f7bb --- /dev/null +++ b/764/CH4/EX4.7.b/solution4_7.sce @@ -0,0 +1,47 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate permissible tensile stress sigmat (N/mm2)
+sigmat = Syt/fs
+//Assume the wudth of the cross-section to be 1mm t
+t = 1
+//Calculate direct compressive stress sigmac (N/mm2)
+sigmac = P/(t * (ratio * t))
+//Calculate maximum bending moment Mb (N-mm)
+Mb = P * l
+//Calculate y
+y = 1.5 * t
+//Calculate the second moment of area I (mm4)
+I = (t * ((ratio * t)^3))/12
+//Calculate tensile bending stress at the lower fibre sigmab(N/mm2)
+sigmab = (Mb * y)/I
+//Finding the real value of width t (mm)
+//On superimposing the stress values, a cubic equation in t is obtained
+a = 0
+b = (sigmac/sigmat)
+c = (-1 * (sigmab/sigmat))
+//Define polynomial
+p = [1,a,b,c]
+//Calculate roots of this polynomial
+r = roots(p)
+real_part = real(r)
+for i = 1:1:3
+ if(real_part(i)>0)
+ t = real_part(i)
+ break
+ end
+end
+//Print results
+printf('\nValue of t = %f mm\n',t)
+printf('\nArea of cross-section = (%f x %f) mm2\n',t,(ratio * t))
+
+
+
+
+
diff --git a/764/CH4/EX4.8.a/data4_8.sci b/764/CH4/EX4.8.a/data4_8.sci new file mode 100755 index 000000000..fcf36dd27 --- /dev/null +++ b/764/CH4/EX4.8.a/data4_8.sci @@ -0,0 +1,14 @@ +
+//(Design against Static Load) Example 4.8
+//Refer Fig.4.27
+//Force acting on offset link P (kN)
+P = 25
+//Ultimate tensile strength of FG300 Sut (N/mm2)
+Sut = 300
+//Factor of safety (fs)
+fs = 3
+//Force offset distance e (mm)
+e = 10
+//Ratio of depth to width of the cross-section ratio
+ratio = 2
+
diff --git a/764/CH4/EX4.8.b/result4_8.txt b/764/CH4/EX4.8.b/result4_8.txt new file mode 100755 index 000000000..945b162fe --- /dev/null +++ b/764/CH4/EX4.8.b/result4_8.txt @@ -0,0 +1,45 @@ +-->//(Design against Static Load) Example 4.8
+
+-->//Refer Fig.4.27
+
+-->//Force acting on offset link P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Ultimate tensile strength of FG300 Sut (N/mm2)
+
+-->Sut = 300
+ Sut =
+
+ 300.
+
+-->//Factor of safety (fs)
+
+-->fs = 3
+ fs =
+
+ 3.
+
+-->//Force offset distance e (mm)
+
+-->e = 10
+ e =
+
+ 10.
+
+-->//Ratio of depth to width of the cross-section ratio
+
+-->ratio = 2
+ ratio =
+
+ 2.
+
+
+
+Value of t = 25.443742 mm
+
+Area of cross-section = (25.443742 x 50.887483) mm2
+
\ No newline at end of file diff --git a/764/CH4/EX4.8.b/solution4_8.sce b/764/CH4/EX4.8.b/solution4_8.sce new file mode 100755 index 000000000..72db15254 --- /dev/null +++ b/764/CH4/EX4.8.b/solution4_8.sce @@ -0,0 +1,36 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_8.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_8.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible tensile stress for the link sigmat (N/mm2)
+sigmat = Sut/fs
+//Assume the value of t to be 1mm
+t = 1
+//Calculate the direct tensile stress D (N/mm2)
+D = (P * 1000)/(t * (ratio * t))
+//Calculate the value of y (mm)
+y = t
+//Calculate the second moment of area I (mm4)
+I = (t * ((ratio * t)^3))/12
+//Calculate the dimensions of cross-section t
+a = (-1 * D) + ((-1 * P * 1000)/I)
+b = (-1 * P * 1000 * e)/I
+p = [sigmat 0 a b]
+r = roots(p)
+real_part = real(r)
+for i = 1:1:3
+ if(real_part(i)>0)
+ t = real_part(i)
+ break
+ end
+end
+//Print results
+printf('\nValue of t = %f mm\n',t)
+printf('\nArea of cross-section = (%f x %f) mm2\n',t,(ratio * t))
+
+
diff --git a/764/CH4/EX4.9.a/data4_9.sci b/764/CH4/EX4.9.a/data4_9.sci new file mode 100755 index 000000000..568fcfea7 --- /dev/null +++ b/764/CH4/EX4.9.a/data4_9.sci @@ -0,0 +1,13 @@ +
+//(Design against Static Load) Example 4.9
+//Refer Fig.4.28
+//Maximum force acting on the frame P (kN)
+P = 20
+//Tensile yield strength of 45C8 material Syt (N/mm2)
+Syt = 380
+//Factor of safety fs
+fs = 2.5
+//Width of the cross-section of the frame w (mm)
+w = 150
+//Distance between the press tool and the frame d (mm)
+d = 200
diff --git a/764/CH4/EX4.9.b/result4_9.txt b/764/CH4/EX4.9.b/result4_9.txt new file mode 100755 index 000000000..de734bb80 --- /dev/null +++ b/764/CH4/EX4.9.b/result4_9.txt @@ -0,0 +1,42 @@ +-->//(Design against Static Load) Example 4.9
+
+-->//Refer Fig.4.28
+
+-->//Maximum force acting on the frame P (kN)
+
+-->P = 20
+ P =
+
+ 20.
+
+-->//Tensile yield strength of 45C8 material Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Width of the cross-section of the frame w (mm)
+
+-->w = 150
+ w =
+
+ 150.
+
+-->//Distance between the press tool and the frame d (mm)
+
+-->d = 200
+ d =
+
+ 200.
+
+
+The thickness of the plate(t) = 5.263158 mm
+
\ No newline at end of file diff --git a/764/CH4/EX4.9.b/solution4_9.sce b/764/CH4/EX4.9.b/solution4_9.sce new file mode 100755 index 000000000..625afd38c --- /dev/null +++ b/764/CH4/EX4.9.b/solution4_9.sce @@ -0,0 +1,30 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution4_9.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data4_9.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible stress for the plates sigmat (N/mm2)
+sigmat = Syt/fs
+//Force acting on each plate P (kN)
+P = P/2
+//Calculate the bending moment at the frame Mb (N-mm)
+Mb = (P * 1000) * (d + (w/2))
+//Assume the plate thickness to be 1mm t
+t = 1
+//Calculate the direct tensile stress D (N/mm2)
+D = (P * 1000)/(w * t)
+//Calculate the value of y (mm)
+y = (w/2)
+//Calculate the second moment of area I (mm4)
+I = (t * (w^3))/12
+//Calculate the bending stress B (N/mm2)
+B = (Mb * y)/I
+//Calculate the plate thickness t (mm)
+t = (D + B)/sigmat
+//Print results
+printf('\nThe thickness of the plate(t) = %f mm\n',t)
+
\ No newline at end of file diff --git a/764/CH5/EX5.1.a/data5_1.sci b/764/CH5/EX5.1.a/data5_1.sci new file mode 100755 index 000000000..3d9a6812a --- /dev/null +++ b/764/CH5/EX5.1.a/data5_1.sci @@ -0,0 +1,20 @@ +
+//(Design against Fluctuating Load) Example 5.1
+//Refer Fig.5.13 on page 149
+//Tensile force acting on the flat plate P (kN)
+P = 5
+//Ultimate tensile strength of FG200 Sut (N/mm2)
+Sut = 200
+//Factor of safety fs
+fs = 2.5
+//Values of the geometry are as follows (mm)
+D = 45
+w = 30
+//Fillet radius r (mm)
+r = 5
+//Hole diameter d (mm)
+d = 15
+//From Fig.5.3 on page 143 for fillet section
+Kt1 = 1.8
+//From Fig.5.2 on page 143 for hole section
+Kt2 = 2.16
diff --git a/764/CH5/EX5.1.b/result5_1.txt b/764/CH5/EX5.1.b/result5_1.txt new file mode 100755 index 000000000..f3571cacd --- /dev/null +++ b/764/CH5/EX5.1.b/result5_1.txt @@ -0,0 +1,68 @@ +-->//(Design against Fluctuating Load) Example 5.1
+
+-->//Refer Fig.5.13 on page 149
+
+-->//Tensile force acting on the flat plate P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Ultimate tensile strength of FG200 Sut (N/mm2)
+
+-->Sut = 200
+ Sut =
+
+ 200.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Values of the geometry are as follows (mm)
+
+-->D = 45
+ D =
+
+ 45.
+
+-->w = 30
+ w =
+
+ 30.
+
+-->//Fillet radius r (mm)
+
+-->r = 5
+ r =
+
+ 5.
+
+-->//Hole diameter d (mm)
+
+-->d = 15
+ d =
+
+ 15.
+
+-->//From Fig.5.3 on page 143 for fillet section
+
+-->Kt1 = 1.8
+ Kt1 =
+
+ 1.8
+
+-->//From Fig.5.2 on page 143 for hole section
+
+-->Kt2 = 2.16
+ Kt2 =
+
+ 2.16
+
+
+Thickness of the plate(t) = 9.000000 mm
+
\ No newline at end of file diff --git a/764/CH5/EX5.1.b/solution5_1.sce b/764/CH5/EX5.1.b/solution5_1.sce new file mode 100755 index 000000000..218112b1a --- /dev/null +++ b/764/CH5/EX5.1.b/solution5_1.sce @@ -0,0 +1,31 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible tensile stress sigma (N/mm2)
+sigma = Sut/fs
+//Assume the thickness of the plate to be 1mm t
+t = 1
+//Tensile stress at fillet section F (N/mm2)
+F = (P * 1000)/(w * t)
+//Calculate the maximum tensile stress sigma1 at fillet section
+sigma1 = Kt1 * F
+//Tensile stress at hole section H (N/mm2)
+H = (P * 1000)/((w - d)*t)
+//Calculate the maximum tensile stress sigma2 at hole section
+sigma2 = Kt2 * H
+//Choose the largest of the two stresses and store in smax
+if (sigma2 > sigma1) then
+ smax = sigma2
+else
+ smax = sigma1
+end
+//Calculate the true value of thickness of the plate t (mm)
+t = smax/sigma
+//Print results
+printf('\nThickness of the plate(t) = %f mm\n',t)
diff --git a/764/CH5/EX5.10.a/data5_10.sci b/764/CH5/EX5.10.a/data5_10.sci new file mode 100755 index 000000000..e54cdbab1 --- /dev/null +++ b/764/CH5/EX5.10.a/data5_10.sci @@ -0,0 +1,30 @@ +
+//(Design against Fluctuating Load) Example 5.10
+//Refer Fig.5.36 on page 165
+//Ultimate tensile strength of 20C8 Sut (N/mm2)
+Sut = 540
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
+//Completely reversed load acting on the beam P (N)
+P = 1000
+//Notch sensitivity factor at the fillet q
+q = 0.85
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//Number of life cycles N
+N = 10000
+//Assume value of d to be between 7.5 and 50mm
+d = 25
+//Distance between force and fillet dist (mm)
+dist = 150
+//From Fig.5.5
+Kt = 1.35
diff --git a/764/CH5/EX5.10.b/graph5_10.png b/764/CH5/EX5.10.b/graph5_10.png Binary files differnew file mode 100755 index 000000000..c1fc2d502 --- /dev/null +++ b/764/CH5/EX5.10.b/graph5_10.png diff --git a/764/CH5/EX5.10.b/result5_10.txt b/764/CH5/EX5.10.b/result5_10.txt new file mode 100755 index 000000000..d4dc978e9 --- /dev/null +++ b/764/CH5/EX5.10.b/result5_10.txt @@ -0,0 +1,97 @@ +-->//(Design against Fluctuating Load) Example 5.10
+
+-->//Refer Fig.5.36 on page 165
+
+-->//Ultimate tensile strength of 20C8 Sut (N/mm2)
+
+-->Sut = 540
+ Sut =
+
+ 540.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+-->//Completely reversed load acting on the beam P (N)
+
+-->P = 1000
+ P =
+
+ 1000.
+
+-->//Notch sensitivity factor at the fillet q
+
+-->q = 0.85
+ q =
+
+ 0.85
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//Number of life cycles N
+
+-->N = 10000
+ N =
+
+ 10000.
+
+-->//Assume value of d to be between 7.5 and 50mm
+
+-->d = 25
+ d =
+
+ 25.
+
+-->//Distance between force and fillet dist (mm)
+
+-->dist = 150
+ dist =
+
+ 150.
+
+-->//From Fig.5.5
+
+-->Kt = 1.35
+ Kt =
+
+ 1.35
+
+
+The diameter of the beam(d) = 16.889027 mm
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.10.b/solution5_10.sce b/764/CH5/EX5.10.b/solution5_10.sce new file mode 100755 index 000000000..e3019495a --- /dev/null +++ b/764/CH5/EX5.10.b/solution5_10.sce @@ -0,0 +1,38 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_10.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_10.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_10.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 0.78
+//Caluclate Kf
+Kf = 1 + (q*(Kt - 1))
+//Calculate Kd
+Kd = (1/Kf)
+//Calculate Se (N/mm2)
+Se = Ka * Kb * Kc * Kd * Sdash
+//Plot S-N Curve
+funcprot(0)
+[a, b, c, z] = SNplot(Sut,Se)
+Nval = log10(N)
+//Calculate Sf corresponding to N (N/mm2)
+Sfval = a - (((a - b)*(Nval - c))/(z - c))
+Sf = (10^Sfval)
+//Calculate the value of actual d (mm)
+d = ((32 * P * dist)/(%pi * Sf))^(1/3)
+//Print results
+printf('\nThe diameter of the beam(d) = %f mm\n',d)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.10.c/functions5_10.sci b/764/CH5/EX5.10.c/functions5_10.sci new file mode 100755 index 000000000..b6496424a --- /dev/null +++ b/764/CH5/EX5.10.c/functions5_10.sci @@ -0,0 +1,89 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
+
+
+//Function for plotting S-N Curve
+function[a, b, c, z]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ z = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = z
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - z))*(s(i) - z))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.10)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
\ No newline at end of file diff --git a/764/CH5/EX5.11.a/data5_11.sci b/764/CH5/EX5.11.a/data5_11.sci new file mode 100755 index 000000000..36b1af71e --- /dev/null +++ b/764/CH5/EX5.11.a/data5_11.sci @@ -0,0 +1,14 @@ +
+//(Design against Fluctuating Load) Example 5.11
+//Ultimate tensile strength of 50C4 Sut (N/mm2)
+Sut = 660
+//Corrected endurance limit Se (N/mm2)
+Se = 280
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
+//The three elements provided
+//Stress in N/mm2 and time in %
+stress = {350 400 500}
+time = {85 12 3}
diff --git a/764/CH5/EX5.11.b/graph5_11.png b/764/CH5/EX5.11.b/graph5_11.png Binary files differnew file mode 100755 index 000000000..1756ae8ab --- /dev/null +++ b/764/CH5/EX5.11.b/graph5_11.png diff --git a/764/CH5/EX5.11.b/result5_11.txt b/764/CH5/EX5.11.b/result5_11.txt new file mode 100755 index 000000000..016fcc75b --- /dev/null +++ b/764/CH5/EX5.11.b/result5_11.txt @@ -0,0 +1,47 @@ +-->//(Design against Fluctuating Load) Example 5.11
+
+-->//Ultimate tensile strength of 50C4 Sut (N/mm2)
+
+-->Sut = 660
+ Sut =
+
+ 660.
+
+-->//Corrected endurance limit Se (N/mm2)
+
+-->Se = 280
+ Se =
+
+ 280.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+-->//The three elements provided
+
+-->//Stress in N/mm2 and time in %
+
+-->stress = {350 400 500}
+ stress =
+
+ 350. 400. 500.
+
+-->time = {85 12 3}
+ time =
+
+ 85. 12. 3.
+
+
+Life of component(Nfinal) = 62731.118105 cycles
+
\ No newline at end of file diff --git a/764/CH5/EX5.11.b/solution5_11.sce b/764/CH5/EX5.11.b/solution5_11.sce new file mode 100755 index 000000000..8716c28bb --- /dev/null +++ b/764/CH5/EX5.11.b/solution5_11.sce @@ -0,0 +1,28 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_11.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_11.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_11.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Plot S-N Curve
+funcprot(0)
+[a, b, c, d] = SNplot(Sut,Se)
+//Calculate N1, N2 and N3
+for i = 1:1:3
+ Nval(i) = d + (((c - d)*(log10(stress(i)) - b))/(a - b))
+ N(i) = 10^Nval(i)
+end
+//Calculate fatigue life of component
+Nfinal = 0
+for i = 1:1:3
+ Nfinal = Nfinal + ((time(i)/100)/N(i))
+end
+Nfinal = (1/Nfinal)
+//Print results
+printf('\nLife of component(Nfinal) = %f cycles\n',Nfinal)
diff --git a/764/CH5/EX5.11.c/functions5_11.sci b/764/CH5/EX5.11.c/functions5_11.sci new file mode 100755 index 000000000..36f861a3d --- /dev/null +++ b/764/CH5/EX5.11.c/functions5_11.sci @@ -0,0 +1,40 @@ +
+//Function for plotting S-N Curve
+function[a, b, c, d]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ d = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = d
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - d))*(s(i) - d))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.11)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
\ No newline at end of file diff --git a/764/CH5/EX5.12.a/data5_12.sci b/764/CH5/EX5.12.a/data5_12.sci new file mode 100755 index 000000000..1d952396f --- /dev/null +++ b/764/CH5/EX5.12.a/data5_12.sci @@ -0,0 +1,30 @@ +
+//(Design against Fluctuating Load) Example 5.12
+//Refer Fig.5.42 on page 169
+//Ultimate tensile strength of 40C8 Sut (N/mm2)
+Sut = 600
+//Tensile yield strength of 40C8 Syt (N/mm2)
+Syt = 380
+//Max force acting at the free end Pmax (N)
+Pmax = 150
+//Min force acting at the free end Pmin (N)
+Pmin = -50
+//Factor of safety fs
+fs = 2
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//Notch sensitivity factor at the fillet q
+q = 0.9
+//Assume value of d to be between 7.5 and 50 mm
+d = 25
+//Distance between force and fillet section dist (mm)
+dist = 100
+//From Fig.5.5
+Kt = 1.44
diff --git a/764/CH5/EX5.12.b/graph5_12.png b/764/CH5/EX5.12.b/graph5_12.png Binary files differnew file mode 100755 index 000000000..7c330241a --- /dev/null +++ b/764/CH5/EX5.12.b/graph5_12.png diff --git a/764/CH5/EX5.12.b/result5_12.txt b/764/CH5/EX5.12.b/result5_12.txt new file mode 100755 index 000000000..b4a79050a --- /dev/null +++ b/764/CH5/EX5.12.b/result5_12.txt @@ -0,0 +1,96 @@ +-->//(Design against Fluctuating Load) Example 5.12
+
+-->//Refer Fig.5.42 on page 169
+
+-->//Ultimate tensile strength of 40C8 Sut (N/mm2)
+
+-->Sut = 600
+ Sut =
+
+ 600.
+
+-->//Tensile yield strength of 40C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Max force acting at the free end Pmax (N)
+
+-->Pmax = 150
+ Pmax =
+
+ 150.
+
+-->//Min force acting at the free end Pmin (N)
+
+-->Pmin = -50
+ Pmin =
+
+ - 50.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//Notch sensitivity factor at the fillet q
+
+-->q = 0.9
+ q =
+
+ 0.9
+
+-->//Assume value of d to be between 7.5 and 50 mm
+
+-->d = 25
+ d =
+
+ 25.
+
+-->//Distance between force and fillet section dist (mm)
+
+-->dist = 100
+ dist =
+
+ 100.
+
+-->//From Fig.5.5
+
+-->Kt = 1.44
+ Kt =
+
+ 1.44
+
+Diameter of beam(d) = 11.867951 mm
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.12.b/solution5_12.sce b/764/CH5/EX5.12.b/solution5_12.sce new file mode 100755 index 000000000..9a4948700 --- /dev/null +++ b/764/CH5/EX5.12.b/solution5_12.sce @@ -0,0 +1,64 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_12.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_12.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_12.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 0.77
+//Calculate Kf
+Kf = 1 + (q*(Kt - 1))
+//Calculate Kd
+Kd = (1/Kf)
+//Calculate Se (N/mm2)
+Se = Ka * Kb * Kc * Kd * Sdash
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+y1 = {Se 0}
+x1 = {0 Sut}
+y2 = {Syt 0}
+x2 = {0 Syt}
+plot(x1,y1,'--*')
+plot(x2,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 5.12)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Maximum bending moment at the fillet cross-section Mbmax (N-mm)
+Mbmax = Pmax * dist
+//Minimum bending moment at the fillet cross-section Mbmin (N-mm)
+Mbmin = Pmin * dist
+//Calculate Mba and Mbm (N-mm)
+Mbm = (Mbmax + Mbmin)/2
+Mba = (Mbmax - Mbmin)/2
+theta = atand(Mba/Mbm)
+//Calculate Sm (N/mm2)
+Sm = 1/((tand(theta)/Se) + (1/Sut))
+//Calculate Sa (N/mm2)
+Sa = Sm * tand(theta)
+//Calculate the actual diameter of the beam d (mm)
+d = ((32 * Mba * fs)/(%pi * Sa))^(1/3)
+//Print results
+printf('Diameter of beam(d) = %f mm\n',d)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.12.c/functions5_12.sci b/764/CH5/EX5.12.c/functions5_12.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH5/EX5.12.c/functions5_12.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH5/EX5.13.a/data5_13.sci b/764/CH5/EX5.13.a/data5_13.sci new file mode 100755 index 000000000..8686ec4b9 --- /dev/null +++ b/764/CH5/EX5.13.a/data5_13.sci @@ -0,0 +1,24 @@ +
+//(Design against Fluctuating Load) Example 5.13
+//Ultimate tensile strength of 27Mn2 Sut (N/mm2)
+Sut = 500
+//Tensile yield strength of 27Mn2 Syt (N/mm2)
+Syt = 300
+//Maximum torque acting on the transmission shaft Mtmax (N-m)
+Mtmax = 400
+//Minimum torque acting on the transmission shaft Mtmin (N-m)
+Mtmin = -100
+//Factor of safety fs
+fs = 2
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//Assume distortion energy theory of failure
+//Assume diameter of transmission shaft to be between 7.5 and 50 mm d
+d = 25
diff --git a/764/CH5/EX5.13.b/graph5_13.png b/764/CH5/EX5.13.b/graph5_13.png Binary files differnew file mode 100755 index 000000000..89001d493 --- /dev/null +++ b/764/CH5/EX5.13.b/graph5_13.png diff --git a/764/CH5/EX5.13.b/result5_13.txt b/764/CH5/EX5.13.b/result5_13.txt new file mode 100755 index 000000000..d2a8396c2 --- /dev/null +++ b/764/CH5/EX5.13.b/result5_13.txt @@ -0,0 +1,76 @@ +-->//(Design against Fluctuating Load) Example 5.13
+
+-->//Ultimate tensile strength of 27Mn2 Sut (N/mm2)
+
+-->Sut = 500
+ Sut =
+
+ 500.
+
+-->//Tensile yield strength of 27Mn2 Syt (N/mm2)
+
+-->Syt = 300
+ Syt =
+
+ 300.
+
+-->//Maximum torque acting on the transmission shaft Mtmax (N-m)
+
+-->Mtmax = 400
+ Mtmax =
+
+ 400.
+
+-->//Minimum torque acting on the transmission shaft Mtmin (N-m)
+
+-->Mtmin = -100
+ Mtmin =
+
+ - 100.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//Assume distortion energy theory of failure
+
+-->//Assume diameter of transmission shaft to be between 7.5 and 50 mm d
+
+-->d = 25
+ d =
+
+ 25.
+
+
+The diameter of the shaft(d) = 29.869032 mm
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.13.b/solution5_13.sce b/764/CH5/EX5.13.b/solution5_13.sce new file mode 100755 index 000000000..484b4c392 --- /dev/null +++ b/764/CH5/EX5.13.b/solution5_13.sce @@ -0,0 +1,57 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_13.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_13.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_13.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 0.79
+//Calculate endurance limit Se (N/mm2)
+Se = Ka * Kb * Kc * Sdash
+//Calculate shear endurance limit Sse (N/mm2)
+Sse = 0.577 * Se
+//Calculate yield strength in shear Ssy (N/mm2)
+Ssy = 0.577 * Syt
+//Calculate Mtm and Mta (N-m)
+Mtm = (Mtmax + Mtmin)/2
+Mta = (Mtmax - Mtmin)/2
+theta = atand(Mta/Mtm)
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+x1 = {0 Ssy}
+y1 = {Sse Sse}
+y2 = {Ssy 0}
+plot(x1,y1,'--*')
+plot(x1,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 5.13)')
+xlabel('tauM (N/mm2)')
+ylabel('tauA (N/mm2)')
+//Calculate permissible shear stress amplitude Ssa (N/mm2)
+Ssa = Sse
+//Calculate the actual shaft diameter d (mm)
+d = ((16 * Mta * 1000 * fs)/(Ssa * %pi))^(1/3)
+//Print results
+printf('\nThe diameter of the shaft(d) = %f mm\n',d)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.13.c/functions5_13.sci b/764/CH5/EX5.13.c/functions5_13.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH5/EX5.13.c/functions5_13.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH5/EX5.14.a/data5_14.sci b/764/CH5/EX5.14.a/data5_14.sci new file mode 100755 index 000000000..c66d04478 --- /dev/null +++ b/764/CH5/EX5.14.a/data5_14.sci @@ -0,0 +1,27 @@ +
+//(Design against Fluctuating Load) Example 5.14
+//Inner diameter of the spherical pressure vessel Di (mm)
+Di = 500
+//Ultimate tensile strength of 20C8 Sut (N/mm2)
+Sut = 440
+//Yield tensile strength of 20C8 Syt (N/mm2)
+Syt = 242
+//Minimum internal pressure in the vessel Pmin (N/mm2)
+Pmin = 0
+//Maximum internal pressure in the vessel Pmax (N/mm2)
+Pmax = 6
+//Factor of safety fs
+fs = 3.5
+//Size factor Kb
+Kb = 0.85
+//Hence 50 > d > 7.5
+//Assume the value of d(mm) for function calling purpose
+d = 25
+reliability = 50
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
diff --git a/764/CH5/EX5.14.b/graph5_14.png b/764/CH5/EX5.14.b/graph5_14.png Binary files differnew file mode 100755 index 000000000..f74bca7a4 --- /dev/null +++ b/764/CH5/EX5.14.b/graph5_14.png diff --git a/764/CH5/EX5.14.b/result5_14.txt b/764/CH5/EX5.14.b/result5_14.txt new file mode 100755 index 000000000..42e8e061a --- /dev/null +++ b/764/CH5/EX5.14.b/result5_14.txt @@ -0,0 +1,88 @@ +-->//(Design against Fluctuating Load) Example 5.14
+
+-->//Inner diameter of the spherical pressure vessel Di (mm)
+
+-->Di = 500
+ Di =
+
+ 500.
+
+-->//Ultimate tensile strength of 20C8 Sut (N/mm2)
+
+-->Sut = 440
+ Sut =
+
+ 440.
+
+-->//Yield tensile strength of 20C8 Syt (N/mm2)
+
+-->Syt = 242
+ Syt =
+
+ 242.
+
+-->//Minimum internal pressure in the vessel Pmin (N/mm2)
+
+-->Pmin = 0
+ Pmin =
+
+ 0.
+
+-->//Maximum internal pressure in the vessel Pmax (N/mm2)
+
+-->Pmax = 6
+ Pmax =
+
+ 6.
+
+-->//Factor of safety fs
+
+-->fs = 3.5
+ fs =
+
+ 3.5
+
+-->//Size factor Kb
+
+-->Kb = 0.85
+ Kb =
+
+ 0.85
+
+-->//Hence 50 > d > 7.5
+
+-->//Assume the value of d(mm) for function calling purpose
+
+-->d = 25
+ d =
+
+ 25.
+
+-->reliability = 50
+ reliability =
+
+ 50.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+
+Thickness of plate(t) = 10.791967 mm
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.14.b/solution5_14.sce b/764/CH5/EX5.14.b/solution5_14.sce new file mode 100755 index 000000000..7471b617e --- /dev/null +++ b/764/CH5/EX5.14.b/solution5_14.sce @@ -0,0 +1,62 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_14.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_14.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_14.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig. 5.24
+//Ka = 0.82
+//Calculate endurance limit stress for vessel Se (N/mm2)
+Se = Ka * Kb * Kc * Sdash
+//Assume thickness of plate to be 1mm t
+t = 1
+//Calculate sigmaMax and sigmaMin (N/mm2)
+sigmaMax = (Pmax * Di)/(4 * t)
+sigmaMin = (Pmin * Di)/(4 * t)
+//Calculate sigmaA and sigmaM (N/mm2)
+sigmaM = (sigmaMax + sigmaMin)/2
+sigmaA = (sigmaMax - sigmaMin)/2
+theta = atand(sigmaA/sigmaM)
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+x1 = {0 Syt}
+y1 = {Syt 0}
+x2 = {0 Sut}
+y2 = {Se 0}
+plot(x1,y1,'-*')
+plot(x2,y2,'--*')
+plot_format()
+title('Modified Goodman diagram (Example 5.14)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate Sm (N/mm2)
+Sm = 1/((tand(theta)/Se) + (1/Sut))
+//Calculate Sa (N/mm2)
+Sa = Sm * tand(theta)
+//Calculate the actual value of t (mm)
+t = (sigmaA * fs)/Sa
+//Print results
+printf('\nThickness of plate(t) = %f mm\n',t)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
+
diff --git a/764/CH5/EX5.14.c/functions5_14.sci b/764/CH5/EX5.14.c/functions5_14.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH5/EX5.14.c/functions5_14.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH5/EX5.15.a/data5_15.sci b/764/CH5/EX5.15.a/data5_15.sci new file mode 100755 index 000000000..5406ab79f --- /dev/null +++ b/764/CH5/EX5.15.a/data5_15.sci @@ -0,0 +1,28 @@ +
+//(Design against Fluctuating Load) Example 5.15
+//Refer Fig.5.46 on page 172
+//Spring wire diameter d (mm)
+d = 10
+//Ultimate tensile strength of 4Cr18Ni10 Sut (N/mm2)
+Sut = 860
+//Yield tensile strength of 4Cr18Ni10 Syt (N/mm2)
+Syt = 690
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
+//Maximum force acting at the free end Pmax (N)
+Pmax = 150
+//Minimum force acting at the free end Pmin (N)
+Pmin = 75
+reliability = 50
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//Distance between force and stress concentration point dist (mm)
+dist = 500
+
\ No newline at end of file diff --git a/764/CH5/EX5.15.b/graph5_15.png b/764/CH5/EX5.15.b/graph5_15.png Binary files differnew file mode 100755 index 000000000..ec8f9b649 --- /dev/null +++ b/764/CH5/EX5.15.b/graph5_15.png diff --git a/764/CH5/EX5.15.b/result5_15.txt b/764/CH5/EX5.15.b/result5_15.txt new file mode 100755 index 000000000..10c370dbc --- /dev/null +++ b/764/CH5/EX5.15.b/result5_15.txt @@ -0,0 +1,89 @@ +-->//(Design against Fluctuating Load) Example 5.15
+
+-->//Refer Fig.5.46 on page 172
+
+-->//Spring wire diameter d (mm)
+
+-->d = 10
+ d =
+
+ 10.
+
+-->//Ultimate tensile strength of 4Cr18Ni10 Sut (N/mm2)
+
+-->Sut = 860
+ Sut =
+
+ 860.
+
+-->//Yield tensile strength of 4Cr18Ni10 Syt (N/mm2)
+
+-->Syt = 690
+ Syt =
+
+ 690.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+-->//Maximum force acting at the free end Pmax (N)
+
+-->Pmax = 150
+ Pmax =
+
+ 150.
+
+-->//Minimum force acting at the free end Pmin (N)
+
+-->Pmin = 75
+ Pmin =
+
+ 75.
+
+-->reliability = 50
+ reliability =
+
+ 50.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//Distance between force and stress concentration point dist (mm)
+
+-->dist = 500
+ dist =
+
+ 500.
+
+
+
+Fatigue life of cantilever spring(N) = 7514.577171 cycles
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.15.b/solution5_15.sce b/764/CH5/EX5.15.b/solution5_15.sce new file mode 100755 index 000000000..925543a2a --- /dev/null +++ b/764/CH5/EX5.15.b/solution5_15.sce @@ -0,0 +1,83 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_15.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_15.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_15.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+[Ka Kb Kc] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 0.72
+//Calculate endurance limit Se (N/mm2)
+Se = Ka * Kb * Kc * Sdash
+//Calculate Mbmax and Mbmin bending moments (N-mm)
+Mbmax = Pmax * dist
+Mbmin = Pmin * dist
+//Calculate Mba and Mbm (N-mm)
+Mbm = (Mbmax + Mbmin)/2
+Mba = (Mbmax - Mbmin)/2
+//Calculate sigmaM and sigmaA (N/mm2)
+sigmaM = (32 * Mbm)/(%pi * (d^3))
+sigmaA = (32 * Mba)/(%pi * (d^3))
+//Plot modified Goodman diagram and check value of X
+x1 = {0 Sut}
+y1 = {Se 0}
+x2 = sigmaM
+y2 = sigmaA
+subplot(2,2,1)
+plot(x1,y1,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 5.15)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+subplot(2,2,2)
+plot(x1,y1,'-*')
+plot(x2,y2,'-X')
+plot_format()
+title('X falls outside the region of safety')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Draw line through (Sut,0) and X and calculate Sf
+i = 1
+for p = 0:20:Sut
+ y(i) = ((p - Sut)*((sigmaA)/(sigmaM - Sut)))
+ x(i) = p
+ i = i + 1
+end
+subplot(2,2,3)
+plot(x1,y1,'-*')
+plot(x2,y2,'-X')
+plot(x,y,'--')
+plot_format()
+title('Draw line passing through X and (Sut,0)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+Sf = max(y)
+//Plot S-N diagram
+funcprot(0)
+subplot(2,2,4)
+[a, b, c, z] = SNplot(Sut,Se)
+//Calculate fatigue life of cantilever spring
+Nval = c + (((z - c)*(log10(Sf) - a))/(b - a))
+N = 10^Nval
+//Print results
+printf('\nFatigue life of cantilever spring(N) = %f cycles\n',N)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.15.c/functions5_15.sci b/764/CH5/EX5.15.c/functions5_15.sci new file mode 100755 index 000000000..8b2df4d0b --- /dev/null +++ b/764/CH5/EX5.15.c/functions5_15.sci @@ -0,0 +1,88 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
+
+//Function for plotting S-N Curve
+function[a, b, c, z]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ z = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = z
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - z))*(s(i) - z))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.15)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
\ No newline at end of file diff --git a/764/CH5/EX5.16.a/data5_16.sci b/764/CH5/EX5.16.a/data5_16.sci new file mode 100755 index 000000000..c51596779 --- /dev/null +++ b/764/CH5/EX5.16.a/data5_16.sci @@ -0,0 +1,33 @@ +
+//(Design against Fluctuating Load) Example 5.16
+//Refer Fig.5.51 on page 174
+//Bar groove depth g (mm)
+g = 2
+//Theoretical stress concentration factor Kt
+Kt = 1.8
+//Notch sensitivity factor q
+q = 0.95
+//Outer diameter of the bar d (mm)
+d = 30
+//Ultimate tensile strength of the bar Sut (MPa)
+Sut = 1250
+//Endurance limit in reversed bending Sdash (MPa)
+Sdash = 600
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
+//Number of cycles N
+N = 10^5
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 1
+//Assume Pmax = 1N
+Pmax = 1
+Pmin = 0
+
diff --git a/764/CH5/EX5.16.b/graph5_16.png b/764/CH5/EX5.16.b/graph5_16.png Binary files differnew file mode 100755 index 000000000..994c8a8b6 --- /dev/null +++ b/764/CH5/EX5.16.b/graph5_16.png diff --git a/764/CH5/EX5.16.b/result5_16.txt b/764/CH5/EX5.16.b/result5_16.txt new file mode 100755 index 000000000..2c328a281 --- /dev/null +++ b/764/CH5/EX5.16.b/result5_16.txt @@ -0,0 +1,108 @@ +-->//(Design against Fluctuating Load) Example 5.16
+
+-->//Refer Fig.5.51 on page 174
+
+-->//Bar groove depth g (mm)
+
+-->g = 2
+ g =
+
+ 2.
+
+-->//Theoretical stress concentration factor Kt
+
+-->Kt = 1.8
+ Kt =
+
+ 1.8
+
+-->//Notch sensitivity factor q
+
+-->q = 0.95
+ q =
+
+ 0.95
+
+-->//Outer diameter of the bar d (mm)
+
+-->d = 30
+ d =
+
+ 30.
+
+-->//Ultimate tensile strength of the bar Sut (MPa)
+
+-->Sut = 1250
+ Sut =
+
+ 1250.
+
+-->//Endurance limit in reversed bending Sdash (MPa)
+
+-->Sdash = 600
+ Sdash =
+
+ 600.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+-->//Number of cycles N
+
+-->N = 10^5
+ N =
+
+ 100000.
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 1
+ op =
+
+ 1.
+
+-->//Assume Pmax = 1N
+
+-->Pmax = 1
+ Pmax =
+
+ 1.
+
+-->Pmin = 0
+ Pmin =
+
+ 0.
+
+
+
+Maximum force on bar = 311690.645869 N
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.16.b/solution5_16.sce b/764/CH5/EX5.16.b/solution5_16.sce new file mode 100755 index 000000000..19dcf3327 --- /dev/null +++ b/764/CH5/EX5.16.b/solution5_16.sce @@ -0,0 +1,61 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_16.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_16.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_16.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 1
+//Calculate Kf
+Kf = 1 + (q*(Kt - 1))
+//Calculate Kd
+Kd = 1/Kf
+//Calculate endurance limit stress Se (N/mm2)
+Se = Ka * Kb * Kc * Kd * Sdash
+//Plot S-N diagram
+funcprot(0)
+subplot(1,2,1)
+[a, b, c, z] = SNplot(Sut,Se)
+//Calculate fatigue strength for N cycles
+Sfval = a + (((b - a)*(log10(N) - c))/(z - c))
+Sf = 10^Sfval
+//Caluclate Pm and Pa
+Pm = (Pmax + Pmin)/2
+Pa = (Pmax - Pmin)/2
+theta = atand(Pa/Pm)
+//Plot modified Goodman diagram
+x1 = {0 Sut}
+y1 = {Sf 0}
+subplot(1,2,2)
+plot(x1,y1,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 5.16)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate permissible stress amplitude
+Sm = 1/((tand(theta)/Sf) + (1/Sut))
+Sa = Sm
+//Calculate Pmax (N)
+Pmax = (2 * Sa)*((%pi/4)*((d - (2*g))^2))
+//Print results
+printf('\nMaximum force on bar = %f N\n',Pmax)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.16.c/functions5_16.sci b/764/CH5/EX5.16.c/functions5_16.sci new file mode 100755 index 000000000..d23d26d62 --- /dev/null +++ b/764/CH5/EX5.16.c/functions5_16.sci @@ -0,0 +1,88 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
+
+//Function for plotting S-N Curve
+function[a, b, c, z]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ z = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = z
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - z))*(s(i) - z))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.16)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
\ No newline at end of file diff --git a/764/CH5/EX5.17.a/data5_17.sci b/764/CH5/EX5.17.a/data5_17.sci new file mode 100755 index 000000000..00e4eff74 --- /dev/null +++ b/764/CH5/EX5.17.a/data5_17.sci @@ -0,0 +1,13 @@ +
+//(Design against Fluctuating Load) Example 5.17
+//Minimum stress acting on the machine component sigmaMin (N/mm2)
+sigmaMin = 40
+//Maximum stress acting on the machine component sigmaMax (N/mm2)
+sigmaMax = 100
+//Corrected endurance stress Se (N/mm2)
+Se = 270
+//Ultimate tensile strength of the material Sut (N/mm2)
+Sut = 600
+//Yield strength of the material Syt (N/mm2)
+Syt = 450
+
diff --git a/764/CH5/EX5.17.b/result5_17.txt b/764/CH5/EX5.17.b/result5_17.txt new file mode 100755 index 000000000..4bec277ab --- /dev/null +++ b/764/CH5/EX5.17.b/result5_17.txt @@ -0,0 +1,43 @@ +-->//(Design against Fluctuating Load) Example 5.17
+
+-->//Minimum stress acting on the machine component sigmaMin (N/mm2)
+
+-->sigmaMin = 40
+ sigmaMin =
+
+ 40.
+
+-->//Maximum stress acting on the machine component sigmaMax (N/mm2)
+
+-->sigmaMax = 100
+ sigmaMax =
+
+ 100.
+
+-->//Corrected endurance stress Se (N/mm2)
+
+-->Se = 270
+ Se =
+
+ 270.
+
+-->//Ultimate tensile strength of the material Sut (N/mm2)
+
+-->Sut = 600
+ Sut =
+
+ 600.
+
+-->//Yield strength of the material Syt (N/mm2)
+
+-->Syt = 450
+ Syt =
+
+ 450.
+
+
+Factor of safety using Gerber theory = 5.412003
+Factor of safety using Soderberg line = 3.750000
+Factor of safety using Goodman line = 4.390244
+Factor of safety against static failure = 4.500000
+
\ No newline at end of file diff --git a/764/CH5/EX5.17.b/solution5_17.sce b/764/CH5/EX5.17.b/solution5_17.sce new file mode 100755 index 000000000..43a166916 --- /dev/null +++ b/764/CH5/EX5.17.b/solution5_17.sce @@ -0,0 +1,44 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_17.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_17.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Permissible mean stress sigmaM (N/mm2)
+sigmaM = (sigmaMax + sigmaMin)/2
+//Permissible amplitude stress sigmaA (N/mm2)
+sigmaA = (sigmaMax - sigmaMin)/2
+//Assume factor of safety to be 1 n
+n = 1
+//Calculate maximum mean and amplitude stresses Sm, Sa (N/mm2)
+Sm = n * sigmaM
+Sa = n * sigmaA
+//Factor of safety using Gerber theory n1
+//Coefficients of resulting quadratic equation a(n^2)+b(n)+c = 0
+a = (Se * (Sm^2))
+b = ((Sut^2) * Sa)
+c = (-1)*(Se * (Sut^2))
+//Define polynomial
+p = [a b c]
+//Find roots
+r = roots(p)
+real_part = real(r)
+if(real_part(1) > 0)
+ n1 = real_part(1)
+else
+ n1 = real_part(2)
+end
+//Factor of safety using Soderberg line n2
+n2 = 1/((Sa/Se) + (Sm/Syt))
+//Factor of safety using Goodman line n3
+n3 = 1/((Sa/Se) + (Sm/Sut))
+//Factor of safety against static failure n4
+n4 = Syt/sigmaMax
+//Print results
+printf('Factor of safety using Gerber theory = %f\n',n1)
+printf('Factor of safety using Soderberg line = %f\n',n2)
+printf('Factor of safety using Goodman line = %f\n',n3)
+printf('Factor of safety against static failure = %f\n',n4)
diff --git a/764/CH5/EX5.18.a/data5_18.sci b/764/CH5/EX5.18.a/data5_18.sci new file mode 100755 index 000000000..63b8413a1 --- /dev/null +++ b/764/CH5/EX5.18.a/data5_18.sci @@ -0,0 +1,29 @@ +
+//(Design against Fluctuating Load) Example 5.18
+//Refer Fig.5.53 on page 176
+//Ultimate tensile strength of 40C8 Sut (N/mm2)
+Sut = 600
+//Yield tensile strength of 40C8 Syt (N/mm2)
+Syt = 380
+//Maximum force acting at the free end Pmax (N)
+Pmax = 150
+//Minimum force acting at the free end Pmin (N)
+Pmin = -50
+//Factor of safety fs
+fs = 2
+//Notch sensitivity factor q
+q = 0.9
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//Assume diameter of the beam to be between 7.5 and 50mm d
+d = 25
+//Distance between force and fillet-section dist (mm)
+dist = 100
+//From Fig.5.5
+Kt = 1.44
diff --git a/764/CH5/EX5.18.b/graph5_18.png b/764/CH5/EX5.18.b/graph5_18.png Binary files differnew file mode 100755 index 000000000..ac822879d --- /dev/null +++ b/764/CH5/EX5.18.b/graph5_18.png diff --git a/764/CH5/EX5.18.b/result5_18.txt b/764/CH5/EX5.18.b/result5_18.txt new file mode 100755 index 000000000..1998ecd6d --- /dev/null +++ b/764/CH5/EX5.18.b/result5_18.txt @@ -0,0 +1,95 @@ +-->//(Design against Fluctuating Load) Example 5.18
+
+-->//Refer Fig.5.53 on page 176
+
+-->//Ultimate tensile strength of 40C8 Sut (N/mm2)
+
+-->Sut = 600
+ Sut =
+
+ 600.
+
+-->//Yield tensile strength of 40C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Maximum force acting at the free end Pmax (N)
+
+-->Pmax = 150
+ Pmax =
+
+ 150.
+
+-->//Minimum force acting at the free end Pmin (N)
+
+-->Pmin = -50
+ Pmin =
+
+ - 50.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Notch sensitivity factor q
+
+-->q = 0.9
+ q =
+
+ 0.9
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//Assume diameter of the beam to be between 7.5 and 50mm d
+
+-->d = 25
+ d =
+
+ 25.
+
+-->//Distance between force and fillet-section dist (mm)
+
+-->dist = 100
+ dist =
+
+ 100.
+
+-->//From Fig.5.5
+
+-->Kt = 1.44
+ Kt =
+
+ 1.44
+
+
+Diameter of cantilever beam(d) = 11.499726 mm
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.18.b/solution5_18.sce b/764/CH5/EX5.18.b/solution5_18.sce new file mode 100755 index 000000000..6d56b0fa7 --- /dev/null +++ b/764/CH5/EX5.18.b/solution5_18.sce @@ -0,0 +1,76 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_18.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_18.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_18.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig. 5.24
+//Ka = 0.77
+//Calculate Kf
+Kf = 1 + (q*(Kt - 1))
+//Calculate Kd
+Kd = 1/Kf
+//Calculate endurance limit stress Se (N/mm2
+Se = Ka * Kb * Kc * Kd * Sdash
+//Calculate maximum bending moment Mbmax (N-mm)
+Mbmax = Pmax * dist
+//Calculate minimum bending moment Mbmin (N-mm)
+Mbmin = Pmin * dist
+//Calculate Mbm and Mba (N-mm)
+Mbm = (Mbmax + Mbmin)/2
+Mba = (Mbmax - Mbmin)/2
+theta = atand(Mba/Mbm)
+//Plot Gerber curve
+i = 1
+for p = 0:10:Sut
+ i = i + 1
+ x(i) = p
+ y(i) = Se * (1 - ((p/Sut)^2))
+end
+plot(x,y)
+plot_format()
+title('Gerber Curve (Example 5.18)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate Sm (N/mm2)
+//The coefficients of the resulting quadratic equation
+a = Se
+b = ((Sut^2) * tand(theta))
+c = (-1)*(Se * (Sut^2))
+//Define polynomial
+pol = [a b c]
+r = roots(pol)
+real_part = real(r)
+if(real_part(1) > 0)
+ Sm = real_part(1)
+else
+ Sm = real_part(2)
+end
+//Calculate Sa (N/mm2)
+Sa = Sm * tand(theta)
+//Calculate actual diameter of the beam (mm)
+d = ((32 * Mba * fs)/(Sa * %pi))^(1/3)
+//Print results
+printf('\nDiameter of cantilever beam(d) = %f mm\n',d)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.18.c/functions5_18.sci b/764/CH5/EX5.18.c/functions5_18.sci new file mode 100755 index 000000000..ed934eda6 --- /dev/null +++ b/764/CH5/EX5.18.c/functions5_18.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
\ No newline at end of file diff --git a/764/CH5/EX5.19.a/data5_19.sci b/764/CH5/EX5.19.a/data5_19.sci new file mode 100755 index 000000000..b8e3f16f5 --- /dev/null +++ b/764/CH5/EX5.19.a/data5_19.sci @@ -0,0 +1,14 @@ +
+//(Design against Fluctuating Load) Example 5.19
+//Maximum tensile stress in X-direction Xmax (N/mm2)
+Xmax = 100
+//Minimum tensile stress in X-direction Xmin (N/mm2)
+Xmin = 40
+//Maximum tensile stress in Y-direction Ymax (N/mm2)
+Ymax = 80
+//Minimum tensile stress in Y-direction Ymin (N/mm2)
+Ymin = 10
+//Corrected endurance limit of the component Se (N/mm2)
+Se = 270
+//Ultimate tensile strength of the material Sut (N/mm2)
+Sut = 660
diff --git a/764/CH5/EX5.19.b/graph5_19.png b/764/CH5/EX5.19.b/graph5_19.png Binary files differnew file mode 100755 index 000000000..810001f81 --- /dev/null +++ b/764/CH5/EX5.19.b/graph5_19.png diff --git a/764/CH5/EX5.19.b/result5_19.txt b/764/CH5/EX5.19.b/result5_19.txt new file mode 100755 index 000000000..2585f2f0d --- /dev/null +++ b/764/CH5/EX5.19.b/result5_19.txt @@ -0,0 +1,47 @@ +-->//(Design against Fluctuating Load) Example 5.19
+
+-->//Maximum tensile stress in X-direction Xmax (N/mm2)
+
+-->Xmax = 100
+ Xmax =
+
+ 100.
+
+-->//Minimum tensile stress in X-direction Xmin (N/mm2)
+
+-->Xmin = 40
+ Xmin =
+
+ 40.
+
+-->//Maximum tensile stress in Y-direction Ymax (N/mm2)
+
+-->Ymax = 80
+ Ymax =
+
+ 80.
+
+-->//Minimum tensile stress in Y-direction Ymin (N/mm2)
+
+-->Ymin = 10
+ Ymin =
+
+ 10.
+
+-->//Corrected endurance limit of the component Se (N/mm2)
+
+-->Se = 270
+ Se =
+
+ 270.
+
+-->//Ultimate tensile strength of the material Sut (N/mm2)
+
+-->Sut = 660
+ Sut =
+
+ 660.
+
+
+Factor of safety(fs) = 4.661428
+
\ No newline at end of file diff --git a/764/CH5/EX5.19.b/solution5_19.sce b/764/CH5/EX5.19.b/solution5_19.sce new file mode 100755 index 000000000..dbf168e8b --- /dev/null +++ b/764/CH5/EX5.19.b/solution5_19.sce @@ -0,0 +1,45 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_19.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_19.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate mean and amplitude stresses in X-direction Xm, Xa (N/mm2)
+Xm = (Xmax + Xmin)/2
+Xa = (Xmax - Xmin)/2
+//Calculate mean and amplitude stresses in Y-direction Ym, Ya (N/mm2)
+Ym = (Ymax + Ymin)/2
+Ya = (Ymax - Ymin)/2
+//Calculate resultant mean stress sigmaM (N/mm2)
+sigmaM = sqrt((Xm^2) - (Xm * Ym) + (Ym^2))
+//Calculate resultant amplitude stress sigmaA (N/mm2)
+sigmaA = sqrt((Xa^2) - (Xa * Ya) + (Ya^2))
+theta = atand(sigmaA/sigmaM)
+//Plot modified Goodman Diagram
+x1 = {0, Sut}
+x2 = {Se, 0}
+plot(x1,x2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 5.19)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate permissible stresses Sm and Sa (N/mm2)
+Sm = 1/((tand(theta)/Se) + (1/Sut))
+Sa = Sm * tand(theta)
+//Calculate factor of safety fs
+fs = Sa/sigmaA
+//Print results
+printf('\nFactor of safety(fs) = %f\n',fs)
diff --git a/764/CH5/EX5.2.a/data5_2.sci b/764/CH5/EX5.2.a/data5_2.sci new file mode 100755 index 000000000..6c7666e1e --- /dev/null +++ b/764/CH5/EX5.2.a/data5_2.sci @@ -0,0 +1,15 @@ +
+//(Design against Fluctuating Load) Example 5.2
+//Refer Fig.5.14 on page 149
+//Load acting on the shaft P (kN)
+P = 2.5
+//Ultimate tensile strength of the brittle material Sut (N/mm2)
+Sut = 300
+//Factor of safety fs
+fs = 3
+//Distance between the bearing and fillet section dist (mm)
+dist = 350
+//From Fig.5.5 for fillet section
+Kt1 = 1.61
+//Distance between the fillet section and centre of span mid (mm)
+mid = 350 + 150
diff --git a/764/CH5/EX5.2.b/result5_2.txt b/764/CH5/EX5.2.b/result5_2.txt new file mode 100755 index 000000000..90e794bb8 --- /dev/null +++ b/764/CH5/EX5.2.b/result5_2.txt @@ -0,0 +1,49 @@ +-->//(Design against Fluctuating Load) Example 5.2
+
+-->//Refer Fig.5.14 on page 149
+
+-->//Load acting on the shaft P (kN)
+
+-->P = 2.5
+ P =
+
+ 2.5
+
+-->//Ultimate tensile strength of the brittle material Sut (N/mm2)
+
+-->Sut = 300
+ Sut =
+
+ 300.
+
+-->//Factor of safety fs
+
+-->fs = 3
+ fs =
+
+ 3.
+
+-->//Distance between the bearing and fillet section dist (mm)
+
+-->dist = 350
+ dist =
+
+ 350.
+
+-->//From Fig.5.5 for fillet section
+
+-->Kt1 = 1.61
+ Kt1 =
+
+ 1.61
+
+-->//Distance between the fillet section and centre of span mid (mm)
+
+-->mid = 350 + 150
+ mid =
+
+ 500.
+
+
+Shaft diameter(d) = 41.552901 mm
+
\ No newline at end of file diff --git a/764/CH5/EX5.2.b/solution5_2.sce b/764/CH5/EX5.2.b/solution5_2.sce new file mode 100755 index 000000000..b4756ac4f --- /dev/null +++ b/764/CH5/EX5.2.b/solution5_2.sce @@ -0,0 +1,33 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible stress sigma (N/mm2)
+sigma = Sut/fs
+//Assume the shaft diameter to be 1mm d
+d = 1
+//Calculate the bending moment at fillet section Mb1 (N-mm)
+Mb1 = ((P * 1000)/2)*dist
+//Calculate the stress at fillet section F (N/mm2)
+F = (32 * Mb1)/(%pi * (d^3))
+//Calculate the maximum stress at fillet section sigma1 (N/mm2)
+sigma1 = Kt1 * F
+//Calculate the bending moment at the centre of the span Mb2 (N-mm)
+Mb2 = ((P * 1000)/2)*mid
+//Calculate the bending stress at the centre of the span sigma2 (N/mm2)
+sigma2 = (32 * Mb2)/(%pi * (d^3))
+//Choose the largest of the two stresses and store in smax
+if (sigma2 > sigma1) then
+ smax = sigma2
+else
+ smax = sigma1
+end
+//Calculate the true value shaft diameter d (mm)
+d = (smax/sigma)^(1/3)
+//Print results
+printf('\nShaft diameter(d) = %f mm\n',d)
diff --git a/764/CH5/EX5.20.a/data5_20.sci b/764/CH5/EX5.20.a/data5_20.sci new file mode 100755 index 000000000..8e71dfd86 --- /dev/null +++ b/764/CH5/EX5.20.a/data5_20.sci @@ -0,0 +1,18 @@ +
+//(Design against Fluctuating Load) Example 5.20
+//Maximum bending moment at the pulley Mtmax (N-m)
+Mtmax = 600
+//Minimum bending moment at the pulley Mtmin (N-m)
+Mtmin = 200
+//Maximum torsional moment in the shaft Tmax (N-m)
+Tmax = 200
+//Minimum torsional moment in the shaft Tmin (N-m)
+Tmin = 70
+//Ultimate tensile strength of FeE400 Sut (N/mm2)
+Sut = 540
+//Yield tensile strength of FeE400 Syt (N/mm2)
+Syt = 400
+//Corrected endurance limit Se (N/mm2)
+Se = 200
+//Factor of safety fs
+fs = 2
diff --git a/764/CH5/EX5.20.b/graph5_20.png b/764/CH5/EX5.20.b/graph5_20.png Binary files differnew file mode 100755 index 000000000..b62dc87b6 --- /dev/null +++ b/764/CH5/EX5.20.b/graph5_20.png diff --git a/764/CH5/EX5.20.b/result5_20.txt b/764/CH5/EX5.20.b/result5_20.txt new file mode 100755 index 000000000..dc1091956 --- /dev/null +++ b/764/CH5/EX5.20.b/result5_20.txt @@ -0,0 +1,61 @@ +-->//(Design against Fluctuating Load) Example 5.20
+
+-->//Maximum bending moment at the pulley Mtmax (N-m)
+
+-->Mtmax = 600
+ Mtmax =
+
+ 600.
+
+-->//Minimum bending moment at the pulley Mtmin (N-m)
+
+-->Mtmin = 200
+ Mtmin =
+
+ 200.
+
+-->//Maximum torsional moment in the shaft Tmax (N-m)
+
+-->Tmax = 200
+ Tmax =
+
+ 200.
+
+-->//Minimum torsional moment in the shaft Tmin (N-m)
+
+-->Tmin = 70
+ Tmin =
+
+ 70.
+
+-->//Ultimate tensile strength of FeE400 Sut (N/mm2)
+
+-->Sut = 540
+ Sut =
+
+ 540.
+
+-->//Yield tensile strength of FeE400 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Corrected endurance limit Se (N/mm2)
+
+-->Se = 200
+ Se =
+
+ 200.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+
+Shaft diamater(d) = 33.287656 mm
+
\ No newline at end of file diff --git a/764/CH5/EX5.20.b/solution5_20.sce b/764/CH5/EX5.20.b/solution5_20.sce new file mode 100755 index 000000000..f0257e7a8 --- /dev/null +++ b/764/CH5/EX5.20.b/solution5_20.sce @@ -0,0 +1,58 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_20.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_20.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate mean bending moment Mbm (N-m)
+Mbm = (Mtmax + Mtmin)/2
+//Calculate bending moment amplitude Mba (N-m)
+Mba = (Mtmax - Mtmin)/2
+//Calculate mean torsional moment Mtm (N-m)
+Mtm = (Tmax + Tmin)/2
+//Calculate torsional moment amplitude Mta (N-m)
+Mta = (Tmax - Tmin)/2
+//Assume diameter of the shaft to be 1mm d
+d = 1
+//Calculate mean and amplitude bending stresses bM, bA (N/mm2)
+bM = (32 * Mbm * 1000)/(%pi * (d^3))
+bA = (32 * Mba * 1000)/(%pi * (d^3))
+//Calculate mean and amplitude shear stresses tauM, tauA (N/mm2)
+tauM = (16 * Mtm * 1000)/(%pi * (d^3))
+tauA = (16 * Mta * 1000)/(%pi * (d^3))
+//Calculate resultant mean and amplitude stresses sigmaM, sigmaA (N/mm2)
+sigmaM = sqrt((bM^2) + (3 * (tauM^2)))
+sigmaA = sqrt((bA^2) + (3 * (tauA^2)))
+theta = atand(sigmaA/sigmaM)
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+x1 = {0 Syt}
+y1 = {Syt 0}
+x2 = {0 Sut}
+y2 = {Se 0}
+plot(x1,y1,'-*')
+plot(x2,y2,'--*')
+plot_format()
+title('Modified Goodman diagram (Example 5.20)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate permissible stress amplitude Sa (N/mm2)
+Sm = 1/((tand(theta)/Se) + (1/Sut))
+Sa = Sm * tand(theta)
+//Calculate actual shaft diameter d (mm)
+d = ((fs * sigmaA)/Sa)^(1/3)
+//Print results
+printf('\nShaft diamater(d) = %f mm\n',d)
diff --git a/764/CH5/EX5.21.a/data5_21.sci b/764/CH5/EX5.21.a/data5_21.sci new file mode 100755 index 000000000..89cef40d3 --- /dev/null +++ b/764/CH5/EX5.21.a/data5_21.sci @@ -0,0 +1,14 @@ +
+//(Design against Fluctuating Load) Example 5.21
+//Mass of the falling object m (kg)
+m = 50
+//Falling distance h (mm)
+h = 25
+//Beam length l (mm)
+l = 250
+//Yield tensile strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 2
+//Modulus of elasticity of 30C8 E (N/mm2)
+E = 207000
diff --git a/764/CH5/EX5.21.b/result5_21.txt b/764/CH5/EX5.21.b/result5_21.txt new file mode 100755 index 000000000..39c353824 --- /dev/null +++ b/764/CH5/EX5.21.b/result5_21.txt @@ -0,0 +1,51 @@ +-->//(Design against Fluctuating Load) Example 5.21
+
+-->//Mass of the falling object m (kg)
+
+-->m = 50
+ m =
+
+ 50.
+
+-->//Falling distance h (mm)
+
+-->h = 25
+ h =
+
+ 25.
+
+-->//Beam length l (mm)
+
+-->l = 250
+ l =
+
+ 250.
+
+-->//Yield tensile strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Modulus of elasticity of 30C8 E (N/mm2)
+
+-->E = 207000
+ E =
+
+ 207000.
+
+
+Length of side of the cross-section = 70.000000 mm
+
+Cross-section of the beam = 70.000000 x 70.000000 mm2
+
+Design is safe
+
\ No newline at end of file diff --git a/764/CH5/EX5.21.b/solution5_21.sce b/764/CH5/EX5.21.b/solution5_21.sce new file mode 100755 index 000000000..2da667d04 --- /dev/null +++ b/764/CH5/EX5.21.b/solution5_21.sce @@ -0,0 +1,66 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_21.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_21.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate weight of the object W (N)
+W = m * 9.81
+//Calculate maximum bending moment Mb (N-mm)
+Mb = (W * l)/4
+//Assume length of one side of the beam cross-section to be 1mm a
+a = 1
+//Calculate second moment of area of beam cross-section I (mm4)
+I = (a^4)/12
+//Calculate value of y (mm)
+y = a/2
+//Calculate static stress sigmaS (N/mm2)
+sigmaS = (Mb * y)/I
+//Calculate static deflection deltaS (mm)
+deltaS = (W * (l^3))/(48 * E * I)
+//Calculate permissible stress P (N/mm2)
+P = Syt/fs
+//Calculate the actual value of a (mm)
+//Coefficients of the resulting cubic equation
+a = (P^2)/(sigmaS^2)
+b = 0
+c = (-1)*((2 * h)/deltaS)
+d = (-1)*((2 * P)/sigmaS)
+//Define polynomial
+pol = [a b c d]
+//Calculate roots
+r = roots(pol)
+real_part = real(r)
+if (real_part(1) > 0) then
+ a = real_part(1)
+elseif (real_part(2) > 0)
+ a = real_part(2)
+else
+ a = real_part(3)
+end
+//Round-up value of a
+a = round_five(a)
+//Check for impact stresses
+sigmaNew = sigmaS/(a^3)
+deltaNew = deltaS/(a^4)
+Impact = sigmaNew * (1 + sqrt(1 + ((2 * h)/deltaNew)))
+//Print results
+printf('\nLength of side of the cross-section = %f mm\n',a)
+printf('\nCross-section of the beam = %f x %f mm2\n',a,a)
+if (Impact < P) then
+ printf('\nDesign is safe\n')
+else
+ printf('\nDesign is not safe\n')
+end
diff --git a/764/CH5/EX5.3.a/data5_3.sci b/764/CH5/EX5.3.a/data5_3.sci new file mode 100755 index 000000000..9994242ce --- /dev/null +++ b/764/CH5/EX5.3.a/data5_3.sci @@ -0,0 +1,25 @@ +
+//(Design against Fluctuating Load) Example 5.3
+//Refer Fig.5.28 on page 160
+//Completely reversed axial load acting on the plate P (kN)
+P = 30
+//Ultimate tensile strength of 20C8 Sut (N/mm2)
+Sut = 440
+//Factor of safety fs
+fs = 2
+//Notch sensitivity factor q
+q = 0.8
+//Dimensions in mm
+d = 10
+w = 50
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 3
+//From Fig.5.2
+Kt = 2.51
\ No newline at end of file diff --git a/764/CH5/EX5.3.b/result5_3.txt b/764/CH5/EX5.3.b/result5_3.txt new file mode 100755 index 000000000..0cb7f9c9a --- /dev/null +++ b/764/CH5/EX5.3.b/result5_3.txt @@ -0,0 +1,80 @@ +-->//(Design against Fluctuating Load) Example 5.3
+
+-->//Refer Fig.5.28 on page 160
+
+-->//Completely reversed axial load acting on the plate P (kN)
+
+-->P = 30
+ P =
+
+ 30.
+
+-->//Ultimate tensile strength of 20C8 Sut (N/mm2)
+
+-->Sut = 440
+ Sut =
+
+ 440.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Notch sensitivity factor q
+
+-->q = 0.8
+ q =
+
+ 0.8
+
+-->//Dimensions in mm
+
+-->d = 10
+ d =
+
+ 10.
+
+-->w = 50
+ w =
+
+ 50.
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 3
+ op =
+
+ 3.
+
+-->//From Fig.5.2
+
+-->Kt = 2.51
+ Kt =
+
+ 2.51
+
+
+Thickness of the plate(t) = 33.821238 mm
+
+Answer is slightly different bencause of use of equation 5.18
+
\ No newline at end of file diff --git a/764/CH5/EX5.3.b/solution5_3.sce b/764/CH5/EX5.3.b/solution5_3.sce new file mode 100755 index 000000000..58e197fe4 --- /dev/null +++ b/764/CH5/EX5.3.b/solution5_3.sce @@ -0,0 +1,35 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_3.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Call fluctuate
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//Calculate Kf
+Kf = 1 + (q * (Kt - 1))
+//Calculate Kd
+Kd = (1/Kf)
+//Calculate the endurance limit stress for plate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Se
+Se = Ka * Kb * Kc * Kd * Sdash
+//For axial load from equation 5.30 Sea (N/mm2)
+Sea = 0.8 * Se
+//Calculate permissible stress amplitude sigma (N/mm2)
+sigma = Sea/fs
+//Calculate the plate thickness t (mm)
+t = (P * 1000)/(sigma * (w - d))
+//Print results
+printf('\nThickness of the plate(t) = %f mm\n',t)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+
+
+
diff --git a/764/CH5/EX5.3.c/functions5_3.sci b/764/CH5/EX5.3.c/functions5_3.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH5/EX5.3.c/functions5_3.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH5/EX5.4.a/data5_4.sci b/764/CH5/EX5.4.a/data5_4.sci new file mode 100755 index 000000000..33f545d10 --- /dev/null +++ b/764/CH5/EX5.4.a/data5_4.sci @@ -0,0 +1,19 @@ +
+//(Design against Fluctuating Load) Example 5.4
+//Completely reversed axial load acting on the rod Pa (kN)
+Pa = 100
+//Ultimate tensile strength of 40Cr1 Sut (N/mm2)
+Sut = 550
+//Factor of safety fs
+fs = 2
+//Reliability (%)
+reliability = 95
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//Assume d to be between 7.5 and 50 say 25 (mm)
+d = 25
diff --git a/764/CH5/EX5.4.b/result5_4.txt b/764/CH5/EX5.4.b/result5_4.txt new file mode 100755 index 000000000..6cd8f5dec --- /dev/null +++ b/764/CH5/EX5.4.b/result5_4.txt @@ -0,0 +1,59 @@ +-->//(Design against Fluctuating Load) Example 5.4
+
+-->//Completely reversed axial load acting on the rod Pa (kN)
+
+-->Pa = 100
+ Pa =
+
+ 100.
+
+-->//Ultimate tensile strength of 40Cr1 Sut (N/mm2)
+
+-->Sut = 550
+ Sut =
+
+ 550.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Reliability (%)
+
+-->reliability = 95
+ reliability =
+
+ 95.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//Assume d to be between 7.5 and 50 say 25 (mm)
+
+-->d = 25
+ d =
+
+ 25.
+
+
+Diameter of the rod(d) = 43.032758 mm
+
+Answer is slightly different because of use of equation 5.18
+
\ No newline at end of file diff --git a/764/CH5/EX5.4.b/solution5_4.sce b/764/CH5/EX5.4.b/solution5_4.sce new file mode 100755 index 000000000..f67ac464a --- /dev/null +++ b/764/CH5/EX5.4.b/solution5_4.sce @@ -0,0 +1,27 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_4.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Call fluctuate
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//Calculate the endurance stress limit for rod Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Se (N/mm2)
+Se = Ka * Kb * Kc * Sdash
+Sea = 0.8 * Se
+//Calculate the permissible stress amplitude from equation 5.30 sigma (N/mm2)
+sigma = Sea/fs
+//Calculate the rod diameter d (mm)
+d = ((Pa * 1000 * 4)/(%pi * sigma))^(1/2)
+//Print results
+printf('\nDiameter of the rod(d) = %f mm\n',d)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
diff --git a/764/CH5/EX5.4.c/functions5_4.sci b/764/CH5/EX5.4.c/functions5_4.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH5/EX5.4.c/functions5_4.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH5/EX5.5.a/data5_5.sci b/764/CH5/EX5.5.a/data5_5.sci new file mode 100755 index 000000000..f0bac0d5a --- /dev/null +++ b/764/CH5/EX5.5.a/data5_5.sci @@ -0,0 +1,26 @@ +
+//(Design against Fluctuating Load) Example 5.5
+//Refer Fig.5.29 on page 161
+//Completely reversed axial load acting on the plate P (kN)
+P = 50
+//Ultimate tensile strength of 45C8 Sut (N/mm2)
+Sut = 630
+//Factor of safety fs
+fs = 2
+//Notch sensitivity factor q
+q = 0.8
+//Dimensions in mm
+r = 5
+d = 50
+D = 100
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//From Fig.5.3
+Kt = 2.27
diff --git a/764/CH5/EX5.5.b/result5_5.txt b/764/CH5/EX5.5.b/result5_5.txt new file mode 100755 index 000000000..a486eeeaf --- /dev/null +++ b/764/CH5/EX5.5.b/result5_5.txt @@ -0,0 +1,85 @@ +-->//(Design against Fluctuating Load) Example 5.5
+
+-->//Refer Fig.5.29 on page 161
+
+-->//Completely reversed axial load acting on the plate P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Ultimate tensile strength of 45C8 Sut (N/mm2)
+
+-->Sut = 630
+ Sut =
+
+ 630.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Notch sensitivity factor q
+
+-->q = 0.8
+ q =
+
+ 0.8
+
+-->//Dimensions in mm
+
+-->r = 5
+ r =
+
+ 5.
+
+-->d = 50
+ d =
+
+ 50.
+
+-->D = 100
+ D =
+
+ 100.
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//From Fig.5.3
+
+-->Kt = 2.27
+ Kt =
+
+ 2.27
+
+
+Thickness of the plate(t) = 25.677771 mm
+
+Answer is slightly different because of use of equation 5.18
+
\ No newline at end of file diff --git a/764/CH5/EX5.5.b/solution5_5.sce b/764/CH5/EX5.5.b/solution5_5.sce new file mode 100755 index 000000000..8971b5346 --- /dev/null +++ b/764/CH5/EX5.5.b/solution5_5.sce @@ -0,0 +1,32 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_5.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_5.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Call fluctuate
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//Calculate Kf
+Kf = 1 + (q * (Kt - 1))
+//Calculate Kd
+Kd = (1/Kf)
+//Calculate the endurance limit stress for plate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Se
+Se = Ka * Kb * Kc * Kd * Sdash
+//For axial load from equation 5.30 Sea (N/mm2)
+Sea = 0.8 * Se
+//Calculate permissible stress amplitude sigma (N/mm2)
+sigma = Sea/fs
+//Calculate the plate thickness t (mm)
+t = (P * 1000)/(d * sigma)
+//Print results
+printf('\nThickness of the plate(t) = %f mm\n',t)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
diff --git a/764/CH5/EX5.5.c/functions5_5.sci b/764/CH5/EX5.5.c/functions5_5.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH5/EX5.5.c/functions5_5.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH5/EX5.6.a/data5_6.sci b/764/CH5/EX5.6.a/data5_6.sci new file mode 100755 index 000000000..a96bba61f --- /dev/null +++ b/764/CH5/EX5.6.a/data5_6.sci @@ -0,0 +1,12 @@ +
+//(Design against Fluctuating Load) Example 5.6
+//Ultimate tensile strength of 45C8 Sut (N/mm2)
+Sut = 630
+//Corrected endurance limit of the bar Se (N/mm2)
+Se = 315
+//Number of cycles N
+N = 90000
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
diff --git a/764/CH5/EX5.6.b/graph5_6.png b/764/CH5/EX5.6.b/graph5_6.png Binary files differnew file mode 100755 index 000000000..ff3afc2c3 --- /dev/null +++ b/764/CH5/EX5.6.b/graph5_6.png diff --git a/764/CH5/EX5.6.b/result5_6.txt b/764/CH5/EX5.6.b/result5_6.txt new file mode 100755 index 000000000..ef321ef54 --- /dev/null +++ b/764/CH5/EX5.6.b/result5_6.txt @@ -0,0 +1,39 @@ +-->//(Design against Fluctuating Load) Example 5.6
+
+-->//Ultimate tensile strength of 45C8 Sut (N/mm2)
+
+-->Sut = 630
+ Sut =
+
+ 630.
+
+-->//Corrected endurance limit of the bar Se (N/mm2)
+
+-->Se = 315
+ Se =
+
+ 315.
+
+-->//Number of cycles N
+
+-->N = 90000
+ N =
+
+ 90000.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+Fatigue strength of the bar(Sf): 386.629450 N/mm2
+
\ No newline at end of file diff --git a/764/CH5/EX5.6.b/solution5_6.sce b/764/CH5/EX5.6.b/solution5_6.sce new file mode 100755 index 000000000..28455b6a0 --- /dev/null +++ b/764/CH5/EX5.6.b/solution5_6.sce @@ -0,0 +1,24 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_6.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Call the function to plot S-N Curve
+funcprot(0)
+[a, b, c, d] = SNplot(Sut,Se)
+//For N cycles
+val = log10(N)
+//Calculate the y-coordinate corresponding to val using linear interpolation
+Sfl = b + (((a - b)/(c - d))*(val - d))
+//Calculate the fatigue strength Sf (N/mm2)
+Sf = (10^Sfl)
+//Print results
+printf('Fatigue strength of the bar(Sf): %f N/mm2\n',Sf)
diff --git a/764/CH5/EX5.6.c/functions5_6.sci b/764/CH5/EX5.6.c/functions5_6.sci new file mode 100755 index 000000000..d3512852e --- /dev/null +++ b/764/CH5/EX5.6.c/functions5_6.sci @@ -0,0 +1,40 @@ +
+//Function for plotting S-N Curve
+function[a, b, c, d]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ d = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = d
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - d))*(s(i) - d))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.6)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
diff --git a/764/CH5/EX5.7.a/data5_7.sci b/764/CH5/EX5.7.a/data5_7.sci new file mode 100755 index 000000000..5a7168ab0 --- /dev/null +++ b/764/CH5/EX5.7.a/data5_7.sci @@ -0,0 +1,21 @@ +
+//(Design against Fluctuating Load) Example 5.7
+//Ultimate tensile strength of 40C8 Sut (N/mm2)
+Sut = 600
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
+//Reversed bending stress acting on the bar Sf (N/mm2)
+Sf = 250
+//Diameter of the bar d (mm)
+d = 50
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 4
diff --git a/764/CH5/EX5.7.b/graph5_7.png b/764/CH5/EX5.7.b/graph5_7.png Binary files differnew file mode 100755 index 000000000..eb1312c7c --- /dev/null +++ b/764/CH5/EX5.7.b/graph5_7.png diff --git a/764/CH5/EX5.7.b/result5_7.txt b/764/CH5/EX5.7.b/result5_7.txt new file mode 100755 index 000000000..6d711a097 --- /dev/null +++ b/764/CH5/EX5.7.b/result5_7.txt @@ -0,0 +1,67 @@ +-->//(Design against Fluctuating Load) Example 5.7
+
+-->//Ultimate tensile strength of 40C8 Sut (N/mm2)
+
+-->Sut = 600
+ Sut =
+
+ 600.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+-->//Reversed bending stress acting on the bar Sf (N/mm2)
+
+-->Sf = 250
+ Sf =
+
+ 250.
+
+-->//Diameter of the bar d (mm)
+
+-->d = 50
+ d =
+
+ 50.
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 4
+ op =
+
+ 4.
+
+
+The life of the bar is 26776.795792 cycles
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.7.b/solution5_7.sce b/764/CH5/EX5.7.b/solution5_7.sce new file mode 100755 index 000000000..12ef3406d --- /dev/null +++ b/764/CH5/EX5.7.b/solution5_7.sce @@ -0,0 +1,32 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_7.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb, Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 0.44
+//Calculate Se (N/mm2)
+Se = Ka * Kb * Kc * Sdash
+//Plot S-N Curve
+funcprot(0)
+[a, b, c, d] = SNplot(Sut,Se)
+//Calculate the number of cycles N for given Sf
+Sfval = log10(Sf)
+Nval = d + (((c - d)/(a - b))*(Sfval - b))
+N = 10^Nval
+//Print results
+printf('\nThe life of the bar is %f cycles\n',N)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.7.c/functions5_7.sci b/764/CH5/EX5.7.c/functions5_7.sci new file mode 100755 index 000000000..dc9514a0c --- /dev/null +++ b/764/CH5/EX5.7.c/functions5_7.sci @@ -0,0 +1,89 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
+
+
+//Function for plotting S-N Curve
+function[a, b, c, d]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ d = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = d
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - d))*(s(i) - d))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.7)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
\ No newline at end of file diff --git a/764/CH5/EX5.8.a/data5_8.sci b/764/CH5/EX5.8.a/data5_8.sci new file mode 100755 index 000000000..2a99bf181 --- /dev/null +++ b/764/CH5/EX5.8.a/data5_8.sci @@ -0,0 +1,36 @@ +
+//(Design against Fluctuating Load) Example 5.8
+//Refer Fig.5.32 on page 163
+//Non-rotating force acting on the shaft P (kN)
+P = 5
+//Ultimate tensile strength of 30C8 Sut (N/mm2)
+Sut = 500
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
+//Notch radius r (mm)
+r = 3
+//Diameter d (mm)
+d = 30
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
+//Distance between notch B and bearing E dist1 (mm)
+dist1 = 400
+//Distance between notch D and bearing E dist2 (mm)
+dist2 = 200
+//Distance between notch and force application point fdist (mm)
+fdist = 100
+//Reaction at E Re (N)
+Re = 2857
+//From Fig.5.5
+Kt = 1.72
+//Notch sensitivity q
+q = 0.78
diff --git a/764/CH5/EX5.8.b/graph5_8.png b/764/CH5/EX5.8.b/graph5_8.png Binary files differnew file mode 100755 index 000000000..7f61c0950 --- /dev/null +++ b/764/CH5/EX5.8.b/graph5_8.png diff --git a/764/CH5/EX5.8.b/result5_8.txt b/764/CH5/EX5.8.b/result5_8.txt new file mode 100755 index 000000000..cd6cf3538 --- /dev/null +++ b/764/CH5/EX5.8.b/result5_8.txt @@ -0,0 +1,118 @@ +-->//(Design against Fluctuating Load) Example 5.8
+
+-->//Refer Fig.5.32 on page 163
+
+-->//Non-rotating force acting on the shaft P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Ultimate tensile strength of 30C8 Sut (N/mm2)
+
+-->Sut = 500
+ Sut =
+
+ 500.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+-->//Notch radius r (mm)
+
+-->r = 3
+ r =
+
+ 3.
+
+-->//Diameter d (mm)
+
+-->d = 30
+ d =
+
+ 30.
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+-->//Distance between notch B and bearing E dist1 (mm)
+
+-->dist1 = 400
+ dist1 =
+
+ 400.
+
+-->//Distance between notch D and bearing E dist2 (mm)
+
+-->dist2 = 200
+ dist2 =
+
+ 200.
+
+-->//Distance between notch and force application point fdist (mm)
+
+-->fdist = 100
+ fdist =
+
+ 100.
+
+-->//Reaction at E Re (N)
+
+-->Re = 2857
+ Re =
+
+ 2857.
+
+-->//From Fig.5.5
+
+-->Kt = 1.72
+ Kt =
+
+ 1.72
+
+-->//Notch sensitivity q
+
+-->q = 0.78
+ q =
+
+ 0.78
+
+
+The life of the shaft is 19199.756432 cycles
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.8.b/solution5_8.sce b/764/CH5/EX5.8.b/solution5_8.sce new file mode 100755 index 000000000..2afa89c36 --- /dev/null +++ b/764/CH5/EX5.8.b/solution5_8.sce @@ -0,0 +1,46 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_8.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_8.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_8.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate the bending moment at the notch B MB (N-mm)
+MB = (Re * dist1) - (P * 1000 * fdist)
+//Calculate the bending moment at the notch D MD (N-mm)
+MD = Re * dist2
+if (MB > MD) then
+ Mb = MB
+else
+ Mb = MD
+end
+//Calculate Sf (N/mm2)
+Sf = (32 * Mb)/(%pi * (d^3))
+//Calculate Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig. 5.24
+//Ka = 0.79
+//Calculate Kf
+Kf = 1 + (q*(Kt - 1))
+//Calculate Kd
+Kd = (1/Kf)
+//Calculate Se (N/mm2)
+Se = Ka * Kb * Kc * Kd * Sdash
+//Plot S-N Curve
+funcprot(0)
+[a, b, c, d] = SNplot(Sut,Se)
+//Calculate the number of cycles N for given Sf
+Sfval = log10(Sf)
+Nval = d + (((c - d)/(a - b))*(Sfval - b))
+N = 10^Nval
+//Print results
+printf('\nThe life of the shaft is %f cycles\n',N)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.8.c/functions5_8.sci b/764/CH5/EX5.8.c/functions5_8.sci new file mode 100755 index 000000000..ff03099fc --- /dev/null +++ b/764/CH5/EX5.8.c/functions5_8.sci @@ -0,0 +1,89 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
+
+
+//Function for plotting S-N Curve
+function[a, b, c, d]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ d = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = d
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - d))*(s(i) - d))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.8)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
\ No newline at end of file diff --git a/764/CH5/EX5.9.a/data5_9.sci b/764/CH5/EX5.9.a/data5_9.sci new file mode 100755 index 000000000..86da184a7 --- /dev/null +++ b/764/CH5/EX5.9.a/data5_9.sci @@ -0,0 +1,35 @@ +
+//(Design against Fluctuating Load) Example 5.9
+//Refer Fig.5.34 on page 164
+//Bending moment acting at section X-X Mb (kN-m)
+Mb = 500
+//Ultimate tensile strength of shaft material Sut (MN/m2)
+Sut = 500
+//Minimum value of N is Nmin
+Nmin = (10^3)
+//Maximum value of N is Nmax
+Nmax = (10^6)
+//Yield point of shaft material Syt (MN/m2)
+Syt = 350
+//Endurance limit in bending for specimen Sdash (MN/m2)
+Sdash = 210
+//Specimen shaft diameter ds (mm)
+ds = 7.5
+//Notch sensitivity factor q
+q = 0.8
+//Fillet radius rf (mm)
+rf = 8
+//Shaft diameter d (mm)
+d = 300
+//Theoretical stress concentration table
+ratioVal = {0.025 0.05 0.1}
+Ktval = {2.6 2.05 1.66}
+//Reliability (%)
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 2
diff --git a/764/CH5/EX5.9.b/graph5_9.png b/764/CH5/EX5.9.b/graph5_9.png Binary files differnew file mode 100755 index 000000000..721c3e482 --- /dev/null +++ b/764/CH5/EX5.9.b/graph5_9.png diff --git a/764/CH5/EX5.9.b/result5_9.txt b/764/CH5/EX5.9.b/result5_9.txt new file mode 100755 index 000000000..270f4600e --- /dev/null +++ b/764/CH5/EX5.9.b/result5_9.txt @@ -0,0 +1,116 @@ +-->//(Design against Fluctuating Load) Example 5.9
+
+-->//Refer Fig.5.34 on page 164
+
+-->//Bending moment acting at section X-X Mb (kN-m)
+
+-->Mb = 500
+ Mb =
+
+ 500.
+
+-->//Ultimate tensile strength of shaft material Sut (MN/m2)
+
+-->Sut = 500
+ Sut =
+
+ 500.
+
+-->//Minimum value of N is Nmin
+
+-->Nmin = (10^3)
+ Nmin =
+
+ 1000.
+
+-->//Maximum value of N is Nmax
+
+-->Nmax = (10^6)
+ Nmax =
+
+ 1000000.
+
+-->//Yield point of shaft material Syt (MN/m2)
+
+-->Syt = 350
+ Syt =
+
+ 350.
+
+-->//Endurance limit in bending for specimen Sdash (MN/m2)
+
+-->Sdash = 210
+ Sdash =
+
+ 210.
+
+-->//Specimen shaft diameter ds (mm)
+
+-->ds = 7.5
+ ds =
+
+ 7.5
+
+-->//Notch sensitivity factor q
+
+-->q = 0.8
+ q =
+
+ 0.8
+
+-->//Fillet radius rf (mm)
+
+-->rf = 8
+ rf =
+
+ 8.
+
+-->//Shaft diameter d (mm)
+
+-->d = 300
+ d =
+
+ 300.
+
+-->//Theoretical stress concentration table
+
+-->ratioVal = {0.025 0.05 0.1}
+ ratioVal =
+
+ 0.025 0.05 0.1
+
+-->Ktval = {2.6 2.05 1.66}
+ Ktval =
+
+ 2.6 2.05 1.66
+
+-->//Reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 2
+ op =
+
+ 2.
+
+
+The life of the shaft is 17219.681605 cycles
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH5/EX5.9.b/solution5_9.sce b/764/CH5/EX5.9.b/solution5_9.sce new file mode 100755 index 000000000..769ce821f --- /dev/null +++ b/764/CH5/EX5.9.b/solution5_9.sce @@ -0,0 +1,44 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution5_9.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data5_9.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions5_9.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 0.79
+//Calculate rf/d ratio
+ratio = rf/d
+//Calculate the value of Kt using linear interpolation
+for i = 1:1:2
+ if (ratio > ratioVal(i)) then
+ Kt = Ktval(i+1) + (((ratio - ratioVal(i+1))*(Ktval(i) - Ktval(i+1)))/(ratioVal(i) - ratioVal(i+1)))
+ break
+ end
+end
+//Calculate Kf
+Kf = 1 + (q*(Kt - 1))
+//Calculate Kd
+Kd = (1/Kf)
+//Calculate Se (N/mm2)
+Se = Ka * Kb * Kc * Kd * Sdash
+//Calculate the bending stress at the fillet sigmab (N/mm2)
+sigmab = (32 * Mb * (10^6))/(%pi * (d^3))
+//Plot S-N Curve
+funcprot(0)
+[a, b, c, z] = SNplot(Sut,Se)
+//Calculate the number of cycles N for given Sf
+Sfval = log10(sigmab)
+Nval = z + (((c - z)/(a - b))*(Sfval - b))
+N = 10^Nval
+//Print results
+printf('\nThe life of the shaft is %f cycles\n',N)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH5/EX5.9.c/functions5_9.sci b/764/CH5/EX5.9.c/functions5_9.sci new file mode 100755 index 000000000..50fc5ca13 --- /dev/null +++ b/764/CH5/EX5.9.c/functions5_9.sci @@ -0,0 +1,89 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
+
+
+//Function for plotting S-N Curve
+function[a, b, c, z]= SNplot(Sut,Se)
+ //Initialise e
+ e = 4
+ //Initialise all given values
+ a = log10(0.9 * Sut)
+ b = log10(Se)
+ c = log10(Nmin)
+ z = log10(Nmax)
+ //Calculate the values of y-coordinate when x = 4 and 5 using linear interpolation
+ for i = 1:1:4
+ if(i == 1)
+ s(i) = c
+ l(i) = a
+ elseif(i == 4)
+ s(i) = z
+ l(i) = b
+ else
+ s(i) = log10(10^e)
+ l(i) = b + (((a - b)/(c - z))*(s(i) - z))
+ e = e + 1
+ end
+ end
+ //Plot S-N Curve
+ y = {l(1), l(2), l(3), l(4)}
+ x = {s(1), s(2), s(3), s(4)}
+ plot(x,y,'-*')
+ plot2d3(x,y)
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+ title('S-N Curve (Example 5.9)')
+ xlabel('log10N')
+ ylabel('log10Sf')
+endfunction
\ No newline at end of file diff --git a/764/CH6/EX6.1.a/data6_1.sci b/764/CH6/EX6.1.a/data6_1.sci new file mode 100755 index 000000000..bddebc07b --- /dev/null +++ b/764/CH6/EX6.1.a/data6_1.sci @@ -0,0 +1,18 @@ +
+//(Power Screws) Example 6.1
+//Number of starts n
+n = 3
+//Nominal diameter of screw d (mm)
+d = 50
+//Pitch of the screw p (mm)
+p = 8
+//Collar outer diameter Do (mm)
+Do = 100
+//Collar inner diameter Di (mm)
+Di = 65
+//Coefficient of friction mu
+mu = 0.15
+//Load to be raised W (kN)
+W = 15
+//Force applied at radius rad (mm)
+rad = 500
diff --git a/764/CH6/EX6.1.b/result6_1.txt b/764/CH6/EX6.1.b/result6_1.txt new file mode 100755 index 000000000..a846f935b --- /dev/null +++ b/764/CH6/EX6.1.b/result6_1.txt @@ -0,0 +1,65 @@ +-->//(Power Screws) Example 6.1
+
+-->//Number of starts n
+
+-->n = 3
+ n =
+
+ 3.
+
+-->//Nominal diameter of screw d (mm)
+
+-->d = 50
+ d =
+
+ 50.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 8
+ p =
+
+ 8.
+
+-->//Collar outer diameter Do (mm)
+
+-->Do = 100
+ Do =
+
+ 100.
+
+-->//Collar inner diameter Di (mm)
+
+-->Di = 65
+ Di =
+
+ 65.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.15
+ mu =
+
+ 0.15
+
+-->//Load to be raised W (kN)
+
+-->W = 15
+ W =
+
+ 15.
+
+-->//Force applied at radius rad (mm)
+
+-->rad = 500
+ rad =
+
+ 500.
+
+
+Torque required to raise the load(Mtt) = 204644.140833 mm
+
+Torque required to lower the load(Mlt) = 87401.514671 mm
+
+Force at 500mm radius required to raise the load(Pi) = 409.288282 N
+
\ No newline at end of file diff --git a/764/CH6/EX6.1.b/solution6_1.sce b/764/CH6/EX6.1.b/solution6_1.sce new file mode 100755 index 000000000..8ea8a4506 --- /dev/null +++ b/764/CH6/EX6.1.b/solution6_1.sce @@ -0,0 +1,34 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate lead of the screw l (mm)
+l = n * p
+//Calculate mean diameter of the screw dm (mm)
+dm = d - (0.5 * p)
+//Calculate lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Calculate angle of repose fi (degree)
+fi = atand(mu)
+//Torque required to rise the load Mt (N-mm)
+Mt = ((W * 1000 * dm)*(tand(fi + alpha)))/2
+//Torque required to overcome collar friction Mtc (N-mm)
+//Assume uniform wear theory
+Mtc = ((mu * W * 1000)*(Do + Di))/4
+//Total torque required to raise the load Mtt (N-mm)
+Mtt = Mt + Mtc
+//Torque required to lower the load Ml (N-mm)
+Ml = ((W * 1000 * dm)*(tand(fi - alpha)))/2
+//Total torque required to lower the load Mlt (N-mm)
+Mlt = Ml + Mtc
+//Force required to raise the load Pi (N)
+Pi = Mtt/rad
+//Print results
+printf('\nTorque required to raise the load(Mtt) = %f mm\n',Mtt)
+printf('\nTorque required to lower the load(Mlt) = %f mm\n',Mlt)
+printf('\nForce at %dmm radius required to raise the load(Pi) = %f N\n',rad,Pi)
diff --git a/764/CH6/EX6.10.a/data6_10.sci b/764/CH6/EX6.10.a/data6_10.sci new file mode 100755 index 000000000..652f39bcc --- /dev/null +++ b/764/CH6/EX6.10.a/data6_10.sci @@ -0,0 +1,29 @@ +
+//(Power Screws) Example 6.10
+//Refer Fig.6.17 on page 204
+//Yield tensile strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 3
+//Punched holes diameter d (mm)
+d = 50
+//Mild steel sheet thickness t (mm)
+t = 1.5
+//Ultimate shear strength of the sheet metal Sus (N/mm2)
+Sus = 375
+//Mass density of balls dense (kg/m3)
+dense = 7280
+//Mean radius of balls Rm (mm)
+Rm = 500
+//Assume screw pitch p (mm)
+p = 8
+//Coefficient of friction mu
+mu = 0.15
+//Minimum lead required lmin (mm)
+lmin = 5 * 4
+//Unit bearing pressure Sb (N/mm2)
+Sb = 18
+//Forward stroke displacement fsd (rad)
+fsd = %pi/2
+//Time required for the forward stroke tf (sec)
+tf = 1
diff --git a/764/CH6/EX6.10.b/result6_10.txt b/764/CH6/EX6.10.b/result6_10.txt new file mode 100755 index 000000000..c9327b0fd --- /dev/null +++ b/764/CH6/EX6.10.b/result6_10.txt @@ -0,0 +1,112 @@ +-->//(Power Screws) Example 6.10
+
+-->//Refer Fig.6.17 on page 204
+
+-->//Yield tensile strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 3
+ fs =
+
+ 3.
+
+-->//Punched holes diameter d (mm)
+
+-->d = 50
+ d =
+
+ 50.
+
+-->//Mild steel sheet thickness t (mm)
+
+-->t = 1.5
+ t =
+
+ 1.5
+
+-->//Ultimate shear strength of the sheet metal Sus (N/mm2)
+
+-->Sus = 375
+ Sus =
+
+ 375.
+
+-->//Mass density of balls dense (kg/m3)
+
+-->dense = 7280
+ dense =
+
+ 7280.
+
+-->//Mean radius of balls Rm (mm)
+
+-->Rm = 500
+ Rm =
+
+ 500.
+
+-->//Assume screw pitch p (mm)
+
+-->p = 8
+ p =
+
+ 8.
+
+-->//Coefficient of friction mu
+
+-->mu = 0.15
+ mu =
+
+ 0.15
+
+-->//Minimum lead required lmin (mm)
+
+-->lmin = 5 * 4
+ lmin =
+
+ 20.
+
+-->//Unit bearing pressure Sb (N/mm2)
+
+-->Sb = 18
+ Sb =
+
+ 18.
+
+-->//Forward stroke displacement fsd (rad)
+
+-->fsd = %pi/2
+ fsd =
+
+ 1.5707963
+
+-->//Time required for the forward stroke tf (sec)
+
+-->tf = 1
+ tf =
+
+ 1.
+
+
+Screw
+
+Nominal diameter of the screw(d) = 50.000000 mm
+
+Core diameter of the screw(dc) = 42.000000 mm
+
+Lead of the screw(l) = 24.000000 mm
+
+Nut
+
+Length of the nut(L) = 72.000000 mm
+
+Mass of each ball(m) = 52.421082 kg
+
+Diameter of each ball(dia) = 239.584467 mm
+
\ No newline at end of file diff --git a/764/CH6/EX6.10.b/solution6_10.sce b/764/CH6/EX6.10.b/solution6_10.sce new file mode 100755 index 000000000..baef0f20f --- /dev/null +++ b/764/CH6/EX6.10.b/solution6_10.sce @@ -0,0 +1,91 @@ +
+//Function to round-up a value such that it is divisible by 10
+function[v] = round_ten(w)
+ v = ceil(w)
+ rem = pmodulo(v,10)
+ if (rem ~= 0) then
+ v = v + (10 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_10.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_10.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate force required to shear the sheet W (N)
+W = (%pi * d * t * Sus)
+//Compressive stress in the screw sigmac (N/mm2)
+sigmac = Syt/fs
+//Core diameter of the screw dc (mm)
+dc = ((4 * W)/(%pi * sigmac))^(1/2)
+dc = ceil(dc)
+//Obtain the correct number of starts for the screw n
+for n = 1:1:%inf
+ //Calculate the lead of the screw l (mm)
+ l = n * p
+ if (l > lmin) then
+ break
+ end
+end
+//Obtain the correct nominal diameter d in multiples of 10 (mm)
+for d = dc:1:%inf
+ d = round_ten(d)
+ //Calculate the mean diameter of the screw dm (mm)
+ dm = d - (0.5 * p)
+ //Calculate the lead angle alpha (degree)
+ alpha = atand(l/(%pi * dm))
+ //Calculate the angle of repose (fi)
+ fi = atand(mu)
+ //Calculate the torque required Mt (N-mm)
+ Mt = (W * dm * tand(fi + alpha))/2
+ //Calculate the new core diameter dcNew (mm)
+ dcNew = d - p
+ //Calculate the stress in the screw CNew (N/mm2)
+ CNew = ((W * 4)/(%pi * (dcNew^2)))
+ //Calculate the torsional stress tau (N/mm2)
+ tau = (16 * Mt)/(%pi * (dcNew^3))
+ //Calculate the maximum shear stress tauMax (N/mm2)
+ tauMax = (((CNew/2)^2) + (tau^2))^(1/2)
+ //Calculate the afctor of safety fsNew
+ fsNew = ((50/100)*Syt)/tauMax
+ if(fsNew > fs)
+ break
+ end
+end
+//Calculate the efficiency of the screw eta (%)
+eta = (tand(alpha)/tand(fi + alpha))*100
+//Calculate the number of threads z
+z = (4 * W)/(%pi * Sb * ((d^2) - (dcNew^2)))
+z = ceil(z)
+//Calculate the length of the nut L (mm)
+L = z * p
+//Calculate the shear stress in the screw tauS (N/mm2)
+to = p/2
+tauS = (W/(%pi * dcNew * to * z))
+//Calculate the shear stress in the nut tauN (N/mm2)
+tauN = (W/(%pi * d * to * z))
+//Calculate the work done by the punch work (J)
+work = (W * (t/2))/1000
+//Work done by balls workB (J)
+workB = work/(eta/100)
+//Calculate the average angular velocity wavg (rad/s)
+wavg = fsd/tf
+//Calculate the maximum angular velocity wmax (rad/s)
+wmax = 2 * wavg
+//Calculate the mass of the one ball m (kg)
+m = ((workB * 2)/(((Rm/1000)^2) * (%pi^2)))/2
+//Calculate the diameter of the ball dia (mm)
+dia = ((m * 6)/(%pi * dense))^(1/3)
+//Print results
+printf('\nScrew\n')
+printf('\nNominal diameter of the screw(d) = %f mm\n',d)
+printf('\nCore diameter of the screw(dcNew) = %f mm\n',dcNew)
+printf('\nLead of the screw(l) = %f mm\n',l)
+printf('\nNut\n')
+printf('\nLength of the nut(L) = %f mm\n',L)
+printf('\nMass of each ball(m) = %f kg\n',m)
+printf('\nDiameter of each ball(dia) = %f mm\n',dia*1000)
diff --git a/764/CH6/EX6.11.a/data6_11.sci b/764/CH6/EX6.11.a/data6_11.sci new file mode 100755 index 000000000..ea74ef059 --- /dev/null +++ b/764/CH6/EX6.11.a/data6_11.sci @@ -0,0 +1,19 @@ +
+//(Power Screws) Example 6.11
+//Refer Fig.6.27 on page 215
+//Force applied by operator P (N)
+P = 100
+//Mean radius R (mm)
+R = 500
+//Coefficient of friction (mu)
+mu = 0.15
+//Nominal diameter of the upper screw dUp (mm)
+dUp = 50
+//Pitch of the upper screw pUp (mm)
+pUp = 12
+//Nominal diameter of the lower screw dLow (mm)
+dLow = 50
+//Pitch of the upper screw pLow (mm)
+pLow = 8
+//Number of starts of both the screws n
+n = 1
diff --git a/764/CH6/EX6.11.b/result6_11.txt b/764/CH6/EX6.11.b/result6_11.txt new file mode 100755 index 000000000..5862265e8 --- /dev/null +++ b/764/CH6/EX6.11.b/result6_11.txt @@ -0,0 +1,65 @@ +-->//(Power Screws) Example 6.11
+
+-->//Refer Fig.6.27 on page 215
+
+-->//Force applied by operator P (N)
+
+-->P = 100
+ P =
+
+ 100.
+
+-->//Mean radius R (mm)
+
+-->R = 500
+ R =
+
+ 500.
+
+-->//Coefficient of friction (mu)
+
+-->mu = 0.15
+ mu =
+
+ 0.15
+
+-->//Nominal diameter of the upper screw dUp (mm)
+
+-->dUp = 50
+ dUp =
+
+ 50.
+
+-->//Pitch of the upper screw pUp (mm)
+
+-->pUp = 12
+ pUp =
+
+ 12.
+
+-->//Nominal diameter of the lower screw dLow (mm)
+
+-->dLow = 50
+ dLow =
+
+ 50.
+
+-->//Pitch of the upper screw pLow (mm)
+
+-->pLow = 8
+ pLow =
+
+ 8.
+
+-->//Number of starts of both the screws n
+
+-->n = 1
+ n =
+
+ 1.
+
+
+Load that can be raised(W) = 6722.752316 N
+
+Efficiency of the screw jack(eta) = 8.559674 percent
+
\ No newline at end of file diff --git a/764/CH6/EX6.11.b/solution6_11.sce b/764/CH6/EX6.11.b/solution6_11.sce new file mode 100755 index 000000000..3c4104da0 --- /dev/null +++ b/764/CH6/EX6.11.b/solution6_11.sce @@ -0,0 +1,40 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_11.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_11.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//For upper screw
+//Calculate the lead lUp (mm)
+lUp = n * pUp
+//Calculate the mean diameter dmUp (mm)
+dmUp = dUp - (0.5 * pUp)
+//Calculate the lead angle alphaUp (degree)
+alphaUp = atand(lUp/(%pi * dmUp))
+//Calculate the angle of repose fi (degree)
+fi = atand(mu)
+//Assume the load to be raised 1N W
+W = 1
+//Calculate the torque required Mt1 (N-mm)
+Mt1 = (W * dmUp * tand(alphaUp + fi))/2
+//For lower screw
+//Calculate the lead lLow (mm)
+lLow = n * pLow
+//Calculate the mean diameter dmLow (mm)
+dmLow = dLow - (0.5 * pLow)
+//Calculate the lead angle alphaLow (degree)
+alphaLow = atand(lLow/(%pi * dmLow))
+//Calculate the torque required Mt2 (N-mm)
+Mt2 = (W * dmLow * tand(fi - alphaLow))/2
+//Total external torque required MTotal (N-mm)
+MTotal = P * R
+//Calculate the actual load that can be raised W (N)
+W = MTotal/(Mt1 + Mt2)
+//Calculate the efficiency of the screw jack eta (%)
+eta = ((4 * W)/(2 * %pi * MTotal))*100
+//Print results
+printf('\nLoad that can be raised(W) = %f N\n',W)
+printf('\nEfficiency of the screw jack(eta) = %f percent\n',eta)
diff --git a/764/CH6/EX6.2.a/data6_2.sci b/764/CH6/EX6.2.a/data6_2.sci new file mode 100755 index 000000000..d7097aaf5 --- /dev/null +++ b/764/CH6/EX6.2.a/data6_2.sci @@ -0,0 +1,15 @@ +
+//(Power Screws) Example 6.1
+//Number of threads n
+n = 2
+//Load to be raised W (kN)
+W = 300
+//Nominal diameter of the screw d (mm)
+d = 100
+//Pitch of the screw p (mm)
+p = 12
+//Coefficient of friction at the screw threads mu
+mu = 0.15
+//For ISO Metric Trapezoidal threads theta (degree)
+theta = 15
+//Neglect collar friction
diff --git a/764/CH6/EX6.2.b/result6_2.txt b/764/CH6/EX6.2.b/result6_2.txt new file mode 100755 index 000000000..55a66e83a --- /dev/null +++ b/764/CH6/EX6.2.b/result6_2.txt @@ -0,0 +1,53 @@ +-->//(Power Screws) Example 6.1
+
+-->//Number of threads n
+
+-->n = 2
+ n =
+
+ 2.
+
+-->//Load to be raised W (kN)
+
+-->W = 300
+ W =
+
+ 300.
+
+-->//Nominal diameter of the screw d (mm)
+
+-->d = 100
+ d =
+
+ 100.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 12
+ p =
+
+ 12.
+
+-->//Coefficient of friction at the screw threads mu
+
+-->mu = 0.15
+ mu =
+
+ 0.15
+
+-->//For ISO Metric Trapezoidal threads theta (degree)
+
+-->theta = 15
+ theta =
+
+ 15.
+
+-->//Neglect collar friction
+
+
+Torque required to raise the load(Mt) = 3378.159205 N-m
+
+Torque required to lower the load(Ml) = 1030.685630 N-m
+
+Efficiency of screw(eta) = 33.921302 percent
+
\ No newline at end of file diff --git a/764/CH6/EX6.2.b/solution6_2.sce b/764/CH6/EX6.2.b/solution6_2.sce new file mode 100755 index 000000000..e4acd876b --- /dev/null +++ b/764/CH6/EX6.2.b/solution6_2.sce @@ -0,0 +1,25 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate lead of the screw l (mm)
+l = 2 * p
+//Calculate mean diameter dm (mm)
+dm = d - (0.5 * p)
+//Calculate lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Calculate the torque required to raise the load Mt (N-m)
+Mt = ((W * 1000 * dm)*((mu * secd(theta)) + (tand(alpha))))/(2 * (1 - (mu * secd(theta) * tand(alpha))))
+//Torque required to lower the load Ml (N-m)
+Ml = ((W * 1000 * dm)*((mu * secd(theta)) - (tand(alpha))))/(2 * (1 + (mu * secd(theta) * tand(alpha))))
+//Calculate the efficiency of screw eta (%)
+eta = ((tand(alpha)*(1 - (mu * secd(theta) * tand(alpha))))/((mu * secd(theta)) + tand(alpha)))*100
+//Print results
+printf('\nTorque required to raise the load(Mt) = %f N-m\n',Mt/1000)
+printf('\nTorque required to lower the load(Ml) = %f N-m\n',Ml/1000)
+printf('\nEfficiency of screw(eta) = %f percent\n',eta)
diff --git a/764/CH6/EX6.3.a/data6_3.sci b/764/CH6/EX6.3.a/data6_3.sci new file mode 100755 index 000000000..a094da233 --- /dev/null +++ b/764/CH6/EX6.3.a/data6_3.sci @@ -0,0 +1,23 @@ +
+//(Power Screws) Example 6.3
+//Refer Fig. 6.12 on page 197
+//Number of starts n
+n = 1
+//Nominal diameter of the screw d (mm)
+d = 22
+//Pitch of the screw p (mm)
+p = 5
+//Outer diameter of the friction collar Do (mm)
+Do = 55
+//Inner diameter of the friction collar Di (mm)
+Di = 45
+//Coefficient of friction for thread mu1
+mu1 = 0.15
+//Coefficient of friction for collar mu1
+mu2 = 0.17
+//Force exerted by the machinist P (N)
+P = 125
+//Mean radius at which the force is applied rad (mm)
+rad = 150
+//Length of the handle dist (mm)
+dist = 150
diff --git a/764/CH6/EX6.3.b/result6_3.txt b/764/CH6/EX6.3.b/result6_3.txt new file mode 100755 index 000000000..f16ac4662 --- /dev/null +++ b/764/CH6/EX6.3.b/result6_3.txt @@ -0,0 +1,79 @@ +-->//(Power Screws) Example 6.3
+
+-->//Refer Fig. 6.12 on page 197
+
+-->//Number of starts n
+
+-->n = 1
+ n =
+
+ 1.
+
+-->//Nominal diameter of the screw d (mm)
+
+-->d = 22
+ d =
+
+ 22.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 5
+ p =
+
+ 5.
+
+-->//Outer diameter of the friction collar Do (mm)
+
+-->Do = 55
+ Do =
+
+ 55.
+
+-->//Inner diameter of the friction collar Di (mm)
+
+-->Di = 45
+ Di =
+
+ 45.
+
+-->//Coefficient of friction for thread mu1
+
+-->mu1 = 0.15
+ mu1 =
+
+ 0.15
+
+-->//Coefficient of friction for collar mu1
+
+-->mu2 = 0.17
+ mu2 =
+
+ 0.17
+
+-->//Force exerted by the machinist P (N)
+
+-->P = 125
+ P =
+
+ 125.
+
+-->//Mean radius at which the force is applied rad (mm)
+
+-->rad = 150
+ rad =
+
+ 150.
+
+-->//Length of the handle dist (mm)
+
+-->dist = 150
+ dist =
+
+ 150.
+
+
+Clamping force developed between the jaws(P) = 2868.610857 N
+
+Overall efficiency of clamp(eta) = 12.174763 percent
+
\ No newline at end of file diff --git a/764/CH6/EX6.3.b/solution6_3.sce b/764/CH6/EX6.3.b/solution6_3.sce new file mode 100755 index 000000000..b50d7d732 --- /dev/null +++ b/764/CH6/EX6.3.b/solution6_3.sce @@ -0,0 +1,33 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate lead of the screw l (mm)
+l = n * p
+//Calculate the mean diameter of the screw dm (mm)
+dm = d - (0.5 * p)
+//Calculate the lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Assume the clamping force to be 1N W
+W = 1
+//Calculate angle of repose for the thread fi1 (degree)
+fi1 = atand(mu1)
+//Calculate torque required Mt (N-mm)
+Mt = (W * dm * tand(fi1 + alpha))/2
+//Calculate torque required to overcome collar friction Mtc (N-mm)
+//Apply uniform-wear theory
+Mtc = ((mu2 * W)*(Do + Di))/4
+//Total external torque applied to the handle MTotal (N-mm)
+MTotal = P * dist
+//Calculate the actual clampng force W (N)
+W = MTotal/(Mt + Mtc)
+//Calculate overall efficiency of the clamp eta (%)
+eta = ((W * l)/(2 * %pi * MTotal))*100
+//Print results
+printf('\nClamping force developed between the jaws(P) = %f N\n',W)
+printf('\nOverall efficiency of clamp(eta) = %f percent\n',eta)
diff --git a/764/CH6/EX6.4.a/data6_4.sci b/764/CH6/EX6.4.a/data6_4.sci new file mode 100755 index 000000000..26442fd32 --- /dev/null +++ b/764/CH6/EX6.4.a/data6_4.sci @@ -0,0 +1,25 @@ +
+//(Power Screws) Example 6.4
+//Refer Fig. 6.13 on page 198
+//Number of starts of the screw n
+n = 1
+//Outer diameter of the screw d (mm)
+d = 40
+//Pitch of the screw p (mm)
+p = 7
+//Weight of the gate w (kN)
+w = 5
+//Frictional resistance in axial direction fr (kN)
+fr = 2
+//Inner diameter of the thrust washer Di (mm)
+Di = 40
+//Outer diameter of the thrust washer Do (mm)
+Do = 80
+//Coefficient of friction at the threads mu1
+mu1 = 0.15
+//Coefficient of friction at the washer mu2
+mu2 = 0.12
+//Radius at which the force is exerted rad (mm)
+rad = 500
+//Permissible bearing pressure Sb (N/mm2)
+Sb = 5
diff --git a/764/CH6/EX6.4.b/result6_4.txt b/764/CH6/EX6.4.b/result6_4.txt new file mode 100755 index 000000000..d4b76cae9 --- /dev/null +++ b/764/CH6/EX6.4.b/result6_4.txt @@ -0,0 +1,90 @@ +-->//(Power Screws) Example 6.4
+
+-->//Refer Fig. 6.13 on page 198
+
+-->//Number of starts of the screw n
+
+-->n = 1
+ n =
+
+ 1.
+
+-->//Outer diameter of the screw d (mm)
+
+-->d = 40
+ d =
+
+ 40.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 7
+ p =
+
+ 7.
+
+-->//Weight of the gate w (kN)
+
+-->w = 5
+ w =
+
+ 5.
+
+-->//Frictional resistance in axial direction fr (kN)
+
+-->fr = 2
+ fr =
+
+ 2.
+
+-->//Inner diameter of the thrust washer Di (mm)
+
+-->Di = 40
+ Di =
+
+ 40.
+
+-->//Outer diameter of the thrust washer Do (mm)
+
+-->Do = 80
+ Do =
+
+ 80.
+
+-->//Coefficient of friction at the threads mu1
+
+-->mu1 = 0.15
+ mu1 =
+
+ 0.15
+
+-->//Coefficient of friction at the washer mu2
+
+-->mu2 = 0.12
+ mu2 =
+
+ 0.12
+
+-->//Radius at which the force is exerted rad (mm)
+
+-->rad = 500
+ rad =
+
+ 500.
+
+-->//Permissible bearing pressure Sb (N/mm2)
+
+-->Sb = 5
+ Sb =
+
+ 5.
+
+
+Maximum force exerted by each arm when the gate is being raised(P1) = 52.410253 N
+
+Maximum force exerted by each arm when the gate is being lowered(P2) = 15.626055 N
+
+Efficiency of the gate mechanism(eta) = 14.879898 percent
+
+Length of the nut(L) = 28.000000 mm
+
\ No newline at end of file diff --git a/764/CH6/EX6.4.b/solution6_4.sce b/764/CH6/EX6.4.b/solution6_4.sce new file mode 100755 index 000000000..1f1379699 --- /dev/null +++ b/764/CH6/EX6.4.b/solution6_4.sce @@ -0,0 +1,51 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the lead of the screw l (mm)
+l = n * p
+//Calculate mean diameter of the screw dm (mm)
+dm = d - (0.5 * p)
+//Calculate the lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Calculate the angle of repose fi (degree)
+fi = atand(mu1)
+//Axial force on the screw while raising the gate W1 (N)
+W1 = (w * 1000) + (fr *1000)
+//External torque applied to raise the gate Mt (N-mm)
+Mt = ((W1 * dm)*(tand(fi + alpha)))/2
+//Calculate the torque required to overcome washer friction Mtc (N-mm)
+Mtc = (mu2 * W1 * (Do + Di))/4
+//Calculate total torque required to raise the gate Mraise (N-mm)
+Mraise = Mt + Mtc
+//Calculate force exerted by each arm while raising the gate P1 (N)
+P1 = Mraise/(2 * rad)
+//Net axial force on the screw while lowering the gate W2 (N)
+W2 = (w * 1000) - (fr * 1000)
+//External torque applied to lower the gate Ml (N-mm)
+Ml = (W2 * dm * tand(fi - alpha))/2
+//Calculate the torque required to overcome washer friction Mtc (N-mm)
+Mlc = (mu2 * W2 * (Do + Di))/4
+//Calculate total torque required to lower the gate Mlower (N-mm)
+Mlower = Ml + Mlc
+//Calculate force exerted by each arm while lowering the gate P2 (N)
+P2 = Mlower/(2 * rad)
+//Calculate the efficiency of the gate mechanism eta (%)
+eta = (W1 * l)/(2 * %pi * Mraise)
+//Calculate the core diameter of the screw dc (mm)
+dc = d - p
+//Calculate the number of threads z
+z = (4 * W1)/(%pi * Sb * ((d^2) - (dc^2)))
+z = ceil(z)
+//Calculate the length of the nut L (mm)
+L = z * p
+//Print results
+printf('\nMaximum force exerted by each arm when the gate is being raised(P1) = %f N\n',P1)
+printf('\nMaximum force exerted by each arm when the gate is being lowered(P2) = %f N\n',P2)
+printf('\nEfficiency of the gate mechanism(eta) = %f percent\n',eta*100)
+printf('\nLength of the nut(L) = %f mm\n',L)
diff --git a/764/CH6/EX6.5.a/data6_5.sci b/764/CH6/EX6.5.a/data6_5.sci new file mode 100755 index 000000000..0a034ac63 --- /dev/null +++ b/764/CH6/EX6.5.a/data6_5.sci @@ -0,0 +1,19 @@ +
+//(Power Screws) Example 6.5
+//Refer Fig.6.14 on page 199
+//Number of starts on the screw n
+n = 1
+//Nominal diameter of the screw d (mm)
+d = 80
+//Pitch of the screw p (mm)
+p = 10
+//Maximum axial force to be exerted by the screw W (kN)
+W = 10
+//Mean radius of the friction collar rm (mm)
+rm = 30
+//Axial length of the nut L (mm)
+L = 40
+//Coefficient of friction at the threads and collar mu
+mu = 0.12
+//Mean diameter of the rim of the handwheel D (mm)
+D = 500
diff --git a/764/CH6/EX6.5.b/result6_5.txt b/764/CH6/EX6.5.b/result6_5.txt new file mode 100755 index 000000000..afba7364c --- /dev/null +++ b/764/CH6/EX6.5.b/result6_5.txt @@ -0,0 +1,67 @@ +-->//(Power Screws) Example 6.5
+
+-->//Refer Fig.6.14 on page 199
+
+-->//Number of starts on the screw n
+
+-->n = 1
+ n =
+
+ 1.
+
+-->//Nominal diameter of the screw d (mm)
+
+-->d = 80
+ d =
+
+ 80.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 10
+ p =
+
+ 10.
+
+-->//Maximum axial force to be exerted by the screw W (kN)
+
+-->W = 10
+ W =
+
+ 10.
+
+-->//Mean radius of the friction collar rm (mm)
+
+-->rm = 30
+ rm =
+
+ 30.
+
+-->//Axial length of the nut L (mm)
+
+-->L = 40
+ L =
+
+ 40.
+
+-->//Coefficient of friction at the threads and collar mu
+
+-->mu = 0.12
+ mu =
+
+ 0.12
+
+-->//Mean diameter of the rim of the handwheel D (mm)
+
+-->D = 500
+ D =
+
+ 500.
+
+
+Force exerted at the rim to drive the screw(P) = 388.909290 N
+
+Efficiency of the straightner(eta) = 16.369364 percent
+
+Bearing pressure on the threads in the nut(Sb) = 2.122066 N/mm2
+
\ No newline at end of file diff --git a/764/CH6/EX6.5.b/solution6_5.sce b/764/CH6/EX6.5.b/solution6_5.sce new file mode 100755 index 000000000..6e9fe8c30 --- /dev/null +++ b/764/CH6/EX6.5.b/solution6_5.sce @@ -0,0 +1,37 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_5.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the lead of the screw l (mm)
+l = n * p
+//Calculate the mean diameter of the screw dm (mm)
+dm = d - (0.5 * p)
+//Calculate the lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Calculate the angle of repose fi (degree)
+fi = atand(mu)
+//Calculate the torque required Mt (N-mm)
+Mt = ((W * 1000 * dm)*(tand(fi + alpha)))/2
+//Calculate the torque required to overcome the collar friction Mtc (N-mm)
+Mtc = ((mu * W * 1000)*(4 * rm))/4
+//Calculate the total external torque to be applied MTotal (N-mm)
+MTotal = Mt + Mtc
+//Hand force exerted at the hand wheel P (N)
+P = MTotal/(D/2)
+//Calculate the efficiency of the straightner eta (%)
+eta = ((W * 1000 * l)/(2 * %pi * MTotal))*100
+//Calculate the number of threads z
+z = L/p
+//Calculate the core diameter of the screw dc (mm)
+dc = d - p
+//Calculate the bearing pressure on threads in nut Sb (N/mm2)
+Sb = (4 * W * 1000)/(%pi * z * ((d^2) - (dc^2)))
+//Print results
+printf('\nForce exerted at the rim to drive the screw(P) = %f N\n',P)
+printf('\nEfficiency of the straightner(eta) = %f percent\n',eta)
+printf('\nBearing pressure on the threads in the nut(Sb) = %f N/mm2\n',Sb)
diff --git a/764/CH6/EX6.6.a/data6_6.sci b/764/CH6/EX6.6.a/data6_6.sci new file mode 100755 index 000000000..4cf335385 --- /dev/null +++ b/764/CH6/EX6.6.a/data6_6.sci @@ -0,0 +1,22 @@ +
+//(Power Screws) Example 6.6
+//Number of starts n
+n = 1
+//Nominal diameter of the screw d (mm)
+d = 52
+//Pitch of the screw p (mm)
+p = 8
+//Outer diameter of the friction collar Do (mm)
+Do = 100
+//Inner diameter of the friction collar Di (mm)
+Di = 60
+//Coefficient of friction for thread mu1
+mu1 = 0.15
+//Coefficient of friction for collar mu1
+mu2 = 0.12
+//Axial force to be exerted W (kN)
+W = 2
+//Lead screw rpm N
+N = 30
+//For ISO Metric Trapezoidal threads theta (degree)
+theta = 15
diff --git a/764/CH6/EX6.6.b/result6_6.txt b/764/CH6/EX6.6.b/result6_6.txt new file mode 100755 index 000000000..18377f5e8 --- /dev/null +++ b/764/CH6/EX6.6.b/result6_6.txt @@ -0,0 +1,77 @@ +-->//(Power Screws) Example 6.6
+
+-->//Number of starts n
+
+-->n = 1
+ n =
+
+ 1.
+
+-->//Nominal diameter of the screw d (mm)
+
+-->d = 52
+ d =
+
+ 52.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 8
+ p =
+
+ 8.
+
+-->//Outer diameter of the friction collar Do (mm)
+
+-->Do = 100
+ Do =
+
+ 100.
+
+-->//Inner diameter of the friction collar Di (mm)
+
+-->Di = 60
+ Di =
+
+ 60.
+
+-->//Coefficient of friction for thread mu1
+
+-->mu1 = 0.15
+ mu1 =
+
+ 0.15
+
+-->//Coefficient of friction for collar mu1
+
+-->mu2 = 0.12
+ mu2 =
+
+ 0.12
+
+-->//Axial force to be exerted W (kN)
+
+-->W = 2
+ W =
+
+ 2.
+
+-->//Lead screw rpm N
+
+-->N = 30
+ N =
+
+ 30.
+
+-->//For ISO Metric Trapezoidal threads theta (degree)
+
+-->theta = 15
+ theta =
+
+ 15.
+
+
+Power required to drive the lead screw(kW) = 0.061838 kW
+
+Efficiency of the screw(eta) = 12.937099 percent
+
\ No newline at end of file diff --git a/764/CH6/EX6.6.b/solution6_6.sce b/764/CH6/EX6.6.b/solution6_6.sce new file mode 100755 index 000000000..cae3141e7 --- /dev/null +++ b/764/CH6/EX6.6.b/solution6_6.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate lead of the screw l (mm)
+l = n * p
+//Calculate the mean diameter of the screw dm (mm)
+dm = d - (0.5 * p)
+//Calculate the lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Calculate the torque required Mt (N-mm)
+Mt = ((W * 1000 * dm)*((mu1 * secd(theta)) + tand(alpha)))/(2 * (1 - (mu1 * secd(theta) * tand(alpha))))
+//Calculate the torque required to overcome collar friction Mtc (N-mm)
+//Assume uniform-wear theory
+Mtc = ((mu2 * W * 1000)*(Do + Di))/4
+//Calculate total torque required to drive the lead screw MTotal (N-mm)
+MTotal = Mt + Mtc
+//Calculate power required to drive the lead screw kW
+kW = (2 * %pi * N * MTotal)/(60 * (10^6))
+//Calculate efficiency of the screw eta (%)
+eta = ((W * 1000 * l)/(2 * %pi * MTotal))*100
+//Print results
+printf('\nPower required to drive the lead screw(kW) = %f kW\n',kW)
+printf('\nEfficiency of the screw(eta) = %f percent\n',eta)
diff --git a/764/CH6/EX6.7.a/data6_7.sci b/764/CH6/EX6.7.a/data6_7.sci new file mode 100755 index 000000000..23d60dfca --- /dev/null +++ b/764/CH6/EX6.7.a/data6_7.sci @@ -0,0 +1,16 @@ +
+//(Power Screws) Example 6.7
+//Speed of the tool holder v (m/min)
+v = 5
+//Number of starts of the screw n
+n = 1
+//Nominal diameter of the screw d (mm)
+d = 48
+//Pitch of the screw p (mm)
+p = 8
+//Force exerted by operating nut W (N)
+W = 500
+//Mean radius of the friction collar rm (mm)
+rm = 40
+//Coefficient of friction at thread and collar surfaces mu
+mu = 0.15
diff --git a/764/CH6/EX6.7.b/result6_7.txt b/764/CH6/EX6.7.b/result6_7.txt new file mode 100755 index 000000000..b92ae125b --- /dev/null +++ b/764/CH6/EX6.7.b/result6_7.txt @@ -0,0 +1,56 @@ +-->//(Power Screws) Example 6.7
+
+-->//Speed of the tool holder v (m/min)
+
+-->v = 5
+ v =
+
+ 5.
+
+-->//Number of starts of the screw n
+
+-->n = 1
+ n =
+
+ 1.
+
+-->//Nominal diameter of the screw d (mm)
+
+-->d = 48
+ d =
+
+ 48.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 8
+ p =
+
+ 8.
+
+-->//Force exerted by operating nut W (N)
+
+-->W = 500
+ W =
+
+ 500.
+
+-->//Mean radius of the friction collar rm (mm)
+
+-->rm = 40
+ rm =
+
+ 40.
+
+-->//Coefficient of friction at thread and collar surfaces mu
+
+-->mu = 0.15
+ mu =
+
+ 0.15
+
+
+The power required to drive the screw(kW) = 0.347319 kW
+
+Efficiency of the mechanism(eta) = 11.996655 percent
+
\ No newline at end of file diff --git a/764/CH6/EX6.7.b/solution6_7.sce b/764/CH6/EX6.7.b/solution6_7.sce new file mode 100755 index 000000000..ecc077336 --- /dev/null +++ b/764/CH6/EX6.7.b/solution6_7.sce @@ -0,0 +1,32 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate lead of the screw l (mm)
+l = n * p
+//Calculate the mean diameter of the screw dm (mm)
+dm = d - (0.5 * p)
+//Calculate the lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Calculate the angle of repose fi (degree)
+fi = atand(mu)
+//Calculate the torque required Mt (N-mm)
+Mt = (W * dm * tand(fi + alpha))/2
+//Calculate the torque applied to overcome the friction at collar surface Mtc (N-mm)
+Mtc = (mu * W * rm)
+//Calculate the total external torque required MTotal (N-mm)
+MTotal = Mt + Mtc
+//Calculate the rpm of the screw N
+N = (v * 1000)/p
+//Calculate the power required to drive the screw kW
+kW = (2 * %pi * N * MTotal)/(60 * (10^6))
+//Calculate the efficiency of the mechanism eta (%)
+eta = ((W * l)/(2 * %pi * MTotal))*100
+//Print results
+printf('\nThe power required to drive the screw(kW) = %f kW\n',kW)
+printf('\nEfficiency of the mechanism(eta) = %f percent\n',eta)
diff --git a/764/CH6/EX6.8.a/data6_8.sci b/764/CH6/EX6.8.a/data6_8.sci new file mode 100755 index 000000000..3e1f2cd8a --- /dev/null +++ b/764/CH6/EX6.8.a/data6_8.sci @@ -0,0 +1,27 @@ +
+//(Power Screws) Example 6.8
+//Refer Fig.6.15 on page 202
+//Maximum force exerted by the clamp W (kN)
+W = 5
+//Force exerted by the operator F (N)
+F = 250
+//Yield tensile strength of 45C8 Syt (N/mm2)
+Syt = 330
+//Outer diameter of the collar Do (mm)
+Do = 17
+//Inner diameter of the collar Di (mm)
+Di = 6
+//Factor of safety fs
+fs = 2
+//Number of starts of the screw n
+n = 2
+//Coefficient of friction at threads mu1
+mu1 = 0.15
+//Coefficient of friction at collar mu2
+mu2 = 0.17
+//Distance between the handwheel and the frame-top dist (mm)
+dist = 275
+//Assume screw pitch p (mm)
+p = 5
+//Unit bearing pressure Sb (N/mm2)
+Sb = 15
diff --git a/764/CH6/EX6.8.b/result6_8.txt b/764/CH6/EX6.8.b/result6_8.txt new file mode 100755 index 000000000..d30a98614 --- /dev/null +++ b/764/CH6/EX6.8.b/result6_8.txt @@ -0,0 +1,103 @@ +-->//(Power Screws) Example 6.8
+
+-->//Refer Fig.6.15 on page 202
+
+-->//Maximum force exerted by the clamp W (kN)
+
+-->W = 5
+ W =
+
+ 5.
+
+-->//Force exerted by the operator F (N)
+
+-->F = 250
+ F =
+
+ 250.
+
+-->//Yield tensile strength of 45C8 Syt (N/mm2)
+
+-->Syt = 330
+ Syt =
+
+ 330.
+
+-->//Outer diameter of the collar Do (mm)
+
+-->Do = 17
+ Do =
+
+ 17.
+
+-->//Inner diameter of the collar Di (mm)
+
+-->Di = 6
+ Di =
+
+ 6.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Number of starts of the screw n
+
+-->n = 2
+ n =
+
+ 2.
+
+-->//Coefficient of friction at threads mu1
+
+-->mu1 = 0.15
+ mu1 =
+
+ 0.15
+
+-->//Coefficient of friction at collar mu2
+
+-->mu2 = 0.17
+ mu2 =
+
+ 0.17
+
+-->//Distance between the handwheel and the frame-top dist (mm)
+
+-->dist = 275
+ dist =
+
+ 275.
+
+-->//Assume screw pitch p (mm)
+
+-->p = 5
+ p =
+
+ 5.
+
+-->//Unit bearing pressure Sb (N/mm2)
+
+-->Sb = 15
+ Sb =
+
+ 15.
+
+
+Screw
+
+Nominal diameter of the screw(d) = 22.000000 mm
+
+Core diameter of the screw(dcNew) = 17.000000 mm
+
+Nut
+
+Length of the nut(L) = 15.000000 mm
+
+Number of threads(z) = 3.000000
+
+Radius of the ball hand(Rm) = 82.164119 mm
+
\ No newline at end of file diff --git a/764/CH6/EX6.8.b/solution6_8.sce b/764/CH6/EX6.8.b/solution6_8.sce new file mode 100755 index 000000000..65238123e --- /dev/null +++ b/764/CH6/EX6.8.b/solution6_8.sce @@ -0,0 +1,71 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_8.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_8.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Compressive stress at the intermediate screw portion sigmac (N/mm2)
+sigmac = Syt/fs
+//Calculate the core diameter of the screw dc (mm)
+dc = ((4 * W * 1000)/(%pi * sigmac))^(1/2)
+//Round-up dc
+dc = ceil(dc)
+//Calculate the angle of repose fi (degree)
+fi = atand(mu1)
+//Calculate lead of the screw l (mm)
+l = n * p
+//Calculate the torque required to overcome collar friction Mtc (N-mm)
+Mtc = ((mu2 * W * 1000)*(Do + Di))/4
+//Calculate the maximum bending moment Mb (N-mm)
+Mb = (F * dist)
+//Obtain the correct value of nominal diameter d (mm)
+for d = dc:1:%inf
+ //Calculate the mean diameter of the screw dm (mm)
+ dm = d - (0.5 * p)
+ //Calculate the lead angle alpha (degree)
+ alpha = atand(l/(%pi * dm))
+ //Calculate the torque required Mt (N-mm)
+ Mt = (W * 1000 * dm * tand(fi + alpha))/2
+ //Calculate the total torque applied MTotal (N-mm)
+ MTotal = Mt + Mtc
+ //Calculate the new core diameter dcNew (mm)
+ dcNew = d - p
+ //Calculate the torsional shear stress at A-A tauA (N/mm2)
+ tauA = (16 * MTotal)/(%pi * (dcNew^3))
+ //Calculate the bending stress due to hand force sigmab (N/mm2)
+ sigmab = (32 * Mb)/(%pi * (dcNew^3))
+ //Calculate the maximum shear stress tauAMax (N/mm2)
+ tauAMax = ((((sigmab/2)^2) + (tauA^2)))^(1/2)
+ //Calculate the factor of safety fsA
+ fsA = ((50/100) * Syt)/tauAMax
+ //Calculate the torsional stress at section B-B tauB (N/mm2)
+ tauB = (16 * Mtc)/(%pi * (dcNew^3))
+ //Calculate the direct compressive stress due to clamping force Comp (N/mm2)
+ Comp = (W * 1000 * 4)/(%pi * (dcNew^2))
+ //Calculate the maximum shear stress tauBMax (N/mm2)
+ tauBMax = (((Comp/2)^2) + (tauB^2))^(1/2)
+ //Calculate the factor of safety fsB
+ fsB = ((50/100)*Syt)/tauBMax
+ //Check the factor of safety condition
+ if(fsB > fs & fsA > fs)
+ break
+ end
+end
+//Calculate the number of threads z
+z = (4 * W * 1000)/(%pi * Sb * ((d^2) - (dcNew^2)))
+z = ceil(z)
+//Calculate the length of the nut L (mm)
+L = z * p
+//Calculate the radius of the ball hand Rm (mm)
+Rm = MTotal/F
+//Print results
+printf('\nScrew\n')
+printf('\nNominal diameter of the screw(d) = %f mm\n',d)
+printf('\nCore diameter of the screw(dcNew) = %f mm\n',dcNew)
+printf('\nNut\n')
+printf('\nLength of the nut(L) = %f mm\n',L)
+printf('\nNumber of threads(z) = %f\n',z)
+printf('\nRadius of the ball hand(Rm) = %f mm\n',Rm)
diff --git a/764/CH6/EX6.9.a/data6_9.sci b/764/CH6/EX6.9.a/data6_9.sci new file mode 100755 index 000000000..53206157c --- /dev/null +++ b/764/CH6/EX6.9.a/data6_9.sci @@ -0,0 +1,19 @@ +
+//(Power Screws) Example 6.9
+//Refer Fig.6.16 on page 203
+//Number of starts on the screw n
+n = 1
+//Nominal diameter of the screw d (mm)
+d = 22
+//Pitch of the screw p (mm)
+p = 5
+//Coeffecient of friction on the threads and collar mu
+mu = 0.15
+//Mean radius of the friction collar rm (mm)
+rm = 15
+//Clamp capacity W (N)
+W = 750
+//Yield tensile strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Force exerted by the operator P (N)
+P = 20
diff --git a/764/CH6/EX6.9.b/result6_9.txt b/764/CH6/EX6.9.b/result6_9.txt new file mode 100755 index 000000000..9037f819b --- /dev/null +++ b/764/CH6/EX6.9.b/result6_9.txt @@ -0,0 +1,67 @@ +-->//(Power Screws) Example 6.9
+
+-->//Refer Fig.6.16 on page 203
+
+-->//Number of starts on the screw n
+
+-->n = 1
+ n =
+
+ 1.
+
+-->//Nominal diameter of the screw d (mm)
+
+-->d = 22
+ d =
+
+ 22.
+
+-->//Pitch of the screw p (mm)
+
+-->p = 5
+ p =
+
+ 5.
+
+-->//Coeffecient of friction on the threads and collar mu
+
+-->mu = 0.15
+ mu =
+
+ 0.15
+
+-->//Mean radius of the friction collar rm (mm)
+
+-->rm = 15
+ rm =
+
+ 15.
+
+-->//Clamp capacity W (N)
+
+-->W = 750
+ W =
+
+ 750.
+
+-->//Yield tensile strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Force exerted by the operator P (N)
+
+-->P = 20
+ P =
+
+ 20.
+
+
+Torque required to tighten the clamp(MTotal) = 3402.198556 N-mm
+
+Length of the handle(a) = 170.109928 mm
+
+Diameter of the handle(dh) = 4.424864 mm
+
\ No newline at end of file diff --git a/764/CH6/EX6.9.b/solution6_9.sce b/764/CH6/EX6.9.b/solution6_9.sce new file mode 100755 index 000000000..79cbcd208 --- /dev/null +++ b/764/CH6/EX6.9.b/solution6_9.sce @@ -0,0 +1,33 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution6_9.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data6_9.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the lead of the screw l (mm)
+l = n * p
+//Calculate the mean diameter of the screw dm (mm)
+dm = d - (0.5 * p)
+//Calculate the lead angle alpha (degree)
+alpha = atand(l/(%pi * dm))
+//Calculate the angle of repose fi (degree)
+fi = atand(mu)
+//Calculate the torque required Mt (N-mm)
+Mt = (W * dm * tand(fi + alpha))/2
+//Calculate the torque required to overcome the collar friction Mtc (N-mm)
+Mtc = (mu * W * rm)
+//Calculate the total external torque required MTotal (N-mm)
+MTotal = Mt + Mtc
+//Calculate the length of the handle a (mm)
+a = MTotal/P
+//Calculate the maximum bending moment near the screw Mb (N-mm)
+Mb = P * a
+//Calculate the diameter of the handle dh (mm)
+dh = ((32 * Mb)/(Syt * %pi))^(1/3)
+//Print results
+printf('\nTorque required to tighten the clamp(MTotal) = %f N-mm\n',MTotal)
+printf('\nLength of the handle(a) = %f mm\n',a)
+printf('\nDiameter of the handle(dh) = %f mm\n',dh)
diff --git a/764/CH7/EX7.1.a/data7_1.sci b/764/CH7/EX7.1.a/data7_1.sci new file mode 100755 index 000000000..ed5eb7415 --- /dev/null +++ b/764/CH7/EX7.1.a/data7_1.sci @@ -0,0 +1,9 @@ +
+//(Threaded Joints) Example 7.1
+//Refer Fig.7.13 on page 232
+//Weight of electric motor P (kN)
+P = 10
+//Yield tensile strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 6
diff --git a/764/CH7/EX7.1.b/result7_1.txt b/764/CH7/EX7.1.b/result7_1.txt new file mode 100755 index 000000000..196e3188c --- /dev/null +++ b/764/CH7/EX7.1.b/result7_1.txt @@ -0,0 +1,28 @@ +-->//(Threaded Joints) Example 7.1
+
+-->//Refer Fig.7.13 on page 232
+
+-->//Weight of electric motor P (kN)
+
+-->P = 10
+ P =
+
+ 10.
+
+-->//Yield tensile strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 6
+ fs =
+
+ 6.
+
+
+Standard size of the bolt is M20
+
\ No newline at end of file diff --git a/764/CH7/EX7.1.b/solution7_1.sce b/764/CH7/EX7.1.b/solution7_1.sce new file mode 100755 index 000000000..aedd4a6b7 --- /dev/null +++ b/764/CH7/EX7.1.b/solution7_1.sce @@ -0,0 +1,29 @@ +
+//Function to standardise the given bolt-size
+function[v] = standard(w)
+ v = ceil(w)
+ rem = pmodulo(v,10)
+ if (rem ~= 0) then
+ v = v + (10 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate permissible tensile stress sigmat (N/mm2)
+sigmat = Syt/fs
+//Calculate the core diameter of the eye-bolt dc (mm)
+dc = ((4 * P * 1000)/(%pi * sigmat))^(1/2)
+//use equation 7.4
+//Calculate the nominal diameter d (mm)
+d = dc/0.8
+//Standardise the bolt size from Table 7.1
+d = standard(d)
+//Print results
+printf('\nStandard size of the bolt is M%d\n',d)
diff --git a/764/CH7/EX7.10.a/data7_10.sci b/764/CH7/EX7.10.a/data7_10.sci new file mode 100755 index 000000000..08e304e02 --- /dev/null +++ b/764/CH7/EX7.10.a/data7_10.sci @@ -0,0 +1,17 @@ +
+//(Threaded Joints) Example 7.10
+//Refer Fig.7.25 on page 241
+//Number of bolts N
+N = 4
+//Tension in the slack side of the belt Tslack (kN)
+Tslack = 5
+//Tension in the tight side of the belt Ttight (kN)
+Ttight = 10
+//Distance between boltA and pt. C l1 (mm)
+l1 = 50
+//Distance between boltB and pt. C l2 (mm)
+l2 = 150
+//Eccentricity value l (mm)
+l = 200
+//Maximum permissible tensile stress sigmaMax (N/mm2)
+sigmaMax = 60
diff --git a/764/CH7/EX7.10.b/result7_10.txt b/764/CH7/EX7.10.b/result7_10.txt new file mode 100755 index 000000000..ddfbe46f2 --- /dev/null +++ b/764/CH7/EX7.10.b/result7_10.txt @@ -0,0 +1,56 @@ +-->//(Threaded Joints) Example 7.10
+
+-->//Refer Fig.7.25 on page 241
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+-->//Tension in the slack side of the belt Tslack (kN)
+
+-->Tslack = 5
+ Tslack =
+
+ 5.
+
+-->//Tension in the tight side of the belt Ttight (kN)
+
+-->Ttight = 10
+ Ttight =
+
+ 10.
+
+-->//Distance between boltA and pt. C l1 (mm)
+
+-->l1 = 50
+ l1 =
+
+ 50.
+
+-->//Distance between boltB and pt. C l2 (mm)
+
+-->l2 = 150
+ l2 =
+
+ 150.
+
+-->//Eccentricity value l (mm)
+
+-->l = 200
+ l =
+
+ 200.
+
+-->//Maximum permissible tensile stress sigmaMax (N/mm2)
+
+-->sigmaMax = 60
+ sigmaMax =
+
+ 60.
+
+
+Area at the core cross-section(A) = 150.000000 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.10.b/solution7_10.sce b/764/CH7/EX7.10.b/solution7_10.sce new file mode 100755 index 000000000..953ed796a --- /dev/null +++ b/764/CH7/EX7.10.b/solution7_10.sce @@ -0,0 +1,20 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_10.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_10.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the resisting force in appropriate bolt P2 (N)
+if (l1 > l2) then
+ P2 = ((Ttight + Tslack)*1000 * l * l1)/(2*(l1^2 + l2^2))
+else
+ P2 = ((Ttight + Tslack)*1000 * l * l2)/(2*(l1^2 + l2^2))
+end
+//Calculate the core cross-section area of the bolt A (mm2)
+A = P2/sigmaMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.11.a/data7_11.sci b/764/CH7/EX7.11.a/data7_11.sci new file mode 100755 index 000000000..6aa17b803 --- /dev/null +++ b/764/CH7/EX7.11.a/data7_11.sci @@ -0,0 +1,15 @@ +
+//(Threaded Joints) Example 7.11
+//Refer Fig.7.26 on page 243
+//Screw pitch circle diameter 2b (mm)
+b = 300/2
+//Flange diameter 2a (mm)
+a = 400/2
+//External force acting on the bearing P (kN)
+P = 25
+//Eccentricity value l (mm)
+l = 150
+//Maximum permissible tensile stress in the cap screw sigmaMax (N/mm2)
+sigmaMax = 50
+//Number of cap screws n
+n = 4
diff --git a/764/CH7/EX7.11.b/result7_11.txt b/764/CH7/EX7.11.b/result7_11.txt new file mode 100755 index 000000000..05d6f959d --- /dev/null +++ b/764/CH7/EX7.11.b/result7_11.txt @@ -0,0 +1,49 @@ +-->//(Threaded Joints) Example 7.11
+
+-->//Refer Fig.7.26 on page 243
+
+-->//Screw pitch circle diameter 2b (mm)
+
+-->b = 300/2
+ b =
+
+ 150.
+
+-->//Flange diameter 2a (mm)
+
+-->a = 400/2
+ a =
+
+ 200.
+
+-->//External force acting on the bearing P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Eccentricity value l (mm)
+
+-->l = 150
+ l =
+
+ 150.
+
+-->//Maximum permissible tensile stress in the cap screw sigmaMax (N/mm2)
+
+-->sigmaMax = 50
+ sigmaMax =
+
+ 50.
+
+-->//Number of cap screws n
+
+-->n = 4
+ n =
+
+ 4.
+
+
+The nominal diameter of the cap screw(d) = 15.000000 mm
+
\ No newline at end of file diff --git a/764/CH7/EX7.11.b/solution7_11.sce b/764/CH7/EX7.11.b/solution7_11.sce new file mode 100755 index 000000000..f71362b43 --- /dev/null +++ b/764/CH7/EX7.11.b/solution7_11.sce @@ -0,0 +1,18 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_11.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_11.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the tensile force in the cap screw P1 (N)
+P1 = (2 * P * 1000 * l * (a + (b * cosd(180/n))))/(n * ((2 * (a^2)) + (b^2)))
+//Calculate the core diameter of the cap screw dc (mm)
+dc = ((P1 * 4)/(%pi * sigmaMax))^(1/2)
+//Calculate the nominal diameter of the cap screw d (mm)
+d = dc/0.8
+d = ceil(d)
+//Print results
+printf('\nThe nominal diameter of the cap screw(d) = %f mm\n',d)
diff --git a/764/CH7/EX7.12.a/data7_12.sci b/764/CH7/EX7.12.a/data7_12.sci new file mode 100755 index 000000000..fe91b795a --- /dev/null +++ b/764/CH7/EX7.12.a/data7_12.sci @@ -0,0 +1,15 @@ +
+//(Threaded Joints) Example 7.12
+//Refer Fig.7.27 on page 244
+//Number of bolts n
+n = 16
+//Pitch circle diameter of the bolts 2b (mm)
+b = 2000/2
+//Diameter of the pillar flange 2a (mm)
+a = 2250/2
+//Load acting on the crane P (kN)
+P = 50
+//Radius r (mm)
+r = 7500
+//Maximum permissible tensile stress sigmaMax (N/mm2)
+sigmaMax = 75
diff --git a/764/CH7/EX7.12.b/result7_12.txt b/764/CH7/EX7.12.b/result7_12.txt new file mode 100755 index 000000000..232d53208 --- /dev/null +++ b/764/CH7/EX7.12.b/result7_12.txt @@ -0,0 +1,49 @@ +-->//(Threaded Joints) Example 7.12
+
+-->//Refer Fig.7.27 on page 244
+
+-->//Number of bolts n
+
+-->n = 16
+ n =
+
+ 16.
+
+-->//Pitch circle diameter of the bolts 2b (mm)
+
+-->b = 2000/2
+ b =
+
+ 1000.
+
+-->//Diameter of the pillar flange 2a (mm)
+
+-->a = 2250/2
+ a =
+
+ 1125.
+
+-->//Load acting on the crane P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Radius r (mm)
+
+-->r = 7500
+ r =
+
+ 7500.
+
+-->//Maximum permissible tensile stress sigmaMax (N/mm2)
+
+-->sigmaMax = 75
+ sigmaMax =
+
+ 75.
+
+
+Area at the core cross-section(A) = 319.690265 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.12.b/solution7_12.sce b/764/CH7/EX7.12.b/solution7_12.sce new file mode 100755 index 000000000..556f5c345 --- /dev/null +++ b/764/CH7/EX7.12.b/solution7_12.sce @@ -0,0 +1,18 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_12.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_12.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the moment arm for load P l (mm)
+l = (r - a)
+//Calculate the absolute maximum force Pmax (N)
+Pmax = (2 * P * 1000 * l * (a + b))/(n * ((2 * (a^2)) + (b^2)))
+//Calculate the core cross-section area of the cap screw A (mm2)
+A = Pmax/sigmaMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.13.a/data7_13.sci b/764/CH7/EX7.13.a/data7_13.sci new file mode 100755 index 000000000..983bc55e2 --- /dev/null +++ b/764/CH7/EX7.13.a/data7_13.sci @@ -0,0 +1,19 @@ +
+//(Threaded Joints) Example 7.13
+//Refer Fig.7.28 on page 245
+//Maximum force in the tie rod P (kN)
+P = 5
+//Tie rod inclination with the horizontal theta (degree)
+theta = 30
+//Number of bolts N
+N = 4
+//Tensile yield strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 5
+//Distance between boltA and pt.C l1 (mm)
+l1 = 25
+//Distance between boltB and pt.C l2 (mm)
+l2 = 150 + 25
+//Eccentricity value e (mm)
+e = 50 + 25
diff --git a/764/CH7/EX7.13.b/result7_13.txt b/764/CH7/EX7.13.b/result7_13.txt new file mode 100755 index 000000000..4f97ec61c --- /dev/null +++ b/764/CH7/EX7.13.b/result7_13.txt @@ -0,0 +1,63 @@ +-->//(Threaded Joints) Example 7.13
+
+-->//Refer Fig.7.28 on page 245
+
+-->//Maximum force in the tie rod P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Tie rod inclination with the horizontal theta (degree)
+
+-->theta = 30
+ theta =
+
+ 30.
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+-->//Tensile yield strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Distance between boltA and pt.C l1 (mm)
+
+-->l1 = 25
+ l1 =
+
+ 25.
+
+-->//Distance between boltB and pt.C l2 (mm)
+
+-->l2 = 150 + 25
+ l2 =
+
+ 175.
+
+-->//Eccentricity value e (mm)
+
+-->e = 50 + 25
+ e =
+
+ 75.
+
+
+Area at the core cross-section(A) = 33.170154 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.13.b/solution7_13.sce b/764/CH7/EX7.13.b/solution7_13.sce new file mode 100755 index 000000000..5d7fc8894 --- /dev/null +++ b/764/CH7/EX7.13.b/solution7_13.sce @@ -0,0 +1,38 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_13.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_13.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible shear stress tauMax (N/mm2)
+tauMax = ((50/100)*Syt)/fs
+//Calculate vertical component of the axial force in the tie rod Pv (N)
+Pv = P * 1000 * sind(theta)
+//Calculate horizontal component of the axial force in the tie rod Ph (N)
+Ph = P * 1000 * cosd(theta)
+//Calculate the direct tensile force on the bolts Dtensile (N)
+Dtensile = Pv/N
+//Calculate the direct shear force on the bolts Sshear (N)
+Sshear = Ph/N
+//Calculate the tensile force on appropriate bolt due to bending moment Ftensile (N)
+if (l1 > l2) then
+ Ftensile = (Ph * e * l1)/(2*((l1^2) + (l2^2)))
+else
+ Ftensile = (Ph * e * l2)/(2*((l1^2) + (l2^2)))
+end
+//Assume the core cross-section area of the bolts to be 1mm2 A
+A = 1
+//Calculate the resultant tensile stress on the bolts res (N/mm2)
+res = (Dtensile + Ftensile)/A
+//Calculate the shear stress in bolts Stau (N/mm2)
+Stau = Sshear/A
+//Calculate the maximum shear stress in the bolts tau (N/mm2)
+tau = (((res/2)^2) + (Stau^2))^(1/2)
+//Calculate the actual core cross-section area of the bolts A (mm2)
+A = tau/tauMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.14.a/data7_14.sci b/764/CH7/EX7.14.a/data7_14.sci new file mode 100755 index 000000000..7fcd6fd76 --- /dev/null +++ b/764/CH7/EX7.14.a/data7_14.sci @@ -0,0 +1,23 @@ +
+//(Threaded Joints) Example 7.14
+//Refer Fig.7.29 on page 246
+//Force acting on bracket P (kN)
+P = 5
+//Angle made by the force with the vertical theta (degree)
+theta = 60
+//Number of bolts N
+N = 4
+//Tensile yield strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 5
+//Distance of the centre of gravity from the lower edge cg (mm)
+cg = 60 + 100
+//Distance between the point force and lower edge f (mm)
+f = 200
+//Distance of the force point from the tilting edge t (mm)
+t = 240
+//Distance between bolt1 and pt.C l1 (mm)
+l1 = 200 + 60
+//Distance between bolt2 and pt.C l2 (mm)
+l2 = 60
diff --git a/764/CH7/EX7.14.b/result7_14.txt b/764/CH7/EX7.14.b/result7_14.txt new file mode 100755 index 000000000..3b6ab9f51 --- /dev/null +++ b/764/CH7/EX7.14.b/result7_14.txt @@ -0,0 +1,77 @@ +-->//(Threaded Joints) Example 7.14
+
+-->//Refer Fig.7.29 on page 246
+
+-->//Force acting on bracket P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Angle made by the force with the vertical theta (degree)
+
+-->theta = 60
+ theta =
+
+ 60.
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+-->//Tensile yield strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Distance of the centre of gravity from the lower edge cg (mm)
+
+-->cg = 60 + 100
+ cg =
+
+ 160.
+
+-->//Distance between the point force and lower edge f (mm)
+
+-->f = 200
+ f =
+
+ 200.
+
+-->//Distance of the force point from the tilting edge t (mm)
+
+-->t = 240
+ t =
+
+ 240.
+
+-->//Distance between bolt1 and pt.C l1 (mm)
+
+-->l1 = 200 + 60
+ l1 =
+
+ 260.
+
+-->//Distance between bolt2 and pt.C l2 (mm)
+
+-->l2 = 60
+ l2 =
+
+ 60.
+
+
+Area at the core cross-section(A) = 34.874654 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.14.b/solution7_14.sce b/764/CH7/EX7.14.b/solution7_14.sce new file mode 100755 index 000000000..dca3fc713 --- /dev/null +++ b/764/CH7/EX7.14.b/solution7_14.sce @@ -0,0 +1,44 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_14.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_14.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible shear stress tauMax (N/mm2)
+tauMax = ((50/100)*Syt)/fs
+//Horizontal component of force P Ph (N)
+Ph = P * 1000 * sind(theta)
+//Vertical component of force P Pv (N)
+Pv = P * 1000 * cosd(theta)
+//Calculate the direct tensile force on each bolt Dtensile (N)
+Dtensile = Ph/N
+//Calculate the turning moment due to horizontal component Mh (N-mm)
+Mh = Ph * (f - cg)
+//Calculate the direct shear force on each bolt Sshear (N)
+Sshear = Pv/N
+//Calculate the turning moment due to vertical component Mv (N-mm)
+Mv = Pv * t
+//Calculate the tensile force on appropriate bolt due to bending moment Ftensile (N)
+if (l1 > l2) then
+ Ftensile = ((Mh + Mv)*l1)/(2*((l1^2) + (l2^2)))
+else
+ Ftensile = ((Mh + Mv)*l2)/(2*((l1^2) + (l2^2)))
+end
+//Calculate the total tensile force on each bolt Pt (N)
+Pt = Dtensile + Ftensile
+//Assume the core cross-section area of the bolts to be 1mm2 A
+A = 1
+//Calculate the resultant tensile stress in the bolt res (N/mm2)
+res = Pt/A
+//Calculate the shear stress in bolts Stau (N/mm2)
+Stau = Sshear/A
+//Calculate the maximum shear stress in the bolts tau (N/mm2)
+tau = (((res/2)^2) + (Stau^2))^(1/2)
+//Calculate the actual core cross-section area of the bolts A (mm2)
+A = tau/tauMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.15.a/data7_15.sci b/764/CH7/EX7.15.a/data7_15.sci new file mode 100755 index 000000000..8c703c035 --- /dev/null +++ b/764/CH7/EX7.15.a/data7_15.sci @@ -0,0 +1,21 @@ +
+//(Threaded Joints) Example 7.15
+//Refer Fig.7.30 on page 247
+//Vertical force acting on the rigid bracket P (kN)
+P = 10
+//Maximum permissible shear stress in any bolt tauMax (N/mm2)
+tauMax = 50
+//Number of bolts N
+N = 4
+//Eccentricity value when secondary shear is considered e (mm)
+e = 250
+//Distance between two bolts dist (mm)
+dist = 100 + 100
+//Angle made by the secondary shear forces with the vertical theta (degree)
+theta = 45
+//Eccentricity value when bracket tilting is considered et (mm)
+et = 300
+//Distance between bolts 1 and 3 from edge CC l1 (mm)
+l1 = 50 + 200
+//Distance between bolts 2 and 4 from edge CC l2 (mm)
+l2 = 50
diff --git a/764/CH7/EX7.15.b/result7_15.txt b/764/CH7/EX7.15.b/result7_15.txt new file mode 100755 index 000000000..257e970c2 --- /dev/null +++ b/764/CH7/EX7.15.b/result7_15.txt @@ -0,0 +1,70 @@ +-->//(Threaded Joints) Example 7.15
+
+-->//Refer Fig.7.30 on page 247
+
+-->//Vertical force acting on the rigid bracket P (kN)
+
+-->P = 10
+ P =
+
+ 10.
+
+-->//Maximum permissible shear stress in any bolt tauMax (N/mm2)
+
+-->tauMax = 50
+ tauMax =
+
+ 50.
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+-->//Eccentricity value when secondary shear is considered e (mm)
+
+-->e = 250
+ e =
+
+ 250.
+
+-->//Distance between two bolts dist (mm)
+
+-->dist = 100 + 100
+ dist =
+
+ 200.
+
+-->//Angle made by the secondary shear forces with the vertical theta (degree)
+
+-->theta = 45
+ theta =
+
+ 45.
+
+-->//Eccentricity value when bracket tilting is considered et (mm)
+
+-->et = 300
+ et =
+
+ 300.
+
+-->//Distance between bolts 1 and 3 from edge CC l1 (mm)
+
+-->l1 = 50 + 200
+ l1 =
+
+ 250.
+
+-->//Distance between bolts 2 and 4 from edge CC l2 (mm)
+
+-->l2 = 50
+ l2 =
+
+ 50.
+
+
+Area at the core cross-section(A) = 141.035110 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.15.b/solution7_15.sce b/764/CH7/EX7.15.b/solution7_15.sce new file mode 100755 index 000000000..17ac33c34 --- /dev/null +++ b/764/CH7/EX7.15.b/solution7_15.sce @@ -0,0 +1,36 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_15.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_15.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the primary shear force on bolts Pshear (N)
+Pshear = (P * 1000)/N
+//Distance between bolt and centre of gravity r (mm)
+r = (((dist/2)^2) + ((dist/2)^2))^(1/2)
+//Calculate the secondary shear force on bolts Sshear (N)
+Sshear = (P * 1000 * e * r)/(4 * (r^2))
+//Calculate the resultant shear force on bolts Ps (N)
+Ps = (((Pshear + (Sshear * sind(theta)))^2) + ((Sshear * cosd(90 - theta))^2))^(1/2)
+//Calculate the resisting force set up in appropriate bolts due to bracket tilting Pt (N)
+if (l1 > l2) then
+ Pt = (P * 1000 * et * l1)/(2*((l1^2) + (l2^2)))
+else
+ Pt = (P * 1000 * et * l2)/(2*((l1^2) + (l2^2)))
+end
+//Assume the core cross-section area of the bolts to be 1mm2 A
+A = 1
+//Calculate the tensile stress sigmat (N/mm2)
+sigmat = Pt/A
+//Calculate the shear stress Stau (N/mm2)
+Stau = Ps/A
+//Calculate the maximum shear stress in the bolts tau (N/mm2)
+tau = (((sigmat/2)^2) + (Stau^2))^(1/2)
+//Calculate the actual core cross-section area of the bolts A (mm2)
+A = tau/tauMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.16.a/data7_16.sci b/764/CH7/EX7.16.a/data7_16.sci new file mode 100755 index 000000000..e66aee17f --- /dev/null +++ b/764/CH7/EX7.16.a/data7_16.sci @@ -0,0 +1,17 @@ +
+//(Threaded Joints) Example 7.16
+//Refer Fig.7.35 on page 256
+//Yield tensile strength of 30C8 Syt (N/mm2)
+Syt = 380
+//Young's modulus of 30C8 E1 (N/mm2)
+E1 = 207000
+//Young's modulus of aluminium E2 (N/mm2)
+E2 = 71000
+//Initial pre-load in the bolt Pi (kN)
+Pi = 5
+//External force acting on the bolted joint P (kN)
+P = 10
+//Factor of safety fs
+fs = 2.5
+//Length of the joint l (mm)
+l = 25 + 25
diff --git a/764/CH7/EX7.16.b/result7_16.txt b/764/CH7/EX7.16.b/result7_16.txt new file mode 100755 index 000000000..72d73e10c --- /dev/null +++ b/764/CH7/EX7.16.b/result7_16.txt @@ -0,0 +1,56 @@ +-->//(Threaded Joints) Example 7.16
+
+-->//Refer Fig.7.35 on page 256
+
+-->//Yield tensile strength of 30C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Young's modulus of 30C8 E1 (N/mm2)
+
+-->E1 = 207000
+ E1 =
+
+ 207000.
+
+-->//Young's modulus of aluminium E2 (N/mm2)
+
+-->E2 = 71000
+ E2 =
+
+ 71000.
+
+-->//Initial pre-load in the bolt Pi (kN)
+
+-->Pi = 5
+ Pi =
+
+ 5.
+
+-->//External force acting on the bolted joint P (kN)
+
+-->P = 10
+ P =
+
+ 10.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Length of the joint l (mm)
+
+-->l = 25 + 25
+ l =
+
+ 50.
+
+
+Area at the core cross-section(A) = 65.319549 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.16.b/solution7_16.sce b/764/CH7/EX7.16.b/solution7_16.sce new file mode 100755 index 000000000..957a40614 --- /dev/null +++ b/764/CH7/EX7.16.b/solution7_16.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_16.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_16.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible tensile stress sigmat (N/mm2)
+sigmat = Syt/fs
+//Assume the inner diameter of the circular plate to be 1mm di
+di = 1
+//Calculate the outer diameter of the circular plate do (mm)
+do = 2 * di
+//Calculate the stiffness of the bolts kb (N/mm)
+kb = (%pi/4*(di^2))*(E1/l)
+//Calculate the area of the two plates Ac (mm2)
+Ac = (%pi/4)*((do^2) - (di^2))
+//Calculate the combined stiffness of the two plates kc (N/mm)
+kc = (Ac * E2)/l
+//Calculate the resultant load on the bolt Pb (N)
+deltaP = (P * 1000)*(kb/(kb + kc))
+Pb = (Pi * 1000) + deltaP
+//Calculate the core cross-section area of the bolt A (mm2)
+A = Pb/sigmat
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.17.a/data7_17.sci b/764/CH7/EX7.17.a/data7_17.sci new file mode 100755 index 000000000..69b2cd9c2 --- /dev/null +++ b/764/CH7/EX7.17.a/data7_17.sci @@ -0,0 +1,15 @@ +
+//(Threaded Joints) Example 7.17
+//Refer Fig. 7.36 on page 257
+//Pre-load in the bolt Pi (kN)
+Pi = 2.5
+//External force acting on the bolt P (kN)
+P = 5
+//Yield tensile strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 2.5
+//Assume stiffness of bolts to be 1N/mm kb
+kb = 1
+//Stiffness of parts held together kc (N/mm)
+kc = 2.5 * kb
diff --git a/764/CH7/EX7.17.b/result7_17.txt b/764/CH7/EX7.17.b/result7_17.txt new file mode 100755 index 000000000..dad2f1cab --- /dev/null +++ b/764/CH7/EX7.17.b/result7_17.txt @@ -0,0 +1,49 @@ +-->//(Threaded Joints) Example 7.17
+
+-->//Refer Fig. 7.36 on page 257
+
+-->//Pre-load in the bolt Pi (kN)
+
+-->Pi = 2.5
+ Pi =
+
+ 2.5
+
+-->//External force acting on the bolt P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Yield tensile strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Assume stiffness of bolts to be 1N/mm kb
+
+-->kb = 1
+ kb =
+
+ 1.
+
+-->//Stiffness of parts held together kc (N/mm)
+
+-->kc = 2.5 * kb
+ kc =
+
+ 2.5
+
+
+Tensile stress area of the bolt(A) = 24.553571 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.17.b/solution7_17.sce b/764/CH7/EX7.17.b/solution7_17.sce new file mode 100755 index 000000000..59006bddc --- /dev/null +++ b/764/CH7/EX7.17.b/solution7_17.sce @@ -0,0 +1,19 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_17.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_17.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible tensile stress sigmat (N/mm2)
+sigmat = Syt/fs
+//Calculate the resultant load on bolt Pb (N)
+deltaP = (P * 1000)*(kb/(kb + kc))
+Pb = (Pi * 1000) + deltaP
+//Calculate the tensile stress area of the bolt A (mm2)
+A = Pb/sigmat
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nTensile stress area of the bolt(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.18.a/data7_18.sci b/764/CH7/EX7.18.a/data7_18.sci new file mode 100755 index 000000000..ff13e3369 --- /dev/null +++ b/764/CH7/EX7.18.a/data7_18.sci @@ -0,0 +1,30 @@ +
+//(Threaded Joints) Example 7.18
+//Refer Fig.7.35 on page 256
+//Maximum force acting on the assembly Pmax (kN)
+Pmax = 10
+//Minimum force acting on the assembly Pmin (kN)
+Pmin = 0
+//Yield tensile strength of 45C8 Syt (N/mm2)
+Syt = 380
+//Ultimate tensile strength of 45C8 Sut (N/mm2)
+Sut = 630
+//Young's modulus of the plain carbon steel E1 (N/mm2)
+E1 = 207000
+//Young's modulus of aluminium E2 (N/mm2)
+E2 = 71000
+//Fatigue stress concentration factor Kf
+Kf = 2.2
+//Expected reliability (%)
+reliability = 90
+//Initial pre-load in the bolt Pi (kN)
+Pi = 5
+//Factor of safety fs
+fs = 2
+//Length of the bolt l (mm)
+l = 25 + 25
+//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+d = 1
+//As Ka is incorporated into Kf, assume the assembly to be ground
+//This is just to obtain a random value of Ka
+op = 1
\ No newline at end of file diff --git a/764/CH7/EX7.18.b/graph7_18.png b/764/CH7/EX7.18.b/graph7_18.png Binary files differnew file mode 100755 index 000000000..e13ca6307 --- /dev/null +++ b/764/CH7/EX7.18.b/graph7_18.png diff --git a/764/CH7/EX7.18.b/result7_18.txt b/764/CH7/EX7.18.b/result7_18.txt new file mode 100755 index 000000000..4b35b6c3a --- /dev/null +++ b/764/CH7/EX7.18.b/result7_18.txt @@ -0,0 +1,100 @@ +-->//(Threaded Joints) Example 7.18
+
+-->//Refer Fig.7.35 on page 256
+
+-->//Maximum force acting on the assembly Pmax (kN)
+
+-->Pmax = 10
+ Pmax =
+
+ 10.
+
+-->//Minimum force acting on the assembly Pmin (kN)
+
+-->Pmin = 0
+ Pmin =
+
+ 0.
+
+-->//Yield tensile strength of 45C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Ultimate tensile strength of 45C8 Sut (N/mm2)
+
+-->Sut = 630
+ Sut =
+
+ 630.
+
+-->//Young's modulus of the plain carbon steel E1 (N/mm2)
+
+-->E1 = 207000
+ E1 =
+
+ 207000.
+
+-->//Young's modulus of aluminium E2 (N/mm2)
+
+-->E2 = 71000
+ E2 =
+
+ 71000.
+
+-->//Fatigue stress concentration factor Kf
+
+-->Kf = 2.2
+ Kf =
+
+ 2.2
+
+-->//Expected reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Initial pre-load in the bolt Pi (kN)
+
+-->Pi = 5
+ Pi =
+
+ 5.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Length of the bolt l (mm)
+
+-->l = 25 + 25
+ l =
+
+ 50.
+
+-->//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+
+-->d = 1
+ d =
+
+ 1.
+
+-->//As Ka is incorporated into Kf, assume the assembly to be ground
+
+-->//This is just to obtain a random value of Ka
+
+-->op = 1
+ op =
+
+ 1.
+
+
+Core cross-section area of the bolt(A) = 54.133961 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.18.b/solution7_18.sce b/764/CH7/EX7.18.b/solution7_18.sce new file mode 100755 index 000000000..09221472e --- /dev/null +++ b/764/CH7/EX7.18.b/solution7_18.sce @@ -0,0 +1,60 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_18.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_18.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions7_18.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate the endurance limit stress for bolt Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//Calculate Kd
+Kd = 1/Kf
+//Calculate the corrected endurance limit stress Se (N/mm2)
+Se = Kb * Kc * Kd * Sdash
+//Calculate the stiffness of bolt kb (N/mm)
+kb = ((%pi/4)*(d^2))*(E1/l)
+//Calculate the area of the two plates Ac (mm2)
+Ac = (%pi/4)*(((2*d)^2) - (d^2))
+//Calculate the stiffness of the plates kc (N/mm)
+kc = (Ac * E2)/l
+//Calculate the maximum force in the bolt PMAX (N)
+PMAX = (Pi * 1000) + ((kb/(kb + kc))*(Pmax * 1000))
+//Calculate the minimum force in the bolt PMIN (N)
+PMIN = (Pi * 1000) + ((kb/(kb + kc))*(Pmin * 1000))
+//Calculate the mean force and force amplitude
+Pm = (PMAX + PMIN)/2
+Pa = (PMAX - PMIN)/2
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+y1 = {Se 0}
+x1 = {0 Sut}
+y2 = {Syt 0}
+x2 = {0 Syt}
+plot(x1,y1,'--*')
+plot(x2,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 7.18)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate the actual core cross-section area of the bolt A (mm2)
+A = (Pa + ((Pi * 1000)/((1 + (Sut/Se)) * fs)))/(Sut/((1 + (Sut/Se))*fs))
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nCore cross-section area of the bolt(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.18.c/functions7_18.sci b/764/CH7/EX7.18.c/functions7_18.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH7/EX7.18.c/functions7_18.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH7/EX7.19.a/data7_19.sci b/764/CH7/EX7.19.a/data7_19.sci new file mode 100755 index 000000000..917efb6b0 --- /dev/null +++ b/764/CH7/EX7.19.a/data7_19.sci @@ -0,0 +1,27 @@ +
+//(Threaded Joints) Example 7.19
+//Maximum external force Pmax (kN)
+Pmax = 10
+//Minimum external force Pmin (kN)
+Pmin = 0
+//Assume the stiffness of the bolts to be 1N/mm kb
+kb = 1
+//Calculate the stiffness of the parts kc
+kc = 3 * kb
+//Overload percentage load (%)
+load = 50
+//Yield tensile strength of 50C4 Syt (N/mm2)
+Syt = 460
+//Ultimate tensile strength of 50C4 Sut (N/mm2)
+Sut = 660
+//Fatigue stress concentration factor Kf
+Kf = 2.2
+//Expected reliability (%)
+reliability = 90
+//Factor of safety fs
+fs = 2
+//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+d = 1
+//As Ka is incorporated into Kf, assume the assembly to be ground
+//This is just to obtain a random value of Ka
+op = 1
diff --git a/764/CH7/EX7.19.b/graph7_19.png b/764/CH7/EX7.19.b/graph7_19.png Binary files differnew file mode 100755 index 000000000..e7b7f8c0b --- /dev/null +++ b/764/CH7/EX7.19.b/graph7_19.png diff --git a/764/CH7/EX7.19.b/result7_19.txt b/764/CH7/EX7.19.b/result7_19.txt new file mode 100755 index 000000000..d9a304656 --- /dev/null +++ b/764/CH7/EX7.19.b/result7_19.txt @@ -0,0 +1,91 @@ +-->//(Threaded Joints) Example 7.19
+
+-->//Maximum external force Pmax (kN)
+
+-->Pmax = 10
+ Pmax =
+
+ 10.
+
+-->//Minimum external force Pmin (kN)
+
+-->Pmin = 0
+ Pmin =
+
+ 0.
+
+-->//Assume the stiffness of the bolts to be 1N/mm kb
+
+-->kb = 1
+ kb =
+
+ 1.
+
+-->//Calculate the stiffness of the parts kc
+
+-->kc = 3 * kb
+ kc =
+
+ 3.
+
+-->//Overload percentage load (%)
+
+-->load = 50
+ load =
+
+ 50.
+
+-->//Yield tensile strength of 50C4 Syt (N/mm2)
+
+-->Syt = 460
+ Syt =
+
+ 460.
+
+-->//Ultimate tensile strength of 50C4 Sut (N/mm2)
+
+-->Sut = 660
+ Sut =
+
+ 660.
+
+-->//Fatigue stress concentration factor Kf
+
+-->Kf = 2.2
+ Kf =
+
+ 2.2
+
+-->//Expected reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+
+-->d = 1
+ d =
+
+ 1.
+
+-->//As Ka is incorporated into Kf, assume the assembly to be ground
+
+-->//This is just to obtain a random value of Ka
+
+-->op = 1
+ op =
+
+ 1.
+
+
+Core cross-section area of the bolt(A) = 39.413787 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.19.b/solution7_19.sce b/764/CH7/EX7.19.b/solution7_19.sce new file mode 100755 index 000000000..bd4260cf2 --- /dev/null +++ b/764/CH7/EX7.19.b/solution7_19.sce @@ -0,0 +1,59 @@ +
+
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_19.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_19.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions7_19.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate the endurance limit stress for bolt Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//Calculate Kd
+Kd = 1/Kf
+//Calculate the corrected endurance limit stress Se (N/mm2)
+Se = Kb * Kc * Kd * Sdash
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+y1 = {Se 0}
+x1 = {0 Sut}
+y2 = {Syt 0}
+x2 = {0 Syt}
+plot(x1,y1,'--*')
+plot(x2,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 7.19)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate the external force at overload condition PbMax (N)
+PbMax = (Pmax * 1000) + ((load/100)*Pmax * 1000)
+//Calculate the initial pre-load Pi (N)
+Pi = PbMax/((kb + kc)/kc)
+//Calculate the maximum force in the bolt PMAX (N)
+PMAX = Pi + ((kb/(kb + kc))*(Pmax * 1000))
+//Calculate the minimum force in the bolt PMIN (N)
+PMIN = Pi + ((kb/(kb + kc))*(Pmin * 1000))
+//Calculate the mean force and force amplitude
+Pm = (PMAX + PMIN)/2
+Pa = (PMAX - PMIN)/2
+//Calculate the actual core cross-section area of the bolt A (mm2)
+A = (Pa + (Pi/((1 + (Sut/Se)) * fs)))/(Sut/((1 + (Sut/Se))*fs))
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nCore cross-section area of the bolt(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.19.c/functions7_19.sci b/764/CH7/EX7.19.c/functions7_19.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH7/EX7.19.c/functions7_19.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH7/EX7.2.a/data7_2.sci b/764/CH7/EX7.2.a/data7_2.sci new file mode 100755 index 000000000..47cd1ed40 --- /dev/null +++ b/764/CH7/EX7.2.a/data7_2.sci @@ -0,0 +1,9 @@ +
+//(Threaded Joints) Example 7.2
+//Refer Fig.7.14 on page 232
+//Yield tensile strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 5
+//Shear load acting on the bolts Pt (kN)
+Pt = 5
diff --git a/764/CH7/EX7.2.b/result7_2.txt b/764/CH7/EX7.2.b/result7_2.txt new file mode 100755 index 000000000..33171a4ac --- /dev/null +++ b/764/CH7/EX7.2.b/result7_2.txt @@ -0,0 +1,28 @@ +-->//(Threaded Joints) Example 7.2
+
+-->//Refer Fig.7.14 on page 232
+
+-->//Yield tensile strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 5
+ fs =
+
+ 5.
+
+-->//Shear load acting on the bolts Pt (kN)
+
+-->Pt = 5
+ Pt =
+
+ 5.
+
+
+The standard size of the bolt is M10
+
\ No newline at end of file diff --git a/764/CH7/EX7.2.b/solution7_2.sce b/764/CH7/EX7.2.b/solution7_2.sce new file mode 100755 index 000000000..7079dc7c8 --- /dev/null +++ b/764/CH7/EX7.2.b/solution7_2.sce @@ -0,0 +1,30 @@ +
+//Function to standardise the given bolt-size
+function[v] = standard(w)
+ v = ceil(w)
+ rem = pmodulo(v,10)
+ if (rem ~= 0) then
+ v = v + (10 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the yield shear strength Ssy (N/mm2)
+Ssy = (50/100)*Syt
+//Calculate the permissible shear stress tau (N/mm2)
+tau = Ssy/fs
+//Shear load acting on one bolt P (kN)
+P = Pt/2
+//Calculate the diameter of the bolt shank d (mm)
+d = ((4 * P * 1000)/(%pi * tau))^(1/2)
+//Standardise the bolt size from Table 7.1
+d = standard(d)
+//Print results
+printf('\nThe standard size of the bolt is M%d\n',d)
diff --git a/764/CH7/EX7.20.a/data7_20.sci b/764/CH7/EX7.20.a/data7_20.sci new file mode 100755 index 000000000..104c28166 --- /dev/null +++ b/764/CH7/EX7.20.a/data7_20.sci @@ -0,0 +1,35 @@ +
+//(Threaded Joints) Example 7.20
+//Number of bolts N
+N = 2
+//Engine speed n (rpm)
+n = 2000
+//Length of stroke l (mm)
+l = 100
+//Length of connecting rod c (mm)
+c = 200
+//Mass of reciprocating parts m (kg)
+m = 5
+//Overload percentage load (%)
+load = 50
+//Assume the stiffness of the bolts to be 1N/mm kb
+kb = 1
+//Calculate the stiffness of the parts kc
+kc = 4 * kb
+//Yield tensile strength of chromium-molybdenum steel Syt (N/mm2)
+Syt = 450
+//Ultimate tensile strength of chromium-molybdenum steel Sut (N/mm2)
+Sut = 600
+//Fatigue stress concentration factor Kf
+Kf = 3.0
+//Expected reliability (%)
+reliability = 90
+//Factor of safety fs
+fs = 2
+//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+d = 1
+//As Ka is incorporated into Kf, assume the assembly to be ground
+//This is just to obtain a random value of Ka
+op = 1
+//Inclination of connecting rod to the line of stroke theta (degree)
+theta = 0
diff --git a/764/CH7/EX7.20.b/graph7_20.png b/764/CH7/EX7.20.b/graph7_20.png Binary files differnew file mode 100755 index 000000000..7ccdd426e --- /dev/null +++ b/764/CH7/EX7.20.b/graph7_20.png diff --git a/764/CH7/EX7.20.b/result7_20.txt b/764/CH7/EX7.20.b/result7_20.txt new file mode 100755 index 000000000..e581160f8 --- /dev/null +++ b/764/CH7/EX7.20.b/result7_20.txt @@ -0,0 +1,119 @@ +-->//(Threaded Joints) Example 7.20
+
+-->//Number of bolts N
+
+-->N = 2
+ N =
+
+ 2.
+
+-->//Engine speed n (rpm)
+
+-->n = 2000
+ n =
+
+ 2000.
+
+-->//Length of stroke l (mm)
+
+-->l = 100
+ l =
+
+ 100.
+
+-->//Length of connecting rod c (mm)
+
+-->c = 200
+ c =
+
+ 200.
+
+-->//Mass of reciprocating parts m (kg)
+
+-->m = 5
+ m =
+
+ 5.
+
+-->//Overload percentage load (%)
+
+-->load = 50
+ load =
+
+ 50.
+
+-->//Assume the stiffness of the bolts to be 1N/mm kb
+
+-->kb = 1
+ kb =
+
+ 1.
+
+-->//Calculate the stiffness of the parts kc
+
+-->kc = 4 * kb
+ kc =
+
+ 4.
+
+-->//Yield tensile strength of chromium-molybdenum steel Syt (N/mm2)
+
+-->Syt = 450
+ Syt =
+
+ 450.
+
+-->//Ultimate tensile strength of chromium-molybdenum steel Sut (N/mm2)
+
+-->Sut = 600
+ Sut =
+
+ 600.
+
+-->//Fatigue stress concentration factor Kf
+
+-->Kf = 3.0
+ Kf =
+
+ 3.
+
+-->//Expected reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+
+-->d = 1
+ d =
+
+ 1.
+
+-->//As Ka is incorporated into Kf, assume the assembly to be ground
+
+-->//This is just to obtain a random value of Ka
+
+-->op = 1
+ op =
+
+ 1.
+
+-->//Inclination of connecting rod to the line of stroke theta (degree)
+
+-->theta = 0
+ theta =
+
+ 0.
+
+
+Core cross-section area of the bolt(A) = 38.128117 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.20.b/solution7_20.sce b/764/CH7/EX7.20.b/solution7_20.sce new file mode 100755 index 000000000..68bf7267b --- /dev/null +++ b/764/CH7/EX7.20.b/solution7_20.sce @@ -0,0 +1,72 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_20.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_20.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions7_20.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate the endurance limit stress for bolt Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//Calculate Kd
+Kd = 1/Kf
+//Calculate the corrected endurance limit stress Se (N/mm2)
+Se = Kb * Kc * Kd * Sdash
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+y1 = {Se 0}
+x1 = {0 Sut}
+y2 = {Syt 0}
+x2 = {0 Syt}
+plot(x1,y1,'--*')
+plot(x2,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 7.20)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate the angular velocity w (rad/s)
+w = (2 * %pi * n)/60
+//Calculate the crank radius r (m)
+r = (0.5 * l)/1000
+//Calculate the ratio of length of connecting rod to crank radius n1
+n1 = (c/(r * 1000))
+//Calculate the inertia force on bolt at normal running condition I (N)
+I = m * r * (w^2) * (cosd(theta) + (cosd(2 * theta)/n1))
+//Calculate the engine speed at overspeed condition nmax (rpm)
+nmax = n + ((load/100)*n)
+//Calculate the inertia force on bolt at overspeed Imax (N)
+Imax = m * r * (((2 * %pi * nmax)/60)^2) * (cosd(theta) + (cosd(2 * theta)/n1))
+//Calculate the force acting on each bolt under normal running condition P (N)
+P = I/N
+//Calculate the force acting on each bolt under overspeed condition PbMax (N)
+PbMax = Imax/N
+//Calculate the initial pre-load on the bolts Pi (N)
+Pi = PbMax/((kb + kc)/kc)
+//Calculate the maximum force in the bolt PMAX (N)
+PMAX = Pi + ((kb/(kb + kc))* P)
+//Calculate the minimum force in the bolt PMIN (N)
+PMIN = Pi
+//Calculate the mean force and force amplitude
+Pm = (PMAX + PMIN)/2
+Pa = (PMAX - PMIN)/2
+//Calculate the actual core cross-section area of the bolt A (mm2)
+A = (Pa + (Pi/((1 + (Sut/Se)) * fs)))/(Sut/((1 + (Sut/Se))*fs))
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nCore cross-section area of the bolt(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.20.c/functions7_20.sci b/764/CH7/EX7.20.c/functions7_20.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH7/EX7.20.c/functions7_20.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH7/EX7.21.a/data7_21.sci b/764/CH7/EX7.21.a/data7_21.sci new file mode 100755 index 000000000..141f55e6a --- /dev/null +++ b/764/CH7/EX7.21.a/data7_21.sci @@ -0,0 +1,31 @@ +
+//(Threaded Joints) Example 7.21
+//Maximum internal pressure MAXP (MPa)
+MAXP = 2
+//Minimum internal pressure MINP (MPa)
+MINP = 0
+//Diameter of the circle on which pressure acts D (mm)
+D = 400
+//Assume the stiffness of the bolts to be 1N/mm kb
+kb = 1
+//Calculate the stiffness of the parts kc (N/mm)
+kc = 4 * kb
+//Ultimate tensile strength Sut (N/mm2)
+Sut = 900
+//Yield strength Syt (N/mm2)
+Syt = 700
+//Endurance limit in bending Sdash (N/mm2)
+Sdash = 300
+//Fatigue stress concentration factor Kf
+Kf = 2.2
+//Factor of safety fs
+fs = 1.5
+//Number of bolts N
+N = 8
+//Assume expected reliability (%)
+reliability = 90
+//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+d = 1
+//As Ka is incorporated into Kf, assume the assembly to be ground
+//This is just to obtain a random value of Ka
+op = 1
diff --git a/764/CH7/EX7.21.b/graph7_21.png b/764/CH7/EX7.21.b/graph7_21.png Binary files differnew file mode 100755 index 000000000..aca198568 --- /dev/null +++ b/764/CH7/EX7.21.b/graph7_21.png diff --git a/764/CH7/EX7.21.b/result7_21.txt b/764/CH7/EX7.21.b/result7_21.txt new file mode 100755 index 000000000..640126a35 --- /dev/null +++ b/764/CH7/EX7.21.b/result7_21.txt @@ -0,0 +1,105 @@ +-->//(Threaded Joints) Example 7.21
+
+-->//Maximum internal pressure MAXP (MPa)
+
+-->MAXP = 2
+ MAXP =
+
+ 2.
+
+-->//Minimum internal pressure MINP (MPa)
+
+-->MINP = 0
+ MINP =
+
+ 0.
+
+-->//Diameter of the circle on which pressure acts D (mm)
+
+-->D = 400
+ D =
+
+ 400.
+
+-->//Assume the stiffness of the bolts to be 1N/mm kb
+
+-->kb = 1
+ kb =
+
+ 1.
+
+-->//Calculate the stiffness of the parts kc (N/mm)
+
+-->kc = 4 * kb
+ kc =
+
+ 4.
+
+-->//Ultimate tensile strength Sut (N/mm2)
+
+-->Sut = 900
+ Sut =
+
+ 900.
+
+-->//Yield strength Syt (N/mm2)
+
+-->Syt = 700
+ Syt =
+
+ 700.
+
+-->//Endurance limit in bending Sdash (N/mm2)
+
+-->Sdash = 300
+ Sdash =
+
+ 300.
+
+-->//Fatigue stress concentration factor Kf
+
+-->Kf = 2.2
+ Kf =
+
+ 2.2
+
+-->//Factor of safety fs
+
+-->fs = 1.5
+ fs =
+
+ 1.5
+
+-->//Number of bolts N
+
+-->N = 8
+ N =
+
+ 8.
+
+-->//Assume expected reliability (%)
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Assume diameter of the bolt to be less than 7.5mm for Kb to be 1
+
+-->d = 1
+ d =
+
+ 1.
+
+-->//As Ka is incorporated into Kf, assume the assembly to be ground
+
+-->//This is just to obtain a random value of Ka
+
+-->op = 1
+ op =
+
+ 1.
+
+
+Core cross-section area of the bolt(A) = 85.172067 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.21.b/solution7_21.sce b/764/CH7/EX7.21.b/solution7_21.sce new file mode 100755 index 000000000..acef2b3bf --- /dev/null +++ b/764/CH7/EX7.21.b/solution7_21.sce @@ -0,0 +1,58 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_21.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_21.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions7_21.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate Ka, Kb and Kc
+[Ka, Kb, Kc] = fluctuate(op, d, reliability)
+//Calculate Kd
+Kd = 1/Kf
+//Calculate the corrected endurance limit stress Se (N/mm2)
+Se = Kb * Kd * Sdash
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+y1 = {Se 0}
+x1 = {0 Sut}
+y2 = {Syt 0}
+x2 = {0 Syt}
+plot(x1,y1,'--*')
+plot(x2,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 7.21)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate the maximum and minimum force of fluid on cover P (N)
+P1 = (%pi/4)*(D^2)*MAXP
+P2 = (%pi/4)*(D^2)*MINP
+//Calculate the initial pre-load on the bolts Pi (N)
+Pi = 1.3 * P1
+//Calculate the maximum and minimum forces in the bolt (N)
+Pmax = Pi + ((kb/(kb + kc))*P1)
+Pmin = Pi + ((kb/(kb + kc))*P2)
+//Calculate the mean force and force amplitude
+Pm = (Pmax + Pmin)/2
+Pa = (Pmax - Pmin)/2
+//Calculate the actual core cross-section area of the bolts Atotal (mm2)
+Atotal = (Pa + (Pi/((1 + (Sut/Se)) * fs)))/(Sut/((1 + (Sut/Se))*fs))
+//Calculate the cross-section area of each bolt A (mm2)
+A = Atotal/N
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nCore cross-section area of the bolt(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.21.c/functions7_21.sci b/764/CH7/EX7.21.c/functions7_21.sci new file mode 100755 index 000000000..b53d32df5 --- /dev/null +++ b/764/CH7/EX7.21.c/functions7_21.sci @@ -0,0 +1,48 @@ +
+//Function generating the values of Ka, Kb and Kc
+function [Ka, Kb, Kc] = fluctuate(s, d, r)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+endfunction
diff --git a/764/CH7/EX7.22.a/data7_22.sci b/764/CH7/EX7.22.a/data7_22.sci new file mode 100755 index 000000000..925874965 --- /dev/null +++ b/764/CH7/EX7.22.a/data7_22.sci @@ -0,0 +1,35 @@ +
+//(Threaded Joints) Example 7.22
+//Refer Fig.7.43 and 7.44 on page 265
+//Weight of machine W (kg)
+W = 200
+//Distance between the machine and the mearest point of support dist (m)
+dist = 1
+//Rotating unbalanced force created by the machine F (N)
+F = 2000
+//Speed of rotation n1 (rpm)
+n1 = 14
+//Weight of channel w (kg/m)
+w = 20
+//Number of bolts N
+N = 2
+//Distance between bolt1 and the nearest point of support l1 (mm)
+l1 = 235 + 35
+//Distance between bolt2 and the nearest point of support l2 (mm)
+l2 = 35
+//Ultimate tensile strength Sut (MPa)
+Sut = 960
+//Yield tensile strength Syt (MPa)
+Syt = 850
+//Endurance limit in bending Sdash (MPa)
+Sdash = 500
+//Fatigue stress concentration factor Kf
+Kf = 3.0
+//Factor of safety fs
+fs = 2
+//Initial pre-load in each bolt Pi (kN)
+Pi = 55
+//Assume the stiffness of the bolts to be 1N/mm kb
+kb = 1
+//Calculate the stiffness of the parts kc
+kc = 3 * kb
diff --git a/764/CH7/EX7.22.b/graph7_22.png b/764/CH7/EX7.22.b/graph7_22.png Binary files differnew file mode 100755 index 000000000..1642a09ee --- /dev/null +++ b/764/CH7/EX7.22.b/graph7_22.png diff --git a/764/CH7/EX7.22.b/result7_22.txt b/764/CH7/EX7.22.b/result7_22.txt new file mode 100755 index 000000000..a95cfbfb2 --- /dev/null +++ b/764/CH7/EX7.22.b/result7_22.txt @@ -0,0 +1,121 @@ +-->//(Threaded Joints) Example 7.22
+
+-->//Refer Fig.7.43 and 7.44 on page 265
+
+-->//Weight of machine W (kg)
+
+-->W = 200
+ W =
+
+ 200.
+
+-->//Distance between the machine and the mearest point of support dist (m)
+
+-->dist = 1
+ dist =
+
+ 1.
+
+-->//Rotating unbalanced force created by the machine F (N)
+
+-->F = 2000
+ F =
+
+ 2000.
+
+-->//Speed of rotation n1 (rpm)
+
+-->n1 = 14
+ n1 =
+
+ 14.
+
+-->//Weight of channel w (kg/m)
+
+-->w = 20
+ w =
+
+ 20.
+
+-->//Number of bolts N
+
+-->N = 2
+ N =
+
+ 2.
+
+-->//Distance between bolt1 and the nearest point of support l1 (mm)
+
+-->l1 = 235 + 35
+ l1 =
+
+ 270.
+
+-->//Distance between bolt2 and the nearest point of support l2 (mm)
+
+-->l2 = 35
+ l2 =
+
+ 35.
+
+-->//Ultimate tensile strength Sut (MPa)
+
+-->Sut = 960
+ Sut =
+
+ 960.
+
+-->//Yield tensile strength Syt (MPa)
+
+-->Syt = 850
+ Syt =
+
+ 850.
+
+-->//Endurance limit in bending Sdash (MPa)
+
+-->Sdash = 500
+ Sdash =
+
+ 500.
+
+-->//Fatigue stress concentration factor Kf
+
+-->Kf = 3.0
+ Kf =
+
+ 3.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Initial pre-load in each bolt Pi (kN)
+
+-->Pi = 55
+ Pi =
+
+ 55.
+
+-->//Assume the stiffness of the bolts to be 1N/mm kb
+
+-->kb = 1
+ kb =
+
+ 1.
+
+-->//Calculate the stiffness of the parts kc
+
+-->kc = 3 * kb
+ kc =
+
+ 3.
+
+
+Core cross-section area of the bolt(A) = 197.638259 mm2
+
+Design is safe
+
\ No newline at end of file diff --git a/764/CH7/EX7.22.b/solution7_22.sce b/764/CH7/EX7.22.b/solution7_22.sce new file mode 100755 index 000000000..c66132b5e --- /dev/null +++ b/764/CH7/EX7.22.b/solution7_22.sce @@ -0,0 +1,68 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_22.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_22.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the value of Kd
+Kd = 1/Kf
+//Calculate the endurance limit stress for bolt Se (N/mm2)
+Se = Kd * Sdash
+//Case1: Rotating force acting downward
+//Calculate the force P1d (N)
+P1d = ((w * 9.81 * (dist/2) * 1000) + (((W * 9.81) + F)*(dist * 1000)))/((l1 + ((l2^2)/l1)))
+//Case2: Rotating force acting upward
+//Calculate the force P1u (N)
+P1u = ((w * 9.81 * (dist/2) * 1000) + (((W * 9.81) - F)*(dist * 1000)))/((l1 + ((l2^2)/l1)))
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+y1 = {Se 0}
+x1 = {0 Sut}
+y2 = {Syt 0}
+x2 = {0 Syt}
+plot(x1,y1,'--*')
+plot(x2,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 7.22)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate the maximum and minimum forces on the bolt (N)
+if (P1d > P1u) then
+ Pmax = (Pi * 1000) + ((kb/(kb + kc))*P1d)
+ Pmin = (Pi * 1000) + ((kb/(kb + kc))*P1u)
+else
+ Pmin = (Pi * 1000) + ((kb/(kb + kc))*P1d)
+ Pmax = (Pi * 1000) + ((kb/(kb + kc))*P1u)
+end
+//Calculate the mean force and force amplitude (N)
+Pm = (Pmax + Pmin)/2
+Pa = (Pmax - Pmin)/2
+theta = atand(Pa/Pm)
+//Calculate the actual core cross-section area of the bolt A (mm2)
+A = (Pa + ((Pi*1000)/(((1/tand(theta)) + (Sut/Se)) * fs)))/(Sut/(((1/tand(theta)) + (Sut/Se))*fs))
+//Choose proper diameter from Table 7.1
+//Check for static design
+//Calculate maximum tensile stress sigmat (N/mm2)
+sigmat = Pmax/A
+//Calculate the factor of safety fsNew
+fsNew = Syt/sigmat
+//Print results
+printf('\nCore cross-section area of the bolt(A) = %f mm2\n',A)
+if (fsNew > fs) then
+ printf('\nDesign is safe\n')
+else
+ printf('\nDesign is not safe\n')
+end
diff --git a/764/CH7/EX7.23.a/data7_23.sci b/764/CH7/EX7.23.a/data7_23.sci new file mode 100755 index 000000000..7ca327ea5 --- /dev/null +++ b/764/CH7/EX7.23.a/data7_23.sci @@ -0,0 +1,29 @@ +
+//(Threaded Joints) Example 7.23
+//Refer Fig.7.47 on page 267
+//Maximum pressure in the vessel Pmax (MPa)
+Pmax = 1
+//Minimum pressure in the vessel Pmin (MPa)
+Pmin = 0
+//Seating pressure for the gasket PSeat (MPa)
+PSeat = 5
+//Number of bolts N
+N = 8
+//Assume the stiffness of the bolts to be 1N/mm kb
+kb = 1
+//Calculate the stiffness of the parts kc
+kc = 4 * kb
+//Factor of safety fs
+fs = 2
+//Ultimate tensile strength of bolt material Sut (N/mm2)
+Sut = 780
+//Yield tensile strength of the bolt material Syt (N/mm2)
+Syt = 580
+//Endurance limit in bending Sdash (N/mm2)
+Sdash = 260
+//Fatigue stress concentration factor Kf
+Kf = 3
+//Inner diameter of the gasket Di (mm)
+Di = 300
+//Outer diameter of the gasket Do (mm)
+Do = 300 + (2 * 50)
diff --git a/764/CH7/EX7.23.b/graph7_23.png b/764/CH7/EX7.23.b/graph7_23.png Binary files differnew file mode 100755 index 000000000..822633721 --- /dev/null +++ b/764/CH7/EX7.23.b/graph7_23.png diff --git a/764/CH7/EX7.23.b/result7_23.txt b/764/CH7/EX7.23.b/result7_23.txt new file mode 100755 index 000000000..706e583c2 --- /dev/null +++ b/764/CH7/EX7.23.b/result7_23.txt @@ -0,0 +1,98 @@ +-->//(Threaded Joints) Example 7.23
+
+-->//Refer Fig.7.47 on page 267
+
+-->//Maximum pressure in the vessel Pmax (MPa)
+
+-->Pmax = 1
+ Pmax =
+
+ 1.
+
+-->//Minimum pressure in the vessel Pmin (MPa)
+
+-->Pmin = 0
+ Pmin =
+
+ 0.
+
+-->//Seating pressure for the gasket PSeat (MPa)
+
+-->PSeat = 5
+ PSeat =
+
+ 5.
+
+-->//Number of bolts N
+
+-->N = 8
+ N =
+
+ 8.
+
+-->//Assume the stiffness of the bolts to be 1N/mm kb
+
+-->kb = 1
+ kb =
+
+ 1.
+
+-->//Calculate the stiffness of the parts kc
+
+-->kc = 4 * kb
+ kc =
+
+ 4.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->//Ultimate tensile strength of bolt material Sut (N/mm2)
+
+-->Sut = 780
+ Sut =
+
+ 780.
+
+-->//Yield tensile strength of the bolt material Syt (N/mm2)
+
+-->Syt = 580
+ Syt =
+
+ 580.
+
+-->//Endurance limit in bending Sdash (N/mm2)
+
+-->Sdash = 260
+ Sdash =
+
+ 260.
+
+-->//Fatigue stress concentration factor Kf
+
+-->Kf = 3
+ Kf =
+
+ 3.
+
+-->//Inner diameter of the gasket Di (mm)
+
+-->Di = 300
+ Di =
+
+ 300.
+
+-->//Outer diameter of the gasket Do (mm)
+
+-->Do = 300 + (2 * 50)
+ Do =
+
+ 400.
+
+
+Core cross-section area of the bolt(A) = 74.889729 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.23.b/solution7_23.sce b/764/CH7/EX7.23.b/solution7_23.sce new file mode 100755 index 000000000..11467f4cd --- /dev/null +++ b/764/CH7/EX7.23.b/solution7_23.sce @@ -0,0 +1,54 @@ +
+function[] = plot_format()
+ //Get the handle of current axes
+ g = gca()
+ //Give labels and set label properties
+ g.labels_font_color=5
+ g.font_size=3
+ g.grid=[1,1]
+ g.box="off"
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_23.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_23.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the value of Kd
+Kd = 1/Kf
+//Calculate the endurance limit stress for bolt Se (N/mm2)
+Se = Kd * Sdash
+//Plot modified Goodman diagram
+//The common quadrilateral in the plot is the area of concern
+y1 = {Se 0}
+x1 = {0 Sut}
+y2 = {Syt 0}
+x2 = {0 Syt}
+plot(x1,y1,'--*')
+plot(x2,y2,'-*')
+plot_format()
+title('Modified Goodman diagram (Example 7.23)')
+xlabel('sigmaM (N/mm2)')
+ylabel('sigmaA (N/mm2)')
+//Calculate the initial pre-load in the bolts Pitotal (N)
+Pitotal = PSeat*((%pi/4)*((Do^2) - (Di^2)))
+//Calculate the pre-load per bolt Pi (N)
+Pi = Pitotal/N
+//Calculate the total external load Fmax per bolt(N)
+Fmax = ((%pi/4)*((Di + ((Do - Di)/2))^2)*Pmax)/N
+//Calculate the total external load Fmin per bolt(N)
+Fmin = ((%pi/4)*((Di + ((Do - Di)/2))^2)*Pmin)/N
+//Calculate the maximum and minimum forces on the bolt (N)
+PMAX = Pi + ((kb/(kb + kc)) * Fmax)
+PMIN = Pi + ((kb/(kb + kc)) * Fmin)
+//Calculate the mean force and force amplitude (N)
+Pm = (PMAX + PMIN)/2
+Pa = (PMAX - PMIN)/2
+//Calculate the actual core cross-section area of the bolt A (mm2)
+A = (Pa + (Pi/((1 + (Sut/Se)) * fs)))/(Sut/((1 + (Sut/Se))*fs))
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nCore cross-section area of the bolt(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.3.a/data7_3.sci b/764/CH7/EX7.3.a/data7_3.sci new file mode 100755 index 000000000..b04ddc374 --- /dev/null +++ b/764/CH7/EX7.3.a/data7_3.sci @@ -0,0 +1,17 @@ +
+//(Threaded Joints) Example 7.3
+//Refer Fig.7.16 on page 233
+//Eccentric force acting on the structure P (kN)
+P = 10
+//Eccentricity of the force from the C.G. of the bolts e (mm)
+e = 500
+//Centre distance between bolts 1 and 2 dist1 (mm)
+dist1 = 200
+//Centre distance between bolts 1 and 3 dist2 (mm)
+dist2 = 150
+//Tensile yield strength of 30C8 Syt (N/mm2)
+Syt = 400
+//Factor of safety fs
+fs = 2.5
+//Number of bolts N
+N = 4
diff --git a/764/CH7/EX7.3.b/result7_3.txt b/764/CH7/EX7.3.b/result7_3.txt new file mode 100755 index 000000000..1c7959344 --- /dev/null +++ b/764/CH7/EX7.3.b/result7_3.txt @@ -0,0 +1,56 @@ +-->//(Threaded Joints) Example 7.3
+
+-->//Refer Fig.7.16 on page 233
+
+-->//Eccentric force acting on the structure P (kN)
+
+-->P = 10
+ P =
+
+ 10.
+
+-->//Eccentricity of the force from the C.G. of the bolts e (mm)
+
+-->e = 500
+ e =
+
+ 500.
+
+-->//Centre distance between bolts 1 and 2 dist1 (mm)
+
+-->dist1 = 200
+ dist1 =
+
+ 200.
+
+-->//Centre distance between bolts 1 and 3 dist2 (mm)
+
+-->dist2 = 150
+ dist2 =
+
+ 150.
+
+-->//Tensile yield strength of 30C8 Syt (N/mm2)
+
+-->Syt = 400
+ Syt =
+
+ 400.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+
+Standard size of the bolts is M20
+
\ No newline at end of file diff --git a/764/CH7/EX7.3.b/solution7_3.sce b/764/CH7/EX7.3.b/solution7_3.sce new file mode 100755 index 000000000..ac216e404 --- /dev/null +++ b/764/CH7/EX7.3.b/solution7_3.sce @@ -0,0 +1,47 @@ +
+//Function to standardise the given bolt-size
+function[v] = standard(w)
+ v = ceil(w)
+ rem = pmodulo(v,10)
+ if (rem ~= 0) then
+ v = v + (10 - rem)
+ end
+endfunction
+
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible shear stress tau (N/mm2)
+tau = ((50/100)*Syt)/fs
+//Calculate the distance between bolt1 and C.G. of all bolts res (mm)
+res = (((dist1/2)^2) + ((dist2/2)^2))^(1/2)
+//Calculate the primary shear force at bolt1 Pshear (N)
+Pshear = (P * 1000)/N
+//Calculate the secondary shear force at bolt1 Sshear (N)
+Sshear = (P * 1000 * e)/(N * res)
+//Calculate angle theta (degree)
+theta = atand(dist2/dist1)
+//Calculate the resultant force on bolt1 P1 (N)
+P1 = (((Sshear * cosd(theta) - Pshear)^2) + ((Sshear * sind(theta))^2))^(1/2)
+//Calculate the resultant force on bolt2 P2 (N)
+P2 = (((Sshear * cosd(theta) + Pshear)^2) + ((Sshear * sind(theta))^2))^(1/2)
+//Obtain the bolt subjected to maximum shear force Pmax (N)
+if (P1 > P2) then
+ Pmax = P1
+else
+ Pmax = P2
+end
+//Calculate the core diameter of the bolt dc (mm)
+dc = ((4 * Pmax)/(tau * %pi))^(1/2)
+//Calculate the nominal diameter of the bolt d (mm)
+d = dc/0.8
+//Standardise the bolt size
+d = standard(d)
+//Print results
+printf('\nStandard size of the bolts is M%d\n',d)
diff --git a/764/CH7/EX7.4.a/data7_4.sci b/764/CH7/EX7.4.a/data7_4.sci new file mode 100755 index 000000000..8321fdb20 --- /dev/null +++ b/764/CH7/EX7.4.a/data7_4.sci @@ -0,0 +1,17 @@ +
+//(Threaded Joints) Example 7.4
+//Refer Fig.7.19 on page 235
+//Force acting on the steel plate P (kN)
+P = 5
+//Yield tensile strength of 45C8 Syt (N/mm2)
+Syt = 380
+//Factor of safety fs
+fs = 3
+//Number of bolts N
+N = 3
+//Eccentricity value (distance between C.G. of bolts and force) e (mm)
+e = 200 + 30 + 75
+//Distance between bolt1 and bolt2 r1 (mm)
+r1 = 75
+//Distance between bolt2 and bolt3 r3 (mm)
+r3 = 75
diff --git a/764/CH7/EX7.4.b/result7_4.txt b/764/CH7/EX7.4.b/result7_4.txt new file mode 100755 index 000000000..24a9dd2a1 --- /dev/null +++ b/764/CH7/EX7.4.b/result7_4.txt @@ -0,0 +1,56 @@ +-->//(Threaded Joints) Example 7.4
+
+-->//Refer Fig.7.19 on page 235
+
+-->//Force acting on the steel plate P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Yield tensile strength of 45C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Factor of safety fs
+
+-->fs = 3
+ fs =
+
+ 3.
+
+-->//Number of bolts N
+
+-->N = 3
+ N =
+
+ 3.
+
+-->//Eccentricity value (distance between C.G. of bolts and force) e (mm)
+
+-->e = 200 + 30 + 75
+ e =
+
+ 305.
+
+-->//Distance between bolt1 and bolt2 r1 (mm)
+
+-->r1 = 75
+ r1 =
+
+ 75.
+
+-->//Distance between bolt2 and bolt3 r3 (mm)
+
+-->r3 = 75
+ r3 =
+
+ 75.
+
+
+The standard size of the bolts is M20
+
\ No newline at end of file diff --git a/764/CH7/EX7.4.b/solution7_4.sce b/764/CH7/EX7.4.b/solution7_4.sce new file mode 100755 index 000000000..d9a2ee3c3 --- /dev/null +++ b/764/CH7/EX7.4.b/solution7_4.sce @@ -0,0 +1,34 @@ +
+//Function to standardise the given bolt-size
+function[v] = standard(w)
+ v = ceil(w)
+ rem = pmodulo(v,10)
+ if (rem ~= 0) then
+ v = v + (10 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible shear stress tau (N/mm2)
+tau = ((50/100)*Syt)/fs
+//Calculate the primary shear force on bolt3 Pshear (N)
+Pshear = (P * 1000)/N
+//Calculate the secondary shear force on bolt3 Sshear (N)
+Sshear = (P * 1000 * e * r1)/((r1^2) + (r3^2))
+//Calculate the resultant force on bolt3 P3 (N)
+P3 = Pshear + Sshear
+//Calculate the core diameter of the bolt dc (mm)
+dc = ((4 * P3)/(%pi * tau))^(1/2)
+//Calculate the nominal diameter of the bolt d (mm)
+d = dc/0.8
+//Standardise the bolt size
+d = standard(d)
+//Print results
+printf('\nThe standard size of the bolts is M%d\n',d)
diff --git a/764/CH7/EX7.5.a/data7_5.sci b/764/CH7/EX7.5.a/data7_5.sci new file mode 100755 index 000000000..5855205a7 --- /dev/null +++ b/764/CH7/EX7.5.a/data7_5.sci @@ -0,0 +1,17 @@ +
+//(Threaded Joints) Example 7.5
+//Refer Fig.7.20 on page 236
+//Load applied on the bracket P (kN)
+P = 25
+//Eccentricity value e (mm)
+e = 100
+//Height of bolt1 from the base l1 (mm)
+l1 = 150
+//Height of bolt2 from the base l2 (mm)
+l2 = 25
+//Yield tensile strength of 45C8 Syt (N/mm2)
+Syt = 380
+//Factor of safety fs
+fs = 2.5
+//Number of bolts N
+N = 4
diff --git a/764/CH7/EX7.5.b/result7_5.txt b/764/CH7/EX7.5.b/result7_5.txt new file mode 100755 index 000000000..c6659c4b2 --- /dev/null +++ b/764/CH7/EX7.5.b/result7_5.txt @@ -0,0 +1,56 @@ +-->//(Threaded Joints) Example 7.5
+
+-->//Refer Fig.7.20 on page 236
+
+-->//Load applied on the bracket P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Eccentricity value e (mm)
+
+-->e = 100
+ e =
+
+ 100.
+
+-->//Height of bolt1 from the base l1 (mm)
+
+-->l1 = 150
+ l1 =
+
+ 150.
+
+-->//Height of bolt2 from the base l2 (mm)
+
+-->l2 = 25
+ l2 =
+
+ 25.
+
+-->//Yield tensile strength of 45C8 Syt (N/mm2)
+
+-->Syt = 380
+ Syt =
+
+ 380.
+
+-->//Factor of safety fs
+
+-->fs = 2.5
+ fs =
+
+ 2.5
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+
+Area at the core cross-section(A) = 98.022213 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.5.b/solution7_5.sce b/764/CH7/EX7.5.b/solution7_5.sce new file mode 100755 index 000000000..55ae0923c --- /dev/null +++ b/764/CH7/EX7.5.b/solution7_5.sce @@ -0,0 +1,33 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_5.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the permissible shear stress tau (N/mm2)
+tau = ((50/100)*Syt)/fs
+//Calculate the direct shear force in bolt Dshear (N)
+Dshear = (P * 1000)/N
+//Assume the area at core cross-section to be 1mm2 A
+A = 1
+//Calculate the direct shear stress in bolt Sshear (N/mm2)
+Sshear = Dshear/A
+//Calculate the tensile force on the bolts Ftensile (N)
+if (l1 > l2) then
+ Ftensile = (P * 1000 * e * l1)/(2*((l1^2) + (l2^2)))
+else
+ Ftensile = (P * 1000 * e * l2)/(2*((l1^2) + (l2^2)))
+end
+//Calculate tensile stress in appropriate bolt sigmat (N/mm2)
+sigmat = Ftensile/A
+//Calculate the principal shear stress in bolt tauMax (N/mm2)
+tauMax = (((sigmat/2)^2) + (Sshear^2))^(1/2)
+//Calculate the actual area of core of cross-section A (mm2)
+A = tauMax/tau
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
+
diff --git a/764/CH7/EX7.6.a/data7_6.sci b/764/CH7/EX7.6.a/data7_6.sci new file mode 100755 index 000000000..c8264780c --- /dev/null +++ b/764/CH7/EX7.6.a/data7_6.sci @@ -0,0 +1,15 @@ +
+//(Threaded Joints) Example 7.6
+//Refer Fig.7.21 on page 237
+//Number of bolts N
+N = 4
+//Allowable tensile stress in the bolts sigmaMax (N/mm2)
+sigmaMax = 35
+//Load acting on the bracket P (kN)
+P = 25
+//Eccentricity value e (mm)
+e = 500
+//Height of bolt1 from the base l1 (mm)
+l1 = 550
+//Height of bolt2 from the base l2 (mm)
+l2 = 50
diff --git a/764/CH7/EX7.6.b/result7_6.txt b/764/CH7/EX7.6.b/result7_6.txt new file mode 100755 index 000000000..492bb7078 --- /dev/null +++ b/764/CH7/EX7.6.b/result7_6.txt @@ -0,0 +1,49 @@ +-->//(Threaded Joints) Example 7.6
+
+-->//Refer Fig.7.21 on page 237
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+-->//Allowable tensile stress in the bolts sigmaMax (N/mm2)
+
+-->sigmaMax = 35
+ sigmaMax =
+
+ 35.
+
+-->//Load acting on the bracket P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Eccentricity value e (mm)
+
+-->e = 500
+ e =
+
+ 500.
+
+-->//Height of bolt1 from the base l1 (mm)
+
+-->l1 = 550
+ l1 =
+
+ 550.
+
+-->//Height of bolt2 from the base l2 (mm)
+
+-->l2 = 50
+ l2 =
+
+ 50.
+
+
+Area at the core cross-section(A) = 401.446244 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.6.b/solution7_6.sce b/764/CH7/EX7.6.b/solution7_6.sce new file mode 100755 index 000000000..f502d4716 --- /dev/null +++ b/764/CH7/EX7.6.b/solution7_6.sce @@ -0,0 +1,30 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the direct shear force on each bolt Dshear (N)
+Dshear = (P * 1000)/N
+//Assume the core cross-section area to be 1mm2 A
+A = 1
+//Calculate the direct shear stress in each bolt tau (N/mm2)
+tau = Dshear/A
+//Calculate the tensile force on appropriate bolt Ftensile (N)
+if (l1 > l2) then
+ Ftensile = (P * 1000 * e *l1)/(2*((l1^2) + (l2^2)))
+else
+ Ftensile = (P * 1000 * e *l2)/(2*((l1^2) + (l2^2)))
+end
+//Calculate the tensile stress in bolt1 sigmat (N/mm2)
+sigmat = Ftensile/A
+//Calculate the principal stress in bolt1 S (N/mm2)
+S = (sigmat/2) + (((sigmat/2)^2) + (tau^2))^(1/2)
+//Calculate the actual core cross-section area of the bolt A (mm2)
+A = S/sigmaMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.7.a/data7_7.sci b/764/CH7/EX7.7.a/data7_7.sci new file mode 100755 index 000000000..3cf1b0910 --- /dev/null +++ b/764/CH7/EX7.7.a/data7_7.sci @@ -0,0 +1,17 @@ +
+//(Threaded Joints) Example 7.7
+//Refer Fig.7.22 on page 238
+//Number of bolts N
+N = 6
+//Load acting on the bracket P (kN)
+P = 50
+//Height of bolt1 from the base l1 (mm)
+l1 = 300
+//Height of bolt2 from the base l2 (mm)
+l2 = 200
+//Height of bolt3 from the base l3 (mm)
+l3 = 100
+//Eccentricity value l (mm)
+l = 250
+//Maximum permissible tensile stress in bolts sigmaMax (N/mm2)
+sigmaMax = 100
diff --git a/764/CH7/EX7.7.b/result7_7.txt b/764/CH7/EX7.7.b/result7_7.txt new file mode 100755 index 000000000..8b185977d --- /dev/null +++ b/764/CH7/EX7.7.b/result7_7.txt @@ -0,0 +1,56 @@ +-->//(Threaded Joints) Example 7.7
+
+-->//Refer Fig.7.22 on page 238
+
+-->//Number of bolts N
+
+-->N = 6
+ N =
+
+ 6.
+
+-->//Load acting on the bracket P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Height of bolt1 from the base l1 (mm)
+
+-->l1 = 300
+ l1 =
+
+ 300.
+
+-->//Height of bolt2 from the base l2 (mm)
+
+-->l2 = 200
+ l2 =
+
+ 200.
+
+-->//Height of bolt3 from the base l3 (mm)
+
+-->l3 = 100
+ l3 =
+
+ 100.
+
+-->//Eccentricity value l (mm)
+
+-->l = 250
+ l =
+
+ 250.
+
+-->//Maximum permissible tensile stress in bolts sigmaMax (N/mm2)
+
+-->sigmaMax = 100
+ sigmaMax =
+
+ 100.
+
+
+Area at the core cross-section(A) = 133.928571 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.7.b/solution7_7.sce b/764/CH7/EX7.7.b/solution7_7.sce new file mode 100755 index 000000000..7152777ed --- /dev/null +++ b/764/CH7/EX7.7.b/solution7_7.sce @@ -0,0 +1,22 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the tensile force induced in appropriate bolt P1 (N)
+if ((l1 > l2) & (l1 > l3)) then
+ P1 = (P * 1000 * l * l1)/(2*((l1^2) + (l2^2) + (l3^2)))
+elseif ((l2 > l1) & (l2 > l3))
+ P1 = (P * 1000 * l * l2)/(2*((l1^2) + (l2^2) + (l3^2)))
+else
+ P1 = (P * 1000 * l * l3)/(2*((l1^2) + (l2^2) + (l3^2)))
+end
+//Calculate the core cross-section area of the bolt A (mm2)
+A = P1/sigmaMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.8.a/data7_8.sci b/764/CH7/EX7.8.a/data7_8.sci new file mode 100755 index 000000000..1d39288b6 --- /dev/null +++ b/764/CH7/EX7.8.a/data7_8.sci @@ -0,0 +1,15 @@ +
+//(Threaded Joints) Example 7.8
+//Refer Fig.7.23 on page 239
+//Number of bolts N
+N = 2
+//Permissible tensile stress in the bolts sigmaMax (N/mm2)
+sigmaMax = 75
+//Load acting on the bracket P (kN)
+P = 20
+//Eccentricity value e (mm)
+e = 550
+//Distance of bolt1 from the C l1 (mm)
+l1 = 450
+//Distance of bolt2 from the C l2 (mm)
+l2 = 50
diff --git a/764/CH7/EX7.8.b/result7_8.txt b/764/CH7/EX7.8.b/result7_8.txt new file mode 100755 index 000000000..eef3a3d02 --- /dev/null +++ b/764/CH7/EX7.8.b/result7_8.txt @@ -0,0 +1,49 @@ +-->//(Threaded Joints) Example 7.8
+
+-->//Refer Fig.7.23 on page 239
+
+-->//Number of bolts N
+
+-->N = 2
+ N =
+
+ 2.
+
+-->//Permissible tensile stress in the bolts sigmaMax (N/mm2)
+
+-->sigmaMax = 75
+ sigmaMax =
+
+ 75.
+
+-->//Load acting on the bracket P (kN)
+
+-->P = 20
+ P =
+
+ 20.
+
+-->//Eccentricity value e (mm)
+
+-->e = 550
+ e =
+
+ 550.
+
+-->//Distance of bolt1 from the C l1 (mm)
+
+-->l1 = 450
+ l1 =
+
+ 450.
+
+-->//Distance of bolt2 from the C l2 (mm)
+
+-->l2 = 50
+ l2 =
+
+ 50.
+
+
+Area at the core cross-section(A) = 455.284553 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.8.b/solution7_8.sce b/764/CH7/EX7.8.b/solution7_8.sce new file mode 100755 index 000000000..5f257bd02 --- /dev/null +++ b/764/CH7/EX7.8.b/solution7_8.sce @@ -0,0 +1,24 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_8.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_8.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the direct tensile force Dtensile (N)
+Dtensile = (P * 1000)/N
+//Calculate the tensile force due to bracket tilting tendency Ftensile (N)
+if (l1 > l2) then
+ Ftensile = (P * 1000 * e * l1)/((l1^2) + (l2^2))
+else
+ Ftensile = (P * 1000 * e * l2)/((l1^2) + (l2^2))
+end
+//Calculate the resultant tensile force on appropriate bolt res (N)
+res = Dtensile + Ftensile
+//Calculate the core cross-section area of bolt A (mm2)
+A = res/sigmaMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH7/EX7.9.a/data7_9.sci b/764/CH7/EX7.9.a/data7_9.sci new file mode 100755 index 000000000..2820dafc4 --- /dev/null +++ b/764/CH7/EX7.9.a/data7_9.sci @@ -0,0 +1,15 @@ +
+//(Threaded Joints)Example 7.9
+//Refer Fig.7.24 on page 240
+//Number of bolts N
+N = 4
+//Load supported by the bracket P (kN)
+P = 25
+//Distance of bolt1 from C l1 (mm)
+l1 = 50
+//Distance of bolt2 from C l2 (mm)
+l2 = 200
+//Eccentricity value l (mm)
+l = 400
+//Permissible tensile stress in the bolt sigmaMax (N/mm2)
+sigmaMax = 50
diff --git a/764/CH7/EX7.9.b/result7_9.txt b/764/CH7/EX7.9.b/result7_9.txt new file mode 100755 index 000000000..e9e4fc763 --- /dev/null +++ b/764/CH7/EX7.9.b/result7_9.txt @@ -0,0 +1,49 @@ +-->//(Threaded Joints)Example 7.9
+
+-->//Refer Fig.7.24 on page 240
+
+-->//Number of bolts N
+
+-->N = 4
+ N =
+
+ 4.
+
+-->//Load supported by the bracket P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Distance of bolt1 from C l1 (mm)
+
+-->l1 = 50
+ l1 =
+
+ 50.
+
+-->//Distance of bolt2 from C l2 (mm)
+
+-->l2 = 200
+ l2 =
+
+ 200.
+
+-->//Eccentricity value l (mm)
+
+-->l = 400
+ l =
+
+ 400.
+
+-->//Permissible tensile stress in the bolt sigmaMax (N/mm2)
+
+-->sigmaMax = 50
+ sigmaMax =
+
+ 50.
+
+
+Area at the core cross-section(A) = 595.588235 mm2
+
\ No newline at end of file diff --git a/764/CH7/EX7.9.b/solution7_9.sce b/764/CH7/EX7.9.b/solution7_9.sce new file mode 100755 index 000000000..e9c2819d8 --- /dev/null +++ b/764/CH7/EX7.9.b/solution7_9.sce @@ -0,0 +1,24 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution7_9.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data7_9.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the direct tensile stress in bolts Dtensile (N)
+Dtensile = (P * 1000)/N
+//Calculate the tensile force on appropriate bolt due to tilting tendency of the bracket Ftensile (N)
+if (l1 > l2) then
+ Ftensile = (P * 1000 * l * l1)/(2*((l1^2) + (l2^2)))
+else
+ Ftensile = (P * 1000 * l * l2)/(2*((l1^2) + (l2^2)))
+end
+//Calculate the resultant tensile force res (N)
+res = Dtensile + Ftensile
+//Calculate the core cross-section area of bolts A (mm2)
+A = res/sigmaMax
+//Choose proper diameter from Table 7.1
+//Print results
+printf('\nArea at the core cross-section(A) = %f mm2\n',A)
diff --git a/764/CH8/EX8.1.a/data8_1.sci b/764/CH8/EX8.1.a/data8_1.sci new file mode 100755 index 000000000..225e2bf6f --- /dev/null +++ b/764/CH8/EX8.1.a/data8_1.sci @@ -0,0 +1,11 @@ +
+//(Welded and Riveted Joints) Example 8.1
+//Refer Fig.8.6 on page 277
+//Shell inner diameter D (m)
+D = 2.5
+//Thickness of the cylindrical shell and hemispherical cover t (mm)
+t = 12
+//Permissible tensile stress in the weld sigmat (N/mm2)
+sigmat = 85
+//Efficiency of the welded joint eta
+eta = 0.85
diff --git a/764/CH8/EX8.1.b/result8_1.txt b/764/CH8/EX8.1.b/result8_1.txt new file mode 100755 index 000000000..72d560fc0 --- /dev/null +++ b/764/CH8/EX8.1.b/result8_1.txt @@ -0,0 +1,35 @@ +-->//(Welded and Riveted Joints) Example 8.1
+
+-->//Refer Fig.8.6 on page 277
+
+-->//Shell inner diameter D (m)
+
+-->D = 2.5
+ D =
+
+ 2.5
+
+-->//Thickness of the cylindrical shell and hemispherical cover t (mm)
+
+-->t = 12
+ t =
+
+ 12.
+
+-->//Permissible tensile stress in the weld sigmat (N/mm2)
+
+-->sigmat = 85
+ sigmat =
+
+ 85.
+
+-->//Efficiency of the welded joint eta
+
+-->eta = 0.85
+ eta =
+
+ 0.85
+
+
+The allowable internal pressure(p) = 1.387200 N/mm2
+
\ No newline at end of file diff --git a/764/CH8/EX8.1.b/solution8_1.sce b/764/CH8/EX8.1.b/solution8_1.sce new file mode 100755 index 000000000..caa7fd838 --- /dev/null +++ b/764/CH8/EX8.1.b/solution8_1.sce @@ -0,0 +1,17 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_1.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_1.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the length of the welded joint l (mm)
+l = %pi * D * 1000
+//Calculate the tensile force on the plates P (N)
+P = sigmat * t * l * eta
+//Calculate the allowable internal pressure p (N/mm2)
+p = P/((%pi/4)*((D*1000)^2))
+//Print results
+printf('\nThe allowable internal pressure(p) = %f N/mm2\n',p)
diff --git a/764/CH8/EX8.10.a/data8_10.sci b/764/CH8/EX8.10.a/data8_10.sci new file mode 100755 index 000000000..395f2245f --- /dev/null +++ b/764/CH8/EX8.10.a/data8_10.sci @@ -0,0 +1,13 @@ +
+//(Welded and Riveted Joints) Example 8.10
+//Refer Fig. 8.25 on page 287
+//Eccentric force acting on the welded connection P (kN)
+P = 60
+//Permissible shear stress for the weld tau (N/mm2)
+tau = 100
+//Width of the plate w (mm)
+w = 100
+//Length of the transverse welds l (mm)
+l = 50
+//Force eccentricity e (mm)
+e = 150 + (l/2)
diff --git a/764/CH8/EX8.10.b/result8_10.txt b/764/CH8/EX8.10.b/result8_10.txt new file mode 100755 index 000000000..aeece6e69 --- /dev/null +++ b/764/CH8/EX8.10.b/result8_10.txt @@ -0,0 +1,44 @@ +-->//(Welded and Riveted Joints) Example 8.10
+
+-->//Refer Fig. 8.25 on page 287
+
+-->//Eccentric force acting on the welded connection P (kN)
+
+-->P = 60
+ P =
+
+ 60.
+
+-->//Permissible shear stress for the weld tau (N/mm2)
+
+-->tau = 100
+ tau =
+
+ 100.
+
+-->//Width of the plate w (mm)
+
+-->w = 100
+ w =
+
+ 100.
+
+-->//Length of the transverse welds l (mm)
+
+-->l = 50
+ l =
+
+ 50.
+
+-->//Force eccentricity e (mm)
+
+-->e = 150 + (l/2)
+ e =
+
+ 175.
+
+
+Throat of the weld(t) = 20.186421 mm
+
+Thickness of the weld(h) = 28.552222 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.10.b/solution8_10.sce b/764/CH8/EX8.10.b/solution8_10.sce new file mode 100755 index 000000000..87ea015a0 --- /dev/null +++ b/764/CH8/EX8.10.b/solution8_10.sce @@ -0,0 +1,56 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_10.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_10.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the x-coordinate of the C.G. of the three welds, origin being at G3 on weld3, xbar (mm)
+xbar = ((l * (l/2)) + (l * (l/2)) + (w * 0))/(l + l + w)
+//Calculate the y-cordinate of the C.G. of the three welds, origin being at G3 on weld3, ybar (mm)
+ybar = ((l * (w/2)) + (l * ((-1 * w)/2)) + (w * 0))/(l + l + w)
+//Assume the throat of the welds to be 1mm t
+t = 1
+//Calculate the areas of the three welds (mm2)
+A1 = l * t
+A2 = l * t
+A3 = w * t
+//Calculate the total area of the welds A (mm2)
+A = A1 + A2 + A3
+//Calculate the primary shear stress in the weld tau1 (N/mm2)
+tau1 = (P * 1000)/A
+//Calculate the distance of the farthest point from the C.G. r (mm)
+//Angles in degree
+r = sqrt(((l - xbar)^2) + ((w/2)^2))
+theta = atand((w/2)/(l - xbar))
+//Calculate the inclination of the of the secondary shear stress with the horizontal fi (degree)
+fi = 90 - theta
+//Calculate force eccentricity e (mm)
+e = 150 + l - xbar
+//Maximum bending moment acting on the welds M (N/mm)
+M = (P * 1000) * e
+//Distance between the C.Gs of the three welds from the overall C.G (mm)
+r1 = sqrt((((l/2) - xbar)^2) + ((w/2)^2))
+r2 = sqrt((((l/2) - xbar)^2) + ((w/2)^2))
+r3 = xbar
+//Calculate the polar moments of inertia of the three welds (mm4)
+J1 = A1*(((l^2)/12) + (r1^2))
+J2 = A2*(((l^2)/12) + (r2^2))
+J3 = A3*(((w^2)/12) + (r3^2))
+//Calculate the secondary shear stress tau2 (N/mm2)
+tau2 = (M * r)/(J1 + J2 + J3)
+//Total vertical component of the resultant shear stress vert (N/mm2)
+vert = tau1 + (tau2 * sind(fi))
+//Total horizontal component of the resultant shear stress hori (N/mm2)
+hori = tau2 * cosd(fi)
+//Calculate the resultant shear stress res (N/mm2)
+res = sqrt((vert^2) + (hori^2))
+//Calculate the actual throat of the weld t (mm)
+t = res/tau
+//Calculate the leg of the weld h (mm)
+h = t/0.707
+//Print results
+printf('\nThroat of the weld(t) = %f mm\n',t)
+printf('\nLeg of the weld(h) = %f mm\n',h)
diff --git a/764/CH8/EX8.11.a/data8_11.sci b/764/CH8/EX8.11.a/data8_11.sci new file mode 100755 index 000000000..b0cf19ff1 --- /dev/null +++ b/764/CH8/EX8.11.a/data8_11.sci @@ -0,0 +1,11 @@ +
+//(Welded and Riveted Joints) Example 8.11
+//Refer Fig.8.28 on page 289
+//Eccentric force acting on the welded connection P (kN)
+P = 25
+//Permissible shear stress for the weld tau (N/mm2)
+tau = 55
+//Length of the transverse welds w (mm)
+w = 150
+//Length of the parallel weld l (mm)
+l = 100
diff --git a/764/CH8/EX8.11.b/result8_11.txt b/764/CH8/EX8.11.b/result8_11.txt new file mode 100755 index 000000000..797bc6105 --- /dev/null +++ b/764/CH8/EX8.11.b/result8_11.txt @@ -0,0 +1,37 @@ +-->//(Welded and Riveted Joints) Example 8.11
+
+-->//Refer Fig.8.28 on page 289
+
+-->//Eccentric force acting on the welded connection P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Permissible shear stress for the weld tau (N/mm2)
+
+-->tau = 55
+ tau =
+
+ 55.
+
+-->//Length of the transverse welds w (mm)
+
+-->w = 150
+ w =
+
+ 150.
+
+-->//Length of the parallel weld l (mm)
+
+-->l = 100
+ l =
+
+ 100.
+
+
+Throat of the weld(t) = 4.630044 mm
+
+Leg of the weld(h) = 6.548861 or 7.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.11.b/solution8_11.sce b/764/CH8/EX8.11.b/solution8_11.sce new file mode 100755 index 000000000..7b575cc8e --- /dev/null +++ b/764/CH8/EX8.11.b/solution8_11.sce @@ -0,0 +1,57 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_11.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_11.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the x-coordinate of the C.G. of the three welds, origin being at G3 on weld3, xbar (mm)
+xbar = ((w * (l/2)) + (w * ((-1 * l)/2)) + (l * 0))/(w + w + l)
+//Calculate the y-cordinate of the C.G. of the three welds, origin being at G3 on weld3, ybar (mm)
+ybar = ((w * (w/2)) + (w * (w/2)) + (l * 0))/(w + w + l)
+//Assume the throat of the welds to be 1mm t
+t = 1
+//Calculate the areas of the three welds (mm2)
+A1 = w * t
+A2 = w * t
+A3 = l * t
+//Calculate the total area of the welds A (mm2)
+A = A1 + A2 + A3
+//Calculate the primary shear stress in the weld tau1 (N/mm2)
+tau1 = (P * 1000)/A
+//Calculate the distance of the farthest point from the C.G. r (mm)
+//Angles in degree
+r = sqrt(((w - ybar)^2) + ((l/2)^2))
+theta = atand((w - ybar)/(l/2))
+//Calculate the inclination of the of the secondary shear stress with the horizontal fi (degree)
+fi = 90 - theta
+//Calculate force eccentricity e (mm)
+e = 100 + (l/2)
+//Maximum bending moment acting on the welds M (N/mm)
+M = (P * 1000) * e
+//Distance between the C.Gs of the three welds from the overall C.G (mm)
+r1 = sqrt((((w/2) - ybar)^2) + ((l/2)^2))
+r2 = sqrt((((w/2) - ybar)^2) + ((l/2)^2))
+r3 = ybar
+//Calculate the polar moments of inertia of the three welds (mm4)
+J1 = A1*(((w^2)/12) + (r1^2))
+J2 = A2*(((w^2)/12) + (r2^2))
+J3 = A3*(((l^2)/12) + (r3^2))
+//Calculate the secondary shear stress tau2 (N/mm2)
+tau2 = (M * r)/(J1 + J2 + J3)
+//Total vertical component of the resultant shear stress vert (N/mm2)
+vert = tau1 + (tau2 * sind(fi))
+//Total horizontal component of the resultant shear stress hori (N/mm2)
+hori = tau2 * cosd(fi)
+//Calculate the resultant shear stress res (N/mm2)
+res = sqrt((vert^2) + (hori^2))
+//Calculate the actual throat of the weld t (mm)
+t = res/tau
+//Calculate the thickness of the weld h (mm)
+h = t/0.707
+hround = ceil(h)
+//Print results
+printf('\nThroat of the weld(t) = %f mm\n',t)
+printf('\nLeg of the weld(h) = %f or %f mm\n',h,hround)
diff --git a/764/CH8/EX8.12.a/data8_12.sci b/764/CH8/EX8.12.a/data8_12.sci new file mode 100755 index 000000000..003aea16a --- /dev/null +++ b/764/CH8/EX8.12.a/data8_12.sci @@ -0,0 +1,15 @@ +
+//(Welded and Riveted Joints) Example 8.12
+//Refer Fig.8.32 on page 291
+//Eccentric load acting on the bracket P (kN)
+P = 10
+//Permissible shear stress in the welds tau (N/mm2)
+tau = 70
+//Lenght of the parallel welds l (mm)
+l = 50
+//Width of the bracket plate w (mm)
+w = 100
+//Number of parallel welds N
+N = 2
+//Force eccentricity value e (mm)
+e = 100
diff --git a/764/CH8/EX8.12.b/result8_12.txt b/764/CH8/EX8.12.b/result8_12.txt new file mode 100755 index 000000000..28554c576 --- /dev/null +++ b/764/CH8/EX8.12.b/result8_12.txt @@ -0,0 +1,49 @@ +-->//(Welded and Riveted Joints) Example 8.12
+
+-->//Eccentric load acting on the bracket P (kN)
+
+-->P = 10
+ P =
+
+ 10.
+
+-->//Permissible shear stress in the welds tau (N/mm2)
+
+-->tau = 70
+ tau =
+
+ 70.
+
+-->//Lenght of the parallel welds l (mm)
+
+-->l = 50
+ l =
+
+ 50.
+
+-->//Width of the bracket plate w (mm)
+
+-->w = 100
+ w =
+
+ 100.
+
+-->//Number of parallel welds N
+
+-->N = 2
+ N =
+
+ 2.
+
+-->//Force eccentricity value e (mm)
+
+-->e = 100
+ e =
+
+ 100.
+
+
+Throat of the weld(t) = 2.020271 mm
+
+Leg of the weld(h) = 2.857527 or 3.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.12.b/solution8_12.sce b/764/CH8/EX8.12.b/solution8_12.sce new file mode 100755 index 000000000..83acb26f4 --- /dev/null +++ b/764/CH8/EX8.12.b/solution8_12.sce @@ -0,0 +1,31 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_12.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_12.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Assume the throat of the welds to be 1mm t
+t = 1
+//Calculate the total area of the welds A (mm2)
+A = N * l * t
+//Calculate the primary shear stress in the welds tau1 (N/mm2)
+tau1 = (P * 1000)/A
+//Calculate the moment of inertia of weld1 about X-axis passing through the C.G. of the welds Ixx (mm4)
+Ixx = ((l * (t^3))/12) + ((A/N) * ((w/2)^2))
+//Calculate the moment of inertia of all the welds I (mm4)
+I = N * Ixx
+//Calculate the bending stress in the top weld sigmab (N/mm2)
+sigmab = (P * 1000 * e * (w/2))/I
+//Calculate the maximum shear stress tauMax (N/mm2)
+tauMax = sqrt(((sigmab/2)^2) + (tau1^2))
+//Calculate the actual throat of the welds t (mm)
+t = tauMax/tau
+//Calculate the leg of the weld h (mm)
+h = t/0.707
+hround = ceil(h)
+//Print results
+printf('\nThroat of the weld(t) = %f mm\n',t)
+printf('\nLeg of the weld(h) = %f or %f mm\n',h,hround)
diff --git a/764/CH8/EX8.13.a/data8_13.sci b/764/CH8/EX8.13.a/data8_13.sci new file mode 100755 index 000000000..95fbf40ab --- /dev/null +++ b/764/CH8/EX8.13.a/data8_13.sci @@ -0,0 +1,15 @@ +
+//(Welded and Riveted Joints) Example 8.13
+//Refer Fig.8.33 on page 292
+//Eccentric load acting on the bracket P (kN)
+P = 50
+//Permissible shear stress in the welds tau (N/mm2)
+tau = 70
+//Length of the transverse welds l (mm)
+l = 400
+//Length of the bracket w (mm)
+w = 300
+//Number of transverse welds N
+N = 2
+//Force eccentricity value e (mm)
+e = 300
diff --git a/764/CH8/EX8.13.b/result8_13.txt b/764/CH8/EX8.13.b/result8_13.txt new file mode 100755 index 000000000..fea07255b --- /dev/null +++ b/764/CH8/EX8.13.b/result8_13.txt @@ -0,0 +1,51 @@ +-->//(Welded and Riveted Joints) Example 8.13
+
+-->//Refer Fig.8.33 on page 292
+
+-->//Eccentric load acting on the bracket P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Permissible shear stress in the welds tau (N/mm2)
+
+-->tau = 70
+ tau =
+
+ 70.
+
+-->//Length of the transverse welds l (mm)
+
+-->l = 400
+ l =
+
+ 400.
+
+-->//Length of the bracket w (mm)
+
+-->w = 300
+ w =
+
+ 300.
+
+-->//Number of transverse welds N
+
+-->N = 2
+ N =
+
+ 2.
+
+-->//Force eccentricity value e (mm)
+
+-->e = 300
+ e =
+
+ 300.
+
+
+Throat of the weld(t) = 2.198406 mm
+
+Leg of the weld(h) = 3.109485 or 4.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.13.b/solution8_13.sce b/764/CH8/EX8.13.b/solution8_13.sce new file mode 100755 index 000000000..78e0c7e7c --- /dev/null +++ b/764/CH8/EX8.13.b/solution8_13.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_13.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_13.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Assume the throat of the welds to be 1mm t
+t = 1
+//Calculate the total area of the welds A (mm2)
+A = N * l * t
+//Calculate the primary shear stress in the welds tau1 (N/mm2)
+tau1 = (P * 1000)/A
+//Calculate the total moment of inertia of the welds about the X-axis I (mm4)
+I = N * (t * (l^3))/12
+//Calculate the bending stress in the welds sigmab (N/mm2)
+sigmab = (P * 1000 * e * (l/2))/I
+//Calculate the maximum shear stress tauMax (N/mm2)
+tauMax = sqrt(((sigmab/2)^2) + (tau1^2))
+//Calculate the actual throat of the welds t (mm)
+t = tauMax/tau
+//Calculate the leg of the weld h (mm)
+h = t/0.707
+hround = ceil(h)
+//Print results
+printf('\nThroat of the weld(t) = %f mm\n',t)
+printf('\nLeg of the weld(h) = %f or %f mm\n',h,hround)
diff --git a/764/CH8/EX8.14.a/data8_14.sci b/764/CH8/EX8.14.a/data8_14.sci new file mode 100755 index 000000000..0c5f4a4bd --- /dev/null +++ b/764/CH8/EX8.14.a/data8_14.sci @@ -0,0 +1,17 @@ +
+//(Welded and Riveted Joints) Example 8.14
+//Refer Fig.8.34 on page 292
+//Eccentric load acting on the bracket P (kN)
+P = 25
+//Permissible shear stress in the welds tau (N/mm2)
+tau = 75
+//Length of the transverse welds w (mm)
+w = 150
+//Length of Length of the parallel welds l (mm)
+l = 100
+//Force eccentricity value e (mm)
+e = 500
+//Number of parallel welds N1
+N1 = 2
+//Number of transverse welds N2
+N2 = 2
diff --git a/764/CH8/EX8.14.b/result8_14.txt b/764/CH8/EX8.14.b/result8_14.txt new file mode 100755 index 000000000..e12ea9b08 --- /dev/null +++ b/764/CH8/EX8.14.b/result8_14.txt @@ -0,0 +1,58 @@ +-->//(Welded and Riveted Joints) Example 8.14
+
+-->//Refer Fig.8.34 on page 292
+
+-->//Eccentric load acting on the bracket P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Permissible shear stress in the welds tau (N/mm2)
+
+-->tau = 75
+ tau =
+
+ 75.
+
+-->//Length of the transverse welds w (mm)
+
+-->w = 150
+ w =
+
+ 150.
+
+-->//Length of Length of the parallel welds l (mm)
+
+-->l = 100
+ l =
+
+ 100.
+
+-->//Force eccentricity value e (mm)
+
+-->e = 500
+ e =
+
+ 500.
+
+-->//Number of parallel welds N1
+
+-->N1 = 2
+ N1 =
+
+ 2.
+
+-->//Number of transverse welds N2
+
+-->N2 = 2
+ N2 =
+
+ 2.
+
+
+Throat of the weld(t) = 3.763189 mm
+
+Leg of the weld(h) = 5.322757 or 6.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.14.b/solution8_14.sce b/764/CH8/EX8.14.b/solution8_14.sce new file mode 100755 index 000000000..5fbbc3641 --- /dev/null +++ b/764/CH8/EX8.14.b/solution8_14.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_14.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_14.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Assume the throat of the welds to be 1mm t
+t = 1
+//Calculate the total area of the welds A (mm2)
+A = (N1 * l * t) + (N2 * w * t)
+//Calculate the primary shear stress in the welds tau1 (N/mm2)
+tau1 = (P * 1000)/A
+//Calculate the moment of inertia of the four welds about the X-axis Ixx (mm4)
+Ixx = (N1 * (((l * (t^3))/12) + ((l * t)*((w/2)^2)))) + (N2 * ((t * (w^3))/12))
+//Calculate the bending stress in the welds sigmab (N/mm2)
+sigmab = (P * 1000 * e * (w/2))/Ixx
+//Calculate the maximum shear stress in the welds tauMax (N/mm2)
+tauMax = sqrt(((sigmab/2)^2) + (tau1^2))
+//Calculate the actual throat of the welds t (mm)
+t = tauMax/tau
+//Calculate the leg of the weld h (mm)
+h = t/0.707
+hround = ceil(h)
+//Print results
+printf('\nThroat of the weld(t) = %f mm\n',t)
+printf('\nLeg of the weld(h) = %f or %f mm\n',h,hround)
diff --git a/764/CH8/EX8.15.a/data8_15.sci b/764/CH8/EX8.15.a/data8_15.sci new file mode 100755 index 000000000..0c1000cf8 --- /dev/null +++ b/764/CH8/EX8.15.a/data8_15.sci @@ -0,0 +1,11 @@ +
+//(Welded and Riveted Joints) Example 8.15
+//Refer Fig.8.36 on page 293
+//Diameter of the beam D (mm)
+D = 50
+//Eccentric load acting on the beam P (kN)
+P = 10
+//Permissible shear stress in the welds tau (N/mm2)
+tau = 100
+//Force eccentricity value e (mm)
+e = 200
diff --git a/764/CH8/EX8.15.b/result8_15.txt b/764/CH8/EX8.15.b/result8_15.txt new file mode 100755 index 000000000..eef843788 --- /dev/null +++ b/764/CH8/EX8.15.b/result8_15.txt @@ -0,0 +1,35 @@ +-->//(Welded and Riveted Joints) Example 8.15
+
+-->//Diameter of the beam D (mm)
+
+-->D = 50
+ D =
+
+ 50.
+
+-->//Eccentric load acting on the beam P (kN)
+
+-->P = 10
+ P =
+
+ 10.
+
+-->//Permissible shear stress in the welds tau (N/mm2)
+
+-->tau = 100
+ tau =
+
+ 100.
+
+-->//Force eccentricity value e (mm)
+
+-->e = 200
+ e =
+
+ 200.
+
+
+Throat of the weld(t) = 5.132593 mm
+
+Leg of the weld(h) = 7.259678 or 8.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.15.b/solution8_15.sce b/764/CH8/EX8.15.b/solution8_15.sce new file mode 100755 index 000000000..76d39b58c --- /dev/null +++ b/764/CH8/EX8.15.b/solution8_15.sce @@ -0,0 +1,29 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_15.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_15.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Assume the throat of the weld to be 1mm t
+t = 1
+//Calculate the total area of the weld A (mm2)
+A = %pi * D * t
+//Calculate the primary shear stress in the welds tau1 (N/mm2)
+tau1 = (P * 1000)/A
+//Calculate the moment of inertia of the weld about the X-axis Ixx (mm4)
+Ixx = %pi * t * ((D/2)^3)
+//Calculate the bending stress in the welds sigmab (N/mm2)
+sigmab = (P * 1000 * e * (D/2))/Ixx
+//Calculate the maximum shear stress in the welds tauMax (N/mm2)
+tauMax = sqrt(((sigmab/2)^2) + (tau1^2))
+//Calculate the actual throat of the welds t (mm)
+t = tauMax/tau
+//Calculate the leg of the weld h (mm)
+h = t/0.707
+hround = ceil(h)
+//Print results
+printf('\nThroat of the weld(t) = %f mm\n',t)
+printf('\nLeg of the weld(h) = %f or %f mm\n',h,hround)
diff --git a/764/CH8/EX8.16.a/data8_16.sci b/764/CH8/EX8.16.a/data8_16.sci new file mode 100755 index 000000000..66eb87735 --- /dev/null +++ b/764/CH8/EX8.16.a/data8_16.sci @@ -0,0 +1,9 @@ +
+//(Welded and Riveted Joints) Example 8.16
+//Refer Fig.8.38 on page 294
+//Diameter of the shaft D (mm)
+D = 50
+//Torsional moment acting on the shaft Mt (N-m)
+Mt = 2500
+//Permissible shear stress in the welds tau (N/mm2)
+tau = 140
diff --git a/764/CH8/EX8.16.b/result8_16.txt b/764/CH8/EX8.16.b/result8_16.txt new file mode 100755 index 000000000..9617caa6c --- /dev/null +++ b/764/CH8/EX8.16.b/result8_16.txt @@ -0,0 +1,30 @@ +-->//(Welded and Riveted Joints) Example 8.16
+
+-->//Refer Fig.8.38 on page 294
+
+-->//Diameter of the shaft D (mm)
+
+-->D = 50
+ D =
+
+ 50.
+
+-->//Torsional moment acting on the shaft Mt (N-m)
+
+-->Mt = 2500
+ Mt =
+
+ 2500.
+
+-->//Permissible shear stress in the welds tau (N/mm2)
+
+-->tau = 140
+ tau =
+
+ 140.
+
+
+Throat of the weld(t) = 4.547284 mm
+
+Leg of the weld(h) = 6.431802 or 7.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.16.b/solution8_16.sce b/764/CH8/EX8.16.b/solution8_16.sce new file mode 100755 index 000000000..5dc20613c --- /dev/null +++ b/764/CH8/EX8.16.b/solution8_16.sce @@ -0,0 +1,17 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_16.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_16.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the throat of the weld t (mm)
+t = (Mt * 1000)/(2 * %pi * tau * ((D/2)^2))
+//Calculate the leg of the weld h (mm)
+h = t/0.707
+hround = ceil(h)
+//Print results
+printf('\nThroat of the weld(t) = %f mm\n',t)
+printf('\nLeg of the weld(h) = %f or %f mm\n',h,hround)
diff --git a/764/CH8/EX8.17.a/data8_17.sci b/764/CH8/EX8.17.a/data8_17.sci new file mode 100755 index 000000000..37eb1d73f --- /dev/null +++ b/764/CH8/EX8.17.a/data8_17.sci @@ -0,0 +1,26 @@ +
+//(Welded and Riveted Joints) Example 8.17
+//Plate thickness d (mm)
+d = 25
+//Reversed axial load acting on the plates P (kN)
+P = 100
+//Throat of the weld t (mm)
+t = 25
+//Ultimate tensile strength of the weld material Sut (N/mm2)
+Sut = 450
+//Factor of safety fs
+fs = 2
+reliability = 90
+//Operation
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+op = 4
+//Type of weld
+//1 - Reinforced butt-weld
+//2 - Toe of transverse fillet-weld
+//3 - End of parallel fillet weld
+//4 - T-butt joint with sharp corners
+w = 1
diff --git a/764/CH8/EX8.17.b/result8_17.txt b/764/CH8/EX8.17.b/result8_17.txt new file mode 100755 index 000000000..ee9bfeaa2 --- /dev/null +++ b/764/CH8/EX8.17.b/result8_17.txt @@ -0,0 +1,72 @@ +-->//(Welded and Riveted Joints) Example 8.17
+
+-->//Plate thickness d (mm)
+
+-->d = 25
+ d =
+
+ 25.
+
+-->//Reversed axial load acting on the plates P (kN)
+
+-->P = 100
+ P =
+
+ 100.
+
+-->//Throat of the weld t (mm)
+
+-->t = 25
+ t =
+
+ 25.
+
+-->//Ultimate tensile strength of the weld material Sut (N/mm2)
+
+-->Sut = 450
+ Sut =
+
+ 450.
+
+-->//Factor of safety fs
+
+-->fs = 2
+ fs =
+
+ 2.
+
+-->reliability = 90
+ reliability =
+
+ 90.
+
+-->//Operation
+
+--> //Nomenclature:
+
+--> //1 - Ground
+
+--> //2 - Machined or cold drawn
+
+--> //3 - Hot-rolled
+
+--> //4 - Forged
+
+-->op = 4
+ op =
+
+ 4.
+
+-->//From Table 8.3
+
+-->Kf = 1.2
+ Kf =
+
+ 1.2
+
+
+The length of the weld(l) = 89.795566 mm
+
+Answer is slightly different because of use of equation 5.18
+Use value of Ka from Fig.5.24 in order to obtain the mentioned result
+
\ No newline at end of file diff --git a/764/CH8/EX8.17.b/solution8_17.sce b/764/CH8/EX8.17.b/solution8_17.sce new file mode 100755 index 000000000..53ccfb777 --- /dev/null +++ b/764/CH8/EX8.17.b/solution8_17.sce @@ -0,0 +1,31 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_17.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_17.sci'
+//Obtain path of function file
+funcpath = path + filesep() + 'functions8_17.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+exec(funcpath,[-1])
+//Calculate the limit stress for the weld Sdash (N/mm2)
+Sdash = (50/100)*Sut
+//Calculate Ka, Kb and Kc
+funcprot(0)
+[Ka, Kb, Kc, Kf] = fluctuate(op, d, reliability)
+//From Fig.5.24
+//Ka = 0.52
+//Calculate the value of Kd
+Kd = 1/Kf
+//Calculate the endurance limit of the butt weld Se (N/mm2)
+Se = Ka * Kb * Kc * Kd * Sdash
+//Calculate the permissible stress amplitude sigmat (N/mm2)
+sigmat = Se/fs
+//Calculate the length of the weld l (mm)
+l = (P * 1000)/(d * sigmat)
+//Print results)
+printf('\nThe length of the weld(l) = %f mm\n',l)
+printf('\nAnswer is slightly different because of use of equation 5.18\n')
+printf('Use value of Ka from Fig.5.24 in order to obtain the mentioned result\n')
diff --git a/764/CH8/EX8.17.c/functions8_17.sci b/764/CH8/EX8.17.c/functions8_17.sci new file mode 100755 index 000000000..8a223b3be --- /dev/null +++ b/764/CH8/EX8.17.c/functions8_17.sci @@ -0,0 +1,62 @@ +
+//Function generating the values of Ka, Kb, Kc and Kf
+function [Ka, Kb, Kc, Kf] = fluctuate(s, d, r, w)
+ //Calculate Ka
+ //Nomenclature:
+ //1 - Ground
+ //2 - Machined or cold drawn
+ //3 - Hot-rolled
+ //4 - Forged
+surface = [1 2 3 4]
+Ksurfa = [1.58 4.51 57.7 272]
+Ksurfb = [-0.085 -0.265 -0.718 -0.995]
+for j = 1:1:4
+ if (s == surface(j))
+ a = Ksurfa(j)
+ b = Ksurfb(j)
+ break
+ end
+end
+//From equation 5.18 on page 157
+Ka = a * (Sut^b)
+if (Ka > 1) then
+ Ka = 1
+end
+
+ //Calculate Kb
+ //d (mm)
+ if (d <= 7.5) then
+ Kb = 1
+ elseif ((d > 7.5) & (d <= 50))
+ Kb = 0.85
+ elseif (d > 50)
+ Kb = 0.75
+ else
+ printf('Error in Kb')
+ end
+
+ //Calculate Kc
+ // r (%)
+rel = [50 90 95 99 99.9 99.99 99.999]
+Krel = [1 0.897 0.868 0.814 0.753 0.702 0.659]
+for i = 1:1:7
+ if (r == rel(i)) then
+ Kc = Krel(i)
+ break
+ end
+end
+
+//Calculate Kf
+//Type of weld
+//1 - Reinforced butt-weld
+//2 - Toe of transverse fillet-weld
+//3 - End of parallel fillet weld
+//4 - T-butt joint with sharp corners
+fatigue = [1 2 3 4]
+value = [1.2, 1.5, 2.7, 2.0]
+for j = 1:1:4
+ if (w == fatigue(j)) then
+ Kf = value(j)
+ end
+end
+endfunction
diff --git a/764/CH8/EX8.18.a/data8_18.sci b/764/CH8/EX8.18.a/data8_18.sci new file mode 100755 index 000000000..eb87ba9c7 --- /dev/null +++ b/764/CH8/EX8.18.a/data8_18.sci @@ -0,0 +1,15 @@ +
+//(Welded and Riveted Joints) Example 8.18
+//Refer Fig.8.59 on page 308
+//Load acting on the brake band P (kN)
+P = 10
+//Permissible tensile stress in the band and rivet sigmat (N/mm2)
+sigmat = 80
+//Permissible compressive stress in the band and rivet sigmac (N/mm2)
+sigmac = 120
+//Permissible shear stress in the band and rivet tau (N/mm2)
+tau = 60
+//Thickness of the band t (mm)
+t = 3
+//Number of rivets n
+n = 4
diff --git a/764/CH8/EX8.18.b/result8_18.txt b/764/CH8/EX8.18.b/result8_18.txt new file mode 100755 index 000000000..7d53a64f6 --- /dev/null +++ b/764/CH8/EX8.18.b/result8_18.txt @@ -0,0 +1,53 @@ +-->//(Welded and Riveted Joints) Example 8.18
+
+-->//Refer Fig.8.59 on page 308
+
+-->//Load acting on the brake band P (kN)
+
+-->P = 10
+ P =
+
+ 10.
+
+-->//Permissible tensile stress in the band and rivet sigmat (N/mm2)
+
+-->sigmat = 80
+ sigmat =
+
+ 80.
+
+-->//Permissible compressive stress in the band and rivet sigmac (N/mm2)
+
+-->sigmac = 120
+ sigmac =
+
+ 120.
+
+-->//Permissible shear stress in the band and rivet tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Thickness of the band t (mm)
+
+-->t = 3
+ t =
+
+ 3.
+
+-->//Number of rivets n
+
+-->n = 4
+ n =
+
+ 4.
+
+
+Diameter of the rivet(d) = 7.283656 or 8.000000 mm
+
+Width of the band(w) = 57.666667 or 60.000000 mm
+
+Transverse pitch of the rivets(pt) = 30.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.18.b/solution8_18.sce b/764/CH8/EX8.18.b/solution8_18.sce new file mode 100755 index 000000000..da8b04eb4 --- /dev/null +++ b/764/CH8/EX8.18.b/solution8_18.sce @@ -0,0 +1,46 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_18.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_18.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the diamater of the rivet from shear consideration ds (mm)
+ds = sqrt((P * 1000 * 4)/(%pi * n * tau))
+dsround = ceil(ds)
+//Calculate the diameter of the rivet from crushing consideration dc (mm)
+dc = sqrt((P * 1000)/(n * t * sigmac))
+dcround = ceil(dc)
+//Choose appropriate diameter value d (mm)
+if (ds > dc) then
+ d = ds
+ dround = ceil(d)
+else
+ d = dc
+ dround = ceil(d)
+end
+//Calculate the width of the band from tensile consideration w (mm)
+w = ((n/2) * dround) + ((P * 1000)/(t * sigmat))
+wround = round_five(w)
+//Calculate the margin m (mm)
+m = 1.5 * dround
+mround = round_five(m)
+//Calculate the pitch of the rivets p (mm)
+p = wround - (2 * mround)
+//Calculate the transverse pitch pt (mm)
+pt = p
+//Print results
+printf('\nDiameter of the rivet(d) = %f or %f mm\n',d,ceil(d))
+printf('\nWidth of the band(w) = %f or %f mm\n',w,wround)
+printf('\nTransverse pitch of the rivets(pt) = %f mm\n',pt)
diff --git a/764/CH8/EX8.19.a/data8_19.sci b/764/CH8/EX8.19.a/data8_19.sci new file mode 100755 index 000000000..e38dd5821 --- /dev/null +++ b/764/CH8/EX8.19.a/data8_19.sci @@ -0,0 +1,19 @@ +
+//(Welded and Riveted Joints) Example 8.19
+//Refer Fig.8.60 on page 309
+//Force acting on the plates P (kN)
+P = 250
+//Width of the plate w (mm)
+w = 200
+//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+sigmat = 70
+//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+sigmac = 100
+//Permissible shear stress in the plate and rivet tau (N/mm2)
+tau = 60
+//Number of rivets n
+n = 5
+//Number of rivets considered to calculate plate thickness n1
+n1 = 2
+//Number of rivets considered to calculate the pitch n2
+n2 = 3
diff --git a/764/CH8/EX8.19.b/result8_19.txt b/764/CH8/EX8.19.b/result8_19.txt new file mode 100755 index 000000000..8d1a070fb --- /dev/null +++ b/764/CH8/EX8.19.b/result8_19.txt @@ -0,0 +1,73 @@ +-->//(Welded and Riveted Joints) Example 8.19
+
+-->//Refer Fig.8.60 on page 309
+
+-->//Force acting on the plates P (kN)
+
+-->P = 250
+ P =
+
+ 250.
+
+-->//Width of the plate w (mm)
+
+-->w = 200
+ w =
+
+ 200.
+
+-->//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+
+-->sigmat = 70
+ sigmat =
+
+ 70.
+
+-->//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+
+-->sigmac = 100
+ sigmac =
+
+ 100.
+
+-->//Permissible shear stress in the plate and rivet tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Number of rivets n
+
+-->n = 5
+ n =
+
+ 5.
+
+-->//Number of rivets considered to calculate plate thickness n1
+
+-->n1 = 2
+ n1 =
+
+ 2.
+
+-->//Number of rivets considered to calculate the pitch n2
+
+-->n2 = 3
+ n2 =
+
+ 3.
+
+
+Diameter of the rivets(ds) = 23.032943 or 25.000000 mm
+
+Thickness of the rivets(t) = 23.809524 or 25.000000 mm
+
+Pitch of the seam(p) = 66.666667 mm
+
+Transverse pitch of the seam(pt) = 40.000000 mm
+
+Margin of the seam(m) = 37.500000 or 40.000000 mm
+
+Efficiency of the joint(eta) = 75.000000 percent
+
\ No newline at end of file diff --git a/764/CH8/EX8.19.b/solution8_19.sce b/764/CH8/EX8.19.b/solution8_19.sce new file mode 100755 index 000000000..cd6fc0f4a --- /dev/null +++ b/764/CH8/EX8.19.b/solution8_19.sce @@ -0,0 +1,56 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_19.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_19.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the diameter of the rivets which are subjected to double shear ds (mm)
+ds = sqrt((P * 1000 * 4)/(2 * %pi * tau * n))
+dsround = round_five(ds)
+//Calculate the plate thickness t (mm)
+t = (P * 1000)/((w - (n1 * dsround))*sigmat)
+tround = round_five(t)
+//Calculate the pitch of the rivets p (mm)
+p = w/n2
+//Calculate the dimensions of the seam (mm)
+m = 1.5 * dsround
+mround = round_five(m)
+pt = 0.6 * p
+ptround = round_five(pt)
+//Calculate the shear strength of the plate Ps (N)
+Ps = 2 * (%pi/4) * (dsround^2) * tau * n
+//Calculate the tensile strength of the plate Pt (N)
+Pt = (w - (n1 * dsround)) * tround * sigmat
+//Calculate the compressive strength of the plate Pc (N)
+Pc = dsround * tround * sigmac * n
+//Obtain the lowest strength value from these PLow (N)
+if ((Ps < Pt) & (Ps < Pc)) then
+ PLow = Ps
+elseif ((Pt < Ps) & (Pt < Pc))
+ PLow = Pt
+else
+ PLow = Pc
+end
+//Calculate the strength of the solid plate PSolid (N)
+PSolid = w * tround * sigmat
+//Calculate the efficiency of the joint eta (%)
+eta = (PLow/PSolid)*100
+//Print results
+printf('\nDiameter of the rivets(ds) = %f or %f mm\n',ds,dsround)
+printf('\nThickness of the rivets(t) = %f or %f mm\n',t,tround)
+printf('\nPitch of the seam(p) = %f mm\n',p)
+printf('\nTransverse pitch of the seam(pt) = %f mm\n',pt)
+printf('\nMargin of the seam(m) = %f or %f mm\n',m,mround)
+printf('\nEfficiency of the joint(eta) = %f percent\n',eta)
diff --git a/764/CH8/EX8.2.a/data8_2.sci b/764/CH8/EX8.2.a/data8_2.sci new file mode 100755 index 000000000..05629f74f --- /dev/null +++ b/764/CH8/EX8.2.a/data8_2.sci @@ -0,0 +1,11 @@ +
+//(Welded and Riveted Joints) Example 8.2
+//Refer Fig.8.9 on page 279
+//Static tensile force acting on the plates P (kN)
+P = 50
+//Permissible shear stress in the weld tau (N/mm2)
+tau = 94
+//Thickness of the plate t (mm)
+h = 10
+//Total length of the weld to be added at start and stop lExt (mm)
+lExt = 15
diff --git a/764/CH8/EX8.2.b/result8_2.txt b/764/CH8/EX8.2.b/result8_2.txt new file mode 100755 index 000000000..e173acb23 --- /dev/null +++ b/764/CH8/EX8.2.b/result8_2.txt @@ -0,0 +1,35 @@ +-->//(Welded and Riveted Joints) Example 8.2
+
+-->//Refer Fig.8.9 on page 279
+
+-->//Static tensile force acting on the plates P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Permissible shear stress in the weld tau (N/mm2)
+
+-->tau = 94
+ tau =
+
+ 94.
+
+-->//Thickness of the plate t (mm)
+
+-->h = 10
+ h =
+
+ 10.
+
+-->//Total length of the weld to be added at start and stop lExt (mm)
+
+-->lExt = 15
+ lExt =
+
+ 15.
+
+
+Total required length of the welds(lTotal) = 52.617744 or 55.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.2.b/solution8_2.sce b/764/CH8/EX8.2.b/solution8_2.sce new file mode 100755 index 000000000..eee55cd54 --- /dev/null +++ b/764/CH8/EX8.2.b/solution8_2.sce @@ -0,0 +1,25 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_2.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_2.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the length of the weld l (mm)
+l = (P * 1000)/(1.414 * h * tau)
+//Total required length of the welds lTotal (mm)
+lTotal = l + lExt
+lround = round_five(lTotal)
+//Print results
+printf('\nTotal required length of the welds(lTotal) = %f or %f mm\n',lTotal,lround)
diff --git a/764/CH8/EX8.20.a/data8_20.sci b/764/CH8/EX8.20.a/data8_20.sci new file mode 100755 index 000000000..0f818cbed --- /dev/null +++ b/764/CH8/EX8.20.a/data8_20.sci @@ -0,0 +1,13 @@ +
+//(Welded and Riveted Joints) Example 8.21
+//Refer Fig.8.61 on page 310
+//Width of the plate w (mm)
+w = 250
+//Thickness of the plate t (mm)
+t = 20
+//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+sigmat = 80
+//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+sigmac = 120
+//Permissible shear stress in the plate and rivet tau (N/mm2)
+tau = 60
diff --git a/764/CH8/EX8.20.b/result8_20.txt b/764/CH8/EX8.20.b/result8_20.txt new file mode 100755 index 000000000..038b2f4ce --- /dev/null +++ b/764/CH8/EX8.20.b/result8_20.txt @@ -0,0 +1,54 @@ +-->//(Welded and Riveted Joints) Example 8.21
+
+-->//Refer Fig.8.61 on page 310
+
+-->//Width of the plate w (mm)
+
+-->w = 250
+ w =
+
+ 250.
+
+-->//Thickness of the plate t (mm)
+
+-->t = 20
+ t =
+
+ 20.
+
+-->//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+
+-->sigmat = 80
+ sigmat =
+
+ 80.
+
+-->//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+
+-->sigmac = 120
+ sigmac =
+
+ 120.
+
+-->//Permissible shear stress in the plate and rivet tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+
+Diameter of the rivet(d) = 26.832816 or 27.000000 mm
+
+Number of rivets required(n) = 6.000000
+
+Margin(m) = 40.500000 or 45.000000 mm
+
+Transverse pitch(pt) = 54.000000 or 55.000000 mm
+
+Thickness of strap(t1) = 12.500000 mm
+
+Pitch(p) = 80.000000 mm
+
+Efficiency of the joints(eta) = 89.200000 percent
+
\ No newline at end of file diff --git a/764/CH8/EX8.20.b/solution8_20.sce b/764/CH8/EX8.20.b/solution8_20.sce new file mode 100755 index 000000000..747973208 --- /dev/null +++ b/764/CH8/EX8.20.b/solution8_20.sce @@ -0,0 +1,77 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_20.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_20.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the diameter of the rivets d (mm)
+d = 6 * sqrt(t)
+dround = ceil(d)
+//Calculate the shear resistance of one rivet in double shear Ps (N)
+Ps = 1.875 * ((%pi/4) * (dround^2) * tau)
+//Calculate the crushing resistance of one rivet Pc (N)
+Pc = dround * t * sigmac
+//Choose appropriate criterion P (N)
+if (Ps < Pc) then
+ P = Ps
+else
+ P = Pc
+end
+//Calculate the tensile strength of the plate in the outer row Pt (N)
+Pt = (w - dround)* t* sigmat
+//Calculate the number of rivets required n
+n = Pt/P
+n = ceil(n)
+//Calculate the margin m (mm)
+m = 1.5 * dround
+mround = round_five(m)
+//Calculate the transverse pitch pt (mm)
+pt = 2 * dround
+ptround = round_five(pt)
+//Calculate the strap thickness t1 (mm)
+t1 = 0.625 * t
+//Calculate the pitch p (mm)
+p = (w - (2 * mround))/2
+//Calculate the strength of the joint along:
+//Section A-A
+SA = (w - dround) * t * sigmat
+//Section B-B
+SB = ((w - (2 * dround)) * t * sigmat) + Ps
+//Section C-C
+SC = ((w - (3 * dround)) * t * sigmat) + (3 * Ps)
+//Calculate the shear resistance of all the rivets SS (N)
+SS = n * Ps
+//Choose lowest of all the calculated strengths PLow (N)
+if ((SA < SB) & (SA < SC) & (SA < SS)) then
+ PLow = SA
+elseif ((SB < SA) & (SB < SC) & (SB < SS))
+ PLow = SB
+elseif ((SC < SA) & (SC < SB) & (SC < SS))
+ Plow = SC
+else
+ PLow = SS
+end
+//Calculate the strength of the plate PSolid (N)
+PSolid = w * t * sigmat
+//Calculate the efficiency of the joint eta (%)
+eta = (PLow/PSolid) * 100
+//Print results
+printf('\nDiameter of the rivet(d) = %f or %f mm\n',d,dround)
+printf('\nNumber of rivets required(n) = %f\n',n)
+printf('\nMargin(m) = %f or %f mm\n',m,mround)
+printf('\nTransverse pitch(pt) = %f or %f mm\n',pt,ptround)
+printf('\nThickness of strap(t1) = %f mm\n',t1)
+printf('\nPitch(p) = %f mm\n',p)
+printf('\nEfficiency of the joints(eta) = %f percent\n',eta)
diff --git a/764/CH8/EX8.21.a/data8_21.sci b/764/CH8/EX8.21.a/data8_21.sci new file mode 100755 index 000000000..526ce6091 --- /dev/null +++ b/764/CH8/EX8.21.a/data8_21.sci @@ -0,0 +1,23 @@ +
+//(Welded and Riveted Joints) Example 8.21
+//Refer Fig.8.63 on page 315
+//Inside diameter of the pressure vessel Di (m)
+Di = 1.5
+//Internal steam pressure Pi (MPa)
+Pi = 1.5
+//Efficiency of the riveted joint eta (%)
+eta = 80
+//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+sigmat = 80
+//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+sigmac = 120
+//Permissible shear stress in the plate and rivet tau (N/mm2)
+tau = 60
+//Corrosion allowance CA (mm)
+CA = 2
+//Number of rivets subjected to single shear per pitch length n1
+n1 = 0
+//Number of rivets subjected to double shear per pitch length n2
+n2 = 5
+//Value of C from Table 8.7
+C = 6.0
diff --git a/764/CH8/EX8.21.b/result8_21.txt b/764/CH8/EX8.21.b/result8_21.txt new file mode 100755 index 000000000..b2bd50048 --- /dev/null +++ b/764/CH8/EX8.21.b/result8_21.txt @@ -0,0 +1,91 @@ +-->//(Welded and Riveted Joints) Example 8.21
+
+-->//Refer Fig.8.63 on page 315
+
+-->//Inside diameter of the pressure vessel Di (m)
+
+-->Di = 1.5
+ Di =
+
+ 1.5
+
+-->//Internal steam pressure Pi (MPa)
+
+-->Pi = 1.5
+ Pi =
+
+ 1.5
+
+-->//Efficiency of the riveted joint eta (%)
+
+-->eta = 80
+ eta =
+
+ 80.
+
+-->//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+
+-->sigmat = 80
+ sigmat =
+
+ 80.
+
+-->//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+
+-->sigmac = 120
+ sigmac =
+
+ 120.
+
+-->//Permissible shear stress in the plate and rivet tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Corrosion allowance CA (mm)
+
+-->CA = 2
+ CA =
+
+ 2.
+
+-->//Number of rivets subjected to single shear per pitch length n1
+
+-->n1 = 0
+ n1 =
+
+ 0.
+
+-->//Number of rivets subjected to double shear per pitch length n2
+
+-->n2 = 5
+ n2 =
+
+ 5.
+
+-->//Value of C from Table 8.7
+
+-->C = 6.0
+ C =
+
+ 6.
+
+
+Thickness of the plate(t) = 19.578125 or 20.000000 mm
+
+Diameter of the plate(d) = 26.832816 or 27.000000 mm
+
+Pitch of rivets(p) = 161.280000 mm
+
+Distance between middle and inner rows of rivets(p2) = 44.701200 or 45.000000 mm
+
+Distance between outer and middle rows of rivets(p1) = 63.306000 or 65.000000 mm
+
+Margin(m) = 40.500000 or 45.000000 mm
+
+Thickness of straps(t1) = 15.645973 or 16.000000 mm
+
+Efficiency of the joint(etaCalc) = 83.258929 percent
+
\ No newline at end of file diff --git a/764/CH8/EX8.21.b/solution8_21.sce b/764/CH8/EX8.21.b/solution8_21.sce new file mode 100755 index 000000000..d72ba92c3 --- /dev/null +++ b/764/CH8/EX8.21.b/solution8_21.sce @@ -0,0 +1,76 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_21.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_21.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate plate thickness t (mm)
+t = ((Pi * Di * 1000)/(2 * sigmat * (eta/100))) + CA
+tround = ceil(t)
+//Calculate the diameter of the rivets d (mm)
+d = 6 * sqrt(tround)
+dround = ceil(d)
+//Calculate the pitch of the rivets p (mm)
+p = (((n1 + (1.875 * n2))* %pi * (dround^2) * tau)/(4 * tround * sigmat)) + dround
+pround = round_five(p)
+//Calculate pmin (mm)
+pmin = 2 * dround
+//Calculate pmax (mm)
+pmax = (C * tround) + 41.28
+//Assign appropriate value to pitch (mm)
+if (p > pmax) then
+ pitch = pmax
+else
+ pitch = pround
+end
+//Calculate the distance between outer and middle rows p1 (mm)
+p1 = (0.2 * pitch) + (1.15 * dround)
+p1round = round_five(p1)
+//Calculate the distance between middle and inner rows p2 (mm)
+p2 = (0.165 * pitch) + (0.67 * dround)
+p2round = round_five(p2)
+//Calculate the margin m (mm)
+m = 1.5 * dround
+mround = round_five(m)
+//Calculate the thickness of the of straps t1 (mm)
+t1 = (0.625 * tround)*((pitch - dround)/(pitch - (2 * dround)))
+t1round = ceil(t1)
+//Calculate the tensile strength of the plate per inch length in the outer row Pt (N)
+Pt = (pitch - dround) * tround * sigmat
+//Calculate the shear strength of rivets per pitch length Ps (N)
+Ps = (n1 + (n2 * 1.875))*((%pi/4) * (dround^2) *tau)
+//Calculate the crushing strength of the plate Pc (N)
+Pc = (n1 + n2) * dround * tround * sigmac
+//Calculate the tensile strength of the solid plate per pitch length P (N)
+P = pitch * tround * sigmat
+//Obtain the lowest strength value from these PLow (N)
+if ((Ps < Pt) & (Ps < Pc)) then
+ PLow = Ps
+elseif ((Pt < Ps) & (Pt < Pc))
+ PLow = Pt
+else
+ PLow = Pc
+end
+//Calculate the efficiency of the joint etaCalc (%)
+etaCalc = (PLow/P) * 100
+//Print results
+printf('\nThickness of the plate(t) = %f or %f mm\n',t,tround)
+printf('\nDiameter of the plate(d) = %f or %f mm\n',d,dround)
+printf('\nPitch of rivets(p) = %f mm\n',pitch)
+printf('\nDistance between middle and inner rows of rivets(p2) = %f or %f mm\n',p2,p2round)
+printf('\nDistance between outer and middle rows of rivets(p1) = %f or %f mm\n',p1,p1round)
+printf('\nMargin(m) = %f or %f mm\n',m,mround)
+printf('\nThickness of straps(t1) = %f or %f mm\n',t1,t1round)
+printf('\nEfficiency of the joint(etaCalc) = %f percent\n',etaCalc)
diff --git a/764/CH8/EX8.22.a/data8_22.sci b/764/CH8/EX8.22.a/data8_22.sci new file mode 100755 index 000000000..f4d1a4697 --- /dev/null +++ b/764/CH8/EX8.22.a/data8_22.sci @@ -0,0 +1,21 @@ +
+//(Welded and Riveted Joints) Example 8.22
+//Refer Fig.8.64 on page 317
+//Inside diameter of the pressure vessel Di (m)
+Di = 1
+//Internal steam pressure Pi (MPa)
+Pi = 2.5
+//Efficiency of the riveted joint eta (%)
+eta = 70
+//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+sigmat = 80
+//Permissible shear stress in the plate and rivet tau (N/mm2)
+tau = 60
+//Corrosion allowance CA (mm)
+CA = 2
+//Number of rivets subjected to single shear per pitch length n1
+n1 = 0
+//Number of rivets subjected to double shear per pitch length n2
+n2 = 3
+//Value of C from Table 8.7
+C = 4.63
diff --git a/764/CH8/EX8.22.b/result8_22.txt b/764/CH8/EX8.22.b/result8_22.txt new file mode 100755 index 000000000..07a18b23c --- /dev/null +++ b/764/CH8/EX8.22.b/result8_22.txt @@ -0,0 +1,82 @@ +-->//(Welded and Riveted Joints) Example 8.22
+
+-->//Refer Fig.8.64 on page 317
+
+-->//Inside diameter of the pressure vessel Di (m)
+
+-->Di = 1
+ Di =
+
+ 1.
+
+-->//Internal steam pressure Pi (MPa)
+
+-->Pi = 2.5
+ Pi =
+
+ 2.5
+
+-->//Efficiency of the riveted joint eta (%)
+
+-->eta = 70
+ eta =
+
+ 70.
+
+-->//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+
+-->sigmat = 80
+ sigmat =
+
+ 80.
+
+-->//Permissible shear stress in the plate and rivet tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Corrosion allowance CA (mm)
+
+-->CA = 2
+ CA =
+
+ 2.
+
+-->//Number of rivets subjected to single shear per pitch length n1
+
+-->n1 = 0
+ n1 =
+
+ 0.
+
+-->//Number of rivets subjected to double shear per pitch length n2
+
+-->n2 = 3
+ n2 =
+
+ 3.
+
+-->//Value of C from Table 8.7
+
+-->C = 4.63
+ C =
+
+ 4.63
+
+
+Thickness of the plate(t) = 24.321429 or 25.000000 mm
+
+Diameter of the plate(d) = 30.000000 or 30.000000 mm
+
+Pitch of rivets(p) = 150.000000 mm
+
+Distance between inner and outer rows of rivets(p1) = 64.500000 or 65.000000 mm
+
+Margin(m) = 45.000000 or 45.000000 mm
+
+Thickness of straps(t1) = 20.833333 or 21.000000 mm
+
+Efficiency of the joint(etaCalc) = 79.521564 percent
+
\ No newline at end of file diff --git a/764/CH8/EX8.22.b/solution8_22.sce b/764/CH8/EX8.22.b/solution8_22.sce new file mode 100755 index 000000000..75d71423d --- /dev/null +++ b/764/CH8/EX8.22.b/solution8_22.sce @@ -0,0 +1,68 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_22.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_22.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate plate thickness t (mm)
+t = ((Pi * Di * 1000)/(2 * sigmat * (eta/100))) + CA
+tround = ceil(t)
+//Calculate the diameter of the rivets d (mm)
+d = 6 * sqrt(tround)
+dround = ceil(d)
+//Calculate the pitch of the rivets p (mm)
+p = (((n1 + (1.875 * n2))* %pi * (dround^2) * tau)/(4 * tround * sigmat)) + dround
+pround = round_five(p)
+//Calculate pmin (mm)
+pmin = 2 * dround
+//Calculate pmax (mm)
+pmax = (C * tround) + 41.28
+//Assign appropriate value to pitch (mm)
+if (p > pmax) then
+ pitch = pmax
+else
+ pitch = pround
+end
+//Calculate the distance between inner and outer rows p1 (mm)
+p1 = (0.2 * pitch) + (1.15 * dround)
+p1round = round_five(p1)
+//Calculate the margin m (mm)
+m = 1.5 * dround
+mround = round_five(m)
+//Calculate the thickness of the of straps t1 (mm)
+t1 = (0.625 * tround)*((pitch - dround)/(pitch - (2 * dround)))
+t1round = ceil(t1)
+//Calculate the tensile strength of the plate per inch length in the outer row Pt (N)
+Pt = (pitch - dround) * tround * sigmat
+//Calculate the shear strength of rivets per pitch length Ps (N)
+Ps = (n1 + (n2 * 1.875))*((%pi/4) * (dround^2) *tau)
+//Calculate the tensile strength of the solid plate per pitch length P (N)
+P = pitch * tround * sigmat
+//Obtain the lowest strength value from these PLow (N)
+if (Ps < Pt) then
+ PLow = Ps
+else
+ PLow = Pt
+end
+//Calculate the efficiency of the joint etaCalc (%)
+etaCalc = (PLow/P) * 100
+//Print results
+printf('\nThickness of the plate(t) = %f or %f mm\n',t,tround)
+printf('\nDiameter of the plate(d) = %f or %f mm\n',d,dround)
+printf('\nPitch of rivets(p) = %f mm\n',pitch)
+printf('\nDistance between inner and outer rows of rivets(p1) = %f or %f mm\n',p1,p1round)
+printf('\nMargin(m) = %f or %f mm\n',m,mround)
+printf('\nThickness of straps(t1) = %f or %f mm\n',t1,t1round)
+printf('\nEfficiency of the joint(etaCalc) = %f percent\n',etaCalc)
diff --git a/764/CH8/EX8.23.a/data8_23.sci b/764/CH8/EX8.23.a/data8_23.sci new file mode 100755 index 000000000..13d249d95 --- /dev/null +++ b/764/CH8/EX8.23.a/data8_23.sci @@ -0,0 +1,22 @@ +
+//(Welded and Riveted Joints) Example 8.23
+//Inner diameter of the cylindrical pressure vessel Di (m)
+Di = 1
+//Internal steam pressure Pi (MPa)
+Pi = 1.5
+//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+sigmat = 80
+//Permissible shear stress in the plate and rivet tau (N/mm2)
+tau = 60
+//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+sigmac = 120
+//Corrosion allowance CA (mm)
+CA = 2
+//Efficiency of the longitudinal joint eta (%)
+eta = 80
+//Efficiency of the circumferential lap joint eta1 (%)
+eta1 = 62
+//Value of C
+C = 1.31
+//Transverse pitch pt (mm)
+pt = 0
diff --git a/764/CH8/EX8.23.b/result8_23.txt b/764/CH8/EX8.23.b/result8_23.txt new file mode 100755 index 000000000..4d0eb1ac9 --- /dev/null +++ b/764/CH8/EX8.23.b/result8_23.txt @@ -0,0 +1,87 @@ +-->//(Welded and Riveted Joints) Example 8.23
+
+-->//Inner diameter of the cylindrical pressure vessel Di (m)
+
+-->Di = 1
+ Di =
+
+ 1.
+
+-->//Internal steam pressure Pi (MPa)
+
+-->Pi = 1.5
+ Pi =
+
+ 1.5
+
+-->//Permissible tensile stress in the plate and rivet sigmat (N/mm2)
+
+-->sigmat = 80
+ sigmat =
+
+ 80.
+
+-->//Permissible shear stress in the plate and rivet tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Permissible compressive stress in the plate and rivet sigmac (N/mm2)
+
+-->sigmac = 120
+ sigmac =
+
+ 120.
+
+-->//Corrosion allowance CA (mm)
+
+-->CA = 2
+ CA =
+
+ 2.
+
+-->//Efficiency of the longitudinal joint eta (%)
+
+-->eta = 80
+ eta =
+
+ 80.
+
+-->//Efficiency of the circumferential lap joint eta1 (%)
+
+-->eta1 = 62
+ eta1 =
+
+ 62.
+
+-->//Value of C
+
+-->C = 1.31
+ C =
+
+ 1.31
+
+-->//Transverse pitch pt (mm)
+
+-->pt = 0
+ pt =
+
+ 0.
+
+
+Code is applicable only when thickness of the plate is greater than 8mm.
+
+Thickness of the plate(tround) = 14.000000 mm
+
+Diameter of the rivets(dceil) = 21.000000 mm
+
+Number of rivets(n1) = 58 mm
+
+Pitch of the rivets(p1) = 55 mm
+
+Number of rows of rivets(assumed) = 1
+
+Overlap of plates(a) = 70.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.23.b/solution8_23.sce b/764/CH8/EX8.23.b/solution8_23.sce new file mode 100755 index 000000000..8807cf8bb --- /dev/null +++ b/764/CH8/EX8.23.b/solution8_23.sce @@ -0,0 +1,59 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_23.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_23.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+printf("\nCode is applicable only when thickness of the plate is greater than 8mm.\n")
+//Calculate the thickness of the plate t (mm)
+t = ((Pi * Di * 1000)/(2 * sigmat * (eta/100))) + CA
+tround = ceil(t)
+//Calculate the diameter of the rivets d (mm)
+if (t > 8) then
+ d = 6 * sqrt(t)
+ dround = ceil(d)
+else
+ printf('\nThickess of the plate is not greater than 8mm. Hence terminating the programme.\n')
+ exit()
+end
+//Calculate the number of rivets N
+n = (((Di*1000)/dround)^2)*(Pi/tau)
+//Calculate the pitch of the rivets p1 (mm)
+p1 = dround/(1 - (eta1/100))
+//Calculate the minimum required pitch pmin (mm)
+pmin = 2 * dround
+//Calculate the maximum required pitch pmax (mm)
+pmax = (C * tround) + 41.28
+if (p1 > pmax | p1 < pmin)
+ p1 = 55 //Assumed
+end
+//Calculate the number of rivets in one row n1
+n1 = (%pi * ((Di * 1000) + t))/p1
+n1 = ceil(n1)
+//Calculate the revised diameter of the rivet drevise (mm)
+drevise = sqrt((((Di * 1000)^2)*Pi)/(n1 * tau))
+dceil = ceil(drevise)
+//Calculate the margin m (mm)
+m = 1.5 * dceil
+mround = round_five(m)
+//Calculate the overlap of plates a (mm)
+a = pt + (2 * mround)
+//Print results
+printf('\nThickness of the plate(tround) = %f mm\n', tround)
+printf('\nDiameter of the rivets(dceil) = %f mm\n', dceil)
+printf('\nNumber of rivets(n1) = %d mm\n', n1)
+printf('\nPitch of the rivets(p1) = %d mm\n', p1)
+printf('\nNumber of rows of rivets(assumed) = 1\n')
+printf('\nOverlap of plates(a) = %f mm\n', a)
diff --git a/764/CH8/EX8.24.a/data8_24.sci b/764/CH8/EX8.24.a/data8_24.sci new file mode 100755 index 000000000..0850de596 --- /dev/null +++ b/764/CH8/EX8.24.a/data8_24.sci @@ -0,0 +1,13 @@ +
+//(Welded and Riveted Joints) Example 8.24
+//Refer Fig.8.67 on page 322
+//Eccentric force acting on the bracket P (kN)
+P = 25
+//Eccentricity e (mm)
+e = 100
+//Permissible shear stress tau (N/mm2)
+tau = 60
+//Number of rivets n
+n = 4
+//Distance between two rivet centres dist (mm)
+dist = 100
diff --git a/764/CH8/EX8.24.b/result8_24.txt b/764/CH8/EX8.24.b/result8_24.txt new file mode 100755 index 000000000..69dfe2b04 --- /dev/null +++ b/764/CH8/EX8.24.b/result8_24.txt @@ -0,0 +1,46 @@ +-->//(Welded and Riveted Joints) Example 8.24
+
+-->//Refer Fig.8.67 on page 322
+
+-->//Eccentric force acting on the bracket P (kN)
+
+-->P = 25
+ P =
+
+ 25.
+
+-->//Eccentricity e (mm)
+
+-->e = 100
+ e =
+
+ 100.
+
+-->//Permissible shear stress tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Number of rivets n
+
+-->n = 4
+ n =
+
+ 4.
+
+-->//Distance between two rivet centres dist (mm)
+
+-->dist = 100
+ dist =
+
+ 100.
+
+
+The code only pertains to the given geometry.
+
+Erroneous results can be obtained for other geometries.
+
+Diameter of the rivets(d) = 15.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.24.b/solution8_24.sce b/764/CH8/EX8.24.b/solution8_24.sce new file mode 100755 index 000000000..df13ec934 --- /dev/null +++ b/764/CH8/EX8.24.b/solution8_24.sce @@ -0,0 +1,36 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_24.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_24.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the primary shear force on each bolt Pshear (N)
+Pshear = (P * 1000)/n
+printf('\nThe code only pertains to the given geometry.\n')
+printf('\nErroneous results can be obtained for other geometries.\n')
+//Calculate the radial distance of rivet centres 1 and 4 from the C.G. r1 (mm)
+r1 = dist + (dist/2)
+//Calculate the radial distance of rivet centre 2 and 3 from the C.G. r2 (mm)
+r2 = (dist/2)
+//Calculate the value of constant C
+C = (P * 1000 * e)/(2 * ((r1^2) + (r2^2)))
+//Calculate the secondary shear force in rivets 1 and 4 Sshear1 (N)
+Sshear1 = C * r1
+//Calculate the secondary shear force in rivets 2 and 3 Sshear2 (N)
+Sshear2 = C * r2
+//Calculate the maximum of the two secondary shear forces Sshear (N)
+if (Sshear1 > Sshear2) then
+ Sshear = Sshear1
+else
+ Sshear = Sshear2
+end
+//Calculate the resultant force P1 (N)
+P1 = sqrt((Pshear^2) + (Sshear^2))
+//Calculate the diameter of the rivets d (mm)
+d = sqrt((P1 * 4)/(%pi * tau))
+dround = ceil(d)
+//Print results
+printf('\nDiameter of the rivets(d) = %f mm\n', dround)
diff --git a/764/CH8/EX8.25.a/data8_25.sci b/764/CH8/EX8.25.a/data8_25.sci new file mode 100755 index 000000000..d46fab178 --- /dev/null +++ b/764/CH8/EX8.25.a/data8_25.sci @@ -0,0 +1,11 @@ +
+//(Welded and Riveted Joints) Example 8.25
+//Refer Fig.8.68 on page 323
+//Eccentric force acting on the bracket P (kN)
+P = 15
+//Permissible shear stress tau (N/mm2)
+tau = 60
+//Number of rivets n
+n = 2
+//Distance between two rivet centres dist (mm)
+dist = 100
diff --git a/764/CH8/EX8.25.b/result8_25.txt b/764/CH8/EX8.25.b/result8_25.txt new file mode 100755 index 000000000..41ea9c0f7 --- /dev/null +++ b/764/CH8/EX8.25.b/result8_25.txt @@ -0,0 +1,39 @@ +-->//(Welded and Riveted Joints) Example 8.25
+
+-->//Refer Fig.8.68 on page 323
+
+-->//Eccentric force acting on the bracket P (kN)
+
+-->P = 15
+ P =
+
+ 15.
+
+-->//Permissible shear stress tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Number of rivets n
+
+-->n = 2
+ n =
+
+ 2.
+
+-->//Distance between two rivet centres dist (mm)
+
+-->dist = 100
+ dist =
+
+ 100.
+
+
+The code only pertains to the given geometry.
+
+Erroneous results can be obtained for other geometries.
+
+Diameter of the rivets(d) = 18.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.25.b/solution8_25.sce b/764/CH8/EX8.25.b/solution8_25.sce new file mode 100755 index 000000000..1e1c9bb51 --- /dev/null +++ b/764/CH8/EX8.25.b/solution8_25.sce @@ -0,0 +1,28 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_25.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_25.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the primary shear force on each rivet Pshear (N)
+Pshear = (P * 1000)/n
+printf('\nThe code only pertains to the given geometry.\n')
+printf('\nErroneous results can be obtained for other geometries.\n')
+//Calculate the eccentricity e (mm)
+e = dist/2
+//Calculate the radial distance of rivet centres 1 and 2 from the C.G. r1 (mm)
+r1 = (dist/2)
+//Calculate the value of constant C
+C = (P * 1000 * e)/(2 * (r1^2))
+//Calculate the secondary shear force in rivets 1 and 2 Sshear (N)
+Sshear = C * r1
+//Calculate the resultant shear force on rivet 1 P1 (N)
+P1 = Pshear + Sshear
+//Calculate the rivet diameter d (mm)
+d = sqrt((P1 * 4)/(%pi * tau))
+dround = ceil(d)
+//Print results
+printf('\nDiameter of the rivets(d) = %f mm\n', dround)
diff --git a/764/CH8/EX8.26.a/data8_26.sci b/764/CH8/EX8.26.a/data8_26.sci new file mode 100755 index 000000000..49aa6e6a5 --- /dev/null +++ b/764/CH8/EX8.26.a/data8_26.sci @@ -0,0 +1,13 @@ +
+//(Welded and Riveted Joints) Example 8.26
+//Refer Fig.8.69 on page 323
+//Number of rivets n
+n = 4
+//Eccentric force P (kN)
+P = 5
+//Eccentricity e (mm)
+e = 200
+//Permissible shear stress tau (N/mm2)
+tau = 60
+//Radial distance of rivets from the C.G. r (mm)
+r = 100
diff --git a/764/CH8/EX8.26.b/result8_26.txt b/764/CH8/EX8.26.b/result8_26.txt new file mode 100755 index 000000000..d087ad9df --- /dev/null +++ b/764/CH8/EX8.26.b/result8_26.txt @@ -0,0 +1,46 @@ +-->//(Welded and Riveted Joints) Example 8.26
+
+-->//Refer Fig.8.69 on page 323
+
+-->//Number of rivets n
+
+-->n = 4
+ n =
+
+ 4.
+
+-->//Eccentric force P (kN)
+
+-->P = 5
+ P =
+
+ 5.
+
+-->//Eccentricity e (mm)
+
+-->e = 200
+ e =
+
+ 200.
+
+-->//Permissible shear stress tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Radial distance of rivets from the C.G. r (mm)
+
+-->r = 100
+ r =
+
+ 100.
+
+
+The code only pertains to the given geometry.
+
+Erroneous results can be obtained for other geometries.
+
+Diameter of the rivets(d) = 8.920621 or 9.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.26.b/solution8_26.sce b/764/CH8/EX8.26.b/solution8_26.sce new file mode 100755 index 000000000..de4525c15 --- /dev/null +++ b/764/CH8/EX8.26.b/solution8_26.sce @@ -0,0 +1,23 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_26.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_26.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the primary shear force in each rivet Pshear (N)
+Pshear = (P * 1000)/n
+printf('\nThe code only pertains to the given geometry.\n')
+printf('\nErroneous results can be obtained for other geometries.\n')
+//Calculate the value of constant C
+C = (P * 1000 * e)/(n * (r^2))
+//Calculate the secondary shear force Sshear (N)
+Sshear = C * r
+//Calculate the maximum resultant shear force on rivet 2 P2 (N)
+P2 = Pshear + Sshear
+//Calculate the diameter of the rivets d (mm)
+d = sqrt((4 * P2)/(%pi * tau))
+//Print results
+printf("\nDiameter of the rivets(d) = %f or %f mm\n",d,ceil(d))
diff --git a/764/CH8/EX8.27.a/data8_27.sci b/764/CH8/EX8.27.a/data8_27.sci new file mode 100755 index 000000000..f48f6488a --- /dev/null +++ b/764/CH8/EX8.27.a/data8_27.sci @@ -0,0 +1,23 @@ +
+//(Welded and Riveted Joints) Example 8.27
+//Refer Fig.8.70 on page 324
+//Number of rivets n
+n = 9
+//Permissible shear stress tau (N/mm2)
+tau = 60
+//Eccentric force P (kN)
+P = 50
+//Eccentricity e (mm)
+e = 300
+//Radial distance of rivets 2, 4, 6 and 8 from the C.G.(5) r2 (mm)
+r2 = 100
+//Number of rivets with radial distance r2 n2
+n2 = 4
+//Radial distance of rivets 1, 3, 7 and 9 from the C.G.(5) r1 (mm)
+r1 = sqrt((100^2) + (100^2))
+//Number of rivets with radial distance r1 n1
+n1 = 4
+//Radial distance of rivet 5 from the C.G.(5) r3 (mm)
+r3 = 0
+//Angle made by line joining rivets 3 and 5 with the horizontal theta (degree)
+theta = 45
diff --git a/764/CH8/EX8.27.b/result8_27.txt b/764/CH8/EX8.27.b/result8_27.txt new file mode 100755 index 000000000..ce9a9796d --- /dev/null +++ b/764/CH8/EX8.27.b/result8_27.txt @@ -0,0 +1,81 @@ +-->//(Welded and Riveted Joints) Example 8.27
+
+-->//Refer Fig.8.70 on page 324
+
+-->//Number of rivets n
+
+-->n = 9
+ n =
+
+ 9.
+
+-->//Permissible shear stress tau (N/mm2)
+
+-->tau = 60
+ tau =
+
+ 60.
+
+-->//Eccentric force P (kN)
+
+-->P = 50
+ P =
+
+ 50.
+
+-->//Eccentricity e (mm)
+
+-->e = 300
+ e =
+
+ 300.
+
+-->//Radial distance of rivets 2, 4, 6 and 8 from the C.G.(5) r2 (mm)
+
+-->r2 = 100
+ r2 =
+
+ 100.
+
+-->//Number of rivets with radial distance r2 n2
+
+-->n2 = 4
+ n2 =
+
+ 4.
+
+-->//Radial distance of rivets 1, 3, 7 and 9 from the C.G.(5) r1 (mm)
+
+-->r1 = sqrt((100^2) + (100^2))
+ r1 =
+
+ 141.42136
+
+-->//Number of rivets with radial distance r1 n1
+
+-->n1 = 4
+ n1 =
+
+ 4.
+
+-->//Radial distance of rivet 5 from the C.G.(5) r3 (mm)
+
+-->r3 = 0
+ r3 =
+
+ 0.
+
+-->//Angle made by line joining rivets 3 and 5 with the horizontal theta (degree)
+
+-->theta = 45
+ theta =
+
+ 45.
+
+
+The code only pertains to the given geometry.
+
+Erroneous results can be obtained for other geometries.
+
+Diameter of the rivets(d) = 21.587293 or 22.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.27.b/solution8_27.sce b/764/CH8/EX8.27.b/solution8_27.sce new file mode 100755 index 000000000..9b9fdf2be --- /dev/null +++ b/764/CH8/EX8.27.b/solution8_27.sce @@ -0,0 +1,35 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_27.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_27.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the primary shear force Pshear (N)
+Pshear = (P * 1000)/n
+printf('\nThe code only pertains to the given geometry.\n')
+printf('\nErroneous results can be obtained for other geometries.\n')
+//Calculate the value of constant C
+C = (P * 1000 * e)/((n1 * (r1^2)) + (n2 * (r2^2)) + (r3^2))
+//Calculate the secondary shear force for rivets with radial distance r1 Sshear1 (N)
+Sshear1 = C * r1
+//Calculate the secondary shear force for rivets with radial distance r2 Sshear2 (N)
+Sshear2 = C * r2
+//Calculate the secondary shear force for rivets with radial distance r3 Sshear3 (N)
+Sshear3 = C * r3
+//Calculate the resultant shear force for rivets with radial distance r1 res1 (N)
+res1 = sqrt((Sshear1 * sind(theta))^2 + ((Sshear1 * cosd(theta)) + Pshear)^2)
+//Calculate the resultant shear force for rivets with radial distance r2 res2 (N)
+res2 = Pshear + Sshear2
+//Find out the maximum resultant force rmax (N)
+if (res1 > res2) then
+ rmax = res1
+else
+ rmax = res2
+end
+//Calculate the diameter of the rivets d (mm)
+d = sqrt((rmax * 4)/(%pi * tau))
+//Print results
+printf('\nDiameter of the rivets(d) = %f or %f mm\n', d,ceil(d))
diff --git a/764/CH8/EX8.3.a/data8_3.sci b/764/CH8/EX8.3.a/data8_3.sci new file mode 100755 index 000000000..380844324 --- /dev/null +++ b/764/CH8/EX8.3.a/data8_3.sci @@ -0,0 +1,11 @@ +
+//(Welded and Riveted Joints) Example 8.3
+//Refer Fig.8.10 on page 279
+//Width of the steel plates w (mm)
+w = 120
+//Thickness of the steel plates t (mm)
+t = 12.5
+//Maximum tensile stress sigmat (N/mm2)
+sigmat = 110
+//Total length of the weld to be added at start and stop lExt (mm)
+lExt = 15
diff --git a/764/CH8/EX8.3.b/result8_3.txt b/764/CH8/EX8.3.b/result8_3.txt new file mode 100755 index 000000000..09f4946ac --- /dev/null +++ b/764/CH8/EX8.3.b/result8_3.txt @@ -0,0 +1,35 @@ +-->//(Welded and Riveted Joints) Example 8.3
+
+-->//Refer Fig.8.10 on page 279
+
+-->//Width of the steel plates w (mm)
+
+-->w = 120
+ w =
+
+ 120.
+
+-->//Thickness of the steel plates t (mm)
+
+-->t = 12.5
+ t =
+
+ 12.5
+
+-->//Maximum tensile stress sigmat (N/mm2)
+
+-->sigmat = 110
+ sigmat =
+
+ 110.
+
+-->//Total length of the weld to be added at start and stop lExt (mm)
+
+-->lExt = 15
+ lExt =
+
+ 15.
+
+
+Total required length of the welds(lTotal) = 99.865629 or 100.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.3.b/solution8_3.sce b/764/CH8/EX8.3.b/solution8_3.sce new file mode 100755 index 000000000..0739bfcab --- /dev/null +++ b/764/CH8/EX8.3.b/solution8_3.sce @@ -0,0 +1,29 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_3.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_3.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the tensile force on the plates P (N)
+P = w * t * sigmat
+//Calculate the thickness of the weld h (mm)
+h = t
+//Calculate the length of the weld l (mm)
+l = P/(1.414 * h * sigmat)
+//Total required length of the welds lTotal (mm)
+lTotal = l + lExt
+lround = round_five(lTotal)
+//Print results
+printf('\nTotal required length of the welds(lTotal) = %f or %f mm\n',lTotal,lround)
diff --git a/764/CH8/EX8.4.a/data8_4.sci b/764/CH8/EX8.4.a/data8_4.sci new file mode 100755 index 000000000..eee3b88f7 --- /dev/null +++ b/764/CH8/EX8.4.a/data8_4.sci @@ -0,0 +1,15 @@ +
+//(Welded and Riveted Joints) Example 8.4
+//Refer Fig.8.11 on page 280
+//Width of the plate w (mm)
+w = 75
+//Thickness of the plate h (mm)
+h = 10
+//Maximum tensile force acting on the plates P (kN)
+P = 55
+//Permissible tensile stress in the weld sigmat (N/mm2)
+sigmat = 70
+//Permissible shear stress in the weld tau (N/mm2)
+tau = 50
+//Total length of the weld to be added at start and stop lExt (mm)
+lExt = 15
diff --git a/764/CH8/EX8.4.b/result8_4.txt b/764/CH8/EX8.4.b/result8_4.txt new file mode 100755 index 000000000..a89ede9e6 --- /dev/null +++ b/764/CH8/EX8.4.b/result8_4.txt @@ -0,0 +1,49 @@ +-->//(Welded and Riveted Joints) Example 8.4
+
+-->//Refer Fig.8.11 on page 280
+
+-->//Width of the plate w (mm)
+
+-->w = 75
+ w =
+
+ 75.
+
+-->//Thickness of the plate h (mm)
+
+-->h = 10
+ h =
+
+ 10.
+
+-->//Maximum tensile force acting on the plates P (kN)
+
+-->P = 55
+ P =
+
+ 55.
+
+-->//Permissible tensile stress in the weld sigmat (N/mm2)
+
+-->sigmat = 70
+ sigmat =
+
+ 70.
+
+-->//Permissible shear stress in the weld tau (N/mm2)
+
+-->tau = 50
+ tau =
+
+ 50.
+
+-->//Total length of the weld to be added at start and stop lExt (mm)
+
+-->lExt = 15
+ lExt =
+
+ 15.
+
+
+Total required length of each parallel weld(lTotal) = 40.293494 or 45.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.4.b/solution8_4.sce b/764/CH8/EX8.4.b/solution8_4.sce new file mode 100755 index 000000000..241d5a4e9 --- /dev/null +++ b/764/CH8/EX8.4.b/solution8_4.sce @@ -0,0 +1,32 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_4.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_4.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Assume the length of the parallel fillet weld to be 1mm l
+l = 1
+//Calculate the strength of the transverse fillet weld P1 (N)
+P1 = 0.707 * h * w * sigmat
+//Calculate the strength of the parallel fillet weld P2 (N)
+P2 = 1.414 * h * l * tau
+//Calculate the actual length of the parallel fillet weld l (mm)
+l = ((P * 1000) - P1)/P2
+//Total required length of each parallel weld lTotal (mm)
+lTotal = l + lExt
+lround = round_five(lTotal)
+//Print results
+printf('\nTotal required length of each parallel weld(lTotal) = %f or %f mm\n',lTotal,lround)
+
diff --git a/764/CH8/EX8.5.a/data8_5.sci b/764/CH8/EX8.5.a/data8_5.sci new file mode 100755 index 000000000..1129b5335 --- /dev/null +++ b/764/CH8/EX8.5.a/data8_5.sci @@ -0,0 +1,13 @@ +
+//(Welded and Riveted Joints) Example 8.5
+//Refer Fig.8.12 on page 280
+//Width of the steel plate w (mm)
+w = 100
+//Thickness of the steel plate t (mm)
+t = 10
+//Permissible tensile stress in the weld and plates sigmat (N/mm2)
+sigmat = 70
+//Permissible shear stress in the weld and plates tau (N/mm2)
+tau = 50
+//Total length of the weld to be added at start and stop lExt (mm)
+lExt = 15
diff --git a/764/CH8/EX8.5.b/result8_5.txt b/764/CH8/EX8.5.b/result8_5.txt new file mode 100755 index 000000000..332ff9b3b --- /dev/null +++ b/764/CH8/EX8.5.b/result8_5.txt @@ -0,0 +1,42 @@ +-->//(Welded and Riveted Joints) Example 8.5
+
+-->//Refer Fig.8.12 on page 280
+
+-->//Width of the steel plate w (mm)
+
+-->w = 100
+ w =
+
+ 100.
+
+-->//Thickness of the steel plate t (mm)
+
+-->t = 10
+ t =
+
+ 10.
+
+-->//Permissible tensile stress in the weld and plates sigmat (N/mm2)
+
+-->sigmat = 70
+ sigmat =
+
+ 70.
+
+-->//Permissible shear stress in the weld and plates tau (N/mm2)
+
+-->tau = 50
+ tau =
+
+ 50.
+
+-->//Total length of the weld to be added at start and stop lExt (mm)
+
+-->lExt = 15
+ lExt =
+
+ 15.
+
+
+Total required length of each parallel weld(lTotal) = 44.009901 or 45.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.5.b/solution8_5.sce b/764/CH8/EX8.5.b/solution8_5.sce new file mode 100755 index 000000000..4c9318691 --- /dev/null +++ b/764/CH8/EX8.5.b/solution8_5.sce @@ -0,0 +1,35 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_5.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_5.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the tensile strength of the plate P (N)
+P = (w * t)*sigmat
+//Calculate the thickness of the weld h (mm)
+h = t
+//Calculate the strength of the transverse fillet weld P1 (N)
+P1 = 0.707 * h * w * sigmat
+//Assume the length of the parallel weld to be 1mm l (mm)
+l = 1
+//Calculate the strength of the double parallel fillet weld P2 (N)
+P2 = 1.414 * h * l * tau
+//Calculate the actual length of each parallel weld l (mm)
+l = (P - P1)/P2
+//Total required length of each parallel weld lTotal (mm)
+lTotal = l + lExt
+lround = round_five(lTotal)
+//Print results
+printf('\nTotal required length of each parallel weld(lTotal) = %f or %f mm\n',lTotal,lround)
diff --git a/764/CH8/EX8.6.a/data8_6.sci b/764/CH8/EX8.6.a/data8_6.sci new file mode 100755 index 000000000..cd5e07c9d --- /dev/null +++ b/764/CH8/EX8.6.a/data8_6.sci @@ -0,0 +1,13 @@ +
+//(Welded and Riveted Joints) Example 8.6
+//Refer Fig.8.13 on page 281
+//Size of the fillet weld h (mm)
+h = 5
+//Allowable shear load per mm S (N/mm)
+S = 330
+//Tensile force acting on the plate P (kN)
+P = 150
+//Total length of the weld to be added at start and stop lExt (mm)
+lExt = 15
+//Length of the transverse weld t (mm)
+t = 100
diff --git a/764/CH8/EX8.6.b/result8_6.txt b/764/CH8/EX8.6.b/result8_6.txt new file mode 100755 index 000000000..9a05741f3 --- /dev/null +++ b/764/CH8/EX8.6.b/result8_6.txt @@ -0,0 +1,42 @@ +-->//(Welded and Riveted Joints) Example 8.6
+
+-->//Refer Fig.8.13 on page 281
+
+-->//Size of the fillet weld h (mm)
+
+-->h = 5
+ h =
+
+ 5.
+
+-->//Allowable shear load per mm S (N/mm)
+
+-->S = 330
+ S =
+
+ 330.
+
+-->//Tensile force acting on the plate P (kN)
+
+-->P = 150
+ P =
+
+ 150.
+
+-->//Total length of the weld to be added at start and stop lExt (mm)
+
+-->lExt = 15
+ lExt =
+
+ 15.
+
+-->//Length of the transverse weld t (mm)
+
+-->t = 100
+ t =
+
+ 100.
+
+
+Total required length of the welds(lTotal) = 192.272727 or 195.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.6.b/solution8_6.sce b/764/CH8/EX8.6.b/solution8_6.sce new file mode 100755 index 000000000..9cfc1ce77 --- /dev/null +++ b/764/CH8/EX8.6.b/solution8_6.sce @@ -0,0 +1,27 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_6.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_6.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the required length of the weld L (mm)
+L = (P * 1000)/S
+//Calculate the length of the parallel weld l (mm)
+l = (L - t)/2
+//Total required length of the welds lTotal (mm)
+lTotal = l + lExt
+lround = round_five(lTotal)
+//Print results
+printf('\nTotal required length of the welds(lTotal) = %f or %f mm\n',lTotal,lround)
diff --git a/764/CH8/EX8.7.a/data8_7.sci b/764/CH8/EX8.7.a/data8_7.sci new file mode 100755 index 000000000..894ae80f6 --- /dev/null +++ b/764/CH8/EX8.7.a/data8_7.sci @@ -0,0 +1,14 @@ +
+//(Welded and Riveted Joints) Example 8.7
+//Refer Fig.8.17 on page 284
+//ISA angle dimensions l1 x l2 x h (mm)
+l1 = 200
+l2 = 100
+h = 10
+//Static force acting on the angle P (kN)
+P = 150
+//Permissible shear stress for the weld tau (N/mm2)
+tau = 70
+//
+//Distance of C.G. of weld2 from the C.G. of the angle y2 (mm)
+y2 = 71.8
diff --git a/764/CH8/EX8.7.b/result8_7.txt b/764/CH8/EX8.7.b/result8_7.txt new file mode 100755 index 000000000..389ce3bd1 --- /dev/null +++ b/764/CH8/EX8.7.b/result8_7.txt @@ -0,0 +1,49 @@ +-->//(Welded and Riveted Joints) Example 8.7
+
+-->//Refer Fig.8.17 on page 284
+
+-->//ISA angle dimensions l1 x l2 x h (mm)
+
+-->l1 = 200
+ l1 =
+
+ 200.
+
+-->l2 = 100
+ l2 =
+
+ 100.
+
+-->h = 10
+ h =
+
+ 10.
+
+-->//Static force acting on the angle P (kN)
+
+-->P = 150
+ P =
+
+ 150.
+
+-->//Permissible shear stress for the weld tau (N/mm2)
+
+-->tau = 70
+ tau =
+
+ 70.
+
+-->//
+
+-->//Distance of C.G. of weld2 from the C.G. of the angle y2 (mm)
+
+-->y2 = 71.8
+ y2 =
+
+ 71.8
+
+
+Length of the weld at the top(L1) = 108.809861 mm
+
+Length of the weld at the bottom(L2) = 194.281673 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.7.b/solution8_7.sce b/764/CH8/EX8.7.b/solution8_7.sce new file mode 100755 index 000000000..3a6805ec8 --- /dev/null +++ b/764/CH8/EX8.7.b/solution8_7.sce @@ -0,0 +1,20 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_7.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_7.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the distance of the C.G. of weld1 from the C.G. of the plate y1 (mm)
+y1 = l1 - y2
+//Calculate the total length of the weld L (mm)
+L = (P * 1000)/(0.707 * h * tau)
+//Calculate the length of the weld at the top L1 (mm)
+L1 = L/(1 + (y1/y2))
+//Calculate the length of the weld at the bottom L2 (mm)
+L2 = L - L1
+//Print results
+printf('\nLength of the weld at the top(L1) = %f mm\n',L1)
+printf('\nLength of the weld at the bottom(L2) = %f mm\n',L2)
diff --git a/764/CH8/EX8.8.a/data8_8.sci b/764/CH8/EX8.8.a/data8_8.sci new file mode 100755 index 000000000..ac30759bf --- /dev/null +++ b/764/CH8/EX8.8.a/data8_8.sci @@ -0,0 +1,13 @@ +
+//(Welded and Riveted Joints) Example 8.8
+//Refer Fig.8.18 on page 285
+//ISA angle dimensions l1 x l2 x t
+l1 = 150
+l2 = 75
+t = 10
+//Static load acting on the angle through the C.G. P (kN)
+P = 125
+//Distance of the angle C.G. from the short side y2 (mm)
+y2 = 53.2
+//Allowable load per mm of the weld Pall (N/mm)
+Pall = 665
diff --git a/764/CH8/EX8.8.b/result8_8.txt b/764/CH8/EX8.8.b/result8_8.txt new file mode 100755 index 000000000..693927f19 --- /dev/null +++ b/764/CH8/EX8.8.b/result8_8.txt @@ -0,0 +1,47 @@ +-->//(Welded and Riveted Joints) Example 8.8
+
+-->//Refer Fig.8.18 on page 285
+
+-->//ISA angle dimensions l1 x l2 x t
+
+-->l1 = 150
+ l1 =
+
+ 150.
+
+-->l2 = 75
+ l2 =
+
+ 75.
+
+-->t = 10
+ t =
+
+ 10.
+
+-->//Static load acting on the angle through the C.G. P (kN)
+
+-->P = 125
+ P =
+
+ 125.
+
+-->//Distance of the angle C.G. from the short side y2 (mm)
+
+-->y2 = 53.2
+ y2 =
+
+ 53.2
+
+-->//Allowable load per mm of the weld Pall (N/mm)
+
+-->Pall = 665
+ Pall =
+
+ 665.
+
+
+Length of the shorter weld(l1) = 66.666667 mm
+
+Length of the longer weld(l2) = 121.303258 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.8.b/solution8_8.sce b/764/CH8/EX8.8.b/solution8_8.sce new file mode 100755 index 000000000..4f092ff5a --- /dev/null +++ b/764/CH8/EX8.8.b/solution8_8.sce @@ -0,0 +1,20 @@ +
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_8.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_8.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Calculate the total length of the weld l (mm)
+l = (P * 1000)/Pall
+//Calculate the distance of the C.G. of the angle from the long side y1 (mm)
+y1 = l1 - y2
+//Calculate the length of the shorter weld l1 (mm)
+l1 = l/(1 + (y1/y2))
+//Calculate the length of the longer weld l2 (mm)
+l2 = l - l1
+//Print results
+printf('\nLength of the shorter weld(l1) = %f mm\n',l1)
+printf('\nLength of the longer weld(l2) = %f mm\n',l2)
diff --git a/764/CH8/EX8.9.a/data8_9.sci b/764/CH8/EX8.9.a/data8_9.sci new file mode 100755 index 000000000..6fdb44c1b --- /dev/null +++ b/764/CH8/EX8.9.a/data8_9.sci @@ -0,0 +1,15 @@ +
+//(Welded and Riveted Joints) Example 8.9
+//Refer Fig. 8.22 on page 286
+//Eccentric force acting on the welded connection P (kN)
+P = 7.5
+//Permissible shear stress for the weld tau (N/mm2)
+tau = 100
+//Number of welds N
+N = 2
+//Length of each weld l (mm)
+l = 50
+//Force eccentricity e (mm)
+e = 100 + (l/2)
+//Width of the plate w (mm)
+w = 50
diff --git a/764/CH8/EX8.9.b/result8_9.txt b/764/CH8/EX8.9.b/result8_9.txt new file mode 100755 index 000000000..2599695fd --- /dev/null +++ b/764/CH8/EX8.9.b/result8_9.txt @@ -0,0 +1,49 @@ +-->//(Welded and Riveted Joints) Example 8.9
+
+-->//Refer Fig. 8.22 on page 286
+
+-->//Eccentric force acting on the welded connection P (kN)
+
+-->P = 7.5
+ P =
+
+ 7.5
+
+-->//Permissible shear stress for the weld tau (N/mm2)
+
+-->tau = 100
+ tau =
+
+ 100.
+
+-->//Number of welds N
+
+-->N = 2
+ N =
+
+ 2.
+
+-->//Length of each weld l (mm)
+
+-->l = 50
+ l =
+
+ 50.
+
+-->//Force eccentricity e (mm)
+
+-->e = 100 + (l/2)
+ e =
+
+ 125.
+
+-->//Width of the plate w (mm)
+
+-->w = 50
+ w =
+
+ 50.
+
+
+Throat of the weld(t) = 4.538894 or 5.000000 mm
+
\ No newline at end of file diff --git a/764/CH8/EX8.9.b/solution8_9.sce b/764/CH8/EX8.9.b/solution8_9.sce new file mode 100755 index 000000000..5ee467fee --- /dev/null +++ b/764/CH8/EX8.9.b/solution8_9.sce @@ -0,0 +1,47 @@ +
+//Function to round-up a value such that it is divisible by 5
+function[v] = round_five(w)
+ v = ceil(w)
+ rem = pmodulo(v,5)
+ if (rem ~= 0) then
+ v = v + (5 - rem)
+ end
+endfunction
+
+//Obtain path of solution file
+path = get_absolute_file_path('solution8_9.sce')
+//Obtain path of data file
+datapath = path + filesep() + 'data8_9.sci'
+//Clear all
+clc
+//Execute the data file
+exec(datapath)
+//Assume the throat of each weld to be 1mm t
+t = 1
+//Calculate the total throat area of the welds A (mm2)
+A = N * l * t
+//Calculate the primary shear stress tau1 (N/mm2)
+tau1 = (P * 1000)/A
+//Maximum bending moment acting on the welds M (N/mm)
+M = (P * 1000) * e
+//Distance of the farthest point in the weld from the C.G. of the plate r (mm)
+r = sqrt(((w/2)^2) + ((l/2)^2))
+//Polar moment of inertia of weld1 about plate C.G. using parallel axis theorem J1 (mm4)
+J1 = (A/N)*(((l^2)/12) + ((w/2)^2))
+//Calculate the polar moment of inertia due to symmetry J (mm4)
+J = 2 * J1
+//Calculate the secondary shear stress tau2 (N/mm2)
+tau2 = (M * r)/J
+//Angle made by the secondary shear force with the horizontal theta (degree)
+theta = 45
+//Total vertical component of the resultant shear stress vert (N/mm2)
+vert = tau1 + (tau2 * sind(theta))
+//Total horizontal component of the resultant shear stress hori (N/mm2)
+hori = tau2 * cosd(theta)
+//Calculate the resultant shear stress res (N/mm2)
+res = sqrt((vert^2) + (hori^2))
+//Calculate the actual throat of the weld t (mm)
+t = res/tau
+tround = round_five(t)
+//Print results
+printf('\nThroat of the weld(t) = %f or %f mm\n',t,tround)
diff --git a/764/DEPENDENCIES/data1_1.sci b/764/DEPENDENCIES/data1_1.sci new file mode 100755 index 000000000..27c80b188 --- /dev/null +++ b/764/DEPENDENCIES/data1_1.sci @@ -0,0 +1,6 @@ +
+//(Introduction) Example 1.1
+//Initial value of the series
+a = 1
+//Final value of the series
+b = 10
diff --git a/764/DEPENDENCIES/data1_2.sci b/764/DEPENDENCIES/data1_2.sci new file mode 100755 index 000000000..0d4ecc10d --- /dev/null +++ b/764/DEPENDENCIES/data1_2.sci @@ -0,0 +1,7 @@ +
+//(Introduction) Example 1.2
+//Initial value of the series
+a = 100
+//Final value of the series
+b = 1000
+
diff --git a/764/DEPENDENCIES/data1_3.sci b/764/DEPENDENCIES/data1_3.sci new file mode 100755 index 000000000..bbec76a81 --- /dev/null +++ b/764/DEPENDENCIES/data1_3.sci @@ -0,0 +1,10 @@ +
+//Introduction Example 1.3
+//Initial value of the series of power capacities kW
+a = 7.5
+//Final value of the series of power capacities kW
+b = 75
+//For five models
+m = 5 - 1
+//For nine models
+n = 9 - 1
\ No newline at end of file diff --git a/764/DEPENDENCIES/data1_4.sci b/764/DEPENDENCIES/data1_4.sci new file mode 100755 index 000000000..5b1bd6ed9 --- /dev/null +++ b/764/DEPENDENCIES/data1_4.sci @@ -0,0 +1,8 @@ +
+//Introduction Example 1.4
+//Initial value of the series (diameter in mm)
+a = 100
+//Final value of the series (diameter in mm)
+b = 1000
+//Eleven shafts to be standardized
+n = 11 - 1
diff --git a/764/DEPENDENCIES/data22_3.sci b/764/DEPENDENCIES/data22_3.sci new file mode 100755 index 000000000..972ec9277 --- /dev/null +++ b/764/DEPENDENCIES/data22_3.sci @@ -0,0 +1,17 @@ +
+//(Cylinders and Pressure Vessels) Example 22.3
+//Force exerted by the piston rod F (kN)
+F = 10
+//Friction force due to piston packing as a percentage of operating force frac(%)
+frac = 10
+//Pressure inside the cylinder Pi (MPa)
+Pi = 10
+//Ultimate tensile strength of the cylinder material Sut (N/mm2)
+Sut = 200
+//Factor of safety fs
+fs = 5
+//Check the behavior of the material
+behavior = 'brittle'
+//Change the behavior to 'ductile' if the material is ductile and uncomment the
+//next line specifying the poisson's ratio
+//mu = 0.26
diff --git a/764/DEPENDENCIES/data2_1.sci b/764/DEPENDENCIES/data2_1.sci new file mode 100755 index 000000000..22c4f95fb --- /dev/null +++ b/764/DEPENDENCIES/data2_1.sci @@ -0,0 +1,17 @@ +
+// (Engineering Materials)Example 2.1
+//Refer Table 2.13 on page 52
+//Store data in respective arrays in the order:
+//Sequence: {Low alloy steel, Plain carbon steel, Stainless steel, Chromium steel}
+//Ulimate tensile strengths U N/mm2
+U = {850 850 1200 950}
+//Hardenability Index H
+H = {60 80 30 100}
+//Cost (Rs/unit) C
+C = {40 50 100 80}
+//Point weightage for ultimate tensile strength
+Uw = 5
+//Point weightage for hardenability
+Hw = 3
+//Point weightage for cost-economy
+Cw = 2
diff --git a/764/DEPENDENCIES/data3_1.sci b/764/DEPENDENCIES/data3_1.sci new file mode 100755 index 000000000..7f2098d48 --- /dev/null +++ b/764/DEPENDENCIES/data3_1.sci @@ -0,0 +1,16 @@ +
+//(Manufacturing Considerations in Design) Example 3.1
+//Refer Fig. 3.25 on page 70
+//Basic diameter of bush Db mm
+Db = 20
+//Refer tables 3.2 and 3.3a for tolerances of H6-e7 fit
+//Upper deviation for bush Ub mm
+Ub = 0.013
+//Lower deviation for bush Lb mm
+Lb = 0.000
+//Basic diameter of crank pin Dc mm
+Dc = 20
+//Upper deviation for crankpin Uc mm
+Uc = -0.040
+//Lower deviation for crankpin Lc mm
+Lc = -0.061
diff --git a/764/DEPENDENCIES/data3_2.sci b/764/DEPENDENCIES/data3_2.sci new file mode 100755 index 000000000..cacb63f86 --- /dev/null +++ b/764/DEPENDENCIES/data3_2.sci @@ -0,0 +1,16 @@ +
+//(Manufacturing Considerations in Design) Example 3.2
+//Refer Fig. 3.26 on page 70
+//Basic diameter of housing Dh mm
+Dh = 20
+//Refer tables 3.2 and 3.3b for tolerances of H7-s6 fit
+//Upper deviation for housing Uh mm
+Uh = 0.021
+//Lower deviation for housing Lh mm
+Lh = 0.000
+//Basic diameter of valve seat(outer diameter) Dv mm
+Dv = 20
+//Upper deviation for valve seat Uv mm
+Uv = 0.048
+//Lower deviation for valve seat Lv mm
+Lv = 0.035
diff --git a/764/DEPENDENCIES/data3_3.sci b/764/DEPENDENCIES/data3_3.sci new file mode 100755 index 000000000..54e82a95a --- /dev/null +++ b/764/DEPENDENCIES/data3_3.sci @@ -0,0 +1,16 @@ +
+//(Manufacturing Considerations in Design) Example 3.3
+//Refer Fig. 3.26 on page 70
+//Basic diameter of hub Dh mm
+Dh = 50
+//Refer tables 3.2 and 3.3b for tolerances of H7-s6 fit
+//Upper deviation for hub Uh mm
+Uh = 0.025
+//Lower deviation for hub Lh mm
+Lh = 0.000
+//Basic diameter of shaft Ds mm
+Ds = 50
+//Upper deviation for shaft Us mm
+Us = 0.059
+//Lower deviation for shaft Ls mm
+Ls = 0.043
diff --git a/764/DEPENDENCIES/data3_4.sci b/764/DEPENDENCIES/data3_4.sci new file mode 100755 index 000000000..4a61e2086 --- /dev/null +++ b/764/DEPENDENCIES/data3_4.sci @@ -0,0 +1,17 @@ +
+//(Manufacturing Considerations in Design) Example 3.4
+//Basic centre distance between two bolts C mm
+C = 50
+//Basic diameter of bolt Db mm
+Db = 12
+//Refer tables 3.2 and 3.3a for tolerances of H11-d11 fit
+//Upper deviation for bolt Ub mm
+Ub = -0.050
+//Lower deviation for bolt Lb mm
+Lb = -0.160
+//Basic diameter of hole Dh mm
+Dh = 12
+//Upper deviation for hole Uh mm
+Uh = 0.110
+//Lower deviation for hole Lh mm
+Lh = 0.000
|