diff options
author | kinitrupti | 2017-05-12 18:40:35 +0530 |
---|---|---|
committer | kinitrupti | 2017-05-12 18:40:35 +0530 |
commit | d36fc3b8f88cc3108ffff6151e376b619b9abb01 (patch) | |
tree | 9806b0d68a708d2cfc4efc8ae3751423c56b7721 /Engineering_Mechanics_by_A._K._Tayal | |
parent | 1b1bb67e9ea912be5c8591523c8b328766e3680f (diff) | |
download | Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.tar.gz Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.tar.bz2 Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.zip |
Revised list of TBCs
Diffstat (limited to 'Engineering_Mechanics_by_A._K._Tayal')
58 files changed, 156 insertions, 18154 deletions
diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY_.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter16KINETICSOFAPARTICLEWORKANDENERGY.ipynb index e376ef40..e376ef40 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY_.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter16KINETICSOFAPARTICLEWORKANDENERGY.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_10_UNIFORM_FLEXIBLE_SUSPENSION_CABLES_GnACBtd.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_10_UNIFORM_FLEXIBLE_SUSPENSION_CABLES_GnACBtd.ipynb deleted file mode 100644 index 13b825ff..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_10_UNIFORM_FLEXIBLE_SUSPENSION_CABLES_GnACBtd.ipynb +++ /dev/null @@ -1,344 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 10 Uniform Flexible Suspension Cables" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.1 Cable subjected to concentrated loads" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(i) The horizontal reaction at B (Xb) is 1600.000000 N\n", - "(i) The vertical reaction at B (Yb) is 1100.000000 N\n", - "(ii) The sag at point E (y_e) is 1.375000 m\n", - "(iii) The tension in portion CA (T_CA) is 1627.882060 N\n", - "(iv) The max tension in the cable (T_max) is 1941.648784 N\n", - "(iv) The max slope (theta_1) in the cable is 34.508523 degree\n" - ] - } - ], - "source": [ - "import math,numpy\n", - "# Initilization of variables\n", - "W1=400 # N # vertical load at pt C\n", - "W2=600 # N # vertical load at pt D\n", - "W3=400 # N # vertical load at pt E\n", - "l=2 # m # l= Lac=Lcd=Lde=Leb\n", - "h=2.25 # m # distance of the cable from top\n", - "L=2 # m # dist of A from top\n", - "# Calculations\n", - "# Solving eqn's 1&2 using MATRIX for Xb & Yb\n", - "A=numpy.matrix([[-L,4*l],[-h,2*l]])\n", - "B=numpy.matrix([[((W1*l)+(W2*2*l)+(W1*3*l))],[(W1*l)]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Now consider the F.B.D of BE, Take moment at E\n", - "y_e=(C[1]*l)/C[0] # m / here y_e is the distance between E and the top\n", - "theta_1=math.degrees(math.atan(y_e/l)) # degree # where theta_1 is the angle between BE and the horizontal\n", - "T_BE=C[0]/math.cos(theta_1*math.pi/180) # N (T_BE=T_max)\n", - "# Now consider the F.B.D of portion BEDC\n", - "# Take moment at C\n", - "y_c=((C[1]*6)-(W3*4)-(W2*2))/(C[0]) # m\n", - "theta_4=math.degrees(math.atan(((y_c)-(l))/(l))) # degree\n", - "T_CA=C[0]/math.cos(theta_4*math.pi/180) # N # Tension in CA\n", - "# Results\n", - "print('(i) The horizontal reaction at B (Xb) is %f N'%C[0])\n", - "print('(i) The vertical reaction at B (Yb) is %f N'%C[1])\n", - "print('(ii) The sag at point E (y_e) is %f m'%y_e)\n", - "print('(iii) The tension in portion CA (T_CA) is %f N'%T_CA)\n", - "print('(iv) The max tension in the cable (T_max) is %f N'%T_BE)\n", - "print('(iv) The max slope (theta_1) in the cable is %f degree'%theta_1)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.2 Cables subjected to concentrated loads" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(i) The component of support reaction at A (Ya) is 300.000000 N\n", - "(i) The component of support reaction at B (Yb) is 150.000000 N\n", - "(ii) The tension in portion AC (T_AC) of the cable is 360.555128 N\n", - "(ii) The tension in portion CD (T_CD) of the cable is 282.842712 N\n", - "(iii) The max tension in the cable is 360.555128 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initiization of variables\n", - "W1=100 # N # Pt load at C\n", - "W2=150 # N # Pt load at D\n", - "W3=200 # N # Pt load at E\n", - "l=1 # m # l=Lac=Lcd=Lde=Leb\n", - "h=2 # m # dist between Rb & top\n", - "Xa=200 # N\n", - "Xb=200 # N\n", - "# Calculations\n", - "# consider the F.B.D of entire cable\n", - "# Take moment at A\n", - "Yb=((W1*l)+(W2*2*l)+(W3*3*l)-(Xb*h))/(4*l) # N\n", - "Ya=W1+W2+W3-Yb # N # sum Fy=0\n", - "# Now consider the F.B.D of AC\n", - "# Take moment at C,\n", - "y_c=(Ya*l)/Xa # m\n", - "theta_1=math.degrees(math.atan(y_c/l)) # degree\n", - "T_AC=Xa/math.cos(theta_1*math.pi/180) # N # T_AC*cosd(theta_1)=horizontal component of tension in the cable\n", - "# here, T_AC=T_max\n", - "T_max=T_AC # N\n", - "# Now consider the F.B.D of portion ACD\n", - "y_d=((Ya*2*l)-(W1*l))/(Xa) # m # taking moment at D\n", - "theta_2=math.degrees(math.atan(((y_d)-(y_c))/(l))) # degree\n", - "T_CD=Xa/(math.cos(theta_2*math.pi/180)) # N \n", - "# Results\n", - "print('(i) The component of support reaction at A (Ya) is %f N'%Ya)\n", - "print('(i) The component of support reaction at B (Yb) is %f N'%Yb)\n", - "print('(ii) The tension in portion AC (T_AC) of the cable is %f N'%T_AC)\n", - "print('(ii) The tension in portion CD (T_CD) of the cable is %f N'%T_CD)\n", - "print('(iii) The max tension in the cable is %f N'%T_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.3 Cables uniformly loaded per unit horizontal distance" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The lowest point C which is situated at a distance (x_b) from support B is 8.000000 m\n", - "The maximum tension (T_max) in the cable is 14.715000 kN\n", - "The minimum tension (T_0) in the cable is 11.772000 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "w=75 # kg/m # mass per unit length of thw pipe\n", - "l=20 # m # dist between A & B\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "y=2 # m # position of C below B\n", - "# Calculations\n", - "# Let x_b be the distance of point C from B \n", - "# In eq'n x_b**2+32*x_b-320=0\n", - "a=1\n", - "b=32\n", - "c=-320\n", - "x_b=(-b+math.sqrt(b**2-(4*a*c)))/(2*a) # m # we get x_b by equating eqn's 1&2\n", - "# Now tension T_0\n", - "T_0=((w*g*x_b**2)/(2*y))*(10**-3) #kN # from eq'n 1\n", - "# Now the max tension occurs at point A,hence x is given as,\n", - "x=20-x_b # m\n", - "w_x=w*g*x*10**(-3) # kN \n", - "T_max=math.sqrt((T_0)**2+(w_x)**2) # kN # Maximum Tension\n", - "# Results\n", - "print('The lowest point C which is situated at a distance (x_b) from support B is %f m'%x_b)\n", - "print('The maximum tension (T_max) in the cable is %f kN'%T_max)\n", - "print('The minimum tension (T_0) in the cable is %f kN'%T_0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.4 Cables uniformly loaded per unit horizontal distance" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(i) The magnitude of load W is 1106.074781 N\n", - "(ii) The angle of the cable with the horizontal at B is 3.814075 degree\n", - "(iii) The total length of the cable AB is 30.022222 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "m=0.5 # kg/m # mass of the cable per unit length\n", - "g=9.81 # m/s**2\n", - "x=30 # m # length AB\n", - "y=0.5 # m # dist between C & the horizontal\n", - "x_b=15 # m # dist of horizontal from C to B\n", - "# Calculations\n", - "w=m*g # N/m # weight of the cable per unit length\n", - "T_0=(w*x_b**2)/(2*y) # N # From eq'n 1\n", - "T_B=math.sqrt((T_0)**2+(w*x/2)**2) # N # Tension in the cable at point B\n", - "W=T_B # N # As pulley is frictionless the tension in the pulley on each side is same,so W=T_B\n", - "# Slope of the cable at B,\n", - "theta=math.degrees(math.acos(T_0/T_B)) # degree\n", - "# Now length of the cable between C & B is,\n", - "S_cb=x_b*(1+((2/3)*(y/x_b)**2)) # m\n", - "# Now total length of the cable AB is,\n", - "S_ab=2*S_cb # m \n", - "# Results\n", - "print('(i) The magnitude of load W is %f N'%W)\n", - "print('(ii) The angle of the cable with the horizontal at B is %f degree'%theta)\n", - "print('(iii) The total length of the cable AB is %f m'%S_ab)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.5 Cables uniformly loaded per unit horizontal distance" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The smallest value of the sag in the cable is 0.849141 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "x=30 # m # distance between two electric poles\n", - "Tmax=400 # N # Max Pull or tension\n", - "w=3 # N/m # weight per unit length of the cable\n", - "# Calculations\n", - "# The cable is assumed to be parabolic in shape, its eq'n is y=w*x^2/2*T_0.....(eq'n 1).\n", - "#Substuting the co-ordinates of point B (l/2,h), where h is the sag in the cable.\n", - "#This gives, T_0=(w*(l/2)^2)/(2*h)=wl^2/8*h\n", - "# Now the maximum pull or tension occurs at B,\n", - "T_B=Tmax # N \n", - "# Hence T_B=Tmax=sqrt(T_0^2+(w*l/2)^2). On simplyfyingthis eq'n we get, \n", - "h=math.sqrt(x**2/(16*(((Tmax*2)/(w*x))**2-(1)))) # m \n", - "# Results \n", - "print('The smallest value of the sag in the cable is %f m'%h)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.6 Catenary Cables" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The horizontal distance between the supports and the max Tension (L) is 164.791843 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "l=200 # m # length of the cable\n", - "m=1000 # kg # mass of the cable\n", - "S=50 # m # sag in the cable\n", - "s=l/2 # m\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "w=(m*g)/l # N/m # mass per unit length of the cable\n", - "# Substuting the values s=l/2 & y=c+S in eq'n 1 to get the value of c,\n", - "c=7500/100 # m \n", - "Tmax=math.sqrt((w*c)**2+(w*s)**2) # N # Maximum Tension\n", - "# To determine the span (2*x) let us use the eq'n of catenary, y=c*cosh(x/c), where y=c+50. On simplyfying we get y/c=cosh(x/c), here let y/c=A\n", - "y=c+50\n", - "A=y/c \n", - "x=c*(math.acosh(A)) # m \n", - "L=2*x # m # where L= span\n", - "# Results\n", - "print('The horizontal distance between the supports and the max Tension (L) is %f m'%L)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_10_UNIFORM_FLEXIBLE_SUSPENSION_CABLES_HCFsMgC.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_10_UNIFORM_FLEXIBLE_SUSPENSION_CABLES_HCFsMgC.ipynb deleted file mode 100644 index c82cb27d..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_10_UNIFORM_FLEXIBLE_SUSPENSION_CABLES_HCFsMgC.ipynb +++ /dev/null @@ -1,333 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 10 Uniform Flexible Suspension Cables" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.1 Cable subjected to concentrated loads" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(i) The horizontal reaction at B (Xb) is 1600.000000 N\n", - "(i) The vertical reaction at B (Yb) is 1100.000000 N\n", - "(ii) The sag at point E (y_e) is 1.375000 m\n", - "(iii) The tension in portion CA (T_CA) is 1627.882060 N\n", - "(iv) The max tension in the cable (T_max) is 1941.648784 N\n", - "(iv) The max slope (theta_1) in the cable is 34.508523 degree\n" - ] - } - ], - "source": [ - "import math,numpy\n", - "# Initilization of variables\n", - "W1=400 # N # vertical load at pt C\n", - "W2=600 # N # vertical load at pt D\n", - "W3=400 # N # vertical load at pt E\n", - "l=2 # m # l= Lac=Lcd=Lde=Leb\n", - "h=2.25 # m # distance of the cable from top\n", - "L=2 # m # dist of A from top\n", - "# Calculations\n", - "# Solving eqn's 1&2 using MATRIX for Xb & Yb\n", - "A=numpy.matrix([[-L,4*l],[-h,2*l]])\n", - "B=numpy.matrix([[((W1*l)+(W2*2*l)+(W1*3*l))],[(W1*l)]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Now consider the F.B.D of BE, Take moment at E\n", - "y_e=(C[1]*l)/C[0] # m / here y_e is the distance between E and the top\n", - "theta_1=math.degrees(math.atan(y_e/l)) # degree # where theta_1 is the angle between BE and the horizontal\n", - "T_BE=C[0]/math.cos(theta_1*math.pi/180) # N (T_BE=T_max)\n", - "# Now consider the F.B.D of portion BEDC\n", - "# Take moment at C\n", - "y_c=((C[1]*6)-(W3*4)-(W2*2))/(C[0]) # m\n", - "theta_4=math.degrees(math.atan(((y_c)-(l))/(l))) # degree\n", - "T_CA=C[0]/math.cos(theta_4*math.pi/180) # N # Tension in CA\n", - "# Results\n", - "print('(i) The horizontal reaction at B (Xb) is %f N'%C[0])\n", - "print('(i) The vertical reaction at B (Yb) is %f N'%C[1])\n", - "print('(ii) The sag at point E (y_e) is %f m'%y_e)\n", - "print('(iii) The tension in portion CA (T_CA) is %f N'%T_CA)\n", - "print('(iv) The max tension in the cable (T_max) is %f N'%T_BE)\n", - "print('(iv) The max slope (theta_1) in the cable is %f degree'%theta_1)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.2 Cables subjected to concentrated loads" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(i) The component of support reaction at A (Ya) is 300.000000 N\n", - "(i) The component of support reaction at B (Yb) is 150.000000 N\n", - "(ii) The tension in portion AC (T_AC) of the cable is 360.555128 N\n", - "(ii) The tension in portion CD (T_CD) of the cable is 282.842712 N\n", - "(iii) The max tension in the cable is 360.555128 N\n" - ] - } - ], - "source": [ - "# Initiization of variables\n", - "W1=100 # N # Pt load at C\n", - "W2=150 # N # Pt load at D\n", - "W3=200 # N # Pt load at E\n", - "l=1 # m # l=Lac=Lcd=Lde=Leb\n", - "h=2 # m # dist between Rb & top\n", - "Xa=200 # N\n", - "Xb=200 # N\n", - "# Calculations\n", - "# consider the F.B.D of entire cable\n", - "# Take moment at A\n", - "Yb=((W1*l)+(W2*2*l)+(W3*3*l)-(Xb*h))/(4*l) # N\n", - "Ya=W1+W2+W3-Yb # N # sum Fy=0\n", - "# Now consider the F.B.D of AC\n", - "# Take moment at C,\n", - "y_c=(Ya*l)/Xa # m\n", - "theta_1=math.degrees(math.atan(y_c/l)) # degree\n", - "T_AC=Xa/math.cos(theta_1*math.pi/180) # N # T_AC*cosd(theta_1)=horizontal component of tension in the cable\n", - "# here, T_AC=T_max\n", - "T_max=T_AC # N\n", - "# Now consider the F.B.D of portion ACD\n", - "y_d=((Ya*2*l)-(W1*l))/(Xa) # m # taking moment at D\n", - "theta_2=math.degrees(math.atan(((y_d)-(y_c))/(l))) # degree\n", - "T_CD=Xa/(math.cos(theta_2*math.pi/180)) # N \n", - "# Results\n", - "print('(i) The component of support reaction at A (Ya) is %f N'%Ya)\n", - "print('(i) The component of support reaction at B (Yb) is %f N'%Yb)\n", - "print('(ii) The tension in portion AC (T_AC) of the cable is %f N'%T_AC)\n", - "print('(ii) The tension in portion CD (T_CD) of the cable is %f N'%T_CD)\n", - "print('(iii) The max tension in the cable is %f N'%T_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.3 Cables uniformly loaded per unit horizontal distance" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The lowest point C which is situated at a distance (x_b) from support B is 8.000000 m\n", - "The maximum tension (T_max) in the cable is 14.715000 kN\n", - "The minimum tension (T_0) in the cable is 11.772000 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "w=75 # kg/m # mass per unit length of thw pipe\n", - "l=20 # m # dist between A & B\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "y=2 # m # position of C below B\n", - "# Calculations\n", - "# Let x_b be the distance of point C from B \n", - "# In eq'n x_b**2+32*x_b-320=0\n", - "a=1\n", - "b=32\n", - "c=-320\n", - "x_b=(-b+math.sqrt(b**2-(4*a*c)))/(2*a) # m # we get x_b by equating eqn's 1&2\n", - "# Now tension T_0\n", - "T_0=((w*g*x_b**2)/(2*y))*(10**-3) #kN # from eq'n 1\n", - "# Now the max tension occurs at point A,hence x is given as,\n", - "x=20-x_b # m\n", - "w_x=w*g*x*10**(-3) # kN \n", - "T_max=math.sqrt((T_0)**2+(w_x)**2) # kN # Maximum Tension\n", - "# Results\n", - "print('The lowest point C which is situated at a distance (x_b) from support B is %f m'%x_b)\n", - "print('The maximum tension (T_max) in the cable is %f kN'%T_max)\n", - "print('The minimum tension (T_0) in the cable is %f kN'%T_0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.4 Cables uniformly loaded per unit horizontal distance" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(i) The magnitude of load W is 1106.074781 N\n", - "(ii) The angle of the cable with the horizontal at B is 3.814075 degree\n", - "(iii) The total length of the cable AB is 30.022222 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "m=0.5 # kg/m # mass of the cable per unit length\n", - "g=9.81 # m/s**2\n", - "x=30 # m # length AB\n", - "y=0.5 # m # dist between C & the horizontal\n", - "x_b=15 # m # dist of horizontal from C to B\n", - "# Calculations\n", - "w=m*g # N/m # weight of the cable per unit length\n", - "T_0=(w*x_b**2)/(2*y) # N # From eq'n 1\n", - "T_B=math.sqrt((T_0)**2+(w*x/2)**2) # N # Tension in the cable at point B\n", - "W=T_B # N # As pulley is frictionless the tension in the pulley on each side is same,so W=T_B\n", - "# Slope of the cable at B,\n", - "theta=math.degrees(math.acos(T_0/T_B)) # degree\n", - "# Now length of the cable between C & B is,\n", - "S_cb=x_b*(1+((2/3)*(y/x_b)**2)) # m\n", - "# Now total length of the cable AB is,\n", - "S_ab=2*S_cb # m \n", - "# Results\n", - "print('(i) The magnitude of load W is %f N'%W)\n", - "print('(ii) The angle of the cable with the horizontal at B is %f degree'%theta)\n", - "print('(iii) The total length of the cable AB is %f m'%S_ab)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.5 Cables uniformly loaded per unit horizontal distance" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The smallest value of the sag in the cable is 0.849141 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "x=30 # m # distance between two electric poles\n", - "Tmax=400 # N # Max Pull or tension\n", - "w=3 # N/m # weight per unit length of the cable\n", - "# Calculations\n", - "# The cable is assumed to be parabolic in shape, its eq'n is y=w*x^2/2*T_0.....(eq'n 1).\n", - "#Substuting the co-ordinates of point B (l/2,h), where h is the sag in the cable.\n", - "#This gives, T_0=(w*(l/2)^2)/(2*h)=wl^2/8*h\n", - "# Now the maximum pull or tension occurs at B,\n", - "T_B=Tmax # N \n", - "# Hence T_B=Tmax=sqrt(T_0^2+(w*l/2)^2). On simplyfyingthis eq'n we get, \n", - "h=math.sqrt(x**2/(16*(((Tmax*2)/(w*x))**2-(1)))) # m \n", - "# Results \n", - "print('The smallest value of the sag in the cable is %f m'%h)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 10.6 Catenary Cables" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The horizontal distance between the supports and the max Tension (L) is 164.791843 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "l=200 # m # length of the cable\n", - "m=1000 # kg # mass of the cable\n", - "S=50 # m # sag in the cable\n", - "s=l/2 # m\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "w=(m*g)/l # N/m # mass per unit length of the cable\n", - "# Substuting the values s=l/2 & y=c+S in eq'n 1 to get the value of c,\n", - "c=7500/100 # m \n", - "Tmax=math.sqrt((w*c)**2+(w*s)**2) # N # Maximum Tension\n", - "# To determine the span (2*x) let us use the eq'n of catenary, y=c*cosh(x/c), where y=c+50. On simplyfying we get y/c=cosh(x/c), here let y/c=A\n", - "y=c+50\n", - "A=y/c \n", - "x=c*(math.acosh(A)) # m \n", - "L=2*x # m # where L= span\n", - "# Results\n", - "print('The horizontal distance between the supports and the max Tension (L) is %f m'%L)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_12_MOMENT_OF_INERTIA_LYKWULD.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_12_MOMENT_OF_INERTIA_LYKWULD.ipynb deleted file mode 100644 index 94487c72..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_12_MOMENT_OF_INERTIA_LYKWULD.ipynb +++ /dev/null @@ -1,363 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 12 Moment of Inertia" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.7 Moment of Inertia of an area of a plane figure with respect to an axis in its plane" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The centroidal moment of inertia about X-axis (I_x) is 300 cm**4\n", - "The centroidal moment of inertia about Y-axis (I_y) is 150 cm**4\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "A= 50 # cm**2 # area of the shaded portion\n", - "J_A=22.5*10**2 # cm**4 # polar moment of inertia of the shaded portion\n", - "d=6 # cm\n", - "# Calculations\n", - "J_c=J_A-(A*d**2) \n", - "# substuting the value of I_x from eq'n 2 in eq'n 1 we get,\n", - "I_y=J_c/3 # cm**4 # M.O.I about Y-axis\n", - "# Now from eq'n 2,\n", - "I_x=2*I_y # cm**4 # M.O.I about X-axis\n", - "# Results\n", - "print('The centroidal moment of inertia about X-axis (I_x) is %d cm**4'%I_x)\n", - "print('The centroidal moment of inertia about Y-axis (I_y) is %d cm**4'%I_y)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.8 Moment of Inertia of a Composite area or hollow section" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The M.O.I of the composite area about the centroidal x-axis is 36252.768805 cm**4\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "b=20 # cm # width of the pate\n", - "d=30 # cm # depth of the plate\n", - "r=15 # cm # radius of the circular hole\n", - "h=20 # cm # distance between the centre of the circle & the x-axis\n", - "# Calculations\n", - "# (a) Location of the centroid of the composite area\n", - "A_1=b*d # cm**2 # area of the plate\n", - "y_1=d/2 # cm # y-coordinate of the centroid\n", - "A_2=(math.pi*r**2)/4 # cm**2 # area of the circle removed (negative)\n", - "y_2=h # cm # y-coordinate of the centroid\n", - "y_c=((A_1*y_1)-(A_2*y_2))/(A_1-A_2) # cm # from the bottom edge\n", - "# (b) Moment of Inertia of the composite area about the centroidal x-axis\n", - "# Area (A_1) M.I of area A_1 about x-axis\n", - "I_x1=(b*(d**3))/12 # cm**4\n", - "# M.I of the area A_1 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "OC_1=15 # cm # from the bottom edge\n", - "OC_2=20 # cm\n", - "OC=12.9 # cm # from the bottom edge\n", - "d_1=OC_1-OC # cm\n", - "d_2=OC_2-OC # cm \n", - "I_X1=(I_x1)+(A_1*d_1**2) # cm**4\n", - "# Area(A_2) M.I of area A_2 about x-axis\n", - "I_x2=(math.pi*r**4)/64 # cm**2\n", - "# M.I of the area A_2 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "I_X2=(I_x2)+(A_2*d_2**2) # cm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal x-axis\n", - "I_x=(I_X1)-(I_X2) # cm**4\n", - "# Results\n", - "print('The M.O.I of the composite area about the centroidal x-axis is %f cm**4'%I_x)\n", - "# There may be a small error in the answer due to a decimal point " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.9 Moment of Inertia of a Composite area or hollow section" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The M.O.I of the composite area about the centroidal x-axis is 2309333.000000 mm**4\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "b1=80 # mm # width of the flange pate\n", - "d1=20 # mm # depth of the flange plate\n", - "b2=40 # mm # width/thickness of the web\n", - "d2=60 # mm # depth of the web\n", - "# Calculations\n", - "# (a) Location of the centroid of the composite area\n", - "A_1=b1*d1 # mm**2 # area of the flange plate\n", - "y_1=d2+(d1/2) # mm # y-coordinate of the centroid\n", - "A_2=b2*d2 # mm**2 # area of the web\n", - "y_2=d2/2 # mm # y-coordinate of the centroid\n", - "y_c=((A_1*y_1)+(A_2*y_2))/(A_1+A_2) # mm # from the bottom edge\n", - "# (b) Moment of Inertia of the composite area about the centroidal x-axis\n", - "# Area (A_1) M.I of area A_1 about x-axis\n", - "I_x1=(b1*(d1**3))/12 # mm**4\n", - "# M.I of the area A_1 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "OC_1=70 # mm # from the bottom edge\n", - "OC_2=30 # mm # from the bottom edge\n", - "OC=y_c # mm # from the bottom edge\n", - "d_1=(d2-y_c)+(d1/2) # mm\n", - "d_2=y_c-OC_2 # mm \n", - "I_X1=(I_x1)+(A_1*d_1**2) # mm**4\n", - "# Area(A_2) M.I of area A_2 about x-axis\n", - "I_x2=(b2*d2**3)/12 # mm**4\n", - "# M.I of the area A_2 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "I_X2=(I_x2)+(A_2*d_2**2) # mm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal x-axis\n", - "I_x=(I_X1)+(I_X2) # mm**4\n", - "# Results\n", - "print('The M.O.I of the composite area about the centroidal x-axis is %f mm**4'%I_x)\n", - "# NOTE: The answer given in the text book is 2.31*10**3 insted of 2.31*10**6." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.10 Moment of Inertia of a Composite area or hollow section" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The M.O.I of the composite area about the centroidal x-axis is 10761666.666667 mm**4\n", - "The M.O.I of the composite area about the centroidal Y-axis is 6086666.666667 mm**4\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "b1=120 # mm # width of the flange pate of L-section\n", - "d1=20 # mm # depth of the flange plate\n", - "b2=20 # mm # width/thickness of the web\n", - "d2=130 # mm # depth of the web\n", - "# Calculations\n", - "# (a) Location of the centroid of the composite area\n", - "A_1=b1*d1 # mm**2 # area of the flange plate\n", - "A_2=b2*d2 # mm**2 # area of the web\n", - "y_1=d2+(d1/2) # mm # y-coordinate of the centroid\n", - "y_2=d2/2 # mm # y-coordinate of the centroid\n", - "x_1=60 # mm # x-coordinate of the centroid\n", - "x_2=110 # mm # x-coordinate of the centroid\n", - "y_c=((A_1*y_1)+(A_2*y_2))/(A_1+A_2) # mm # from the bottom edge\n", - "x_c=((A_1*x_1)+(A_2*x_2))/(A_1+A_2) # mm # from the bottom edge\n", - "# (b) Moment of Inertia of the composite area about the centroidal x-axis\n", - "# Area (A_1) M.I of area A_1 about x-axis\n", - "I_x1=(b1*(d1**3))/12 # mm**4\n", - "# M.I of the area A_1 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "OC_1=d2+(d1/2) # mm # from the bottom edge\n", - "OC_2=d2/2 # mm # from the bottom edge\n", - "OC=y_c # mm # from the bottom edge\n", - "d_1=(d2-y_c)+(d1/2) # mm\n", - "d_2=y_c-OC_2 # mm \n", - "I_X1=(I_x1)+(A_1*d_1**2) # mm**4\n", - "# Area(A_2) M.I of area A_2 about x-axis\n", - "I_x2=(b2*d2**3)/12 # mm**4\n", - "# M.I of the area A_2 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "I_X2=(I_x2)+(A_2*d_2**2) # mm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal x-axis\n", - "I_x=(I_X1)+(I_X2) # mm**4\n", - "# (c) Moment of Inertia of the composite area about the centroidal y-axis\n", - "# Area (A_1) M.I of area A_1 about y-axis\n", - "I_y1=(d1*(b1**3))/12 # mm**4\n", - "# M.I of the area A_1 about the centroidal y-axis of the composite area (By parallel-axis theorem)\n", - "d_3=x_c-(b1/2) # mm # distance between c &c1 along x axis\n", - "I_Y1=(I_y1)+(A_1*d_3**2) # mm**4\n", - "# Area(A_2) M.I of area A_2 about y-axis\n", - "I_y2=(d2*b2**3)/12 # mm**4\n", - "# M.I of the area A_2 about the centroidal y-axis of the composite area (By parallel-axis theorem)\n", - "d_4=b1-x_c-(b2/2) # mm # distance between c &c2 along x axis\n", - "I_Y2=(I_y2)+(A_2*d_4**2) # mm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal y-axis\n", - "I_y=(I_Y1)+(I_Y2) # mm**4\n", - "# Results\n", - "print('The M.O.I of the composite area about the centroidal x-axis is %f mm**4'%I_x)\n", - "print('The M.O.I of the composite area about the centroidal Y-axis is %f mm**4'%I_y)\n", - "# NOTE: The answer for I_x given in text book is 0.76*10**6 insted of 10.76*10**6" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.14 Product of Inertia" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Product of inertia of the L-section is 7.750000 cm**4\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "b=1 # cm # smaller side of the L-section\n", - "h=4 # cm # larger side of the L-section\n", - "# Calculations\n", - "# (A) RECTANGLE A_1: Using the paralel axis theorem\n", - "Ixy=0\n", - "I_xy1=(Ixy)+((h*b)*(b/2)*(h/2)) # cm**4\n", - "# (B) RECTANGLE A_2: Using the paralel axis theorem\n", - "I_xy2=(Ixy)+((b*(h-1))*(1+(3/2))*(b/2)) # cm**4\n", - "# Product of inertia of the total area\n", - "I_xy=I_xy1+I_xy2 # cm**4\n", - "# Calculations\n", - "print('The Product of inertia of the L-section is %f cm**4'%I_xy)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.15 Principal Moment of Inertia" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The principal axes of the section about O is -35.465403 degree\n", - "The Maximum value of principal M.O.I is 3822.059509 cm**4\n", - "The Minimum value of principal M.O.I is 393.940491 cm**4\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "I_x=1548 # cm**4 # M.O.I of the Z-section about X-axis\n", - "I_y=2668 # cm**4 # M.O.I of the Z-section about Y-axis\n", - "b=12 # cm # width of flange of the Z-section\n", - "d=3 # cm # depth of flange of the Z-section\n", - "t=2 # cm # thickness of the web of the Z-section\n", - "h=6 # cm # depth of the web of the Z-section\n", - "#Calculations\n", - "A_1=b*d # cm**2 # area of top flange\n", - "x_1=-5 # cm # distance of the centroid from X-axis for top flange\n", - "y_1=4.5 # cm # distance of the centroid from Y-axis for top flange\n", - "A_2=t*h # cm**2 # area of web\n", - "x_2=0 # cm # distance of the centroid from X-axis for the web\n", - "y_2=0 # cm # distance of the centroid from Y-axis for the web\n", - "A_3=b*d # cm**2 # area of bottom flange\n", - "x_3=5 # cm # distance of the centroid from X-axis for top flange\n", - "y_3=-4.5 # cm # distance of the centroid from Y-axis for top flange\n", - "# Product of Inertia of the total area is,\n", - "I_xy=((A_1*x_1*y_1)+(A_3*x_3*y_3)) # cm**4\n", - "# The direction of the principal axes is,\n", - "theta_m=(math.degrees(math.atan((2*I_xy)/(I_y-I_x))))/2 # degree\n", - "# Principa M.O.I\n", - "I_max=((I_x+I_y)/2)+(math.sqrt(((I_x-I_y)/2)**2+(I_xy)**2)) # cm**4\n", - "I_mini=((I_x+I_y)/2)-(math.sqrt(((I_x-I_y)/2)**2+(I_xy)**2)) # cm**4\n", - "# Results\n", - "print('The principal axes of the section about O is %f degree'%theta_m)\n", - "print('The Maximum value of principal M.O.I is %f cm**4'%I_max)\n", - "print('The Minimum value of principal M.O.I is %f cm**4'%I_mini)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_12_MOMENT_OF_INERTIA_spqMC5t.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_12_MOMENT_OF_INERTIA_spqMC5t.ipynb deleted file mode 100644 index 607d4e25..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_12_MOMENT_OF_INERTIA_spqMC5t.ipynb +++ /dev/null @@ -1,355 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 12 Moment of Inertia" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.7 Moment of Inertia of an area of a plane figure with respect to an axis in its plane" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The centroidal moment of inertia about X-axis (I_x) is 300 cm**4\n", - "The centroidal moment of inertia about Y-axis (I_y) is 150 cm**4\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "A= 50 # cm**2 # area of the shaded portion\n", - "J_A=22.5*10**2 # cm**4 # polar moment of inertia of the shaded portion\n", - "d=6 # cm\n", - "# Calculations\n", - "J_c=J_A-(A*d**2) \n", - "# substuting the value of I_x from eq'n 2 in eq'n 1 we get,\n", - "I_y=J_c/3 # cm**4 # M.O.I about Y-axis\n", - "# Now from eq'n 2,\n", - "I_x=2*I_y # cm**4 # M.O.I about X-axis\n", - "# Results\n", - "print('The centroidal moment of inertia about X-axis (I_x) is %d cm**4'%I_x)\n", - "print('The centroidal moment of inertia about Y-axis (I_y) is %d cm**4'%I_y)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.8 Moment of Inertia of a Composite area or hollow section" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The M.O.I of the composite area about the centroidal x-axis is 36252.768805 cm**4\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "b=20 # cm # width of the pate\n", - "d=30 # cm # depth of the plate\n", - "r=15 # cm # radius of the circular hole\n", - "h=20 # cm # distance between the centre of the circle & the x-axis\n", - "# Calculations\n", - "# (a) Location of the centroid of the composite area\n", - "A_1=b*d # cm**2 # area of the plate\n", - "y_1=d/2 # cm # y-coordinate of the centroid\n", - "A_2=(math.pi*r**2)/4 # cm**2 # area of the circle removed (negative)\n", - "y_2=h # cm # y-coordinate of the centroid\n", - "y_c=((A_1*y_1)-(A_2*y_2))/(A_1-A_2) # cm # from the bottom edge\n", - "# (b) Moment of Inertia of the composite area about the centroidal x-axis\n", - "# Area (A_1) M.I of area A_1 about x-axis\n", - "I_x1=(b*(d**3))/12 # cm**4\n", - "# M.I of the area A_1 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "OC_1=15 # cm # from the bottom edge\n", - "OC_2=20 # cm\n", - "OC=12.9 # cm # from the bottom edge\n", - "d_1=OC_1-OC # cm\n", - "d_2=OC_2-OC # cm \n", - "I_X1=(I_x1)+(A_1*d_1**2) # cm**4\n", - "# Area(A_2) M.I of area A_2 about x-axis\n", - "I_x2=(math.pi*r**4)/64 # cm**2\n", - "# M.I of the area A_2 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "I_X2=(I_x2)+(A_2*d_2**2) # cm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal x-axis\n", - "I_x=(I_X1)-(I_X2) # cm**4\n", - "# Results\n", - "print('The M.O.I of the composite area about the centroidal x-axis is %f cm**4'%I_x)\n", - "# There may be a small error in the answer due to a decimal point " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.9 Moment of Inertia of a Composite area or hollow section" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The M.O.I of the composite area about the centroidal x-axis is 2309333.333333 mm**4\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "b1=80 # mm # width of the flange pate\n", - "d1=20 # mm # depth of the flange plate\n", - "b2=40 # mm # width/thickness of the web\n", - "d2=60 # mm # depth of the web\n", - "# Calculations\n", - "# (a) Location of the centroid of the composite area\n", - "A_1=b1*d1 # mm**2 # area of the flange plate\n", - "y_1=d2+(d1/2) # mm # y-coordinate of the centroid\n", - "A_2=b2*d2 # mm**2 # area of the web\n", - "y_2=d2/2 # mm # y-coordinate of the centroid\n", - "y_c=((A_1*y_1)+(A_2*y_2))/(A_1+A_2) # mm # from the bottom edge\n", - "# (b) Moment of Inertia of the composite area about the centroidal x-axis\n", - "# Area (A_1) M.I of area A_1 about x-axis\n", - "I_x1=(b1*(d1**3))/12 # mm**4\n", - "# M.I of the area A_1 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "OC_1=70 # mm # from the bottom edge\n", - "OC_2=30 # mm # from the bottom edge\n", - "OC=y_c # mm # from the bottom edge\n", - "d_1=(d2-y_c)+(d1/2) # mm\n", - "d_2=y_c-OC_2 # mm \n", - "I_X1=(I_x1)+(A_1*d_1**2) # mm**4\n", - "# Area(A_2) M.I of area A_2 about x-axis\n", - "I_x2=(b2*d2**3)/12 # mm**4\n", - "# M.I of the area A_2 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "I_X2=(I_x2)+(A_2*d_2**2) # mm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal x-axis\n", - "I_x=(I_X1)+(I_X2) # mm**4\n", - "# Results\n", - "print('The M.O.I of the composite area about the centroidal x-axis is %f mm**4'%I_x)\n", - "# NOTE: The answer given in the text book is 2.31*10**3 insted of 2.31*10**6." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.10 Moment of Inertia of a Composite area or hollow section" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The M.O.I of the composite area about the centroidal x-axis is 10761666.666667 mm**4\n", - "The M.O.I of the composite area about the centroidal Y-axis is 6086666.666667 mm**4\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "b1=120 # mm # width of the flange pate of L-section\n", - "d1=20 # mm # depth of the flange plate\n", - "b2=20 # mm # width/thickness of the web\n", - "d2=130 # mm # depth of the web\n", - "# Calculations\n", - "# (a) Location of the centroid of the composite area\n", - "A_1=b1*d1 # mm**2 # area of the flange plate\n", - "A_2=b2*d2 # mm**2 # area of the web\n", - "y_1=d2+(d1/2) # mm # y-coordinate of the centroid\n", - "y_2=d2/2 # mm # y-coordinate of the centroid\n", - "x_1=60 # mm # x-coordinate of the centroid\n", - "x_2=110 # mm # x-coordinate of the centroid\n", - "y_c=((A_1*y_1)+(A_2*y_2))/(A_1+A_2) # mm # from the bottom edge\n", - "x_c=((A_1*x_1)+(A_2*x_2))/(A_1+A_2) # mm # from the bottom edge\n", - "# (b) Moment of Inertia of the composite area about the centroidal x-axis\n", - "# Area (A_1) M.I of area A_1 about x-axis\n", - "I_x1=(b1*(d1**3))/12 # mm**4\n", - "# M.I of the area A_1 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "OC_1=d2+(d1/2) # mm # from the bottom edge\n", - "OC_2=d2/2 # mm # from the bottom edge\n", - "OC=y_c # mm # from the bottom edge\n", - "d_1=(d2-y_c)+(d1/2) # mm\n", - "d_2=y_c-OC_2 # mm \n", - "I_X1=(I_x1)+(A_1*d_1**2) # mm**4\n", - "# Area(A_2) M.I of area A_2 about x-axis\n", - "I_x2=(b2*d2**3)/12 # mm**4\n", - "# M.I of the area A_2 about the centroidal x-axis of the composite area (By parallel-axis theorem)\n", - "I_X2=(I_x2)+(A_2*d_2**2) # mm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal x-axis\n", - "I_x=(I_X1)+(I_X2) # mm**4\n", - "# (c) Moment of Inertia of the composite area about the centroidal y-axis\n", - "# Area (A_1) M.I of area A_1 about y-axis\n", - "I_y1=(d1*(b1**3))/12 # mm**4\n", - "# M.I of the area A_1 about the centroidal y-axis of the composite area (By parallel-axis theorem)\n", - "d_3=x_c-(b1/2) # mm # distance between c &c1 along x axis\n", - "I_Y1=(I_y1)+(A_1*d_3**2) # mm**4\n", - "# Area(A_2) M.I of area A_2 about y-axis\n", - "I_y2=(d2*b2**3)/12 # mm**4\n", - "# M.I of the area A_2 about the centroidal y-axis of the composite area (By parallel-axis theorem)\n", - "d_4=b1-x_c-(b2/2) # mm # distance between c &c2 along x axis\n", - "I_Y2=(I_y2)+(A_2*d_4**2) # mm**4\n", - "# COMPOSITE AREA:M.O.I of the composite area about the centroidal y-axis\n", - "I_y=(I_Y1)+(I_Y2) # mm**4\n", - "# Results\n", - "print('The M.O.I of the composite area about the centroidal x-axis is %f mm**4'%I_x)\n", - "print('The M.O.I of the composite area about the centroidal Y-axis is %f mm**4'%I_y)\n", - "# NOTE: The answer for I_x given in text book is 0.76*10**6 insted of 10.76*10**6" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.14 Product of Inertia" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Product of inertia of the L-section is 7.750000 cm**4\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "b=1 # cm # smaller side of the L-section\n", - "h=4 # cm # larger side of the L-section\n", - "# Calculations\n", - "# (A) RECTANGLE A_1: Using the paralel axis theorem\n", - "Ixy=0\n", - "I_xy1=(Ixy)+((h*b)*(b/2)*(h/2)) # cm**4\n", - "# (B) RECTANGLE A_2: Using the paralel axis theorem\n", - "I_xy2=(Ixy)+((b*(h-1))*(1+(3/2))*(b/2)) # cm**4\n", - "# Product of inertia of the total area\n", - "I_xy=I_xy1+I_xy2 # cm**4\n", - "# Calculations\n", - "print('The Product of inertia of the L-section is %f cm**4'%I_xy)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 12.15 Principal Moment of Inertia" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The principal axes of the section about O is -35.465403 degree\n", - "The Maximum value of principal M.O.I is 3822.059509 cm**4\n", - "The Minimum value of principal M.O.I is 393.940491 cm**4\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "I_x=1548 # cm**4 # M.O.I of the Z-section about X-axis\n", - "I_y=2668 # cm**4 # M.O.I of the Z-section about Y-axis\n", - "b=12 # cm # width of flange of the Z-section\n", - "d=3 # cm # depth of flange of the Z-section\n", - "t=2 # cm # thickness of the web of the Z-section\n", - "h=6 # cm # depth of the web of the Z-section\n", - "#Calculations\n", - "A_1=b*d # cm**2 # area of top flange\n", - "x_1=-5 # cm # distance of the centroid from X-axis for top flange\n", - "y_1=4.5 # cm # distance of the centroid from Y-axis for top flange\n", - "A_2=t*h # cm**2 # area of web\n", - "x_2=0 # cm # distance of the centroid from X-axis for the web\n", - "y_2=0 # cm # distance of the centroid from Y-axis for the web\n", - "A_3=b*d # cm**2 # area of bottom flange\n", - "x_3=5 # cm # distance of the centroid from X-axis for top flange\n", - "y_3=-4.5 # cm # distance of the centroid from Y-axis for top flange\n", - "# Product of Inertia of the total area is,\n", - "I_xy=((A_1*x_1*y_1)+(A_3*x_3*y_3)) # cm**4\n", - "# The direction of the principal axes is,\n", - "theta_m=(math.degrees(math.atan((2*I_xy)/(I_y-I_x))))/2 # degree\n", - "# Principa M.O.I\n", - "I_max=((I_x+I_y)/2)+(math.sqrt(((I_x-I_y)/2)**2+(I_xy)**2)) # cm**4\n", - "I_mini=((I_x+I_y)/2)-(math.sqrt(((I_x-I_y)/2)**2+(I_xy)**2)) # cm**4\n", - "# Results\n", - "print('The principal axes of the section about O is %f degree'%theta_m)\n", - "print('The Maximum value of principal M.O.I is %f cm**4'%I_max)\n", - "print('The Minimum value of principal M.O.I is %f cm**4'%I_mini)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK.ipynb index 70272cbe..e9fe9441 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK.ipynb @@ -16,7 +16,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 1, "metadata": { "collapsed": false }, @@ -48,7 +48,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 4, "metadata": { "collapsed": false }, @@ -57,10 +57,10 @@ "name": "stdout", "output_type": "stream", "text": [ - "The Horizontal component of reaction at A (X_A) is 333.333333 N\n", - "The Vertical component of reaction at A (Y_A) is 1333.333333 N\n", - "The Horizontal component of reaction at B (X_B) is 333.333333 N\n", - "The Vertical component of reaction at B (Y_B) is 666.666667 N\n" + "The Horizontal component of reaction at A (X_A) is 333.000000 N\n", + "The Vertical component of reaction at A (Y_A) is 1334.000000 N\n", + "The Horizontal component of reaction at B (X_B) is 333.000000 N\n", + "The Vertical component of reaction at B (Y_B) is 666.000000 N\n" ] } ], @@ -90,21 +90,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [Root]", "language": "python", - "name": "python3" + "name": "Python [Root]" }, "language_info": { "codemirror_mode": { "name": "ipython", - "version": 3 + "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" + "pygments_lexer": "ipython2", + "version": "2.7.12" }, "widgets": { "state": {}, diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK_7uw9Z93.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK_7uw9Z93.ipynb deleted file mode 100644 index 70272cbe..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK_7uw9Z93.ipynb +++ /dev/null @@ -1,116 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 13 Principle of Virtual Work" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 13.1 Application of Principle of Virtual Work" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The value of force (i.e P) that can hold the system in equilibrium is 500 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=1000 # N # weight to be raised\n", - "# Calculations\n", - "# From the Principle of virtual work,\n", - "P=W/2 # N\n", - "# Results\n", - "print('The value of force (i.e P) that can hold the system in equilibrium is %d N'%P)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 13.7 Application of Principle of Virtual Work" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Horizontal component of reaction at A (X_A) is 333.333333 N\n", - "The Vertical component of reaction at A (Y_A) is 1333.333333 N\n", - "The Horizontal component of reaction at B (X_B) is 333.333333 N\n", - "The Vertical component of reaction at B (Y_B) is 666.666667 N\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "P=1000 # N # Force acting at the hinge of the 1st square\n", - "Q=1000 # N # Force acting at the hinge of the 2nd square\n", - "# Calculations\n", - "# Chosing the co-ordinate system with originat A, we can write,\n", - "theta=45 # degree\n", - "# Forces that do work are P,Q & X_B. Applying the principle of virtual work & Simplyfying and solving for X_B,\n", - "X_B=((2*P)/6)*(math.cos(theta*math.pi/180)/math.sin(theta*math.pi/180)) # N \n", - "# Now give a virtual angular displacement to the whole frame about end A such that line AB turns by an angle delta_phi.\n", - "# The force doing work are P,Q&Y_B.Applying the principle of virtual work & Simplyfying this eq'n and solving for Y_B,\n", - "Y_B=((3*Q)+P)/6 # N\n", - "# Simply by removing the support at A & replacing it by the reactions X_A & Y_A we can obtain,\n", - "X_A=X_B # N\n", - "Y_A=P+Q-Y_B # N\n", - "# Results\n", - "print('The Horizontal component of reaction at A (X_A) is %f N'%X_A)\n", - "print('The Vertical component of reaction at A (Y_A) is %f N'%Y_A)\n", - "print('The Horizontal component of reaction at B (X_B) is %f N'%X_B)\n", - "print('The Vertical component of reaction at B (Y_B) is %f N'%Y_B)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK_ionFJ6V.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK_ionFJ6V.ipynb deleted file mode 100644 index e9fe9441..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_13_PRINCIPLE_OF_VIRTUAL_WORK_ionFJ6V.ipynb +++ /dev/null @@ -1,116 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 13 Principle of Virtual Work" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 13.1 Application of Principle of Virtual Work" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The value of force (i.e P) that can hold the system in equilibrium is 500 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=1000 # N # weight to be raised\n", - "# Calculations\n", - "# From the Principle of virtual work,\n", - "P=W/2 # N\n", - "# Results\n", - "print('The value of force (i.e P) that can hold the system in equilibrium is %d N'%P)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 13.7 Application of Principle of Virtual Work" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Horizontal component of reaction at A (X_A) is 333.000000 N\n", - "The Vertical component of reaction at A (Y_A) is 1334.000000 N\n", - "The Horizontal component of reaction at B (X_B) is 333.000000 N\n", - "The Vertical component of reaction at B (Y_B) is 666.000000 N\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "P=1000 # N # Force acting at the hinge of the 1st square\n", - "Q=1000 # N # Force acting at the hinge of the 2nd square\n", - "# Calculations\n", - "# Chosing the co-ordinate system with originat A, we can write,\n", - "theta=45 # degree\n", - "# Forces that do work are P,Q & X_B. Applying the principle of virtual work & Simplyfying and solving for X_B,\n", - "X_B=((2*P)/6)*(math.cos(theta*math.pi/180)/math.sin(theta*math.pi/180)) # N \n", - "# Now give a virtual angular displacement to the whole frame about end A such that line AB turns by an angle delta_phi.\n", - "# The force doing work are P,Q&Y_B.Applying the principle of virtual work & Simplyfying this eq'n and solving for Y_B,\n", - "Y_B=((3*Q)+P)/6 # N\n", - "# Simply by removing the support at A & replacing it by the reactions X_A & Y_A we can obtain,\n", - "X_A=X_B # N\n", - "Y_A=P+Q-Y_B # N\n", - "# Results\n", - "print('The Horizontal component of reaction at A (X_A) is %f N'%X_A)\n", - "print('The Vertical component of reaction at A (Y_A) is %f N'%Y_A)\n", - "print('The Horizontal component of reaction at B (X_B) is %f N'%X_B)\n", - "print('The Vertical component of reaction at B (Y_B) is %f N'%Y_B)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE.ipynb index e5f012c8..332fd559 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE.ipynb @@ -16,7 +16,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 1, "metadata": { "collapsed": false }, @@ -27,11 +27,13 @@ "text": [ "The acceleration of block B is -0.060000 m/s**2\n", "The velocity of trolley & the block after 4 sec is 0.720000 m/s & -0.240000 m/s\n", - "The distance moved by the trolley & the block is 1.440000 m & -0.480000 m\n" + "The distance moved by the trolley & the block is 0.000000 m & -0.000000 m\n" ] } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "a_T=0.18 # m/s**2 # acc of trolley\n", "# Calculations\n", @@ -73,6 +75,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initiliztion of variables\n", "v_B=12 # cm/s # velocity of block B\n", "u=0\n", @@ -114,6 +118,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "u=72*(1000/(60*60)) # km/hr # speed of the vehicle\n", "s=300 # m # distance where the light is turning is red\n", @@ -151,6 +157,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "S=50 # m # height of the tower\n", "v=25 # m/s # velocity at which the stone is thrown up from the foot of the tower\n", @@ -188,6 +196,7 @@ } ], "source": [ + "from __future__ import division\n", "import math\n", "# Intilization of variables\n", "acc=0.5 # m/s**2 # acceleration of the elevator\n", @@ -235,6 +244,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "v=60 # km/hr # velocity of the train\n", "d1=15 # km # Distance travelled by the local train from the velocity-time graph (here d1= Area OED)\n", @@ -275,6 +286,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "a=10 # m/s**2 # acceleration of the particle\n", "S_5th=50 # m # distance travelled by the particle during the 5th second\n", @@ -315,6 +328,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "# Conditions given are\n", "t=1 # s\n", @@ -358,6 +373,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Calculations\n", "# From eq'n 2 it is clear that velocity of the particle becomes zero at t=3 sec\n", "t=3 # sec .. from eq'n 2\n", @@ -394,6 +411,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "F=250 # N # Force acting on a body\n", "m=100 # kg # mass of the body\n", @@ -428,6 +447,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "a=1 # m/s**2 # downward/upward acceleration of the elevator\n", "W=500 # N # Weight of man\n", @@ -466,6 +487,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "W=5000 # N # Total weight of the elevator\n", "u=0 # m/s\n", @@ -511,6 +534,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "M_1=10 # kg # mass of the 1st block\n", "M_2=5 # kg # mass of the 2nd block\n", @@ -547,6 +572,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "M_1=150 # kg # mass of the 1st block\n", "M_2=100 # kg # mass of the 2nd block\n", @@ -583,6 +610,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "M_1=5 # kg # mass of the 1st block\n", "theta_1=30 # degree # inclination of the 1st plane\n", @@ -622,6 +651,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "S=5 # m # distance between block A&B\n", "mu_A=0.2 # coefficient of friction between the block A and the inclined plane\n", @@ -668,6 +699,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "P=50 # N # Weight of the car\n", "Q=100 # N # Weight of the rectangular block\n", @@ -705,6 +738,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "P=40 # N # weight on puley r_1\n", "Q=60 # N # weight on pulley r_2\n", @@ -740,6 +775,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "M=15 # kg # mass of the wedge\n", "m=6 # kg # mass of the block\n", @@ -779,6 +816,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "import numpy\n", "# Initilization of variables\n", "P=30 # N # weight on pulley A\n", @@ -827,6 +866,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "W=1 # kg/m # weight of the bar\n", "L_AB=0.6 # m # length of segment AB\n", @@ -861,21 +902,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [Root]", "language": "python", - "name": "python3" + "name": "Python [Root]" }, "language_info": { "codemirror_mode": { "name": "ipython", - "version": 3 + "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" + "pygments_lexer": "ipython2", + "version": "2.7.12" }, "widgets": { "state": {}, diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE_5x1EeZT.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE_5x1EeZT.ipynb deleted file mode 100644 index e5f012c8..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE_5x1EeZT.ipynb +++ /dev/null @@ -1,887 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 14 Rectilinear Motion of a particle" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.3 Displacement velocity and acceleration of connected bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of block B is -0.060000 m/s**2\n", - "The velocity of trolley & the block after 4 sec is 0.720000 m/s & -0.240000 m/s\n", - "The distance moved by the trolley & the block is 1.440000 m & -0.480000 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "a_T=0.18 # m/s**2 # acc of trolley\n", - "# Calculations\n", - "a_B=-a_T/3 # m/s**2 # from eq'n 4\n", - "t=4 # seconds\n", - "v_T=a_T*t # m/s # velocity of trolley after 4 seconds\n", - "v_B=-v_T/3 # m/s # from eq'n 3\n", - "S_T=(1/2)*a_T*t**2 # m # distance moved by trolley in 4 sec\n", - "S_B=-S_T/3 # m # from eq'n 2\n", - "# Results\n", - "print('The acceleration of block B is %f m/s**2'%a_B)\n", - "print('The velocity of trolley & the block after 4 sec is %f m/s & %f m/s'%(v_T,v_B))\n", - "print('The distance moved by the trolley & the block is %f m & %f m'%(S_T,S_B))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.4 Velocity time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of block A (a_A) is 4.500000 cm/s**2\n", - "The acceleration of block B (a_B) is 3.000000 cm/s**2\n", - "The velocity of block A (v_A) after 5 seconds is 22.500000 m/s\n", - "The position of block A (S_A) after 5 seconds is 56.250000 m\n" - ] - } - ], - "source": [ - "# Initiliztion of variables\n", - "v_B=12 # cm/s # velocity of block B\n", - "u=0\n", - "s=24 # cm # distance travelled by bock B\n", - "t=5 # seconds\n", - "# Calculations\n", - "a_B=v_B**2/(2*s) # cm/s**2 # using eq'n v**2-u**2=28*a*s for block B. Here u=0\n", - "a_A=(3/2)*a_B # cm/s**2 # from eq'n 4 # Here a_A is negative which means acceleration is in opposite direction. However we consider +ve values for further calculations\n", - "v_A=u+(a_A*t) # m/s # using eq'n v=u+(a*t)\n", - "S_A=(u*t)+((1/2)*a_A*t**2) # m # using eq'n S=(u*t)+((1/2)*a*t**2)\n", - "# Results\n", - "print('The acceleration of block A (a_A) is %f cm/s**2'%a_A)\n", - "print('The acceleration of block B (a_B) is %f cm/s**2'%a_B)\n", - "print('The velocity of block A (v_A) after 5 seconds is %f m/s'%v_A)\n", - "print('The position of block A (S_A) after 5 seconds is %f m'%S_A)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.5 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The required uniform acceleration of the car is -0.500000 m/s**2\n", - "(b) The speed at which the motorist crosses the traffic light is 36.000000 km/hr\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "u=72*(1000/(60*60)) # km/hr # speed of the vehicle\n", - "s=300 # m # distance where the light is turning is red\n", - "t=20 # s # traffic light timed to remain red\n", - "# Calculations\n", - "# Now to find the acceleration we use the eq'n s=u*t+(1/2)*a*t**2\n", - "a=(((s)-(u*t))*2)/t**2 # m/s**2 (Deceleration) \n", - "v=(u+(a*t))*((60*60)/1000) # km/hr # here we multiply with (60*60)/1000 to convert m/s to km/hr\n", - "# Results\n", - "print('(a) The required uniform acceleration of the car is %f m/s**2'%a)\n", - "print('(b) The speed at which the motorist crosses the traffic light is %f km/hr'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.6 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time (t) at which the two stones cross each other is 2.000000 seconds\n", - "The two stones cross each other (from top) at a distance of 19.620000 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "S=50 # m # height of the tower\n", - "v=25 # m/s # velocity at which the stone is thrown up from the foot of the tower\n", - "g=9.81 # m/s**2 # acc due to graity\n", - "# Calculations\n", - "# The equation of time for the two stones to cross each other is given as,\n", - "t=S/v # seconds\n", - "S_1=(1/2)*g*t**2 # m # from the top\n", - "# Results\n", - "print('The time (t) at which the two stones cross each other is %f seconds'%t)\n", - "print('The two stones cross each other (from top) at a distance of %f m'%S_1)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.7 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time taken by the stone to hit the elevator is 2.915922 seconds\n", - "The distance (S)travelled by the elevator at the time of impact is 41.705261 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Intilization of variables\n", - "acc=0.5 # m/s**2 # acceleration of the elevator\n", - "s=25 # m # distance travelled by the elevator from the top\n", - "u=0 # m/s\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Using eq'n the eq'n v**2-u**2=2*a*s, solving for v we get,\n", - "v=math.sqrt((2*acc*s)+(u**2)) # m/s \n", - "# Now solving eq'n 1 & 2 for t we get, (4.655*t**2)-(5*t)+(25)=0\n", - "# Find the roots of the eq'n using the eq'n,t=(-b+sqrt(b**2-(4*a*c)))/(2*a).In this eq'n the values of a,b & c are,\n", - "a=4.655\n", - "b=-5\n", - "c=-25\n", - "t=(-b+math.sqrt((b**2)-(4*a*c)))/(2*a) # seconds\n", - "# Let S_1 be the distance travelled by the elevator after it travels 25 m from top when the stone hits the elevator,This disance S_1 is given as,\n", - "S_1=(v*t)+((1/2)*acc*t**2) # m\n", - "# Let S be the total dist from top when the stone hits the elevator,\n", - "S=S_1+s # m\n", - "# Results\n", - "print('The time taken by the stone to hit the elevator is %f seconds'%t)\n", - "print('The distance (S)travelled by the elevator at the time of impact is %f m'%S)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.9 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum speed of the local train is 50.000000 km/hr\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v=60 # km/hr # velocity of the train\n", - "d1=15 # km # Distance travelled by the local train from the velocity-time graph (here d1= Area OED)\n", - "d2=12 # km # from the velocity-time graph (here d2= Area OABB')\n", - "d3=3 # km # from the velocity-time graph (here d3= Area BB'C)\n", - "# Calculations\n", - "t_1=d2/v # hr # time of travel for first 12 kms\n", - "t_2=(2*d3)/v # hr # time of for next 3 kms\n", - "# Total time of travel for passenger train is given by eq'n\n", - "t=t_1+t_2 # hr\n", - "# Now time of travel of the local train (let it be T) is given as,\n", - "T=2*t # hr\n", - "V_max=(2*d1)/T # km/hr\n", - "# Results\n", - "print('The maximum speed of the local train is %f km/hr'%V_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.10 Distance travelled by a particle in the n th second" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The initial velocity of the particle is 5.000000 m/s\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "a=10 # m/s**2 # acceleration of the particle\n", - "S_5th=50 # m # distance travelled by the particle during the 5th second\n", - "t=5 # seconds\n", - "# Calculations\n", - "# The distance travelled by the particle in time t is given by, S=(u*t)+(1/2)*a*t**2.....(consider this as eq'n 1)\n", - "# Here, The distance travelled by the particle in the 5th second=The distance travelled in 5 seconds - The distance travelled in 4 seconds..... (consider eq'n 2)\n", - "# Using eq'n 1: S_(0-5)=(5*u)+(1/2)*10*5**2 = 5*u+125.....(consider eq'n 3)\n", - "# again, S_(0-4)=(4*u)+(1/2)*10*4**2 = 4*u+80....(consider eq'n 4)\n", - "# Now,put eq'n 3&4 in eq'n 2 and solve for u. We get, 50=[(5*u+125)-(4*u+80)] i.e 50=u+45\n", - "u=(S_5th)-45 # m/s\n", - "# Calculations\n", - "print('The initial velocity of the particle is %f m/s'%u)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.11 Variable acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance travelled by the particle is 21.666667 m\n", - "The velocity of the particle is 7.666667 m/s\n", - "The acceleration of the particle is 2.000000 m/s**2\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "# Conditions given are\n", - "t=1 # s\n", - "x=14.75 # m\n", - "v=6.33 # m/s\n", - "# Calculations\n", - "# We use expression 1,2 & 3 to find distance,velocity & acceleration of the particle after 2 sec\n", - "T=2 # sec\n", - "X=(T**4/12)-(T**3/3)+(T**2)+(5*T)+9 # m # eq'n 3\n", - "V=(T**3/3)-(T**2)+(2*T)+5 # m/s \n", - "a=(T**2)-(2*T)+2 # m/s**2\n", - "# Results\n", - "print('The distance travelled by the particle is %f m'%X)\n", - "print('The velocity of the particle is %f m/s'%V)\n", - "print('The acceleration of the particle is %f m/s**2'%a)\n", - "# The answer may vary due to decimal point error" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.12 Variable acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time at which the velocity of the particle becomes zero is 3.000000 sec\n", - "The position of the partice at t=3 sec is -15.000000 m\n", - "The acceleration of the particle is 12.000000 m/s**2\n" - ] - } - ], - "source": [ - "# Calculations\n", - "# From eq'n 2 it is clear that velocity of the particle becomes zero at t=3 sec\n", - "t=3 # sec .. from eq'n 2\n", - "# Position of particle at t=3 sec\n", - "x=(t**3)-(3*t**2)-(9*t)+12 # m # from eq'n 1\n", - "# Acc of particle at t=3 sec\n", - "a=6*(t-1) # m/s**2 # from eq'n 3\n", - "# Results\n", - "print('The time at which the velocity of the particle becomes zero is %f sec'%t)\n", - "print('The position of the partice at t=3 sec is %f m'%x)\n", - "print('The acceleration of the particle is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.15 D AlembertsPrinciple" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of the body is 2.500000 m/s**2\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "F=250 # N # Force acting on a body\n", - "m=100 # kg # mass of the body\n", - "# Calculations\n", - "# Using the eq'n of motion\n", - "a=F/m # m/s**2 \n", - "# Results\n", - "print('The acceleration of the body is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.16 D AlembertsPrinciple" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The pressure transmitted to the floor by the man for Downward motion of the elevator is 449.031600 N\n", - "(b) The pressure transmitted to the floor by the man for Upward motion of the elevator is 550.968400 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "a=1 # m/s**2 # downward/upward acceleration of the elevator\n", - "W=500 # N # Weight of man\n", - "g=9.81 # m/s**2 # acceleration due to gravity\n", - "# Calculations\n", - "# (a) Downward Motion \n", - "R_1=W*(1-(a/g)) # N # (Assume pressure as R_1)\n", - "# (b) Upward Motion\n", - "R_2=W*(1+(a/g)) # N # (Assume pressure as R_2)\n", - "# Results\n", - "print('(a) The pressure transmitted to the floor by the man for Downward motion of the elevator is %f N'%R_1)\n", - "print('(b) The pressure transmitted to the floor by the man for Upward motion of the elevator is %f N'%R_2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.17 D Alamberts Principle" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The Tensile force in the cable is 5509.683996 N\n", - "(b) The pressure transmitted to the floor by the man is 538.837920 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=5000 # N # Total weight of the elevator\n", - "u=0 # m/s\n", - "v=2 # m/s # velocity of the elevator\n", - "s=2 # m # distance traveled by the elevator\n", - "t=2 # seconds # time to stop the lift\n", - "w=600 # N # weight of the man\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Acceleration acquired by the elevator after travelling 2 m is given by,\n", - "a=math.sqrt((v**2-u**2)/(2*s)) # m/s**2\n", - "# (a) Let T be the the tension in the cable which is given by eq'n,\n", - "T=W*(1+(a/g)) # N\n", - "# (b) Motion of man\n", - "# Let R be the pressure experinced by the man.Then from the Eq'n of motion of man pressure is given as,\n", - "R=w*(1-(a/g)) # N \n", - "# Results\n", - "print('(a) The Tensile force in the cable is %f N'%T)\n", - "print('(b) The pressure transmitted to the floor by the man is %f N'%R)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.18 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of the masses is 1.635000 m/s**2\n", - "The tension in the string is 40.875000 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M_1=10 # kg # mass of the 1st block\n", - "M_2=5 # kg # mass of the 2nd block\n", - "mu=0.25 # coefficient of friction between the blocks and the surface\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "a=g*(M_2-(mu*M_1))/(M_1+M_2) # m/s**2 # from eq'n 5\n", - "T=M_1*M_2*g*(1+mu)/(M_1+M_2) # N # from eq'n 6\n", - "# Results\n", - "print('The acceleration of the masses is %f m/s**2'%a)\n", - "print('The tension in the string is %f N'%T)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.19 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The tension in the string during the motion of the system is 539.343729 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M_1=150 # kg # mass of the 1st block\n", - "M_2=100 # kg # mass of the 2nd block\n", - "mu=0.2 # coefficient of friction between the blocks and the inclined plane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "theta=45 # degree # inclination of the surface\n", - "# Calculations\n", - "# substuting the value of eq'n 3 in eq'n 1 & solving for T,we get value of T as,\n", - "T=((M_1*M_2*g)*(math.sin(theta*math.pi/180)+2-(mu*math.cos(theta*math.pi/180))))/((4*M_1)+(M_2)) # N\n", - "# Results\n", - "print('The tension in the string during the motion of the system is %f N'%T)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.20 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of the masses is 2.015178 m/s**2\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M_1=5 # kg # mass of the 1st block\n", - "theta_1=30 # degree # inclination of the 1st plane\n", - "M_2=10 # kg # mass of the 2nd block\n", - "theta_2=60 # degree # inclination of the 2nd plane\n", - "mu=0.33 # coefficient of friction between the blocks and the inclined plane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# solving eq'n 1 & 2 for a we get,\n", - "a=((((M_2*(math.sin(theta_2*math.pi/180)-(mu*math.cos(theta_2*math.pi/180))))-(M_1*(math.sin(theta_1*math.pi/180)+(mu*math.cos(theta_1*math.pi/180))))))*g)/(M_1+M_2) # m/s**2\n", - "# Results\n", - "print('The acceleration of the masses is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.21 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time before collision is 3.293613 seconds\n", - "The distance travelled by block A before collision is 8.198512 m\n", - "The distance travelled by block B before collision is 13.198512 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "S=5 # m # distance between block A&B\n", - "mu_A=0.2 # coefficient of friction between the block A and the inclined plane\n", - "mu_B=0.1 # coefficient of friction between the block B and the inclined plane\n", - "theta=20 # degree # inclination of the pane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculatio#\n", - "# EQUATION OF MOTION OF BLOCK A:\n", - "# Let a_A & a_B be the acceleration of block A & B.\n", - "a_A=(g*math.sin(theta*math.pi/180))-(mu_A*g*math.cos(theta*math.pi/180)) # m/s**2 # from eq'n 1 & eq'n 2\n", - "# EQUATION OF MOTION OF BLOCK B:\n", - "a_B=g*((math.sin(theta*math.pi/180))-(mu_B*math.cos(theta*math.pi/180))) # m/s**2 # from eq'n 3 & Rb\n", - "# Now the eq'n for time of collision of the blocks is given as,\n", - "t=math.sqrt((S*2)/(a_B-a_A)) # seconds \n", - "S_A=(1/2)*a_A*t**2 # m # distance travelled by block A\n", - "S_B=(1/2)*a_B*t**2 # m # distance travelled by block B\n", - "# Results\n", - "print('The time before collision is %f seconds'%t)\n", - "print('The distance travelled by block A before collision is %f m'%S_A)\n", - "print('The distance travelled by block B before collision is %f m'%S_B)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.22 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum value of weight (W) by which the car can be accelerated is 50.000000 N\n", - "The acceleration is 2.452500 m/s**2\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "P=50 # N # Weight of the car\n", - "Q=100 # N # Weight of the rectangular block\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "b=25 # cm # width of the rectangular block\n", - "d=50 # cm # depth of the block\n", - "# Calculations\n", - "a=(Q*g)/(4*P+2*Q) # m/s**2 # from eq'n 4\n", - "W=(Q*(P+Q))/(4*P+Q) # N # from eq'n 6\n", - "# Resuts\n", - "print('The maximum value of weight (W) by which the car can be accelerated is %f N'%W)\n", - "print('The acceleration is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.23 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The downward acceleration of P is 1.783636 m/s**2\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "P=40 # N # weight on puley r_1\n", - "Q=60 # N # weight on pulley r_2\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The eq'n for acceleration of pulley Pi.e a_p is,\n", - "a_p=(((2*P)-(Q))/((4*P)+(Q)))*2*g # m/s**2\n", - "# Results\n", - "print('The downward acceleration of P is %f m/s**2'%a_p)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.24 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The acceleration of the wedge is 0.157459 g\n", - "(b) The acceleration of the bock relative to the wedge is 0.636364 g\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M=15 # kg # mass of the wedge\n", - "m=6 # kg # mass of the block\n", - "theta=30 # degree # angle of the wedge\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "a_A=((m*g*math.cos(theta*math.pi/180)*math.sin(theta*math.pi/180))/((M)+(m*(math.sin(theta*math.pi/180))**2)))/(g) # g # By eliminating R_1 from eq'n 1&3.\n", - "# Here, assume a_r is the acceleration of block B relative to wedge A which is given by substuting a_A in eq'n 2\n", - "a_r=(((g*math.sin(theta*math.pi/180))*(m+M))/((M)+(m*(math.sin(theta*math.pi/180))**2)))/(g) # g\n", - "# Results\n", - "print('(a) The acceleration of the wedge is %f g'%a_A)\n", - "print('(b) The acceleration of the bock relative to the wedge is %f g'%a_r)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.25 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of P is -0.058824 g\n", - "The acceleration of Q is -0.294118 g\n", - "The acceleration of R is 0.411765 g\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "P=30 # N # weight on pulley A\n", - "Q=20 # N # weight on pulley B\n", - "R=10 # N # weight on puey B\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Solving eqn's 6 & 7 using matrix for a & a_1, we get\n", - "A=numpy.matrix('70 -40;-10 30')\n", - "B=numpy.matrix('10;-10')\n", - "C=numpy.linalg.inv(A)*B\n", - "# Acceleration of P is given as,\n", - "P=C[0] # m/s**2\n", - "# Acceleration of Q is given as,\n", - "Q=C[1]-C[0] # m/s**2\n", - "# Acceleration of R is given as,\n", - "R=-(C[1]+C[0]) # m/s**2 # as R is taken to be +ve\n", - "# Results\n", - "print('The acceleration of P is %f g'%P)\n", - "print('The acceleration of Q is %f g'%Q)\n", - "print('The acceleration of R is %f g'%R)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.30 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration is 2.719604 m/s**2\n", - "The reaction at A (R_A) is 9.161998 N\n", - "The angle made by the resultant is 74.505151 degree\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=1 # kg/m # weight of the bar\n", - "L_AB=0.6 # m # length of segment AB\n", - "L_BC=0.30 # m # length of segment BC\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D.\n", - "theta_1=math.degrees(math.atan(5/12)) # slope of bar AB # here theta_1= atan(theta)\n", - "theta_2=math.degrees(math.asin(5/13)) # theta_2=asin(theta)\n", - "theta_3=math.degrees(math.acos(12/13)) # theta_3=acos(theta)\n", - "M_AB=L_AB*W # kg acting at D # Mass of segment AB\n", - "M_BC=L_BC*W # kg acting at E # Mass of segment BC\n", - "# The various forces acting on the bar are:\n", - "# Writing the eqn's of dynamic equilibrium\n", - "Y_A=(L_AB*g)+(L_BC*g) # N # sum F_y=0\n", - "# Using moment eq'n Sum M_A=0:Here,in this eq'n the values are as follows,\n", - "AF=L_BC*math.cos(theta_3*math.pi/180) \n", - "DF=L_BC*math.sin(theta_2*math.pi/180)\n", - "AH=(L_AB*math.cos(theta_3*math.pi/180))+((L_BC/2)*math.sin(theta_2*math.pi/180))\n", - "IG=(L_AB*math.sin(theta_2*math.pi/180))-((L_BC/2)*math.cos(theta_3*math.pi/180))\n", - "# On simplifying and solving moment eq'n we get a as,\n", - "a=((2*L_AB*L_BC*g*math.sin(theta_2*math.pi/180))-(L_BC*g*(L_BC/2)*math.cos(theta_3*math.pi/180)))/((2*L_AB*L_BC*math.cos(theta_3*math.pi/180))+(L_BC*(L_BC/2)*math.sin(theta_2*math.pi/180))) # m/s**2\n", - "X_A=0.9*a #N # from eq'n of dynamic equilibrium\n", - "R_A=math.sqrt(X_A**2+Y_A**2) # N # Resultant of R_A\n", - "alpha=math.degrees(math.atan(Y_A/X_A)) # degree\n", - "# Results\n", - "print('The acceleration is %f m/s**2'%a)\n", - "print('The reaction at A (R_A) is %f N'%R_A)\n", - "print('The angle made by the resultant is %f degree'%alpha)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE_yjFw3Lw.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE_yjFw3Lw.ipynb deleted file mode 100644 index 332fd559..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_14_RECTILINEAR_MOTION_OF_A_PARTICLE_yjFw3Lw.ipynb +++ /dev/null @@ -1,928 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 14 Rectilinear Motion of a particle" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.3 Displacement velocity and acceleration of connected bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of block B is -0.060000 m/s**2\n", - "The velocity of trolley & the block after 4 sec is 0.720000 m/s & -0.240000 m/s\n", - "The distance moved by the trolley & the block is 0.000000 m & -0.000000 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "a_T=0.18 # m/s**2 # acc of trolley\n", - "# Calculations\n", - "a_B=-a_T/3 # m/s**2 # from eq'n 4\n", - "t=4 # seconds\n", - "v_T=a_T*t # m/s # velocity of trolley after 4 seconds\n", - "v_B=-v_T/3 # m/s # from eq'n 3\n", - "S_T=(1/2)*a_T*t**2 # m # distance moved by trolley in 4 sec\n", - "S_B=-S_T/3 # m # from eq'n 2\n", - "# Results\n", - "print('The acceleration of block B is %f m/s**2'%a_B)\n", - "print('The velocity of trolley & the block after 4 sec is %f m/s & %f m/s'%(v_T,v_B))\n", - "print('The distance moved by the trolley & the block is %f m & %f m'%(S_T,S_B))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.4 Velocity time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of block A (a_A) is 4.500000 cm/s**2\n", - "The acceleration of block B (a_B) is 3.000000 cm/s**2\n", - "The velocity of block A (v_A) after 5 seconds is 22.500000 m/s\n", - "The position of block A (S_A) after 5 seconds is 56.250000 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initiliztion of variables\n", - "v_B=12 # cm/s # velocity of block B\n", - "u=0\n", - "s=24 # cm # distance travelled by bock B\n", - "t=5 # seconds\n", - "# Calculations\n", - "a_B=v_B**2/(2*s) # cm/s**2 # using eq'n v**2-u**2=28*a*s for block B. Here u=0\n", - "a_A=(3/2)*a_B # cm/s**2 # from eq'n 4 # Here a_A is negative which means acceleration is in opposite direction. However we consider +ve values for further calculations\n", - "v_A=u+(a_A*t) # m/s # using eq'n v=u+(a*t)\n", - "S_A=(u*t)+((1/2)*a_A*t**2) # m # using eq'n S=(u*t)+((1/2)*a*t**2)\n", - "# Results\n", - "print('The acceleration of block A (a_A) is %f cm/s**2'%a_A)\n", - "print('The acceleration of block B (a_B) is %f cm/s**2'%a_B)\n", - "print('The velocity of block A (v_A) after 5 seconds is %f m/s'%v_A)\n", - "print('The position of block A (S_A) after 5 seconds is %f m'%S_A)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.5 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The required uniform acceleration of the car is -0.500000 m/s**2\n", - "(b) The speed at which the motorist crosses the traffic light is 36.000000 km/hr\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "u=72*(1000/(60*60)) # km/hr # speed of the vehicle\n", - "s=300 # m # distance where the light is turning is red\n", - "t=20 # s # traffic light timed to remain red\n", - "# Calculations\n", - "# Now to find the acceleration we use the eq'n s=u*t+(1/2)*a*t**2\n", - "a=(((s)-(u*t))*2)/t**2 # m/s**2 (Deceleration) \n", - "v=(u+(a*t))*((60*60)/1000) # km/hr # here we multiply with (60*60)/1000 to convert m/s to km/hr\n", - "# Results\n", - "print('(a) The required uniform acceleration of the car is %f m/s**2'%a)\n", - "print('(b) The speed at which the motorist crosses the traffic light is %f km/hr'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.6 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time (t) at which the two stones cross each other is 2.000000 seconds\n", - "The two stones cross each other (from top) at a distance of 19.620000 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "S=50 # m # height of the tower\n", - "v=25 # m/s # velocity at which the stone is thrown up from the foot of the tower\n", - "g=9.81 # m/s**2 # acc due to graity\n", - "# Calculations\n", - "# The equation of time for the two stones to cross each other is given as,\n", - "t=S/v # seconds\n", - "S_1=(1/2)*g*t**2 # m # from the top\n", - "# Results\n", - "print('The time (t) at which the two stones cross each other is %f seconds'%t)\n", - "print('The two stones cross each other (from top) at a distance of %f m'%S_1)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.7 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time taken by the stone to hit the elevator is 2.915922 seconds\n", - "The distance (S)travelled by the elevator at the time of impact is 41.705261 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Intilization of variables\n", - "acc=0.5 # m/s**2 # acceleration of the elevator\n", - "s=25 # m # distance travelled by the elevator from the top\n", - "u=0 # m/s\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Using eq'n the eq'n v**2-u**2=2*a*s, solving for v we get,\n", - "v=math.sqrt((2*acc*s)+(u**2)) # m/s \n", - "# Now solving eq'n 1 & 2 for t we get, (4.655*t**2)-(5*t)+(25)=0\n", - "# Find the roots of the eq'n using the eq'n,t=(-b+sqrt(b**2-(4*a*c)))/(2*a).In this eq'n the values of a,b & c are,\n", - "a=4.655\n", - "b=-5\n", - "c=-25\n", - "t=(-b+math.sqrt((b**2)-(4*a*c)))/(2*a) # seconds\n", - "# Let S_1 be the distance travelled by the elevator after it travels 25 m from top when the stone hits the elevator,This disance S_1 is given as,\n", - "S_1=(v*t)+((1/2)*acc*t**2) # m\n", - "# Let S be the total dist from top when the stone hits the elevator,\n", - "S=S_1+s # m\n", - "# Results\n", - "print('The time taken by the stone to hit the elevator is %f seconds'%t)\n", - "print('The distance (S)travelled by the elevator at the time of impact is %f m'%S)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.9 Displacement time relationship" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum speed of the local train is 50.000000 km/hr\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "v=60 # km/hr # velocity of the train\n", - "d1=15 # km # Distance travelled by the local train from the velocity-time graph (here d1= Area OED)\n", - "d2=12 # km # from the velocity-time graph (here d2= Area OABB')\n", - "d3=3 # km # from the velocity-time graph (here d3= Area BB'C)\n", - "# Calculations\n", - "t_1=d2/v # hr # time of travel for first 12 kms\n", - "t_2=(2*d3)/v # hr # time of for next 3 kms\n", - "# Total time of travel for passenger train is given by eq'n\n", - "t=t_1+t_2 # hr\n", - "# Now time of travel of the local train (let it be T) is given as,\n", - "T=2*t # hr\n", - "V_max=(2*d1)/T # km/hr\n", - "# Results\n", - "print('The maximum speed of the local train is %f km/hr'%V_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.10 Distance travelled by a particle in the n th second" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The initial velocity of the particle is 5.000000 m/s\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "a=10 # m/s**2 # acceleration of the particle\n", - "S_5th=50 # m # distance travelled by the particle during the 5th second\n", - "t=5 # seconds\n", - "# Calculations\n", - "# The distance travelled by the particle in time t is given by, S=(u*t)+(1/2)*a*t**2.....(consider this as eq'n 1)\n", - "# Here, The distance travelled by the particle in the 5th second=The distance travelled in 5 seconds - The distance travelled in 4 seconds..... (consider eq'n 2)\n", - "# Using eq'n 1: S_(0-5)=(5*u)+(1/2)*10*5**2 = 5*u+125.....(consider eq'n 3)\n", - "# again, S_(0-4)=(4*u)+(1/2)*10*4**2 = 4*u+80....(consider eq'n 4)\n", - "# Now,put eq'n 3&4 in eq'n 2 and solve for u. We get, 50=[(5*u+125)-(4*u+80)] i.e 50=u+45\n", - "u=(S_5th)-45 # m/s\n", - "# Calculations\n", - "print('The initial velocity of the particle is %f m/s'%u)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.11 Variable acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance travelled by the particle is 21.666667 m\n", - "The velocity of the particle is 7.666667 m/s\n", - "The acceleration of the particle is 2.000000 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "# Conditions given are\n", - "t=1 # s\n", - "x=14.75 # m\n", - "v=6.33 # m/s\n", - "# Calculations\n", - "# We use expression 1,2 & 3 to find distance,velocity & acceleration of the particle after 2 sec\n", - "T=2 # sec\n", - "X=(T**4/12)-(T**3/3)+(T**2)+(5*T)+9 # m # eq'n 3\n", - "V=(T**3/3)-(T**2)+(2*T)+5 # m/s \n", - "a=(T**2)-(2*T)+2 # m/s**2\n", - "# Results\n", - "print('The distance travelled by the particle is %f m'%X)\n", - "print('The velocity of the particle is %f m/s'%V)\n", - "print('The acceleration of the particle is %f m/s**2'%a)\n", - "# The answer may vary due to decimal point error" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.12 Variable acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time at which the velocity of the particle becomes zero is 3.000000 sec\n", - "The position of the partice at t=3 sec is -15.000000 m\n", - "The acceleration of the particle is 12.000000 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Calculations\n", - "# From eq'n 2 it is clear that velocity of the particle becomes zero at t=3 sec\n", - "t=3 # sec .. from eq'n 2\n", - "# Position of particle at t=3 sec\n", - "x=(t**3)-(3*t**2)-(9*t)+12 # m # from eq'n 1\n", - "# Acc of particle at t=3 sec\n", - "a=6*(t-1) # m/s**2 # from eq'n 3\n", - "# Results\n", - "print('The time at which the velocity of the particle becomes zero is %f sec'%t)\n", - "print('The position of the partice at t=3 sec is %f m'%x)\n", - "print('The acceleration of the particle is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.15 D AlembertsPrinciple" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of the body is 2.500000 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "F=250 # N # Force acting on a body\n", - "m=100 # kg # mass of the body\n", - "# Calculations\n", - "# Using the eq'n of motion\n", - "a=F/m # m/s**2 \n", - "# Results\n", - "print('The acceleration of the body is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.16 D AlembertsPrinciple" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The pressure transmitted to the floor by the man for Downward motion of the elevator is 449.031600 N\n", - "(b) The pressure transmitted to the floor by the man for Upward motion of the elevator is 550.968400 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "a=1 # m/s**2 # downward/upward acceleration of the elevator\n", - "W=500 # N # Weight of man\n", - "g=9.81 # m/s**2 # acceleration due to gravity\n", - "# Calculations\n", - "# (a) Downward Motion \n", - "R_1=W*(1-(a/g)) # N # (Assume pressure as R_1)\n", - "# (b) Upward Motion\n", - "R_2=W*(1+(a/g)) # N # (Assume pressure as R_2)\n", - "# Results\n", - "print('(a) The pressure transmitted to the floor by the man for Downward motion of the elevator is %f N'%R_1)\n", - "print('(b) The pressure transmitted to the floor by the man for Upward motion of the elevator is %f N'%R_2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.17 D Alamberts Principle" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The Tensile force in the cable is 5509.683996 N\n", - "(b) The pressure transmitted to the floor by the man is 538.837920 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=5000 # N # Total weight of the elevator\n", - "u=0 # m/s\n", - "v=2 # m/s # velocity of the elevator\n", - "s=2 # m # distance traveled by the elevator\n", - "t=2 # seconds # time to stop the lift\n", - "w=600 # N # weight of the man\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Acceleration acquired by the elevator after travelling 2 m is given by,\n", - "a=math.sqrt((v**2-u**2)/(2*s)) # m/s**2\n", - "# (a) Let T be the the tension in the cable which is given by eq'n,\n", - "T=W*(1+(a/g)) # N\n", - "# (b) Motion of man\n", - "# Let R be the pressure experinced by the man.Then from the Eq'n of motion of man pressure is given as,\n", - "R=w*(1-(a/g)) # N \n", - "# Results\n", - "print('(a) The Tensile force in the cable is %f N'%T)\n", - "print('(b) The pressure transmitted to the floor by the man is %f N'%R)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.18 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of the masses is 1.635000 m/s**2\n", - "The tension in the string is 40.875000 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "M_1=10 # kg # mass of the 1st block\n", - "M_2=5 # kg # mass of the 2nd block\n", - "mu=0.25 # coefficient of friction between the blocks and the surface\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "a=g*(M_2-(mu*M_1))/(M_1+M_2) # m/s**2 # from eq'n 5\n", - "T=M_1*M_2*g*(1+mu)/(M_1+M_2) # N # from eq'n 6\n", - "# Results\n", - "print('The acceleration of the masses is %f m/s**2'%a)\n", - "print('The tension in the string is %f N'%T)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.19 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The tension in the string during the motion of the system is 539.343729 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "M_1=150 # kg # mass of the 1st block\n", - "M_2=100 # kg # mass of the 2nd block\n", - "mu=0.2 # coefficient of friction between the blocks and the inclined plane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "theta=45 # degree # inclination of the surface\n", - "# Calculations\n", - "# substuting the value of eq'n 3 in eq'n 1 & solving for T,we get value of T as,\n", - "T=((M_1*M_2*g)*(math.sin(theta*math.pi/180)+2-(mu*math.cos(theta*math.pi/180))))/((4*M_1)+(M_2)) # N\n", - "# Results\n", - "print('The tension in the string during the motion of the system is %f N'%T)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.20 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of the masses is 2.015178 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "M_1=5 # kg # mass of the 1st block\n", - "theta_1=30 # degree # inclination of the 1st plane\n", - "M_2=10 # kg # mass of the 2nd block\n", - "theta_2=60 # degree # inclination of the 2nd plane\n", - "mu=0.33 # coefficient of friction between the blocks and the inclined plane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# solving eq'n 1 & 2 for a we get,\n", - "a=((((M_2*(math.sin(theta_2*math.pi/180)-(mu*math.cos(theta_2*math.pi/180))))-(M_1*(math.sin(theta_1*math.pi/180)+(mu*math.cos(theta_1*math.pi/180))))))*g)/(M_1+M_2) # m/s**2\n", - "# Results\n", - "print('The acceleration of the masses is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.21 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time before collision is 3.293613 seconds\n", - "The distance travelled by block A before collision is 8.198512 m\n", - "The distance travelled by block B before collision is 13.198512 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "S=5 # m # distance between block A&B\n", - "mu_A=0.2 # coefficient of friction between the block A and the inclined plane\n", - "mu_B=0.1 # coefficient of friction between the block B and the inclined plane\n", - "theta=20 # degree # inclination of the pane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculatio#\n", - "# EQUATION OF MOTION OF BLOCK A:\n", - "# Let a_A & a_B be the acceleration of block A & B.\n", - "a_A=(g*math.sin(theta*math.pi/180))-(mu_A*g*math.cos(theta*math.pi/180)) # m/s**2 # from eq'n 1 & eq'n 2\n", - "# EQUATION OF MOTION OF BLOCK B:\n", - "a_B=g*((math.sin(theta*math.pi/180))-(mu_B*math.cos(theta*math.pi/180))) # m/s**2 # from eq'n 3 & Rb\n", - "# Now the eq'n for time of collision of the blocks is given as,\n", - "t=math.sqrt((S*2)/(a_B-a_A)) # seconds \n", - "S_A=(1/2)*a_A*t**2 # m # distance travelled by block A\n", - "S_B=(1/2)*a_B*t**2 # m # distance travelled by block B\n", - "# Results\n", - "print('The time before collision is %f seconds'%t)\n", - "print('The distance travelled by block A before collision is %f m'%S_A)\n", - "print('The distance travelled by block B before collision is %f m'%S_B)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.22 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum value of weight (W) by which the car can be accelerated is 50.000000 N\n", - "The acceleration is 2.452500 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "P=50 # N # Weight of the car\n", - "Q=100 # N # Weight of the rectangular block\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "b=25 # cm # width of the rectangular block\n", - "d=50 # cm # depth of the block\n", - "# Calculations\n", - "a=(Q*g)/(4*P+2*Q) # m/s**2 # from eq'n 4\n", - "W=(Q*(P+Q))/(4*P+Q) # N # from eq'n 6\n", - "# Resuts\n", - "print('The maximum value of weight (W) by which the car can be accelerated is %f N'%W)\n", - "print('The acceleration is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.23 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The downward acceleration of P is 1.783636 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "P=40 # N # weight on puley r_1\n", - "Q=60 # N # weight on pulley r_2\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The eq'n for acceleration of pulley Pi.e a_p is,\n", - "a_p=(((2*P)-(Q))/((4*P)+(Q)))*2*g # m/s**2\n", - "# Results\n", - "print('The downward acceleration of P is %f m/s**2'%a_p)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.24 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The acceleration of the wedge is 0.157459 g\n", - "(b) The acceleration of the bock relative to the wedge is 0.636364 g\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "M=15 # kg # mass of the wedge\n", - "m=6 # kg # mass of the block\n", - "theta=30 # degree # angle of the wedge\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "a_A=((m*g*math.cos(theta*math.pi/180)*math.sin(theta*math.pi/180))/((M)+(m*(math.sin(theta*math.pi/180))**2)))/(g) # g # By eliminating R_1 from eq'n 1&3.\n", - "# Here, assume a_r is the acceleration of block B relative to wedge A which is given by substuting a_A in eq'n 2\n", - "a_r=(((g*math.sin(theta*math.pi/180))*(m+M))/((M)+(m*(math.sin(theta*math.pi/180))**2)))/(g) # g\n", - "# Results\n", - "print('(a) The acceleration of the wedge is %f g'%a_A)\n", - "print('(b) The acceleration of the bock relative to the wedge is %f g'%a_r)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.25 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of P is -0.058824 g\n", - "The acceleration of Q is -0.294118 g\n", - "The acceleration of R is 0.411765 g\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "import numpy\n", - "# Initilization of variables\n", - "P=30 # N # weight on pulley A\n", - "Q=20 # N # weight on pulley B\n", - "R=10 # N # weight on puey B\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Solving eqn's 6 & 7 using matrix for a & a_1, we get\n", - "A=numpy.matrix('70 -40;-10 30')\n", - "B=numpy.matrix('10;-10')\n", - "C=numpy.linalg.inv(A)*B\n", - "# Acceleration of P is given as,\n", - "P=C[0] # m/s**2\n", - "# Acceleration of Q is given as,\n", - "Q=C[1]-C[0] # m/s**2\n", - "# Acceleration of R is given as,\n", - "R=-(C[1]+C[0]) # m/s**2 # as R is taken to be +ve\n", - "# Results\n", - "print('The acceleration of P is %f g'%P)\n", - "print('The acceleration of Q is %f g'%Q)\n", - "print('The acceleration of R is %f g'%R)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 14.30 Motion of two Bodies" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration is 2.719604 m/s**2\n", - "The reaction at A (R_A) is 9.161998 N\n", - "The angle made by the resultant is 74.505151 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=1 # kg/m # weight of the bar\n", - "L_AB=0.6 # m # length of segment AB\n", - "L_BC=0.30 # m # length of segment BC\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D.\n", - "theta_1=math.degrees(math.atan(5/12)) # slope of bar AB # here theta_1= atan(theta)\n", - "theta_2=math.degrees(math.asin(5/13)) # theta_2=asin(theta)\n", - "theta_3=math.degrees(math.acos(12/13)) # theta_3=acos(theta)\n", - "M_AB=L_AB*W # kg acting at D # Mass of segment AB\n", - "M_BC=L_BC*W # kg acting at E # Mass of segment BC\n", - "# The various forces acting on the bar are:\n", - "# Writing the eqn's of dynamic equilibrium\n", - "Y_A=(L_AB*g)+(L_BC*g) # N # sum F_y=0\n", - "# Using moment eq'n Sum M_A=0:Here,in this eq'n the values are as follows,\n", - "AF=L_BC*math.cos(theta_3*math.pi/180) \n", - "DF=L_BC*math.sin(theta_2*math.pi/180)\n", - "AH=(L_AB*math.cos(theta_3*math.pi/180))+((L_BC/2)*math.sin(theta_2*math.pi/180))\n", - "IG=(L_AB*math.sin(theta_2*math.pi/180))-((L_BC/2)*math.cos(theta_3*math.pi/180))\n", - "# On simplifying and solving moment eq'n we get a as,\n", - "a=((2*L_AB*L_BC*g*math.sin(theta_2*math.pi/180))-(L_BC*g*(L_BC/2)*math.cos(theta_3*math.pi/180)))/((2*L_AB*L_BC*math.cos(theta_3*math.pi/180))+(L_BC*(L_BC/2)*math.sin(theta_2*math.pi/180))) # m/s**2\n", - "X_A=0.9*a #N # from eq'n of dynamic equilibrium\n", - "R_A=math.sqrt(X_A**2+Y_A**2) # N # Resultant of R_A\n", - "alpha=math.degrees(math.atan(Y_A/X_A)) # degree\n", - "# Results\n", - "print('The acceleration is %f m/s**2'%a)\n", - "print('The reaction at A (R_A) is %f N'%R_A)\n", - "print('The angle made by the resultant is %f degree'%alpha)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_15_CURVILINEAR_MOTION_OF_A_PARTICLE_E3pMQ3l.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_15_CURVILINEAR_MOTION_OF_A_PARTICLE_E3pMQ3l.ipynb deleted file mode 100644 index 8cc4307c..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_15_CURVILINEAR_MOTION_OF_A_PARTICLE_E3pMQ3l.ipynb +++ /dev/null @@ -1,702 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 15 Curvilinear motion of a particle" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.2 Components of Acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The normal component of acceleration is 2.000000 m/s**2\n", - "The tangential component of acceleration is 0.000000 m/s**2\n", - "The normal component of deceleration is 2.000000 m/s**2\n", - "The tangential component of deceleration is 1.000000 m/s**2\n" - ] - } - ], - "source": [ - "# Initialization of variables\n", - "r=200 # m # radius of the curved road\n", - "v_1=72*(1000/3600) # m/s # initial speed of the car\n", - "v_2=36*(1000/3600) # m/s # speed of the car after 10 seconds\n", - "t=10 # seconds\n", - "# Calculations\n", - "A_n=v_1**2/r # m/s**2 # normal component of acceleration\n", - "A_t=0 # since dv/dt=0 # tangential component of acceeration\n", - "delv=v_1-v_2\n", - "delt=t-0\n", - "a_t=delv/delt # m/s**2 # tangential component of deceleration after the brakes are applied\n", - "a_n=v_1**2/r # m/s**2 # normal component of deceleration after the brakes are applied\n", - "# Results\n", - "print('The normal component of acceleration is %f m/s**2'%A_n)\n", - "print('The tangential component of acceleration is %f m/s**2'%A_t)\n", - "print('The normal component of deceleration is %f m/s**2'%a_n)\n", - "print('The tangential component of deceleration is %f m/s**2'%a_t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.3 Components of Acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance traveled by the car is 93.750000 m\n", - "The time for which the car travels is 17.677670 seconds\n" - ] - } - ], - "source": [ - "import math\n", - "#Initialization of variables\n", - "r=250 # m # radius of the curved road\n", - "a_t=0.6 # m/s**2 # tangential acceleration\n", - "a=0.75 # m/s**2 # total acceleration attained by the car\n", - "# Calculations\n", - "a_n=math.sqrt(a**2-a_t**2) # m/s**2\n", - "v=math.sqrt(a_n*r) # m/s\n", - "# Using v=u+a*t\n", - "u=0\n", - "t=v/a_t # seconds\n", - "# Now using v**2-u**2=2*a*s\n", - "s=v**2/(2*a_t) # m\n", - "# Results\n", - "print('The distance traveled by the car is %f m'%s)\n", - "print('The time for which the car travels is %f seconds'%t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.5 Motion of a particle on a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The component of velocity in X direction (v_x) is 6.816388 m/s\n", - "The component of velocity in Y direction (v_y) is 7.316889 m/s\n", - "The component of acceleration in X direction (a_x) is 0.365844 m/s**2\n", - "The component of acceleration in Y direction (a_y) is 0.340959 m/s**2\n", - "The total acceleration is 0.500095 m/s**2 and its direction is 42.983499 degrees\n", - "The normal acceleration is 0.500000 m/s**2 and tangential acceleration is 0.000000 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initialization of variables\n", - "v=10 # m/s # speed of the car\n", - "r=200 # m # radius of the road\n", - "t=15 # seconds\n", - "# Calculations\n", - "omega=(v/r) # radian/seconds # angular velocity of the car\n", - "# Velocity in x & y direction is given by eq'n\n", - "v_x=omega*r*(math.sin((omega*(180/math.pi)*t)*math.pi/180)) # m/s # value of v_x is -ve but we consider it to be +ve for calculations\n", - "v_y=omega*r*(math.cos((omega*(180/math.pi)*t)*math.pi/180)) # m/s\n", - "# Acceleration in x & y direction is given by\n", - "a_x=omega**2*r*(math.cos((omega*(180/math.pi)*t)*math.pi/180)) # m/s**2 # value of a_x is -ve but we consider it to be +ve for calculations\n", - "a_y=omega**2*r*(math.sin((omega*(180/3.14)*t)*math.pi/180)) # m/s**2 # value of a_y is -ve but we consider it to be +ve for calculations\n", - "a=math.sqrt(a_x**2+a_y**2) # m/s**2 # total acc\n", - "phi=math.degrees(math.atan(a_y/a_x)) # degrees # direction of acceleration\n", - "# Components in tangential and normal directions\n", - "# Velocity\n", - "v_n=0 # m/s\n", - "v_t=v # m/s\n", - "# Acceleration\n", - "a_n=v**2/r # m/s**2 # normal acc\n", - "a_t=0 # tangential acc\n", - "# angular position of the car after 15 sec \n", - "theta=omega*(180/math.pi)*t # degrees\n", - "# Results\n", - "print('The component of velocity in X direction (v_x) is %f m/s'%v_x)\n", - "print('The component of velocity in Y direction (v_y) is %f m/s'%v_y)\n", - "print('The component of acceleration in X direction (a_x) is %f m/s**2'%a_x)\n", - "print('The component of acceleration in Y direction (a_y) is %f m/s**2'%a_y)\n", - "print('The total acceleration is %f m/s**2 and its direction is %f degrees'%(a,phi))\n", - "print('The normal acceleration is %f m/s**2 and tangential acceleration is %f m/s**2'%(a_n,a_t))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.6 Motion of a particle on a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of the collar is 1.117599 m/s\n", - "The accelaration of the collar is 6.674415 m/s**2\n", - "The acceleration of the collar relative to the rod is -2.900000 m/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initialization of variables\n", - "t=1 # seconds\n", - "# Calculations\n", - "# From the equations of r and theta given we find 1st & 2nd derative and substitute t=1sec Here we consider the 1st derative as r_1 & theta_1 and so on...\n", - "r=(1.25*t**2)-(0.9*t**3) # m\n", - "r_1=(1.25*(2*t))-(0.9*(3*t**2)) # m/s\n", - "r_2=2.5-(0.9*3*(2*t)) # m/s**2\n", - "theta=(math.pi/2)*(4*t-3*t**2) # radian\n", - "theta_1=(math.pi/2)*(4-(6*t)) # rad/second\n", - "theta_2=(math.pi/2)*(0-(6*t)) # rad/second**2\n", - "# Velocity of collar P\n", - "v_r=r_1 # m/s\n", - "v_theta=r*theta_1 # m/s\n", - "v=math.sqrt(v_r**2+v_theta**2) # m/s\n", - "alpha=math.degrees(math.atan(v_theta/v_r)) # degree\n", - "# Acceleration of the collar P\n", - "a_r=r_2-(r*theta_1**2) # m/s**2\n", - "a_theta=(r*theta_2)+(2*r_1*theta_1) # m/s**2\n", - "a=math.sqrt(a_r**2+a_theta**2) # m/s**2\n", - "beta=math.degrees(math.atan(a_theta/a_r)) # degree\n", - "# Acceleration of collar P relative to the rod. Let it be a_relative\n", - "a_relative=r_2 # m/s**2 # towards O\n", - "# Calculations\n", - "print('The velocity of the collar is %f m/s'%v)\n", - "print('The accelaration of the collar is %f m/s**2'%a)\n", - "print('The acceleration of the collar relative to the rod is %f m/s**2'%a_relative)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.7 Components of motion" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity and the acceleration of the partice at t=0 s is 10.000000 cm/s & 125.663706 cm/s**2\n", - "The velocity and the acceleration of the partice at t=0.3 s is 21.337895 cm/s & 172.679692 cm/s**2\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of variables\n", - "# Consider the eq'ns of motion from the book\n", - "# The notations have been changed for the derivatives of r & theta\n", - "# (1) At t=0 s\n", - "theta_0=0\n", - "theta_1=2*math.pi # rad/s\n", - "theta_2=0\n", - "r_0=0\n", - "r_1=10 # cm/s\n", - "r_2=0\n", - "# At t=0.3 s\n", - "t=0.3 # sec\n", - "theta=2*math.pi*t # rad\n", - "theta1=2*math.pi # rad/s\n", - "theta2=0\n", - "r=10*t # cm\n", - "r1=10 # cm/s\n", - "r2=0\n", - "# (i) \n", - "#Velocity\n", - "v_r=r_1 # cm/s\n", - "v_theta=r_0*theta_1\n", - "v=math.sqrt(v_r**2+v_theta**2) # cm/s\n", - "# Acceleration\n", - "a_r=r_2-(r_0*theta_1**2) # cm/s**2\n", - "a_theta=(r_0*theta_2)+(2*r_1*theta_1) # cm/s**2\n", - "a=math.sqrt(a_r**2+a_theta**2) # cm/s**2\n", - "# (ii)\n", - "# Velocity\n", - "V_R=r1 # cm/s\n", - "V_theta=r*theta1 # cm/s\n", - "V=math.sqrt(V_R**2+V_theta**2) # cm/s\n", - "# Acceleration\n", - "A_r=r2-(r*theta1**2) # cm/s**2\n", - "A_theta=(r*theta2)+(2*r1*theta1) # cm/s**2\n", - "A=math.sqrt(A_r**2+A_theta**2) # cm/s**2\n", - "# Results\n", - "print('The velocity and the acceleration of the partice at t=0 s is %f cm/s & %f cm/s**2'%(v,a))\n", - "print('The velocity and the acceleration of the partice at t=0.3 s is %f cm/s & %f cm/s**2'%(V,A))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.9 Equations of dynamic equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The tension in the wire before and after it is cut is respectively 0.394895 W & 0.766044 W\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Calculations\n", - "# Tension in the wire before it is cut\n", - "T_ab=1/((2.747*0.643)+(0.766)) # From eqn's 1 & 2..Here T_ab is multiplied with W (i.e weight of small ball) \n", - "T_AB=math.cos(40*math.pi/180) # Tension in the wire after the wire is cut. Again T_AB is multiplied with W.\n", - "# Results\n", - "print('The tension in the wire before and after it is cut is respectively %f W & %f W'%(T_ab,T_AB))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.10 Equations of dynamic equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The coefficient of friction of block B is 0.565897\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of variables\n", - "mu_a=0.40 # coefficient of friction under block A\n", - "n=40 # r.p.m # speed of rotation of frame\n", - "W_A=120 # N # weight of block A\n", - "W_B=80 # N # weight of block B\n", - "r_1=1.2 # m # distance between W_A & axis of rotation\n", - "r_2=1.6 # m # distance between W_B & axis of rotation\n", - "g=9.81 # m/s**2\n", - "# Calculations\n", - "# Consider the F.B.D of block A\n", - "N=W_A # N # sum F_y=0\n", - "omega=(2*math.pi*n)/60 # rad/sec\n", - "a_n=omega**2*r_1 # m/s**2\n", - "T=((W_A/g)*a_n)-(mu_a*W_A) # N\n", - "# Now consider the F.B.D of block B\n", - "A_n=omega**2*r_2 # m/s**2\n", - "N_1=(W_B/g)*A_n # N # sum F_x=0\n", - "mu=(T-W_B)/N_1 # sum F_x=0\n", - "# Results\n", - "print('The coefficient of friction of block B is %f'%mu)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.12 Motion of particle on curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum lateral thrust is 500.000000 N\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "W=10000 # N # Weight of the locomotive\n", - "# Calculations\n", - "# Consider the various derivations given in the textbook\n", - "R_max=W/20 # N # eq'n for max reaction\n", - "# The position of occurence of maximum thrust cannot be defined here. Refer textbook for the answer\n", - "# Results\n", - "print('The maximum lateral thrust is %f N'%R_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.13 Motion of a particle on curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The value of the reaction is 31.932454 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initialization of variables\n", - "W=10 # N # Weight of the ball\n", - "# Calculations\n", - "# consider the eq'n derived to find the reaction, given as\n", - "R=W*(1+((2*math.pi**2)/9)) # N \n", - "# Results\n", - "print('The value of the reaction is %f N'%R)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.15 Motion of a particle in a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The speed of rotation is 101.634363 r.p.m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of variables\n", - "P=50 # N # Weight of ball P\n", - "Q=50 # N # Weight of ball Q\n", - "R=100 # N # Weight of the governing device\n", - "l=0.3 # m # length of each side\n", - "theta=30 # degree\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "r=l*math.sin(theta*math.pi/180) # m # Radius of circe\n", - "# On solving eqn's 1,2 &3 we get the value of v as,\n", - "v=math.sqrt(((Q+R)*g*r)/((math.sqrt(3))*Q)) # m/s \n", - "# But the eq'n v=omega*r we get the value of N as,\n", - "N=(60*v)/(2*math.pi*r) # r.p.m \n", - "# Results\n", - "print('The speed of rotation is %f r.p.m'%N)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.16 Motion of a particle in a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The speed of the fly-balls is 101.634363 r.p.m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "Q=20 # N # Weight of the governor device\n", - "W=10 # N # Weight of the fly balls\n", - "theta=30 # degree # angle between the vertical shaft and the axis AB\n", - "l=0.2 # m # length of the shaft\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "# Radius of the circle is given as,\n", - "r=Q*math.sin(theta*math.pi/180)*(10**-2) # m \n", - "# Solving eq'n 1 & 2 for v. The eq'n for v is given as,\n", - "v=math.sqrt(((W*l*0.5)+(0.05*Q))/((W*0.2*math.sqrt(3))/(2*g*r))) # m/s\n", - "# But, v=r*omega=2*pi*N*r/60. From this eq'n we get N as,\n", - "N=(v*60)/(2*math.pi*r) # r.p.m.\n", - "# Results\n", - "print('The speed of the fly-balls is %f r.p.m'%N)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.18 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum speed with which the vehicle can travel is 8.577587 m/s\n", - "The angle made with the vertical is 8.530766 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of variables\n", - "r=50 # m # radius of the road\n", - "mu=0.15 # coefficient of friction between the wheels and the road\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The eq'n fo max speed of the vehicle without skidding is \n", - "v=math.sqrt(mu*g*r) # m/s\n", - "# The angle theta made with the vertical while negotiating the corner is \n", - "theta=math.degrees(math.atan(v**2/(g*r))) # degree\n", - "# Results\n", - "print('The maximum speed with which the vehicle can travel is %f m/s'%v)\n", - "print('The angle made with the vertical is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.19 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of banking of the track is 17.464605 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of variables\n", - "v=100*(1000/3600) # m/s # or 100 km/hr\n", - "r=250 # m # radius of the road\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The angle of banking is given by eq'n,\n", - "theta=math.degrees(math.atan((v**2)/(g*r))) # degree \n", - "# Results\n", - "print('The angle of banking of the track is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.20 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at Wheel A (R_A) is 4660.210669 N\n", - "The reaction at Wheel B (R_B) is 5339.789331 N\n", - "The maximum speed at which the vehicle can travel without the fear of overturning is is 27.124712 m/s\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of variables\n", - "W=10000 # N # Weight of the car\n", - "r=100 # m # radius of the road\n", - "v=10 # m/s # speed of the car\n", - "h=1 # m # height of the C.G of the car above the ground\n", - "b=1.5 # m # distance between the wheels\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The reactions at the wheels are given by te eq'ns:\n", - "R_A=(W/2)*(1-((v**2*h)/(g*r*b))) # N # Reaction at A\n", - "R_B=(W/2)*(1+((v**2*h)/(g*r*b))) # N # Reaction at B\n", - "# The eq'n for max speed to avoid overturning on level ground is,\n", - "v_max=math.sqrt((g*r*(b/2))/(h)) # m/s\n", - "# Results\n", - "print('The reaction at Wheel A (R_A) is %f N'%R_A)\n", - "print('The reaction at Wheel B (R_B) is %f N'%R_B)\n", - "print('The maximum speed at which the vehicle can travel without the fear of overturning is is %f m/s'%v_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.21 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The speed of the cariage is 42.270586 km/hr\n", - "The tension in the chord is 1.009828 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of variables\n", - "W=1 # N # Weight of the bob\n", - "theta=8 # degree # angle made by the bob with the vertical\n", - "r=100 # m # radius of the curve\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# from eq'n 1 & 2 we get v as,\n", - "v=(math.sqrt(g*r*math.tan(theta*math.pi/180)))*(3600/1000) # km/hr \n", - "T=W/math.cos(theta*math.pi/180) # N # from eq'n 2\n", - "# Results\n", - "print('The speed of the cariage is %f km/hr'%v)\n", - "print('The tension in the chord is %f N'%T)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_15_CURVILINEAR_MOTION_OF_A_PARTICLE_O6it6xc.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_15_CURVILINEAR_MOTION_OF_A_PARTICLE_O6it6xc.ipynb deleted file mode 100644 index c1be24bf..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_15_CURVILINEAR_MOTION_OF_A_PARTICLE_O6it6xc.ipynb +++ /dev/null @@ -1,678 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 15 Curvilinear motion of a particle" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.2 Components of Acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The normal component of acceleration is 2.000000 m/s**2\n", - "The tangential component of acceleration is 0.000000 m/s**2\n", - "The normal component of deceleration is 2.000000 m/s**2\n", - "The tangential component of deceleration is 1.000000 m/s**2\n" - ] - } - ], - "source": [ - "# Initialization of variables\n", - "r=200 # m # radius of the curved road\n", - "v_1=72*(1000/3600) # m/s # initial speed of the car\n", - "v_2=36*(1000/3600) # m/s # speed of the car after 10 seconds\n", - "t=10 # seconds\n", - "# Calculations\n", - "A_n=v_1**2/r # m/s**2 # normal component of acceleration\n", - "A_t=0 # since dv/dt=0 # tangential component of acceeration\n", - "delv=v_1-v_2\n", - "delt=t-0\n", - "a_t=delv/delt # m/s**2 # tangential component of deceleration after the brakes are applied\n", - "a_n=v_1**2/r # m/s**2 # normal component of deceleration after the brakes are applied\n", - "# Results\n", - "print('The normal component of acceleration is %f m/s**2'%A_n)\n", - "print('The tangential component of acceleration is %f m/s**2'%A_t)\n", - "print('The normal component of deceleration is %f m/s**2'%a_n)\n", - "print('The tangential component of deceleration is %f m/s**2'%a_t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.3 Components of Acceleration" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance traveled by the car is 93.750000 m\n", - "The time for which the car travels is 17.677670 seconds\n" - ] - } - ], - "source": [ - "import math\n", - "#Initialization of variables\n", - "r=250 # m # radius of the curved road\n", - "a_t=0.6 # m/s**2 # tangential acceleration\n", - "a=0.75 # m/s**2 # total acceleration attained by the car\n", - "# Calculations\n", - "a_n=math.sqrt(a**2-a_t**2) # m/s**2\n", - "v=math.sqrt(a_n*r) # m/s\n", - "# Using v=u+a*t\n", - "u=0\n", - "t=v/a_t # seconds\n", - "# Now using v**2-u**2=2*a*s\n", - "s=v**2/(2*a_t) # m\n", - "# Results\n", - "print('The distance traveled by the car is %f m'%s)\n", - "print('The time for which the car travels is %f seconds'%t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.5 Motion of a particle on a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The component of velocity in X direction (v_x) is 6.816388 m/s\n", - "The component of velocity in Y direction (v_y) is 7.316889 m/s\n", - "The component of acceleration in X direction (a_x) is 0.365844 m/s**2\n", - "The component of acceleration in Y direction (a_y) is 0.340959 m/s**2\n", - "The total acceleration is 0.500095 m/s**2 and its direction is 42.983499 degrees\n", - "The normal acceleration is 0.500000 m/s**2 and tangential acceleration is 0.000000 m/s**2\n" - ] - } - ], - "source": [ - "# Initialization of variables\n", - "v=10 # m/s # speed of the car\n", - "r=200 # m # radius of the road\n", - "t=15 # seconds\n", - "# Calculations\n", - "omega=(v/r) # radian/seconds # angular velocity of the car\n", - "# Velocity in x & y direction is given by eq'n\n", - "v_x=omega*r*(math.sin((omega*(180/math.pi)*t)*math.pi/180)) # m/s # value of v_x is -ve but we consider it to be +ve for calculations\n", - "v_y=omega*r*(math.cos((omega*(180/math.pi)*t)*math.pi/180)) # m/s\n", - "# Acceleration in x & y direction is given by\n", - "a_x=omega**2*r*(math.cos((omega*(180/math.pi)*t)*math.pi/180)) # m/s**2 # value of a_x is -ve but we consider it to be +ve for calculations\n", - "a_y=omega**2*r*(math.sin((omega*(180/3.14)*t)*math.pi/180)) # m/s**2 # value of a_y is -ve but we consider it to be +ve for calculations\n", - "a=math.sqrt(a_x**2+a_y**2) # m/s**2 # total acc\n", - "phi=math.degrees(math.atan(a_y/a_x)) # degrees # direction of acceleration\n", - "# Components in tangential and normal directions\n", - "# Velocity\n", - "v_n=0 # m/s\n", - "v_t=v # m/s\n", - "# Acceleration\n", - "a_n=v**2/r # m/s**2 # normal acc\n", - "a_t=0 # tangential acc\n", - "# angular position of the car after 15 sec \n", - "theta=omega*(180/math.pi)*t # degrees\n", - "# Results\n", - "print('The component of velocity in X direction (v_x) is %f m/s'%v_x)\n", - "print('The component of velocity in Y direction (v_y) is %f m/s'%v_y)\n", - "print('The component of acceleration in X direction (a_x) is %f m/s**2'%a_x)\n", - "print('The component of acceleration in Y direction (a_y) is %f m/s**2'%a_y)\n", - "print('The total acceleration is %f m/s**2 and its direction is %f degrees'%(a,phi))\n", - "print('The normal acceleration is %f m/s**2 and tangential acceleration is %f m/s**2'%(a_n,a_t))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.6 Motion of a particle on a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of the collar is 1.117599 m/s\n", - "The accelaration of the collar is 6.674415 m/s**2\n", - "The acceleration of the collar relative to the rod is -2.900000 m/s**2\n" - ] - } - ], - "source": [ - "# Initialization of variables\n", - "t=1 # seconds\n", - "# Calculations\n", - "# From the equations of r and theta given we find 1st & 2nd derative and substitute t=1sec Here we consider the 1st derative as r_1 & theta_1 and so on...\n", - "r=(1.25*t**2)-(0.9*t**3) # m\n", - "r_1=(1.25*(2*t))-(0.9*(3*t**2)) # m/s\n", - "r_2=2.5-(0.9*3*(2*t)) # m/s**2\n", - "theta=(math.pi/2)*(4*t-3*t**2) # radian\n", - "theta_1=(math.pi/2)*(4-(6*t)) # rad/second\n", - "theta_2=(math.pi/2)*(0-(6*t)) # rad/second**2\n", - "# Velocity of collar P\n", - "v_r=r_1 # m/s\n", - "v_theta=r*theta_1 # m/s\n", - "v=math.sqrt(v_r**2+v_theta**2) # m/s\n", - "alpha=math.degrees(math.atan(v_theta/v_r)) # degree\n", - "# Acceleration of the collar P\n", - "a_r=r_2-(r*theta_1**2) # m/s**2\n", - "a_theta=(r*theta_2)+(2*r_1*theta_1) # m/s**2\n", - "a=math.sqrt(a_r**2+a_theta**2) # m/s**2\n", - "beta=math.degrees(math.atan(a_theta/a_r)) # degree\n", - "# Acceleration of collar P relative to the rod. Let it be a_relative\n", - "a_relative=r_2 # m/s**2 # towards O\n", - "# Calculations\n", - "print('The velocity of the collar is %f m/s'%v)\n", - "print('The accelaration of the collar is %f m/s**2'%a)\n", - "print('The acceleration of the collar relative to the rod is %f m/s**2'%a_relative)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.7 Components of motion" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity and the acceleration of the partice at t=0 s is 10.000000 cm/s & 125.663706 cm/s**2\n", - "The velocity and the acceleration of the partice at t=0.3 s is 21.337895 cm/s & 172.679692 cm/s**2\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "# Consider the eq'ns of motion from the book\n", - "# The notations have been changed for the derivatives of r & theta\n", - "# (1) At t=0 s\n", - "theta_0=0\n", - "theta_1=2*math.pi # rad/s\n", - "theta_2=0\n", - "r_0=0\n", - "r_1=10 # cm/s\n", - "r_2=0\n", - "# At t=0.3 s\n", - "t=0.3 # sec\n", - "theta=2*math.pi*t # rad\n", - "theta1=2*math.pi # rad/s\n", - "theta2=0\n", - "r=10*t # cm\n", - "r1=10 # cm/s\n", - "r2=0\n", - "# (i) \n", - "#Velocity\n", - "v_r=r_1 # cm/s\n", - "v_theta=r_0*theta_1\n", - "v=math.sqrt(v_r**2+v_theta**2) # cm/s\n", - "# Acceleration\n", - "a_r=r_2-(r_0*theta_1**2) # cm/s**2\n", - "a_theta=(r_0*theta_2)+(2*r_1*theta_1) # cm/s**2\n", - "a=math.sqrt(a_r**2+a_theta**2) # cm/s**2\n", - "# (ii)\n", - "# Velocity\n", - "V_R=r1 # cm/s\n", - "V_theta=r*theta1 # cm/s\n", - "V=math.sqrt(V_R**2+V_theta**2) # cm/s\n", - "# Acceleration\n", - "A_r=r2-(r*theta1**2) # cm/s**2\n", - "A_theta=(r*theta2)+(2*r1*theta1) # cm/s**2\n", - "A=math.sqrt(A_r**2+A_theta**2) # cm/s**2\n", - "# Results\n", - "print('The velocity and the acceleration of the partice at t=0 s is %f cm/s & %f cm/s**2'%(v,a))\n", - "print('The velocity and the acceleration of the partice at t=0.3 s is %f cm/s & %f cm/s**2'%(V,A))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.9 Equations of dynamic equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The tension in the wire before and after it is cut is respectively 0.394895 W & 0.766044 W\n" - ] - } - ], - "source": [ - "# Calculations\n", - "# Tension in the wire before it is cut\n", - "T_ab=1/((2.747*0.643)+(0.766)) # From eqn's 1 & 2..Here T_ab is multiplied with W (i.e weight of small ball) \n", - "T_AB=math.cos(40*math.pi/180) # Tension in the wire after the wire is cut. Again T_AB is multiplied with W.\n", - "# Results\n", - "print('The tension in the wire before and after it is cut is respectively %f W & %f W'%(T_ab,T_AB))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.10 Equations of dynamic equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The coefficient of friction of block B is 0.565897\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "mu_a=0.40 # coefficient of friction under block A\n", - "n=40 # r.p.m # speed of rotation of frame\n", - "W_A=120 # N # weight of block A\n", - "W_B=80 # N # weight of block B\n", - "r_1=1.2 # m # distance between W_A & axis of rotation\n", - "r_2=1.6 # m # distance between W_B & axis of rotation\n", - "g=9.81 # m/s**2\n", - "# Calculations\n", - "# Consider the F.B.D of block A\n", - "N=W_A # N # sum F_y=0\n", - "omega=(2*math.pi*n)/60 # rad/sec\n", - "a_n=omega**2*r_1 # m/s**2\n", - "T=((W_A/g)*a_n)-(mu_a*W_A) # N\n", - "# Now consider the F.B.D of block B\n", - "A_n=omega**2*r_2 # m/s**2\n", - "N_1=(W_B/g)*A_n # N # sum F_x=0\n", - "mu=(T-W_B)/N_1 # sum F_x=0\n", - "# Results\n", - "print('The coefficient of friction of block B is %f'%mu)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.12 Motion of particle on curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum lateral thrust is 500.000000 N\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "W=10000 # N # Weight of the locomotive\n", - "# Calculations\n", - "# Consider the various derivations given in the textbook\n", - "R_max=W/20 # N # eq'n for max reaction\n", - "# The position of occurence of maximum thrust cannot be defined here. Refer textbook for the answer\n", - "# Results\n", - "print('The maximum lateral thrust is %f N'%R_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.13 Motion of a particle on curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The value of the reaction is 31.932454 N\n" - ] - } - ], - "source": [ - "# Initialization of variables\n", - "W=10 # N # Weight of the ball\n", - "# Calculations\n", - "# consider the eq'n derived to find the reaction, given as\n", - "R=W*(1+((2*math.pi**2)/9)) # N \n", - "# Results\n", - "print('The value of the reaction is %f N'%R)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.15 Motion of a particle in a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The speed of rotation is 101.634363 r.p.m\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "P=50 # N # Weight of ball P\n", - "Q=50 # N # Weight of ball Q\n", - "R=100 # N # Weight of the governing device\n", - "l=0.3 # m # length of each side\n", - "theta=30 # degree\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "r=l*math.sin(theta*math.pi/180) # m # Radius of circe\n", - "# On solving eqn's 1,2 &3 we get the value of v as,\n", - "v=math.sqrt(((Q+R)*g*r)/((math.sqrt(3))*Q)) # m/s \n", - "# But the eq'n v=omega*r we get the value of N as,\n", - "N=(60*v)/(2*math.pi*r) # r.p.m \n", - "# Results\n", - "print('The speed of rotation is %f r.p.m'%N)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.16 Motion of a particle in a curved frictionless path" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The speed of the fly-balls is 101.634363 r.p.m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "Q=20 # N # Weight of the governor device\n", - "W=10 # N # Weight of the fly balls\n", - "theta=30 # degree # angle between the vertical shaft and the axis AB\n", - "l=0.2 # m # length of the shaft\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "# Radius of the circle is given as,\n", - "r=Q*math.sin(theta*math.pi/180)*(10**-2) # m \n", - "# Solving eq'n 1 & 2 for v. The eq'n for v is given as,\n", - "v=math.sqrt(((W*l*0.5)+(0.05*Q))/((W*0.2*math.sqrt(3))/(2*g*r))) # m/s\n", - "# But, v=r*omega=2*pi*N*r/60. From this eq'n we get N as,\n", - "N=(v*60)/(2*math.pi*r) # r.p.m.\n", - "# Results\n", - "print('The speed of the fly-balls is %f r.p.m'%N)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.18 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum speed with which the vehicle can travel is 8.577587 m/s\n", - "The angle made with the vertical is 8.530766 degree\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "r=50 # m # radius of the road\n", - "mu=0.15 # coefficient of friction between the wheels and the road\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The eq'n fo max speed of the vehicle without skidding is \n", - "v=math.sqrt(mu*g*r) # m/s\n", - "# The angle theta made with the vertical while negotiating the corner is \n", - "theta=math.degrees(math.atan(v**2/(g*r))) # degree\n", - "# Results\n", - "print('The maximum speed with which the vehicle can travel is %f m/s'%v)\n", - "print('The angle made with the vertical is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.19 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of banking of the track is 17.464605 degree\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "v=100*(1000/3600) # m/s # or 100 km/hr\n", - "r=250 # m # radius of the road\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The angle of banking is given by eq'n,\n", - "theta=math.degrees(math.atan((v**2)/(g*r))) # degree \n", - "# Results\n", - "print('The angle of banking of the track is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.20 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at Wheel A (R_A) is 4660.210669 N\n", - "The reaction at Wheel B (R_B) is 5339.789331 N\n", - "The maximum speed at which the vehicle can travel without the fear of overturning is is 27.124712 m/s\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "W=10000 # N # Weight of the car\n", - "r=100 # m # radius of the road\n", - "v=10 # m/s # speed of the car\n", - "h=1 # m # height of the C.G of the car above the ground\n", - "b=1.5 # m # distance between the wheels\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The reactions at the wheels are given by te eq'ns:\n", - "R_A=(W/2)*(1-((v**2*h)/(g*r*b))) # N # Reaction at A\n", - "R_B=(W/2)*(1+((v**2*h)/(g*r*b))) # N # Reaction at B\n", - "# The eq'n for max speed to avoid overturning on level ground is,\n", - "v_max=math.sqrt((g*r*(b/2))/(h)) # m/s\n", - "# Results\n", - "print('The reaction at Wheel A (R_A) is %f N'%R_A)\n", - "print('The reaction at Wheel B (R_B) is %f N'%R_B)\n", - "print('The maximum speed at which the vehicle can travel without the fear of overturning is is %f m/s'%v_max)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 15.21 Motion of vehicles on leveled and banked roads" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The speed of the cariage is 42.270586 km/hr\n", - "The tension in the chord is 1.009828 N\n" - ] - } - ], - "source": [ - "#Initialization of variables\n", - "W=1 # N # Weight of the bob\n", - "theta=8 # degree # angle made by the bob with the vertical\n", - "r=100 # m # radius of the curve\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# from eq'n 1 & 2 we get v as,\n", - "v=(math.sqrt(g*r*math.tan(theta*math.pi/180)))*(3600/1000) # km/hr \n", - "T=W/math.cos(theta*math.pi/180) # N # from eq'n 2\n", - "# Results\n", - "print('The speed of the cariage is %f km/hr'%v)\n", - "print('The tension in the chord is %f N'%T)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY_qWTv2hF.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY.ipynb index e376ef40..e376ef40 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY_qWTv2hF.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY_YjTCWLs.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY_YjTCWLs.ipynb deleted file mode 100644 index 1e6ea3bc..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_16_KINETICS_OF_A_PARTICLE_WORK_AND_ENERGY_YjTCWLs.ipynb +++ /dev/null @@ -1,413 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 16 Kinetics of a Particle Work and Energy" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.1 Work of the Force of Spring" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false, - "scrolled": true - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The work of the spring force is -5.000000 N-m\n", - "The work required to stretch the spring by 20 cm is -15.000000 N-m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "k=1000 # N/m # stiffness of spring\n", - "x_1=0.1 # m # distance upto which the spring is stretched\n", - "x_2=0.2 # m \n", - "x_0=0 # initial position of spring\n", - "# Calculations\n", - "# Work required to stretch the spring by 10 cm from undeformed position is given as,\n", - "U_10=-(k/2)*(x_1**2-x_0**2) # N-m \n", - "# Work required to stretch from 10 cm to 20 cm is,\n", - "U=-(1/2)*k*(x_2**2-x_1**2) # N-m\n", - "# Results\n", - "print('The work of the spring force is %f N-m'%U_10)\n", - "print('The work required to stretch the spring by 20 cm is %f N-m'%U)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.3 Work and energy principle for a system of particles" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of block A is 3.194120 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "M_A=100 # kg # mass of block A\n", - "M_B=150 # kg # mass of block B\n", - "mu=0.2 # coefficient of friction between the blocks and the surface\n", - "x=1 # m # distance by which block A moves\n", - "g=9.81 # m/s^2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "# Applying the principle of work and energy to the system of blocks A&B and on simplifying we get the value of v as,\n", - "v=math.sqrt(((-mu*M_A*g)+(M_B*g))/(125)) # m/s \n", - "# Results\n", - "print('The velocity of block A is %f m/s'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.4 Power" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The maximum power required is 6.625000 MW\n", - "(b) The power required to maintain a speed of 90 km/hr is 375.000000 kW\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M=500*10**3 # kg # mass of the train\n", - "u=0 # m/s # initial speed\n", - "v=90*(1000/3600) # m/s # final speed\n", - "t=50 # seconds\n", - "F_r=15*10**3 # N # Frictioal resistance to motion\n", - "# Calculations\n", - "# Acceleration is given as,\n", - "a=v/t # m/s**2\n", - "# The total force required to accelerate the train is,\n", - "F=M*a # N\n", - "# The maximum power required is at, t=50s & v=25 m/s\n", - "P=(F+F_r)*v*(10**-6) # MW\n", - "# At any time after 50 seconds, the force required only to overcome the frictional resistance of 15*10**3 N is,\n", - "P_req=F_r*v*(10**-3) # kW\n", - "# Results\n", - "print('(a) The maximum power required is %f MW'%P)\n", - "print('(b) The power required to maintain a speed of 90 km/hr is %f kW'%P_req)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.5 Principle of conservation of energy" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The potential energy of the system is 500.000000 N-cm\n", - "The maximum height above the floor that the weight W will attain after release is 10.000000 cm\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "W=50 # N # Weight suspended on spring\n", - "k=10 # N/cm # stiffness of the spring\n", - "x_2=15 # cm # measured extensions\n", - "h=10 # cm # height for position 2\n", - "# Calculations\n", - "# Consider the required F.B.D.\n", - "# POSITION 1: The force exerted by the spring is,\n", - "F_1=W # N\n", - "# Extension of spring from undeformed position is x_1,\n", - "x_1=F_1/k # cm\n", - "# POSITION 2: When pulled by 10 cm to the floor. PE of weight is,\n", - "PE_g=-W*h # N-cm # (PE_g= PE_gravity)\n", - "# PE of the spring with respect to position 1\n", - "PE_s=(1/2)*k*(x_2**2-x_1**2) # N-cm # (PE_s= PE_ spring)\n", - "# Total PE of the system with respect to position 1\n", - "PE_t=PE_g+PE_s # N-cm # (PE_t= PE_total)\n", - "# Total energy of the system,\n", - "E_2=PE_t # N-cm\n", - "# Total energy of the system in position 3 w.r.t position 1 is:\n", - "x=-math.sqrt(100) # cm\n", - "x=+math.sqrt(100) # cm\n", - "# Results\n", - "print('The potential energy of the system is %f N-cm'%E_2)\n", - "print('The maximum height above the floor that the weight W will attain after release is %f cm'%x)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.6 Principle of conservation of energy" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum deflection of the spring is 26.910763 cm\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m=5 # kg # mass of the ball\n", - "k=500 # N/m # stiffness of the spring\n", - "h=10 # cm # height of drop\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D.\n", - "# In eq'n 1 substitute the respective values and simplify it further. In this eq'n of 2nd degree a=1 b=-0.1962 & c=-0.01962. Thus the roots of the eq'n is given as,\n", - "a=1 \n", - "b=-0.1962\n", - "c=-0.01962\n", - "delta=((-b+(math.sqrt((b**2)-(4*a*c))))/(2*a))*(10**2) # cm # We consider the +ve value of delta\n", - "# Results\n", - "print('The maximum deflection of the spring is %f cm'%delta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.7 Principle of conservation of energy" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum compression of the spring is 0.140071 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m=5 # kg # mass of the ball\n", - "k=500 # N/m # stiffness of the spring\n", - "h=0.1 # m # height of vertical fall\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "# On equating the total energies at position 1 & 2 we get eq'n of delta as,\n", - "delta=math.sqrt((2*m*g*h)/(k)) # m \n", - "# Results\n", - "print('The maximum compression of the spring is %f m'%delta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.9 Principle of conservation of energy" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of the collar will be 1.641036 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m=5 # kg # mass of the collar\n", - "k=500 # N/m # stiffness of the spring\n", - "AB=0.15 # m # Refer the F.B.D for AB\n", - "AC=0.2 # m # Refer the F.B.D for AC\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "# POSITION 1: \n", - "PE_1=m*g*(AB)+0 \n", - "KE_1=0\n", - "E_1=PE_1+KE_1 #\n", - "# POSITION 2 : Length of the spring in position 2\n", - "CB=math.sqrt(AB**2+AC**2) # m \n", - "# x is the extension in the spring\n", - "x=CB-AC # m\n", - "# On substuting and Equating equations of total energies for position1 & position 2 we get the value of v as,\n", - "v=math.sqrt(((E_1-((1/2)*k*x**2))*2)/m) # m/s\n", - "# Results\n", - "print('The velocity of the collar will be %f m/s'%v)\n", - "# The answer given in the text book (v=16.4 m/s) is wrong" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.10 Principle of work and energy" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum compression of the spring is 0.114614 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m=5 # kg # mass of the block\n", - "theta=30 # degree # inclination of the plane\n", - "x=0.5 # m # distance travelled by the block\n", - "k=1500 # N/m # stiffness of the spring\n", - "mu=0.2 # coefficient of friction between the block and the surface\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the F.B.D of the block\n", - "# Applying the principle of work and energy between the positions 1 & 2 and on further simplification we get the generic eq'n for delta as, 750*delta^2-16.03*delta-8.015=0. From this eq'n e have values of a.b & c as,\n", - "a=750\n", - "b=-16.03\n", - "c=-8.015\n", - "# Thus the roots of the eq'n are given as,\n", - "delta=(-b+(math.sqrt(b**2-(4*a*c))))/(2*a) # m\n", - "# Results\n", - "print('The maximum compression of the spring is %f m'%delta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 16.11 Principle of conservation of energy" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of mass M_2 is 3.961818 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "M=10 # kg # Here M=M_1=M_2\n", - "g=9.81 # m/s^2 # acc due to gravity\n", - "# Calculations\n", - "# Consider the respective F.B.D\n", - "# Applying the principle of conservation of energy and by equating the total energies at position 1 & position 2 we get v as,\n", - "v=math.sqrt((M*g*4)/(25)) # m/s\n", - "# Results\n", - "print('The velocity of mass M_2 is %f m/s'%v)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND0AMOMENTUM.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE.ipynb index 26ed76e2..26ed76e2 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND0AMOMENTUM.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND_MOMENTUM.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND.ipynb index 26ed76e2..26ed76e2 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND_MOMENTUM.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND_MOMEN_pCQqJRS.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND_MOMEN.ipynb index a78d73d2..a78d73d2 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND_MOMEN_pCQqJRS.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_17_KINETICS_OF_PARTICLE_IMPULSE_AND_MOMEN.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_18___IMPACT_COLLISION_OF_ELASTIC_BODIES_57cRbUZ.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_18___IMPACT_COLLISION_OF_ELASTIC_BODIES_57cRbUZ.ipynb deleted file mode 100644 index b309cf65..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_18___IMPACT_COLLISION_OF_ELASTIC_BODIES_57cRbUZ.ipynb +++ /dev/null @@ -1,538 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 18 Impact Collision of Elastic Bodies" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.1 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of ball A after impact is 0.000000 m/s\n", - "The velocity of ball B after impact is 1.000000 m/s\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "m_a=1 # kg # mass of the ball A\n", - "v_a=2 # m/s # velocity of ball A\n", - "m_b=2 # kg # mass of ball B\n", - "v_b=0 # m/s # ball B at rest\n", - "e=1/2 # coefficient of restitution\n", - "# Calculations\n", - "# Solving eqn's 1 & 2 using matrix for v'_a & v'_b,\n", - "A=numpy.matrix('1 2;-1 1')\n", - "B=numpy.matrix('2;1')\n", - "C=numpy.linalg.inv(A)*B\n", - "# Results\n", - "print('The velocity of ball A after impact is %f m/s'%C[0])\n", - "print('The velocity of ball B after impact is %f m/s'%C[1])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.2 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of ball A after impact on ball B is 0.000000 m/s\n", - "The velocity of ball B after getting impacted by ball A is 8.000000 m/s\n", - "The final velocity of ball B is 0.000000 m/s\n", - "The velocity of ball C after getting impacted by ball B is 6.000000 m/s\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "m_a=2 # kg # mass of ball A\n", - "m_b=6 # kg # mass of ball B\n", - "m_c=12 # kg # mass of ball C\n", - "v_a=12 # m/s # velocity of ball A\n", - "v_b=4 # m/s # velocity of ball B\n", - "v_c=2 # m/s # velocity of ball C\n", - "e=1 # coefficient of restitution for perfectly elastic body\n", - "# Calculations\n", - "# (A)\n", - "# Solving eq'n 1 & 2 using matrix for v'_a & v'_b,\n", - "A=numpy.matrix('2 6;-1 1')\n", - "B=numpy.matrix('48;8')\n", - "C=numpy.linalg.inv(A)*B\n", - "# Calculations\n", - "# (B)\n", - "# Solving eq'ns 3 & 4 simultaneously using matrix for v'_b & v'_c\n", - "P=numpy.matrix('1 2;-1 1')\n", - "Q=numpy.matrix('12;6')\n", - "R=numpy.linalg.inv(P)*Q\n", - "# Results (A&B)\n", - "print('The velocity of ball A after impact on ball B is %f m/s'%C[0]) # here the ball of mass 2 kg is bought to rest\n", - "print('The velocity of ball B after getting impacted by ball A is %f m/s'%C[1])\n", - "print('The final velocity of ball B is %f m/s'%R[0]) # here the ball of mass 6 kg is bought to rest\n", - "print('The velocity of ball C after getting impacted by ball B is %f m/s'%R[1])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.3 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The ball was dropped from a height of 13.500000 m\n", - "The coefficient of restitution between the glass and the floor is 0.816497 \n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "h_1=9 # m # height of first bounce\n", - "h_2=6 # m # height of second bounce\n", - "# Calculations\n", - "# From eq'n (5) we have, Coefficient of restitution between the glass and the floor is,\n", - "e=math.sqrt(h_2/h_1)\n", - "# From eq'n 3 we get height of drop as,\n", - "h=h_1/e**2 # m\n", - "# Results\n", - "print('The ball was dropped from a height of %f m'%h)\n", - "print('The coefficient of restitution between the glass and the floor is %f '%e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.4 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of ball A after impact is 8.353604 m/s\n", - "The velocity of ball B after impact is 15.179186 m/s\n", - "The direction of ball A after impact is 36.765696 degree\n", - "The direction of ball B after impact is 58.848472 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "e=0.90 # coefficient o restitution\n", - "v_a=10 # m/s # velocity of ball A\n", - "v_b=15 # m/s # velocity of ball B\n", - "alpha_1=30 # degree # angle made by v_a with horizontal\n", - "alpha_2=60 # degree # angle made by v_b with horizontal\n", - "# Calculations\n", - "# The components of initial velocity of ball A:\n", - "v_a_x=v_a*math.cos(alpha_1*math.pi/180) # m/s\n", - "v_a_y=v_a*math.sin(alpha_1*math.pi/180) # m/s\n", - "# The components of initial velocity of ball B:\n", - "v_b_x=-v_b*math.cos(alpha_2*math.pi/180) # m/s\n", - "v_b_y=v_b*math.sin(alpha_2*math.pi/180) # m/s\n", - "# From eq'n 1 & 2 we get,\n", - "v_ay=v_a_y # m/s # Here, v_ay=(v'_a)_y\n", - "v_by=v_b_y # m/s # Here, v_by=(v'_b)_y\n", - "# On adding eq'n 3 & 4 we get,\n", - "v_bx=((v_a_x+v_b_x)+(-e*(v_b_x-v_a_x)))/2 # m/s # Here. v_bx=(v'_b)_x\n", - "# On substuting the value of v'_b_x in eq'n 3 we get,\n", - "v_ax=(v_a_x+v_b_x)-(v_bx) # m/s # here, v_ax=(v'_a)_x\n", - "# Now the eq'n for resultant velocities of balls A & B after impact are,\n", - "v_A=math.sqrt(v_ax**2+v_ay**2) # m/s\n", - "v_B=math.sqrt(v_bx**2+v_by**2) # m/s\n", - "# The direction of the ball after Impact is,\n", - "theta_1=math.degrees(math.atan(-(v_ay/v_ax))) # degree\n", - "theta_2=math.degrees(math.atan(v_by/v_bx)) # degree\n", - "# Results\n", - "print('The velocity of ball A after impact is %f m/s'%v_A)\n", - "print('The velocity of ball B after impact is %f m/s'%v_B)\n", - "print('The direction of ball A after impact is %f degree'%theta_1)\n", - "print('The direction of ball B after impact is %f degree'%theta_2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.5 Motion of ball" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of the ball is 0.661438 v\n", - "The direction of the ball is 49.106605 degrees\n" - ] - } - ], - "source": [ - "import math\n", - "# Initiization of variables\n", - "theta=30 # degrees # ange made by the ball against the wall\n", - "e=0.50\n", - "# Calculations\n", - "# The notations have been changed\n", - "# Resolving the velocity v as,\n", - "v_x=math.cos(theta*math.pi/180)\n", - "v_y=math.sin(theta*math.pi/180)\n", - "V_y=v_y\n", - "# from coefficient of restitution reation\n", - "V_x=-e*v_x\n", - "# Resultant velocity\n", - "V=math.sqrt(V_x**2+V_y**2)\n", - "theta=math.degrees(math.atan(V_y/(-V_x))) # taking +ve value for V_x\n", - "# NOTE: Here all the terms are multiplied with velocity i.e (v).\n", - "# Results\n", - "print('The velocity of the ball is %f v'%V)\n", - "print('The direction of the ball is %f degrees'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.6 Principle of conservation of Energy" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The height from which the ball A should be released is 0.149705 m\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "e=0.8 # coefficient of restitution\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calcuations\n", - "# Squaring eqn's 1 &2 and Solving eqn's 1 & 2 using matrix for the value of h\n", - "A=numpy.matrix([[-1,(2*g)],[-1,-(1.28*g)]])\n", - "B=numpy.matrix([[0.945**2],[(-0.4*9.81)]])\n", - "C=numpy.linalg.inv(A)*B # m\n", - "# Results\n", - "print('The height from which the ball A should be released is %f m'%C[1])\n", - "# The answer given in the book i.e 0.104 is wrong." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.7 Principle of conservation of Energy" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle through which the sphere B will swing after the impact is 28.955024 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "theta_a=60 # degree # angle made by sphere A with the verticle\n", - "e=1 # coefficient of restitution for elastic impact\n", - "# Calculations\n", - "# theta_b is given by the eq'n cosd*theta_b=0.875, hence theta_b is,\n", - "theta_b=math.degrees(math.acos(0.875)) # degree\n", - "# Results\n", - "print('The angle through which the sphere B will swing after the impact is %f degree'%theta_b)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.8 Principle of conservation of Energy" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The maximum angle through which the pendulum swings when the bullet gets embeded into the bob is 18.188288 degree\n", - "(b) The maximum angle through which the pendulum swings when the bullet rebounds from the surface of the bob is 22.088290 degree\n", - "(c) The maximum angle through which the pendulum swings when the bullet escapes from other end of the bob the bob is 14.674584 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m_a=0.01 # kg # mass of bullet A\n", - "v_a=100 # m/s # velocity of bullet A\n", - "m_b=1 # kg # mass of the bob\n", - "v_b=0 # m/s # velocity of the bob\n", - "l=1 # m # length of the pendulum\n", - "v_r=-20 # m/s # velocity at which the bullet rebounds the surface of the bob # here the notation for v'_a is shown by v_r\n", - "v_e=20 # m/s # velocity at which the bullet escapes through the surface of the bob # here the notation for v_a is shown by v_e\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Momentum of the bullet & the bob before impact is,\n", - "M=(m_a*v_a)+(m_b*v_b) # kg.m/s......(eq'n 1)\n", - "# The common velocity v_c ( we use v_c insted of v' for notation of common velocity) is given by equating eq'n 1 & eq'n 2 as,\n", - "# (a) When the bullet gets embedded into the bob\n", - "v_c=M/(m_a+m_b) # m/s\n", - "# The height h to which the bob rises is given by eq'n 3 as,\n", - "h_1=(1/2)*(v_c**2/g) # m\n", - "# The angle (theta_1) by which the bob swings corresponding to the value of height h_1 is,\n", - "theta_1=math.degrees(math.acos((l-h_1)/l)) # degree\n", - "# (b) When the bullet rebounds from the surface of the bob\n", - "# The velocity of the bob after the rebound of the bullet from its surface is given by equating eq'n 1 & eq'n 4 as,\n", - "v_bob_rebound=M-(m_a*v_r) # m/s # here v_bob_rebound=v'_b\n", - "# The equation for the height which the bob attains after impact is,\n", - "h_2=(v_bob_rebound**2)/(2*g) # m\n", - "# The corresponding angle of swing \n", - "theta_2=math.degrees(math.acos((l-h_2)/l)) # degree\n", - "# (c) When the bullet pierces and escapes through the bob\n", - "# From eq'n 1 & 5 the velocity attained by the bob after impact is given as,\n", - "v_b_escape=M-(m_a*v_e) # m/s # here we use, v_b_escape insted of v'_b\n", - "# The equation for the height which the bob attains after impact is,\n", - "h_3=(v_b_escape**2)/(2*g) # m\n", - "# The corresponding angle of swing \n", - "theta_3=math.degrees(math.acos((l-h_3)/(l))) # degree\n", - "# Results\n", - "print('(a) The maximum angle through which the pendulum swings when the bullet gets embeded into the bob is %f degree'%theta_1)\n", - "print('(b) The maximum angle through which the pendulum swings when the bullet rebounds from the surface of the bob is %f degree'%theta_2)\n", - "print('(c) The maximum angle through which the pendulum swings when the bullet escapes from other end of the bob the bob is %f degree'%theta_3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.9 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The compression of the spring over and above caused by the static action of weight W_a is 7.502999 cm \n", - "\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "W_a=50 # N # falling weight\n", - "W_b=50 # N # weight on which W_a falls\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "m_a=W_a/g # kg # mass of W_a\n", - "m_b=W_b/g # kg # mass of W_b\n", - "k=2*10**3 # N/m # stiffness of spring\n", - "h=0.075 # m # height through which W_a falls\n", - "# The velocity of weight W_a just before the impact and after falling from a height of h is given from the eq'n, ( Principle of conservation of energy)\n", - "v_a=math.sqrt(2*g*h) # m/s\n", - "# Let the mutual velocity after the impact be v_m (i.e v_m=v'), (by principle of conservation of momentum)\n", - "v_m=(m_a*v_a)/(m_a+m_b) # m/s\n", - "# Initial compression of the spring due to weight W_b is given by,\n", - "delta_st=(W_b/k)*(10**2) # cm\n", - "# Let the total compression of the spring be delta_t, Then delta_t is found by finding the roots from the eq'n:\n", - "#delta_t**2-0.1*delta_t-0.000003=0. In this eq'n let,\n", - "a=1\n", - "b=-0.1\n", - "c=-0.000003\n", - "delta_t=((-b+(math.sqrt(b**2-(4*a*c))))/2*a)*(10**2) # cm # we consider the -ve value\n", - "delta=delta_t-delta_st # cm\n", - "# Results\n", - "print('The compression of the spring over and above caused by the static action of weight W_a is %f cm \\n'%delta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.10 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance through which the block is displaced from its initial position is 0.908325 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v_a=600 # m/s # velocity of the bullet before impact\n", - "v_b=0 # m/s # velocity of the block before impact\n", - "w_b=0.25 # N # weight of the bullet\n", - "w_wb=50 # N # weight of wodden block\n", - "mu=0.5 # coefficient of friction between the floor and the block\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "m_a=w_b/g # kg # mass of the bullet\n", - "m_b=w_wb/g # kg # mass of the block\n", - "# Let the common velocity be v_c which is given by eq'n (Principle of conservation of momentum)\n", - "v_c=(w_b*v_a)/(w_wb+w_b) # m/s\n", - "# Let the distance through which the block is displaced be s, Then s is given by eq'n\n", - "s=v_c**2/(2*g*mu) # m\n", - "# Results\n", - "print('The distance through which the block is displaced from its initial position is %f m'%s)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.11 Principle of conservation of Energy Momentum and work and energy" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resistance to penetration to the pile is 79.022132 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M=750 # kg # mass of hammer\n", - "m=200 # kg # mass of the pile\n", - "h=1.2 # m # height of fall of the hammer\n", - "delta=0.1 # m # distance upto which the pile is driven into the ground\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Caculations\n", - "# The resistance to penetration to the pile is given by eq'n,\n", - "R=(((M+m)*g)+((M**2*g*h)/((M+m)*delta)))*(10**-3) # kN \n", - "# Results\n", - "print('The resistance to penetration to the pile is %f kN'%R)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_18___IMPACT_COLLISION_OF_ELASTIC_BODIES_QCip6wZ.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_18___IMPACT_COLLISION_OF_ELASTIC_BODIES_QCip6wZ.ipynb deleted file mode 100644 index bce7ef40..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_18___IMPACT_COLLISION_OF_ELASTIC_BODIES_QCip6wZ.ipynb +++ /dev/null @@ -1,532 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 18 Impact Collision of Elastic Bodies" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.1 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of ball A after impact is 0.000000 m/s\n", - "The velocity of ball B after impact is 1.000000 m/s\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "m_a=1 # kg # mass of the ball A\n", - "v_a=2 # m/s # velocity of ball A\n", - "m_b=2 # kg # mass of ball B\n", - "v_b=0 # m/s # ball B at rest\n", - "e=1/2 # coefficient of restitution\n", - "# Calculations\n", - "# Solving eqn's 1 & 2 using matrix for v'_a & v'_b,\n", - "A=numpy.matrix('1 2;-1 1')\n", - "B=numpy.matrix('2;1')\n", - "C=numpy.linalg.inv(A)*B\n", - "# Results\n", - "print('The velocity of ball A after impact is %f m/s'%C[0])\n", - "print('The velocity of ball B after impact is %f m/s'%C[1])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.2 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of ball A after impact on ball B is 0.000000 m/s\n", - "The velocity of ball B after getting impacted by ball A is 8.000000 m/s\n", - "The final velocity of ball B is 0.000000 m/s\n", - "The velocity of ball C after getting impacted by ball B is 6.000000 m/s\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "m_a=2 # kg # mass of ball A\n", - "m_b=6 # kg # mass of ball B\n", - "m_c=12 # kg # mass of ball C\n", - "v_a=12 # m/s # velocity of ball A\n", - "v_b=4 # m/s # velocity of ball B\n", - "v_c=2 # m/s # velocity of ball C\n", - "e=1 # coefficient of restitution for perfectly elastic body\n", - "# Calculations\n", - "# (A)\n", - "# Solving eq'n 1 & 2 using matrix for v'_a & v'_b,\n", - "A=numpy.matrix('2 6;-1 1')\n", - "B=numpy.matrix('48;8')\n", - "C=numpy.linalg.inv(A)*B\n", - "# Calculations\n", - "# (B)\n", - "# Solving eq'ns 3 & 4 simultaneously using matrix for v'_b & v'_c\n", - "P=numpy.matrix('1 2;-1 1')\n", - "Q=numpy.matrix('12;6')\n", - "R=numpy.linalg.inv(P)*Q\n", - "# Results (A&B)\n", - "print('The velocity of ball A after impact on ball B is %f m/s'%C[0]) # here the ball of mass 2 kg is bought to rest\n", - "print('The velocity of ball B after getting impacted by ball A is %f m/s'%C[1])\n", - "print('The final velocity of ball B is %f m/s'%R[0]) # here the ball of mass 6 kg is bought to rest\n", - "print('The velocity of ball C after getting impacted by ball B is %f m/s'%R[1])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.3 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The ball was dropped from a height of 13.500000 m\n", - "The coefficient of restitution between the glass and the floor is 0.816497 \n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "h_1=9 # m # height of first bounce\n", - "h_2=6 # m # height of second bounce\n", - "# Calculations\n", - "# From eq'n (5) we have, Coefficient of restitution between the glass and the floor is,\n", - "e=math.sqrt(h_2/h_1)\n", - "# From eq'n 3 we get height of drop as,\n", - "h=h_1/e**2 # m\n", - "# Results\n", - "print('The ball was dropped from a height of %f m'%h)\n", - "print('The coefficient of restitution between the glass and the floor is %f '%e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.4 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of ball A after impact is 8.353604 m/s\n", - "The velocity of ball B after impact is 15.179186 m/s\n", - "The direction of ball A after impact is 36.765696 degree\n", - "The direction of ball B after impact is 58.848472 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "e=0.90 # coefficient o restitution\n", - "v_a=10 # m/s # velocity of ball A\n", - "v_b=15 # m/s # velocity of ball B\n", - "alpha_1=30 # degree # angle made by v_a with horizontal\n", - "alpha_2=60 # degree # angle made by v_b with horizontal\n", - "# Calculations\n", - "# The components of initial velocity of ball A:\n", - "v_a_x=v_a*math.cos(alpha_1*math.pi/180) # m/s\n", - "v_a_y=v_a*math.sin(alpha_1*math.pi/180) # m/s\n", - "# The components of initial velocity of ball B:\n", - "v_b_x=-v_b*math.cos(alpha_2*math.pi/180) # m/s\n", - "v_b_y=v_b*math.sin(alpha_2*math.pi/180) # m/s\n", - "# From eq'n 1 & 2 we get,\n", - "v_ay=v_a_y # m/s # Here, v_ay=(v'_a)_y\n", - "v_by=v_b_y # m/s # Here, v_by=(v'_b)_y\n", - "# On adding eq'n 3 & 4 we get,\n", - "v_bx=((v_a_x+v_b_x)+(-e*(v_b_x-v_a_x)))/2 # m/s # Here. v_bx=(v'_b)_x\n", - "# On substuting the value of v'_b_x in eq'n 3 we get,\n", - "v_ax=(v_a_x+v_b_x)-(v_bx) # m/s # here, v_ax=(v'_a)_x\n", - "# Now the eq'n for resultant velocities of balls A & B after impact are,\n", - "v_A=math.sqrt(v_ax**2+v_ay**2) # m/s\n", - "v_B=math.sqrt(v_bx**2+v_by**2) # m/s\n", - "# The direction of the ball after Impact is,\n", - "theta_1=math.degrees(math.atan(-(v_ay/v_ax))) # degree\n", - "theta_2=math.degrees(math.atan(v_by/v_bx)) # degree\n", - "# Results\n", - "print('The velocity of ball A after impact is %f m/s'%v_A)\n", - "print('The velocity of ball B after impact is %f m/s'%v_B)\n", - "print('The direction of ball A after impact is %f degree'%theta_1)\n", - "print('The direction of ball B after impact is %f degree'%theta_2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.5 Motion of ball" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of the ball is 0.661438 v\n", - "The direction of the ball is 49.106605 degrees\n" - ] - } - ], - "source": [ - "# Initiization of variables\n", - "theta=30 # degrees # ange made by the ball against the wall\n", - "e=0.50\n", - "# Calculations\n", - "# The notations have been changed\n", - "# Resolving the velocity v as,\n", - "v_x=math.cos(theta*math.pi/180)\n", - "v_y=math.sin(theta*math.pi/180)\n", - "V_y=v_y\n", - "# from coefficient of restitution reation\n", - "V_x=-e*v_x\n", - "# Resultant velocity\n", - "V=math.sqrt(V_x**2+V_y**2)\n", - "theta=math.degrees(math.atan(V_y/(-V_x))) # taking +ve value for V_x\n", - "# NOTE: Here all the terms are multiplied with velocity i.e (v).\n", - "# Results\n", - "print('The velocity of the ball is %f v'%V)\n", - "print('The direction of the ball is %f degrees'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.6 Principle of conservation of Energy" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The height from which the ball A should be released is 0.149705 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "e=0.8 # coefficient of restitution\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calcuations\n", - "# Squaring eqn's 1 &2 and Solving eqn's 1 & 2 using matrix for the value of h\n", - "A=numpy.matrix([[-1,(2*g)],[-1,-(1.28*g)]])\n", - "B=numpy.matrix([[0.945**2],[(-0.4*9.81)]])\n", - "C=numpy.linalg.inv(A)*B # m\n", - "# Results\n", - "print('The height from which the ball A should be released is %f m'%C[1])\n", - "# The answer given in the book i.e 0.104 is wrong." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.7 Principle of conservation of Energy" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle through which the sphere B will swing after the impact is 28.955024 degree\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "theta_a=60 # degree # angle made by sphere A with the verticle\n", - "e=1 # coefficient of restitution for elastic impact\n", - "# Calculations\n", - "# theta_b is given by the eq'n cosd*theta_b=0.875, hence theta_b is,\n", - "theta_b=math.degrees(math.acos(0.875)) # degree\n", - "# Results\n", - "print('The angle through which the sphere B will swing after the impact is %f degree'%theta_b)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.8 Principle of conservation of Energy" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The maximum angle through which the pendulum swings when the bullet gets embeded into the bob is 18.188288 degree\n", - "(b) The maximum angle through which the pendulum swings when the bullet rebounds from the surface of the bob is 22.088290 degree\n", - "(c) The maximum angle through which the pendulum swings when the bullet escapes from other end of the bob the bob is 14.674584 degree\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "m_a=0.01 # kg # mass of bullet A\n", - "v_a=100 # m/s # velocity of bullet A\n", - "m_b=1 # kg # mass of the bob\n", - "v_b=0 # m/s # velocity of the bob\n", - "l=1 # m # length of the pendulum\n", - "v_r=-20 # m/s # velocity at which the bullet rebounds the surface of the bob # here the notation for v'_a is shown by v_r\n", - "v_e=20 # m/s # velocity at which the bullet escapes through the surface of the bob # here the notation for v_a is shown by v_e\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Momentum of the bullet & the bob before impact is,\n", - "M=(m_a*v_a)+(m_b*v_b) # kg.m/s......(eq'n 1)\n", - "# The common velocity v_c ( we use v_c insted of v' for notation of common velocity) is given by equating eq'n 1 & eq'n 2 as,\n", - "# (a) When the bullet gets embedded into the bob\n", - "v_c=M/(m_a+m_b) # m/s\n", - "# The height h to which the bob rises is given by eq'n 3 as,\n", - "h_1=(1/2)*(v_c**2/g) # m\n", - "# The angle (theta_1) by which the bob swings corresponding to the value of height h_1 is,\n", - "theta_1=math.degrees(math.acos((l-h_1)/l)) # degree\n", - "# (b) When the bullet rebounds from the surface of the bob\n", - "# The velocity of the bob after the rebound of the bullet from its surface is given by equating eq'n 1 & eq'n 4 as,\n", - "v_bob_rebound=M-(m_a*v_r) # m/s # here v_bob_rebound=v'_b\n", - "# The equation for the height which the bob attains after impact is,\n", - "h_2=(v_bob_rebound**2)/(2*g) # m\n", - "# The corresponding angle of swing \n", - "theta_2=math.degrees(math.acos((l-h_2)/l)) # degree\n", - "# (c) When the bullet pierces and escapes through the bob\n", - "# From eq'n 1 & 5 the velocity attained by the bob after impact is given as,\n", - "v_b_escape=M-(m_a*v_e) # m/s # here we use, v_b_escape insted of v'_b\n", - "# The equation for the height which the bob attains after impact is,\n", - "h_3=(v_b_escape**2)/(2*g) # m\n", - "# The corresponding angle of swing \n", - "theta_3=math.degrees(math.acos((l-h_3)/(l))) # degree\n", - "# Results\n", - "print('(a) The maximum angle through which the pendulum swings when the bullet gets embeded into the bob is %f degree'%theta_1)\n", - "print('(b) The maximum angle through which the pendulum swings when the bullet rebounds from the surface of the bob is %f degree'%theta_2)\n", - "print('(c) The maximum angle through which the pendulum swings when the bullet escapes from other end of the bob the bob is %f degree'%theta_3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.9 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The compression of the spring over and above caused by the static action of weight W_a is 7.502999 cm \n", - "\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W_a=50 # N # falling weight\n", - "W_b=50 # N # weight on which W_a falls\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "m_a=W_a/g # kg # mass of W_a\n", - "m_b=W_b/g # kg # mass of W_b\n", - "k=2*10**3 # N/m # stiffness of spring\n", - "h=0.075 # m # height through which W_a falls\n", - "# The velocity of weight W_a just before the impact and after falling from a height of h is given from the eq'n, ( Principle of conservation of energy)\n", - "v_a=math.sqrt(2*g*h) # m/s\n", - "# Let the mutual velocity after the impact be v_m (i.e v_m=v'), (by principle of conservation of momentum)\n", - "v_m=(m_a*v_a)/(m_a+m_b) # m/s\n", - "# Initial compression of the spring due to weight W_b is given by,\n", - "delta_st=(W_b/k)*(10**2) # cm\n", - "# Let the total compression of the spring be delta_t, Then delta_t is found by finding the roots from the eq'n:\n", - "#delta_t**2-0.1*delta_t-0.000003=0. In this eq'n let,\n", - "a=1\n", - "b=-0.1\n", - "c=-0.000003\n", - "delta_t=((-b+(math.sqrt(b**2-(4*a*c))))/2*a)*(10**2) # cm # we consider the -ve value\n", - "delta=delta_t-delta_st # cm\n", - "# Results\n", - "print('The compression of the spring over and above caused by the static action of weight W_a is %f cm \\n'%delta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.10 Principle of conservation of Momentum" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance through which the block is displaced from its initial position is 0.908325 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v_a=600 # m/s # velocity of the bullet before impact\n", - "v_b=0 # m/s # velocity of the block before impact\n", - "w_b=0.25 # N # weight of the bullet\n", - "w_wb=50 # N # weight of wodden block\n", - "mu=0.5 # coefficient of friction between the floor and the block\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "m_a=w_b/g # kg # mass of the bullet\n", - "m_b=w_wb/g # kg # mass of the block\n", - "# Let the common velocity be v_c which is given by eq'n (Principle of conservation of momentum)\n", - "v_c=(w_b*v_a)/(w_wb+w_b) # m/s\n", - "# Let the distance through which the block is displaced be s, Then s is given by eq'n\n", - "s=v_c**2/(2*g*mu) # m\n", - "# Results\n", - "print('The distance through which the block is displaced from its initial position is %f m'%s)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 18.11 Principle of conservation of Energy Momentum and work and energy" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resistance to penetration to the pile is 79.022132 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M=750 # kg # mass of hammer\n", - "m=200 # kg # mass of the pile\n", - "h=1.2 # m # height of fall of the hammer\n", - "delta=0.1 # m # distance upto which the pile is driven into the ground\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Caculations\n", - "# The resistance to penetration to the pile is given by eq'n,\n", - "R=(((M+m)*g)+((M**2*g*h)/((M+m)*delta)))*(10**-3) # kN \n", - "# Results\n", - "print('The resistance to penetration to the pile is %f kN'%R)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_19_RELATIVE_MOTION_J2UMS3p.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_19_RELATIVE_MOTION_J2UMS3p.ipynb deleted file mode 100644 index 262e4ca8..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_19_RELATIVE_MOTION_J2UMS3p.ipynb +++ /dev/null @@ -1,234 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 19 Relative Motion" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.1 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at which the stone appears to hit the person travelling in the train is 11.180340 m/s\n", - "The direction of the stone is 26.565051 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_t=10 # m/s # velocity of the train\n", - "v_s=5 # m/s # velocity of the stone\n", - "# Calculations\n", - "# Let v_r be the relative velocity, which is given as, (from triangle law)\n", - "v_r=math.sqrt(v_t**2+v_s**2) # m/s\n", - "# The direction ofthe stone is,\n", - "theta=math.degrees(math.atan(v_s/v_t)) # degree\n", - "# Results\n", - "print('The velocity at which the stone appears to hit the person travelling in the train is %f m/s'%v_r)\n", - "print('The direction of the stone is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.2 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false, - "scrolled": true - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of relative velocity of ship B with respect to ship A is 6.994832 m/s\n", - "The direction of the relative velocity is 14.638807 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_A=5 # m/s # speed of ship A\n", - "v_B=2.5 # m/s # speed of ship B\n", - "theta=135 # degree # angle between the two ships\n", - "# Calculations\n", - "# Here,\n", - "OA=v_A # m/s\n", - "OB=v_B # m/s\n", - "# The magnitude of relative velocity is given by cosine law as,\n", - "AB=math.sqrt((OA**2)+(OB**2)-(2*OA*OB*math.cos(theta*math.pi/180))) # m/s\n", - "# where AB gives the relative velocity of ship B with respect to ship A\n", - "# Applying sine law to find the direction, Let alpha be the direction of the reative velocity, then\n", - "alpha=math.degrees(math.asin((OB*math.sin(theta*math.pi/180))/(AB))) # degree\n", - "# Results\n", - "print('The magnitude of relative velocity of ship B with respect to ship A is %f m/s'%AB)\n", - "print('The direction of the relative velocity is %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.3 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of absolute velocity is 18.943769 km/hr\n", - "The direction of absolute velocity is 86.709116 degree\n" - ] - } - ], - "source": [ - "import math\n", - "import numpy\n", - "# Initilization of variables\n", - "v_c=20 # km/hr # speed at which the cyclist is riding to west\n", - "theta_1=45 # degree # angle made by rain with the cyclist when he rides at 20 km/hr\n", - "V_c=12 # km/hr # changed speed\n", - "theta_2=30 # degree # changed angle when the cyclist rides at 12 km/hr\n", - "# Calculations\n", - "# Solving eq'ns 1 & 2 simultaneously to get the values of components(v_R_x & v_R_y) of absolute velocity v_R. We use matrix to solve eqn's 1 & 2.\n", - "A=numpy.matrix('1 1;1 0.577')\n", - "B=numpy.matrix('20;12')\n", - "C=numpy.linalg.inv(A)*B # km/hr\n", - "# The X component of relative velocity (v_R_x) is C(1)\n", - "# The Y component of relative velocity (v_R_y) is C(2)\n", - "# Calculations\n", - "# Relative velocity (v_R) is given as,\n", - "v_R=math.sqrt((C[0])**2+(C[1])**2) # km/hr\n", - "# And the direction of absolute velocity of rain is theta, is given as\n", - "theta=math.degrees(math.atan(C[1]/C[0])) # degree\n", - "# Results \n", - "print('The magnitude of absolute velocity is %f km/hr'%v_R)\n", - "print('The direction of absolute velocity is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.4 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The relative position of car A relative to car B is 53.851648 m\n", - "The direction of car A w.r.t car B is 21.801409 degree\n", - "The velocity of car A relative to car B is 11.180340 m/s\n", - "The direction of car A w.r.t (for relative velocity)is 26.565051 degree\n", - "The acceleration of car A relative to car B is 1 m/s**2\n" - ] - } - ], - "source": [ - "import math\n", - "# Initiization of variables\n", - "a=1 # m/s**2 # acceleration of car A\n", - "u_B=36*(1000/3600) # m/s # velocity of car B\n", - "u=0 # m/s # initial velocity of car A\n", - "d=32.5 # m # position of car A from north of crossing\n", - "t=5 # seconds\n", - "# Calculations\n", - "# CAR A: Absolute motion using eq'n v=u+at we have,\n", - "v=u+(a*t) # m/s\n", - "# Now distance travelled by car A after 5 seconds is given by, s_A=u*t+(1/2)*a*t**2\n", - "s_A=(u*t)+((1/2)*a*t**2)\n", - "# Now, let the position of car A after 5 seconds be y_A\n", - "y_A=d-s_A # m # \n", - "# CAR B:\n", - "# let a_B be the acceleration of car B\n", - "a_B=0 # m/s\n", - "# Now position of car B is s_B\n", - "s_B=(u_B*t)+((1/2)*a_B*t**2) # m\n", - "x_B=s_B # m\n", - "# Let the Relative position of car A with respect to car B be BA & its direction be theta, then from fig. 19.9(b)\n", - "OA=y_A\n", - "OB=x_B\n", - "BA=math.sqrt(OA**2+OB**2) # m\n", - "theta=math.degrees(math.atan(OA/OB)) # degree\n", - "# Let the relative velocity of car A w.r.t. the car B be v_AB & the angle be phi. Then from fig 19.9(c). Consider small alphabets\n", - "oa=v\n", - "ob=u_B\n", - "v_AB=math.sqrt(oa**2+ob**2) # m/s\n", - "phi=math.degrees(math.atan(oa/ob)) # degree\n", - "# Let the relative acceleration of car A w.r.t. car B be a_A/B.Then,\n", - "a_AB=a-a_B # m/s^2\n", - "# Results\n", - "print('The relative position of car A relative to car B is %f m'%BA)\n", - "print('The direction of car A w.r.t car B is %f degree'%theta)\n", - "print('The velocity of car A relative to car B is %f m/s'%v_AB)\n", - "print('The direction of car A w.r.t (for relative velocity)is %f degree'%phi)\n", - "print('The acceleration of car A relative to car B is %d m/s**2'%a_AB)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_19_RELATIVE_MOTION_mUl2FWg.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_19_RELATIVE_MOTION_mUl2FWg.ipynb deleted file mode 100644 index 08d8c932..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_19_RELATIVE_MOTION_mUl2FWg.ipynb +++ /dev/null @@ -1,230 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 19 Relative Motion" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.1 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at which the stone appears to hit the person travelling in the train is 11.180340 m/s\n", - "The direction of the stone is 26.565051 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_t=10 # m/s # velocity of the train\n", - "v_s=5 # m/s # velocity of the stone\n", - "# Calculations\n", - "# Let v_r be the relative velocity, which is given as, (from triangle law)\n", - "v_r=math.sqrt(v_t**2+v_s**2) # m/s\n", - "# The direction ofthe stone is,\n", - "theta=math.degrees(math.atan(v_s/v_t)) # degree\n", - "# Results\n", - "print('The velocity at which the stone appears to hit the person travelling in the train is %f m/s'%v_r)\n", - "print('The direction of the stone is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.2 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false, - "scrolled": true - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of relative velocity of ship B with respect to ship A is 6.994832 m/s\n", - "The direction of the relative velocity is 14.638807 degree\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v_A=5 # m/s # speed of ship A\n", - "v_B=2.5 # m/s # speed of ship B\n", - "theta=135 # degree # angle between the two ships\n", - "# Calculations\n", - "# Here,\n", - "OA=v_A # m/s\n", - "OB=v_B # m/s\n", - "# The magnitude of relative velocity is given by cosine law as,\n", - "AB=math.sqrt((OA**2)+(OB**2)-(2*OA*OB*math.cos(theta*math.pi/180))) # m/s\n", - "# where AB gives the relative velocity of ship B with respect to ship A\n", - "# Applying sine law to find the direction, Let alpha be the direction of the reative velocity, then\n", - "alpha=math.degrees(math.asin((OB*math.sin(theta*math.pi/180))/(AB))) # degree\n", - "# Results\n", - "print('The magnitude of relative velocity of ship B with respect to ship A is %f m/s'%AB)\n", - "print('The direction of the relative velocity is %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.3 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of absolute velocity is 18.943769 km/hr\n", - "The direction of absolute velocity is 86.709116 degree\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "v_c=20 # km/hr # speed at which the cyclist is riding to west\n", - "theta_1=45 # degree # angle made by rain with the cyclist when he rides at 20 km/hr\n", - "V_c=12 # km/hr # changed speed\n", - "theta_2=30 # degree # changed angle when the cyclist rides at 12 km/hr\n", - "# Calculations\n", - "# Solving eq'ns 1 & 2 simultaneously to get the values of components(v_R_x & v_R_y) of absolute velocity v_R. We use matrix to solve eqn's 1 & 2.\n", - "A=numpy.matrix('1 1;1 0.577')\n", - "B=numpy.matrix('20;12')\n", - "C=numpy.linalg.inv(A)*B # km/hr\n", - "# The X component of relative velocity (v_R_x) is C(1)\n", - "# The Y component of relative velocity (v_R_y) is C(2)\n", - "# Calculations\n", - "# Relative velocity (v_R) is given as,\n", - "v_R=math.sqrt((C[0])**2+(C[1])**2) # km/hr\n", - "# And the direction of absolute velocity of rain is theta, is given as\n", - "theta=math.degrees(math.atan(C[1]/C[0])) # degree\n", - "# Results \n", - "print('The magnitude of absolute velocity is %f km/hr'%v_R)\n", - "print('The direction of absolute velocity is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 19.4 Relative Velocity" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The relative position of car A relative to car B is 53.851648 m\n", - "The direction of car A w.r.t car B is 21.801409 degree\n", - "The velocity of car A relative to car B is 11.180340 m/s\n", - "The direction of car A w.r.t (for relative velocity)is 26.565051 degree\n", - "The acceleration of car A relative to car B is 1 m/s**2\n" - ] - } - ], - "source": [ - "# Initiization of variables\n", - "a=1 # m/s**2 # acceleration of car A\n", - "u_B=36*(1000/3600) # m/s # velocity of car B\n", - "u=0 # m/s # initial velocity of car A\n", - "d=32.5 # m # position of car A from north of crossing\n", - "t=5 # seconds\n", - "# Calculations\n", - "# CAR A: Absolute motion using eq'n v=u+at we have,\n", - "v=u+(a*t) # m/s\n", - "# Now distance travelled by car A after 5 seconds is given by, s_A=u*t+(1/2)*a*t**2\n", - "s_A=(u*t)+((1/2)*a*t**2)\n", - "# Now, let the position of car A after 5 seconds be y_A\n", - "y_A=d-s_A # m # \n", - "# CAR B:\n", - "# let a_B be the acceleration of car B\n", - "a_B=0 # m/s\n", - "# Now position of car B is s_B\n", - "s_B=(u_B*t)+((1/2)*a_B*t**2) # m\n", - "x_B=s_B # m\n", - "# Let the Relative position of car A with respect to car B be BA & its direction be theta, then from fig. 19.9(b)\n", - "OA=y_A\n", - "OB=x_B\n", - "BA=math.sqrt(OA**2+OB**2) # m\n", - "theta=math.degrees(math.atan(OA/OB)) # degree\n", - "# Let the relative velocity of car A w.r.t. the car B be v_AB & the angle be phi. Then from fig 19.9(c). Consider small alphabets\n", - "oa=v\n", - "ob=u_B\n", - "v_AB=math.sqrt(oa**2+ob**2) # m/s\n", - "phi=math.degrees(math.atan(oa/ob)) # degree\n", - "# Let the relative acceleration of car A w.r.t. car B be a_A/B.Then,\n", - "a_AB=a-a_B # m/s^2\n", - "# Results\n", - "print('The relative position of car A relative to car B is %f m'%BA)\n", - "print('The direction of car A w.r.t car B is %f degree'%theta)\n", - "print('The velocity of car A relative to car B is %f m/s'%v_AB)\n", - "print('The direction of car A w.r.t (for relative velocity)is %f degree'%phi)\n", - "print('The acceleration of car A relative to car B is %d m/s**2'%a_AB)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_20_MOTION_OF_PROJECTILE_JSbzAtS.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_20_MOTION_OF_PROJECTILE_JSbzAtS.ipynb deleted file mode 100644 index 80433aa0..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_20_MOTION_OF_PROJECTILE_JSbzAtS.ipynb +++ /dev/null @@ -1,457 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 20 Motion of Projectile" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.1 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of the projectile is 435.272891 m/s\n", - "The direction of the projectile is 5.841405 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_o=500 # m/s # velocity of the projectile\n", - "alpha=30 # angle at which the projectile is fired\n", - "t=30 # seconds\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "v_x=v_o*(math.cos(alpha*math.pi/180)) # m/s # Initial velocity in the horizontal direction\n", - "v_y=v_o*(math.sin(alpha*math.pi/180)) # m/s # Initial velocity in the vertical direction\n", - "# MOTION IN HORIZONTA DIRECTION:\n", - "V_x=v_x # m/s # V_x=Horizontal velocity after 30 seconds\n", - "# MOTION IN VERTICAL DIRECTION: # using the eq'n v=u+a*t\n", - "V_y=v_y-(g*t) # m/s # -ve sign denotes downward motion\n", - "# Let the Resultant velocity be v_R. It is given as,\n", - "v_R=math.sqrt((V_x)**2+(-V_y)**2) # m/s\n", - "theta=math.degrees(math.atan((-V_y)/V_x)) # degree # direction of the projectile\n", - "# Results\n", - "print('The velocity of the projectile is %f m/s'%v_R) \n", - "# The answer of velocity is wrong in the text book.\n", - "print('The direction of the projectile is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.2 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The velocity of body B for horizontal range is 9.306049 m/s\n", - "(b) The velocity of body B for the maximum height is 12.247449 m/s\n", - "(c) The velocity of body B for equal time of flight is 12.247449 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_A=10 # m/s # velocity of body A\n", - "alpha_A=60 # degree # direction of body A\n", - "alpha_B=45 # degree # direction of body B\n", - "# Calculations\n", - "# (a) The velocity (v_B) for the same range is given by eq'n;\n", - "v_B=math.sqrt((v_A**2*math.sin(2*alpha_A*math.pi/180))/(math.sin(2*alpha_B*math.pi/180))) # m/s\n", - "# (b) Now velocity v_B for the same maximum height is given as,\n", - "v_b=math.sqrt((v_A**2)*((math.sin(alpha_A*math.pi/180))**2/(math.sin(alpha_B*math.pi/180))**2)) # m/s\n", - "# (c) Now the velocity (v) for the equal time of flight is;\n", - "v=(v_A*math.sin(alpha_A*math.pi/180))/(math.sin(alpha_B*math.pi/180)) # m/s\n", - "# Results\n", - "print('(a) The velocity of body B for horizontal range is %f m/s'%v_B)\n", - "print('(b) The velocity of body B for the maximum height is %f m/s'%v_b)\n", - "print('(c) The velocity of body B for equal time of flight is %f m/s'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.3 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The least velocity with which the ball can be thrown is 9.779954 m/s\n", - "The angle of projection for the same is 60.255119 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "y=3.6 # m # height of the wall\n", - "x_1=4.8 # m # position of the boy w.r.t the wall\n", - "x_2=3.6 # m # distance from the wall where the ball hits the ground\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The range of the projectile is r, given as,\n", - "r=x_1+x_2 # m\n", - "# Let the angle of the projection be alpha, which is derived and given as,\n", - "alpha=math.degrees(math.atan((y)/(x_1-(x_1**2/r)))) # degree\n", - "# Now substuting the value of alpha in eq'n 3 we get the least velocity (v_o) as;\n", - "v_o=math.sqrt((g*r)/(math.sin(2*alpha*math.pi/180))) # m/s\n", - "# Results\n", - "print('The least velocity with which the ball can be thrown is %f m/s'%v_o)\n", - "print('The angle of projection for the same is %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.5 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time difference between the two hits is 67.908579 seconds\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_o=400 # m/s # initial velocity of each gun\n", - "r=5000 # m # range of each of the guns\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "pi=180 # degree \n", - "# Calculations\n", - "# now from eq'n 1\n", - "theta_1=math.degrees(math.asin((r*g)/(v_o**2)))/(2) \n", - "# from eq'n 3\n", - "theta_2=(pi-(2*theta_1))/2 # degree \n", - "# For 1st & 2nd gun, s is\n", - "s=r # m\n", - "# For 1st gun \n", - "v_x=v_o*math.cos(theta_1*math.pi/180) # m/s\n", - "# Now the time of flight for 1st gun is t_1, which is given by relation,\n", - "t_1=s/(v_x) # seconds\n", - "# For 2nd gun\n", - "V_x=v_o*math.cos(theta_2*math.pi/180)\n", - "# Now the time of flight for 2nd gun is t_2\n", - "t_2=s/(V_x) # seconds\n", - "# Let the time difference between the two hits be delta.T. Then,\n", - "deltaT=t_2-t_1 # seconds\n", - "# Results\n", - "print('The time difference between the two hits is %f seconds'%deltaT)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.6 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The pilot should release the bomb from a distance of 3028.912664 m\n", - "The angle at which the target would appear is 33.436901 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "h=2000 # m/ height of the plane\n", - "v=540*(1000/3600) # m/s # velocity of the plane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Time t required to travel down a height 2000 m is given by eq'n,\n", - "u=0 # m/s # initial velocity\n", - "t=math.sqrt((2*h)/(g)) # seconds\n", - "# Now let s be the horizonta distance travelled by the bomb in time t seconds, then\n", - "s=v*t # m\n", - "# angle is given as theta,\n", - "theta=math.degrees(math.atan(h/s)) # degree\n", - "# Results\n", - "print('The pilot should release the bomb from a distance of %f m'%s)\n", - "print('The angle at which the target would appear is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.7 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The maximum height to which the bullet will rise above the soldier is 127.420999 m\n", - "(b) The velocity with which the bullet will hit the target is 104.790267 m/s\n", - "(c) The time required to hit the target is 11.111111 seconds\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "theta=30 # degree # angle at which the bullet is fired\n", - "s=-50 # position of target below hill\n", - "v=100 # m/s # velocity at which the bullet if fired\n", - "g=9.81 # m/s**2 \n", - "# Calculations\n", - "v_x=v*math.cos(theta*math.pi/180) # m/s # Initial velocity in horizontal direction\n", - "v_y=v*math.sin(theta*math.pi/180) # m/s # Initial velocity in vertical direction\n", - "# (a) Max height attained by the bullet\n", - "h=v_y**2/(2*g) # m\n", - "# (b)Let the vertical Velocity with which the bullet will hit the target be V_y. Then,\n", - "V_y=math.sqrt((2*-9.81*s)+(v_y)**2) # m/s # the value of V_y is +ve & -ve\n", - "# Let V be the velocity with wich it hits the target\n", - "V=math.sqrt((v_x)**2+(V_y)**2) # m/s\n", - "# (c) The time required to hit the target\n", - "a=g # m/s**2\n", - "t=(v_y-(-V_y))/a # seconds\n", - "# Results\n", - "print('(a) The maximum height to which the bullet will rise above the soldier is %f m'%h)\n", - "print('(b) The velocity with which the bullet will hit the target is %f m/s'%V)\n", - "print('(c) The time required to hit the target is %f seconds'%t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.8 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance x where the hammer hits the round is 5.159708 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "W=30 # N # Weight of the hammer\n", - "theta=30 # degree # ref fig.20.12\n", - "mu=0.18 # coefficient of friction\n", - "s=10 # m # distance travelled by the hammer # fig 20.12\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The acceleration of the hammer is given as,\n", - "a=g*((math.sin(theta*math.pi/180))-(mu*math.cos(theta*math.pi/180))) # m/s**2\n", - "# The velocity of the hammer at point B is,\n", - "v=math.sqrt(2*a*s) # m/s\n", - "# Let the initial velocity of the hammer in horizontal direction be v_x & v_y in vertical direction, Then,\n", - "v_x=v*math.cos(theta*math.pi/180) # m/s\n", - "v_y=v*math.sin(theta*math.pi/180) # m/s\n", - "# MOTION IN VERTICAL DIRECTION\n", - "# Now, let time required to travel vertical distance (i.e BB'=S=5 m) is given by finding the roots of the second degree eq'n as,\n", - "# From the eq'n 4.9*t**2+4.1*t-5=0,\n", - "a=4.9\n", - "b=4.1\n", - "c=-5\n", - "# The roots of the eq'n are,\n", - "t=((-b)+(math.sqrt(b**2-(4*a*c))))/(2*a)\n", - "# MOTION IN HORIZONTAL DIRECTION\n", - "# Let the horizotal distance travelled by the hammer in time t be s_x.Then,\n", - "s_x=v_x*math.cos(theta*math.pi/180)*t # m\n", - "x=1+s_x # m\n", - "# Results\n", - "print('The distance x where the hammer hits the round is %f m'%x)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.9 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The velocity of shell just before bursting is 500.255037 m/s\n", - "(b) The velocity of first part immediately after the shell burst is 1000.510074 m/s\n", - "(c) The velocity of second part immediately after the shell burst is 1000.510074 m/s\n", - "(b) The distance between the firing point & the point where the second part of the shell hit the ground is 3000.000000 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "s=1000 # m # distance OB (ref fig.20.13)\n", - "h=19.6 # m # height of shell from ground\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# MOTION OF ENTIRE SHELL FROM O to A.\n", - "v_y=math.sqrt(2*(g)*h) # m/s # initial velocity of shell in vertical direction\n", - "t=v_y/g # seconds # time taken by the entire shell to reach point A\n", - "v_x=s/t # m/s # velocity of shell in vertical direction\n", - "# VELOCITIES OF THE TWO PARTS OF THE SHELL AFTER BURSTING AT A:\n", - "# Let v_x2 be the horizontal velocity of 1st & the 2nd part after bursting which is given as,\n", - "v_x2=v_x*2 # m/s\n", - "# Now distance BC travelled by part 2 is\n", - "BC=v_x2*t # m\n", - "# Distance from firing point OC\n", - "OC=s+BC # m\n", - "# Results\n", - "print('(a) The velocity of shell just before bursting is %f m/s'%v_x)\n", - "print('(b) The velocity of first part immediately after the shell burst is %f m/s'%v_x2)\n", - "print('(c) The velocity of second part immediately after the shell burst is %f m/s'%v_x2)\n", - "print('(b) The distance between the firing point & the point where the second part of the shell hit the ground is %f m'%OC)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.10 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The range covered (i.e BC) is 7650.920998 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_o=200 # m/s # initial velocity\n", - "theta=60 # degree # angle of the incline\n", - "y=5 # rise of incline\n", - "x=12 # length of incline\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The angle of the inclined plane with respect to horizontal\n", - "beta=math.degrees(math.atan(y/x)) # degree\n", - "# The angle of projection with respect to horizontal\n", - "alpha=90-theta # degree\n", - "# Range is given by eq'n (ref. fig.20.14)\n", - "AB=(2*v_o**2*(math.sin((alpha-beta)*math.pi/180))*math.cos(alpha*math.pi/180))/(g*(math.cos(beta*math.pi/180))**2) # m\n", - "# Range AC when the short is fired down the plane\n", - "AC=(2*v_o**2*(math.sin((alpha+beta)*math.pi/180))*math.cos(alpha*math.pi/180))/(g*(math.cos(beta*math.pi/180))**2) # m\n", - "BC=AB+AC # m\n", - "# Results\n", - "print('The range covered (i.e BC) is %f m'%BC)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_20_MOTION_OF_PROJECTILE_UfbIeO1.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_20_MOTION_OF_PROJECTILE_UfbIeO1.ipynb deleted file mode 100644 index 1f3a63ab..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_20_MOTION_OF_PROJECTILE_UfbIeO1.ipynb +++ /dev/null @@ -1,448 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 20 Motion of Projectile" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.1 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of the projectile is 435.272891 m/s\n", - "The direction of the projectile is 5.841405 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_o=500 # m/s # velocity of the projectile\n", - "alpha=30 # angle at which the projectile is fired\n", - "t=30 # seconds\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "v_x=v_o*(math.cos(alpha*math.pi/180)) # m/s # Initial velocity in the horizontal direction\n", - "v_y=v_o*(math.sin(alpha*math.pi/180)) # m/s # Initial velocity in the vertical direction\n", - "# MOTION IN HORIZONTA DIRECTION:\n", - "V_x=v_x # m/s # V_x=Horizontal velocity after 30 seconds\n", - "# MOTION IN VERTICAL DIRECTION: # using the eq'n v=u+a*t\n", - "V_y=v_y-(g*t) # m/s # -ve sign denotes downward motion\n", - "# Let the Resultant velocity be v_R. It is given as,\n", - "v_R=math.sqrt((V_x)**2+(-V_y)**2) # m/s\n", - "theta=math.degrees(math.atan((-V_y)/V_x)) # degree # direction of the projectile\n", - "# Results\n", - "print('The velocity of the projectile is %f m/s'%v_R) \n", - "# The answer of velocity is wrong in the text book.\n", - "print('The direction of the projectile is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.2 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The velocity of body B for horizontal range is 9.306049 m/s\n", - "(b) The velocity of body B for the maximum height is 12.247449 m/s\n", - "(c) The velocity of body B for equal time of flight is 12.247449 m/s\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v_A=10 # m/s # velocity of body A\n", - "alpha_A=60 # degree # direction of body A\n", - "alpha_B=45 # degree # direction of body B\n", - "# Calculations\n", - "# (a) The velocity (v_B) for the same range is given by eq'n;\n", - "v_B=math.sqrt((v_A**2*math.sin(2*alpha_A*math.pi/180))/(math.sin(2*alpha_B*math.pi/180))) # m/s\n", - "# (b) Now velocity v_B for the same maximum height is given as,\n", - "v_b=math.sqrt((v_A**2)*((math.sin(alpha_A*math.pi/180))**2/(math.sin(alpha_B*math.pi/180))**2)) # m/s\n", - "# (c) Now the velocity (v) for the equal time of flight is;\n", - "v=(v_A*math.sin(alpha_A*math.pi/180))/(math.sin(alpha_B*math.pi/180)) # m/s\n", - "# Results\n", - "print('(a) The velocity of body B for horizontal range is %f m/s'%v_B)\n", - "print('(b) The velocity of body B for the maximum height is %f m/s'%v_b)\n", - "print('(c) The velocity of body B for equal time of flight is %f m/s'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.3 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The least velocity with which the ball can be thrown is 9.779954 m/s\n", - "The angle of projection for the same is 60.255119 degree\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "y=3.6 # m # height of the wall\n", - "x_1=4.8 # m # position of the boy w.r.t the wall\n", - "x_2=3.6 # m # distance from the wall where the ball hits the ground\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The range of the projectile is r, given as,\n", - "r=x_1+x_2 # m\n", - "# Let the angle of the projection be alpha, which is derived and given as,\n", - "alpha=math.degrees(math.atan((y)/(x_1-(x_1**2/r)))) # degree\n", - "# Now substuting the value of alpha in eq'n 3 we get the least velocity (v_o) as;\n", - "v_o=math.sqrt((g*r)/(math.sin(2*alpha*math.pi/180))) # m/s\n", - "# Results\n", - "print('The least velocity with which the ball can be thrown is %f m/s'%v_o)\n", - "print('The angle of projection for the same is %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.5 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time difference between the two hits is 67.908579 seconds\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v_o=400 # m/s # initial velocity of each gun\n", - "r=5000 # m # range of each of the guns\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "pi=180 # degree \n", - "# Calculations\n", - "# now from eq'n 1\n", - "theta_1=math.degrees(math.asin((r*g)/(v_o**2)))/(2) \n", - "# from eq'n 3\n", - "theta_2=(pi-(2*theta_1))/2 # degree \n", - "# For 1st & 2nd gun, s is\n", - "s=r # m\n", - "# For 1st gun \n", - "v_x=v_o*math.cos(theta_1*math.pi/180) # m/s\n", - "# Now the time of flight for 1st gun is t_1, which is given by relation,\n", - "t_1=s/(v_x) # seconds\n", - "# For 2nd gun\n", - "V_x=v_o*math.cos(theta_2*math.pi/180)\n", - "# Now the time of flight for 2nd gun is t_2\n", - "t_2=s/(V_x) # seconds\n", - "# Let the time difference between the two hits be delta.T. Then,\n", - "deltaT=t_2-t_1 # seconds\n", - "# Results\n", - "print('The time difference between the two hits is %f seconds'%deltaT)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.6 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The pilot should release the bomb from a distance of 3028.912664 m\n", - "The angle at which the target would appear is 33.436901 degree\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "h=2000 # m/ height of the plane\n", - "v=540*(1000/3600) # m/s # velocity of the plane\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# Time t required to travel down a height 2000 m is given by eq'n,\n", - "u=0 # m/s # initial velocity\n", - "t=math.sqrt((2*h)/(g)) # seconds\n", - "# Now let s be the horizonta distance travelled by the bomb in time t seconds, then\n", - "s=v*t # m\n", - "# angle is given as theta,\n", - "theta=math.degrees(math.atan(h/s)) # degree\n", - "# Results\n", - "print('The pilot should release the bomb from a distance of %f m'%s)\n", - "print('The angle at which the target would appear is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.7 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The maximum height to which the bullet will rise above the soldier is 127.420999 m\n", - "(b) The velocity with which the bullet will hit the target is 104.790267 m/s\n", - "(c) The time required to hit the target is 11.111111 seconds\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "theta=30 # degree # angle at which the bullet is fired\n", - "s=-50 # position of target below hill\n", - "v=100 # m/s # velocity at which the bullet if fired\n", - "g=9.81 # m/s**2 \n", - "# Calculations\n", - "v_x=v*math.cos(theta*math.pi/180) # m/s # Initial velocity in horizontal direction\n", - "v_y=v*math.sin(theta*math.pi/180) # m/s # Initial velocity in vertical direction\n", - "# (a) Max height attained by the bullet\n", - "h=v_y**2/(2*g) # m\n", - "# (b)Let the vertical Velocity with which the bullet will hit the target be V_y. Then,\n", - "V_y=math.sqrt((2*-9.81*s)+(v_y)**2) # m/s # the value of V_y is +ve & -ve\n", - "# Let V be the velocity with wich it hits the target\n", - "V=math.sqrt((v_x)**2+(V_y)**2) # m/s\n", - "# (c) The time required to hit the target\n", - "a=g # m/s**2\n", - "t=(v_y-(-V_y))/a # seconds\n", - "# Results\n", - "print('(a) The maximum height to which the bullet will rise above the soldier is %f m'%h)\n", - "print('(b) The velocity with which the bullet will hit the target is %f m/s'%V)\n", - "print('(c) The time required to hit the target is %f seconds'%t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.8 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance x where the hammer hits the round is 5.159708 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=30 # N # Weight of the hammer\n", - "theta=30 # degree # ref fig.20.12\n", - "mu=0.18 # coefficient of friction\n", - "s=10 # m # distance travelled by the hammer # fig 20.12\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The acceleration of the hammer is given as,\n", - "a=g*((math.sin(theta*math.pi/180))-(mu*math.cos(theta*math.pi/180))) # m/s**2\n", - "# The velocity of the hammer at point B is,\n", - "v=math.sqrt(2*a*s) # m/s\n", - "# Let the initial velocity of the hammer in horizontal direction be v_x & v_y in vertical direction, Then,\n", - "v_x=v*math.cos(theta*math.pi/180) # m/s\n", - "v_y=v*math.sin(theta*math.pi/180) # m/s\n", - "# MOTION IN VERTICAL DIRECTION\n", - "# Now, let time required to travel vertical distance (i.e BB'=S=5 m) is given by finding the roots of the second degree eq'n as,\n", - "# From the eq'n 4.9*t**2+4.1*t-5=0,\n", - "a=4.9\n", - "b=4.1\n", - "c=-5\n", - "# The roots of the eq'n are,\n", - "t=((-b)+(math.sqrt(b**2-(4*a*c))))/(2*a)\n", - "# MOTION IN HORIZONTAL DIRECTION\n", - "# Let the horizotal distance travelled by the hammer in time t be s_x.Then,\n", - "s_x=v_x*math.cos(theta*math.pi/180)*t # m\n", - "x=1+s_x # m\n", - "# Results\n", - "print('The distance x where the hammer hits the round is %f m'%x)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.9 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The velocity of shell just before bursting is 500.255037 m/s\n", - "(b) The velocity of first part immediately after the shell burst is 1000.510074 m/s\n", - "(c) The velocity of second part immediately after the shell burst is 1000.510074 m/s\n", - "(b) The distance between the firing point & the point where the second part of the shell hit the ground is 3000.000000 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "s=1000 # m # distance OB (ref fig.20.13)\n", - "h=19.6 # m # height of shell from ground\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# MOTION OF ENTIRE SHELL FROM O to A.\n", - "v_y=math.sqrt(2*(g)*h) # m/s # initial velocity of shell in vertical direction\n", - "t=v_y/g # seconds # time taken by the entire shell to reach point A\n", - "v_x=s/t # m/s # velocity of shell in vertical direction\n", - "# VELOCITIES OF THE TWO PARTS OF THE SHELL AFTER BURSTING AT A:\n", - "# Let v_x2 be the horizontal velocity of 1st & the 2nd part after bursting which is given as,\n", - "v_x2=v_x*2 # m/s\n", - "# Now distance BC travelled by part 2 is\n", - "BC=v_x2*t # m\n", - "# Distance from firing point OC\n", - "OC=s+BC # m\n", - "# Results\n", - "print('(a) The velocity of shell just before bursting is %f m/s'%v_x)\n", - "print('(b) The velocity of first part immediately after the shell burst is %f m/s'%v_x2)\n", - "print('(c) The velocity of second part immediately after the shell burst is %f m/s'%v_x2)\n", - "print('(b) The distance between the firing point & the point where the second part of the shell hit the ground is %f m'%OC)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 20.10 Motion of Projectile" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The range covered (i.e BC) is 7650.920998 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v_o=200 # m/s # initial velocity\n", - "theta=60 # degree # angle of the incline\n", - "y=5 # rise of incline\n", - "x=12 # length of incline\n", - "g=9.81 # m/s**2 # acc due to gravity\n", - "# Calculations\n", - "# The angle of the inclined plane with respect to horizontal\n", - "beta=math.degrees(math.atan(y/x)) # degree\n", - "# The angle of projection with respect to horizontal\n", - "alpha=90-theta # degree\n", - "# Range is given by eq'n (ref. fig.20.14)\n", - "AB=(2*v_o**2*(math.sin((alpha-beta)*math.pi/180))*math.cos(alpha*math.pi/180))/(g*(math.cos(beta*math.pi/180))**2) # m\n", - "# Range AC when the short is fired down the plane\n", - "AC=(2*v_o**2*(math.sin((alpha+beta)*math.pi/180))*math.cos(alpha*math.pi/180))/(g*(math.cos(beta*math.pi/180))**2) # m\n", - "BC=AB+AC # m\n", - "# Results\n", - "print('The range covered (i.e BC) is %f m'%BC)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_21_KINEMATICS_OF_RIGID_BODY_IxjgxTR.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_21_KINEMATICS_OF_RIGID_BODY_IxjgxTR.ipynb deleted file mode 100644 index 38c104c7..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_21_KINEMATICS_OF_RIGID_BODY_IxjgxTR.ipynb +++ /dev/null @@ -1,562 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 21 Kinematics of rigid body" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.1 Linear and angular velocity linear and angular acceleration in rotation" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The no of revolutions the unit turns to attain the rated speed is 75.000000\n", - "(b) The no of revolutions the unit turns to come to rest is 1350.000000\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "N=1800 # r.p.m # Speed of the shaft\n", - "t=5 # seconds # time taken to attain the rated speed # case (a)\n", - "T=90 # seconds # time taken by the unit to come to rest # case (b)\n", - "# Calculations\n", - "omega=(2*math.pi*N)/(60)\n", - "# (a)\n", - "# we take alpha_1,theta_1 & n_1 for case (a)\n", - "alpha_1=omega/t # rad/s**2 #\n", - "theta_1=(omega**2)/(2*alpha_1) # radian\n", - "# Let n_1 be the number of revolutions turned,\n", - "n_1=theta_1*(1/(2*math.pi))\n", - "# (b)\n", - "# similarly we take alpha_1,theta_1 & n_1 for case (b)\n", - "alpha_2=(omega/T) # rad/s**2 # However here alpha_2 is -ve\n", - "theta_2=(omega**2)/(2*alpha_2) # radians\n", - "# Let n_2 be the number of revolutions turned,\n", - "n_2=theta_2*(1/(2*math.pi))\n", - "# Results\n", - "print('(a) The no of revolutions the unit turns to attain the rated speed is %f'%n_1)\n", - "print('(b) The no of revolutions the unit turns to come to rest is %f'%n_2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.2 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of point E is 28.284271 m/s\n", - "The velocity of point F is 40.000000 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "r=1 # m # radius of the cylinder\n", - "v_c=20 # m/s # velocity of the cylinder at its centre\n", - "# Calculations\n", - "# The velocity of point E is given by using the triangle law as,\n", - "v_e=math.sqrt(2)*v_c # m/s \n", - "# Similarly the velocity at point F is given as,\n", - "v_f=2*v_c # m/s \n", - "# Results\n", - "print('The velocity of point E is %f m/s'%v_e)\n", - "print('The velocity of point F is %f m/s'%v_f)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.3 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The linear velocity (v_c) at point C is 2.500000 m/s\n", - "The angular velocity at point C is 1.250000 radian/seconds\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of Variables\n", - "v_1=3 # m/s # uniform speed of the belt at top\n", - "v_2=2 # m/s # uniform speed of the belt at the bottom\n", - "r=0.4 # m # radius of the roller\n", - "# Calculations\n", - "# equating eq'ns 2 & 4 and solving for v_c & theta' (angular velocity). We use matrix to solve the eqn's\n", - "A=numpy.matrix([[1,r],[1,-r]])\n", - "B=numpy.matrix([[v_1],[v_2]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Results\n", - "print('The linear velocity (v_c) at point C is %f m/s'%C[0])\n", - "print('The angular velocity at point C is %f radian/seconds'%C[1])\n", - "# The answer of angular velocity is incorrect in the book" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.4 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The angular velocity of the bar is 10.000000 radian/second\n", - "(b) The velocity of end B is 8.660254 m/s\n", - "(c) The velocity of mid point C is 5.000000 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of Variables\n", - "l=1 # m # length of bar AB\n", - "v_a=5 # m/s # velocity of A\n", - "theta=30 # degree # angle made by the bar with the horizontal\n", - "# Calculations\n", - "# From the vector diagram linear velocity of end B is given as,\n", - "v_b=v_a/math.tan(theta*math.pi/180) # m/s \n", - "# Now let the relative velocity be v_ba which is given as,\n", - "v_ba=v_a/math.sin(theta*math.pi/180) # m/s\n", - "# Now let the angular velocity of the bar be theta_a which is given as,\n", - "theta_a=(v_ba)/l # radian/second\n", - "# Velocity of point A\n", - "v_a=(l/2)*theta_a # m/s\n", - "# Magnitude of velocity at point C is,\n", - "v_c=v_a # m/s # from the vector diagram\n", - "# Results\n", - "print('(a) The angular velocity of the bar is %f radian/second'%theta_a)\n", - "print('(b) The velocity of end B is %f m/s'%v_b)\n", - "print('(c) The velocity of mid point C is %f m/s'%v_c)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.5 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The angular velocity of the connecting rod is 5.468436 radian/second\n", - "(b) The velocity of the piston when the crank makes an angle of 30 degree is 2.210830 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of Variables\n", - "r=0.12 # m # length of the crank\n", - "l=0.6 # m # length of the connecting rod\n", - "N=300 # r.p.m # angular velocity of the crank\n", - "theta=30 # degree # angle made by the crank with the horizontal\n", - "# Calculations\n", - "# Now let the angle between the connecting rod and the horizontal rod be phi\n", - "phi=math.asin(((r*math.sin(theta*math.pi/180))/(l))*math.pi/180) # degree\n", - "# Now let the angular velocity of crank OA be omega_oa, which is given by eq'n\n", - "omega_oa=(2*math.pi*N)/(60) # radian/second\n", - "# Linear velocity at A is given as,\n", - "v_a=r*omega_oa # m/s\n", - "# Now using the sine rule linear velocity at B can be given as,\n", - "v_b=(v_a*math.sin(35.7*math.pi/180))/(math.sin(84.3*math.pi/180)) # m/s\n", - "# Similarly the relative velocity (assume v_ba) is given as,\n", - "v_ba=(v_a*math.sin(60*math.pi/180))/(math.sin(84.3*math.pi/180))\n", - "# Angular velocity (omega_ab) is given as,\n", - "omega_ab=v_ba/l # radian/second\n", - "# Results\n", - "print('(a) The angular velocity of the connecting rod is %f radian/second'%omega_ab)\n", - "print('(b) The velocity of the piston when the crank makes an angle of 30 degree is %f m/s'%v_b)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.6 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at point D is 28.284271 m/s\n", - "The velocity at point E is 40.000000 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initiization of variables\n", - "r=1 # m # radius of the cylinder\n", - "v_c=20 # m/s # velocity at the centre\n", - "# Calculations\n", - "# Angular velocity is given as,\n", - "omega=v_c/r # radian/second\n", - "# Velocity at point D is\n", - "v_d=omega*math.sqrt(2)*r # m/s # from eq'n 1\n", - "# Now, the velocity at point E is,\n", - "v_e=omega*2*r # m/s \n", - "# Results\n", - "print('The velocity at point D is %f m/s'%v_d)\n", - "print('The velocity at point E is %f m/s'%v_e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.7 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance d when the bars move in the opposite directions are 4.000000 cm\n", - "The distance d when the bars move in the same directions are 20.000000 cm\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of Variables\n", - "r=5 # cm # radius of the roller\n", - "AB=0.1 # m\n", - "v_a=3 # m/s # velocity at A\n", - "v_b=2 # m/s # velocity at B\n", - "# Calculations\n", - "# Solving eqn's 1 & 2 using matrix for IA & IB we get,\n", - "A=([[-2,3],[1,1]])\n", - "B=numpy.matrix([[0],[AB]])\n", - "C=numpy.linalg.inv(A)*B\n", - "d1=C[1]*10**2 # cm # assume d1 for case 1\n", - "# Similary solving eqn's 3 & 4 again for IA & IB we get,\n", - "P=numpy.matrix([[-v_b,v_a],[1,-1]])\n", - "Q=numpy.matrix([[0],[AB]])\n", - "R=numpy.linalg.inv(P)*Q\n", - "d2=R[1]*10**2 # cm # assume d2 for case 2\n", - "# Results\n", - "print('The distance d when the bars move in the opposite directions are %f cm'%d1)\n", - "print('The distance d when the bars move in the same directions are %f cm'%d2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.8 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at point A is 3.000000 m/s\n", - "The velocity at point B is 1.000000 m/s\n", - "The velocity at point D is 2.236068 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of Variables\n", - "v_c=1 # m/s # velocity t the centre\n", - "r1=0.1 # m \n", - "r2=0.20 # m\n", - "EB=0.1 # m\n", - "EA=0.3 # m\n", - "ED=math.sqrt(r1**2+r2**2) # m\n", - "# Calculations\n", - "# angular velocity is given as,\n", - "omega=v_c/r1 # radian/seconds\n", - "# Velocit at point B\n", - "v_b=omega*EB # m/s \n", - "# Velocity at point A\n", - "v_a=omega*EA # m/s\n", - "# Velocity at point D\n", - "v_d=omega*ED # m/s\n", - "# Results\n", - "print('The velocity at point A is %f m/s'%v_a)\n", - "print('The velocity at point B is %f m/s'%v_b)\n", - "print('The velocity at point D is %f m/s'%v_d)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.9 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at point B is 8.660254 m/s\n", - "The velocity at point C is 5.000000 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "l=1 # m # length of bar AB\n", - "v_a=5 # m/s # velocity at A\n", - "theta=30 # degree # angle made by the bar with the horizontal\n", - "# Calculations\n", - "IA=l*math.sin(theta*math.pi/180) # m\n", - "IB=l*math.cos(theta*math.pi/180) # m\n", - "IC=0.5 # m # from triangle IAC\n", - "# Angular veocity is given as,\n", - "omega=v_a/(IA) # radian/second\n", - "v_b=omega*IB # m/s\n", - "v_c=omega*IC # m/s\n", - "# Results\n", - "print('The velocity at point B is %f m/s'%v_b)\n", - "print('The velocity at point C is %f m/s'%v_c)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.11 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The anguar veocity of the bar is 11.547005 radian/second\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "v_a=2 # m/s # velocity at end A\n", - "r=0.05 # m # radius of the disc\n", - "alpha=30 # degree # angle made by the bar with the horizontal\n", - "# Calculations \n", - "# Soving eqn's 1 & 2 and substuting eqn 1 in it we get eq'n for omega as,\n", - "omega=(v_a*(math.sin(alpha*math.pi/180))**2)/(r*math.cos(alpha*math.pi/180)) # radian/second\n", - "# Results\n", - "print('The anguar veocity of the bar is %f radian/second'%omega)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.12 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at B is 2.213062 m/s\n", - "The angular velocity of the connecting rod is 5.468436 radian/second\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "l=0.6 # m \n", - "r=0.12 # m \n", - "theta=30 # degree # angle made by OA with the horizontal\n", - "phi=5.7 # degree # from EX 21.5\n", - "N=300\n", - "# Calculations\n", - "# Let the angular velocity of the connecting rod be (omega_ab) which is given from eqn's 1 & 4 as,\n", - "omega_oa=(2*math.pi*N)/(60) # radian/ second\n", - "# Now,in triangle IBO.\n", - "IB=(l*math.cos(phi*math.pi/180)*math.tan(theta*math.pi/180))+(r*math.sin(theta*math.pi/180)) # m\n", - "IA=(l*math.cos(phi*math.pi/180))/(math.cos(theta*math.pi/180)) # m\n", - "# from eq'n 5\n", - "v_b=(r*omega_oa*IB)/(IA) # m/s\n", - "# From eq'n 6\n", - "omega_ab=(r*omega_oa)/(IA) # radian/second\n", - "# Results\n", - "print('The velocity at B is %f m/s'%v_b)\n", - "print('The angular velocity of the connecting rod is %f radian/second'%omega_ab)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.13 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angular velocity of bar BC is 7.698004 rad/s\n", - "The angular velocity of bar CD is 1.924501 rad/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "omega_ab=5 # rad/s # angular veocity of the bar\n", - "AB=0.20 # m\n", - "BC=0.15 # m\n", - "CD=0.3 # m\n", - "theta=30 # degree # where theta= angle made by AB with the horizontal\n", - "alpha=60 # degree # where alpha=angle made by CD with the horizontal\n", - "# Calculations\n", - "# Consider triangle BIC\n", - "IB=math.sin(alpha*math.pi/180)*BC*1 # m\n", - "IC=math.sin(theta*math.pi/180)*BC*1 # m\n", - "v_b=omega_ab*AB # m/s\n", - "# let the angular velocity of the bar BC be omega_bc\n", - "omega_bc=v_b/IB # radian/second\n", - "v_c=omega_bc*IC # m/s\n", - "# let the angular velocity of bar DC be omega_dc\n", - "omega_dc=v_c/CD # radian/second\n", - "# Results\n", - "print('The angular velocity of bar BC is %f rad/s'%omega_bc)\n", - "print('The angular velocity of bar CD is %f rad/s'%omega_dc)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_21_KINEMATICS_OF_RIGID_BODY_Yly6sCP.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_21_KINEMATICS_OF_RIGID_BODY_Yly6sCP.ipynb deleted file mode 100644 index accd2431..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_21_KINEMATICS_OF_RIGID_BODY_Yly6sCP.ipynb +++ /dev/null @@ -1,552 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 21 Kinematics of rigid body" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.1 Linear and angular velocity linear and angular acceleration in rotation" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The no of revolutions the unit turns to attain the rated speed is 75.000000\n", - "(b) The no of revolutions the unit turns to come to rest is 1350.000000\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "N=1800 # r.p.m # Speed of the shaft\n", - "t=5 # seconds # time taken to attain the rated speed # case (a)\n", - "T=90 # seconds # time taken by the unit to come to rest # case (b)\n", - "# Calculations\n", - "omega=(2*math.pi*N)/(60)\n", - "# (a)\n", - "# we take alpha_1,theta_1 & n_1 for case (a)\n", - "alpha_1=omega/t # rad/s**2 #\n", - "theta_1=(omega**2)/(2*alpha_1) # radian\n", - "# Let n_1 be the number of revolutions turned,\n", - "n_1=theta_1*(1/(2*math.pi))\n", - "# (b)\n", - "# similarly we take alpha_1,theta_1 & n_1 for case (b)\n", - "alpha_2=(omega/T) # rad/s**2 # However here alpha_2 is -ve\n", - "theta_2=(omega**2)/(2*alpha_2) # radians\n", - "# Let n_2 be the number of revolutions turned,\n", - "n_2=theta_2*(1/(2*math.pi))\n", - "# Results\n", - "print('(a) The no of revolutions the unit turns to attain the rated speed is %f'%n_1)\n", - "print('(b) The no of revolutions the unit turns to come to rest is %f'%n_2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.2 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity of point E is 28.284271 m/s\n", - "The velocity of point F is 40.000000 m/s\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "r=1 # m # radius of the cylinder\n", - "v_c=20 # m/s # velocity of the cylinder at its centre\n", - "# Calculations\n", - "# The velocity of point E is given by using the triangle law as,\n", - "v_e=math.sqrt(2)*v_c # m/s \n", - "# Similarly the velocity at point F is given as,\n", - "v_f=2*v_c # m/s \n", - "# Results\n", - "print('The velocity of point E is %f m/s'%v_e)\n", - "print('The velocity of point F is %f m/s'%v_f)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.3 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The linear velocity (v_c) at point C is 2.500000 m/s\n", - "The angular velocity at point C is 1.250000 radian/seconds\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of Variables\n", - "v_1=3 # m/s # uniform speed of the belt at top\n", - "v_2=2 # m/s # uniform speed of the belt at the bottom\n", - "r=0.4 # m # radius of the roller\n", - "# Calculations\n", - "# equating eq'ns 2 & 4 and solving for v_c & theta' (angular velocity). We use matrix to solve the eqn's\n", - "A=numpy.matrix([[1,r],[1,-r]])\n", - "B=numpy.matrix([[v_1],[v_2]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Results\n", - "print('The linear velocity (v_c) at point C is %f m/s'%C[0])\n", - "print('The angular velocity at point C is %f radian/seconds'%C[1])\n", - "# The answer of angular velocity is incorrect in the book" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.4 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The angular velocity of the bar is 10.000000 radian/second\n", - "(b) The velocity of end B is 8.660254 m/s\n", - "(c) The velocity of mid point C is 5.000000 m/s\n" - ] - } - ], - "source": [ - "# Initilization of Variables\n", - "l=1 # m # length of bar AB\n", - "v_a=5 # m/s # velocity of A\n", - "theta=30 # degree # angle made by the bar with the horizontal\n", - "# Calculations\n", - "# From the vector diagram linear velocity of end B is given as,\n", - "v_b=v_a/math.tan(theta*math.pi/180) # m/s \n", - "# Now let the relative velocity be v_ba which is given as,\n", - "v_ba=v_a/math.sin(theta*math.pi/180) # m/s\n", - "# Now let the angular velocity of the bar be theta_a which is given as,\n", - "theta_a=(v_ba)/l # radian/second\n", - "# Velocity of point A\n", - "v_a=(l/2)*theta_a # m/s\n", - "# Magnitude of velocity at point C is,\n", - "v_c=v_a # m/s # from the vector diagram\n", - "# Results\n", - "print('(a) The angular velocity of the bar is %f radian/second'%theta_a)\n", - "print('(b) The velocity of end B is %f m/s'%v_b)\n", - "print('(c) The velocity of mid point C is %f m/s'%v_c)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.5 Absolute and relative velocity in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The angular velocity of the connecting rod is 5.468436 radian/second\n", - "(b) The velocity of the piston when the crank makes an angle of 30 degree is 2.210830 m/s\n" - ] - } - ], - "source": [ - "# Initilization of Variables\n", - "r=0.12 # m # length of the crank\n", - "l=0.6 # m # length of the connecting rod\n", - "N=300 # r.p.m # angular velocity of the crank\n", - "theta=30 # degree # angle made by the crank with the horizontal\n", - "# Calculations\n", - "# Now let the angle between the connecting rod and the horizontal rod be phi\n", - "phi=math.asin(((r*math.sin(theta*math.pi/180))/(l))*math.pi/180) # degree\n", - "# Now let the angular velocity of crank OA be omega_oa, which is given by eq'n\n", - "omega_oa=(2*math.pi*N)/(60) # radian/second\n", - "# Linear velocity at A is given as,\n", - "v_a=r*omega_oa # m/s\n", - "# Now using the sine rule linear velocity at B can be given as,\n", - "v_b=(v_a*math.sin(35.7*math.pi/180))/(math.sin(84.3*math.pi/180)) # m/s\n", - "# Similarly the relative velocity (assume v_ba) is given as,\n", - "v_ba=(v_a*math.sin(60*math.pi/180))/(math.sin(84.3*math.pi/180))\n", - "# Angular velocity (omega_ab) is given as,\n", - "omega_ab=v_ba/l # radian/second\n", - "# Results\n", - "print('(a) The angular velocity of the connecting rod is %f radian/second'%omega_ab)\n", - "print('(b) The velocity of the piston when the crank makes an angle of 30 degree is %f m/s'%v_b)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.6 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at point D is 28.284271 m/s\n", - "The velocity at point E is 40.000000 m/s\n" - ] - } - ], - "source": [ - "# Initiization of variables\n", - "r=1 # m # radius of the cylinder\n", - "v_c=20 # m/s # velocity at the centre\n", - "# Calculations\n", - "# Angular velocity is given as,\n", - "omega=v_c/r # radian/second\n", - "# Velocity at point D is\n", - "v_d=omega*math.sqrt(2)*r # m/s # from eq'n 1\n", - "# Now, the velocity at point E is,\n", - "v_e=omega*2*r # m/s \n", - "# Results\n", - "print('The velocity at point D is %f m/s'%v_d)\n", - "print('The velocity at point E is %f m/s'%v_e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.7 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance d when the bars move in the opposite directions are 4.000000 cm\n", - "The distance d when the bars move in the same directions are 20.000000 cm\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of Variables\n", - "r=5 # cm # radius of the roller\n", - "AB=0.1 # m\n", - "v_a=3 # m/s # velocity at A\n", - "v_b=2 # m/s # velocity at B\n", - "# Calculations\n", - "# Solving eqn's 1 & 2 using matrix for IA & IB we get,\n", - "A=([[-2,3],[1,1]])\n", - "B=numpy.matrix([[0],[AB]])\n", - "C=numpy.linalg.inv(A)*B\n", - "d1=C[1]*10**2 # cm # assume d1 for case 1\n", - "# Similary solving eqn's 3 & 4 again for IA & IB we get,\n", - "P=numpy.matrix([[-v_b,v_a],[1,-1]])\n", - "Q=numpy.matrix([[0],[AB]])\n", - "R=numpy.linalg.inv(P)*Q\n", - "d2=R[1]*10**2 # cm # assume d2 for case 2\n", - "# Results\n", - "print('The distance d when the bars move in the opposite directions are %f cm'%d1)\n", - "print('The distance d when the bars move in the same directions are %f cm'%d2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.8 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at point A is 3.000000 m/s\n", - "The velocity at point B is 1.000000 m/s\n", - "The velocity at point D is 2.236068 m/s\n" - ] - } - ], - "source": [ - "# Initilization of Variables\n", - "v_c=1 # m/s # velocity t the centre\n", - "r1=0.1 # m \n", - "r2=0.20 # m\n", - "EB=0.1 # m\n", - "EA=0.3 # m\n", - "ED=math.sqrt(r1**2+r2**2) # m\n", - "# Calculations\n", - "# angular velocity is given as,\n", - "omega=v_c/r1 # radian/seconds\n", - "# Velocit at point B\n", - "v_b=omega*EB # m/s \n", - "# Velocity at point A\n", - "v_a=omega*EA # m/s\n", - "# Velocity at point D\n", - "v_d=omega*ED # m/s\n", - "# Results\n", - "print('The velocity at point A is %f m/s'%v_a)\n", - "print('The velocity at point B is %f m/s'%v_b)\n", - "print('The velocity at point D is %f m/s'%v_d)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.9 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at point B is 8.660254 m/s\n", - "The velocity at point C is 5.000000 m/s\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "l=1 # m # length of bar AB\n", - "v_a=5 # m/s # velocity at A\n", - "theta=30 # degree # angle made by the bar with the horizontal\n", - "# Calculations\n", - "IA=l*math.sin(theta*math.pi/180) # m\n", - "IB=l*math.cos(theta*math.pi/180) # m\n", - "IC=0.5 # m # from triangle IAC\n", - "# Angular veocity is given as,\n", - "omega=v_a/(IA) # radian/second\n", - "v_b=omega*IB # m/s\n", - "v_c=omega*IC # m/s\n", - "# Results\n", - "print('The velocity at point B is %f m/s'%v_b)\n", - "print('The velocity at point C is %f m/s'%v_c)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.11 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The anguar veocity of the bar is 11.547005 radian/second\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "v_a=2 # m/s # velocity at end A\n", - "r=0.05 # m # radius of the disc\n", - "alpha=30 # degree # angle made by the bar with the horizontal\n", - "# Calculations \n", - "# Soving eqn's 1 & 2 and substuting eqn 1 in it we get eq'n for omega as,\n", - "omega=(v_a*(math.sin(alpha*math.pi/180))**2)/(r*math.cos(alpha*math.pi/180)) # radian/second\n", - "# Results\n", - "print('The anguar veocity of the bar is %f radian/second'%omega)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.12 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The velocity at B is 2.213062 m/s\n", - "The angular velocity of the connecting rod is 5.468436 radian/second\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "l=0.6 # m \n", - "r=0.12 # m \n", - "theta=30 # degree # angle made by OA with the horizontal\n", - "phi=5.7 # degree # from EX 21.5\n", - "N=300\n", - "# Calculations\n", - "# Let the angular velocity of the connecting rod be (omega_ab) which is given from eqn's 1 & 4 as,\n", - "omega_oa=(2*math.pi*N)/(60) # radian/ second\n", - "# Now,in triangle IBO.\n", - "IB=(l*math.cos(phi*math.pi/180)*math.tan(theta*math.pi/180))+(r*math.sin(theta*math.pi/180)) # m\n", - "IA=(l*math.cos(phi*math.pi/180))/(math.cos(theta*math.pi/180)) # m\n", - "# from eq'n 5\n", - "v_b=(r*omega_oa*IB)/(IA) # m/s\n", - "# From eq'n 6\n", - "omega_ab=(r*omega_oa)/(IA) # radian/second\n", - "# Results\n", - "print('The velocity at B is %f m/s'%v_b)\n", - "print('The angular velocity of the connecting rod is %f radian/second'%omega_ab)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 21.13 Instantaneous Centre of rotation in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angular velocity of bar BC is 7.698004 rad/s\n", - "The angular velocity of bar CD is 1.924501 rad/s\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "omega_ab=5 # rad/s # angular veocity of the bar\n", - "AB=0.20 # m\n", - "BC=0.15 # m\n", - "CD=0.3 # m\n", - "theta=30 # degree # where theta= angle made by AB with the horizontal\n", - "alpha=60 # degree # where alpha=angle made by CD with the horizontal\n", - "# Calculations\n", - "# Consider triangle BIC\n", - "IB=math.sin(alpha*math.pi/180)*BC*1 # m\n", - "IC=math.sin(theta*math.pi/180)*BC*1 # m\n", - "v_b=omega_ab*AB # m/s\n", - "# let the angular velocity of the bar BC be omega_bc\n", - "omega_bc=v_b/IB # radian/second\n", - "v_c=omega_bc*IC # m/s\n", - "# let the angular velocity of bar DC be omega_dc\n", - "omega_dc=v_c/CD # radian/second\n", - "# Results\n", - "print('The angular velocity of bar BC is %f rad/s'%omega_bc)\n", - "print('The angular velocity of bar CD is %f rad/s'%omega_dc)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCELERATION.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND.ipynb index 82335095..82335095 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCELERATION.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCEL_YHMemAD.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCEL.ipynb index 82335095..82335095 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCEL_YHMemAD.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCEL.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCEL_DFYGpm1.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCEL_DFYGpm1.ipynb deleted file mode 100644 index ada38458..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_22_KINETICS_OF_RIGID_BODY_FORCE_AND_ACCEL_DFYGpm1.ipynb +++ /dev/null @@ -1,244 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 22 Kinetics of Rigid Body Force and Acceleration" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 22.1 Relation between the translatory motion and rotary motion of a body in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The no of revolutions executed by the disc before coming to rest is 1500\n", - "(b) The frictional torque is -5.003811 N-m\n" - ] - } - ], - "source": [ - "import math\n", - "#Initialization of variables\n", - "N=1500 # r.p.m\n", - "r=0.5 # m , radius of the disc\n", - "m=300 # N , weight of the disc\n", - "t=120 #seconds , time in which the disc comes to rest\n", - "omega=0 \n", - "g=9.81 #m/s**2\n", - "#Calculations\n", - "omega_0=(2*math.pi*N)/60 #rad/s\n", - "#angular deceleration is given as,\n", - "alpha=-(omega_0/t) #radian/second**2\n", - "theta=(omega_0**2)/(2*(-alpha)) #radian\n", - "#Let n be the no of revolutions taken by the disc before it comes to rest, then\n", - "n=theta/(2*math.pi)\n", - "#Now,\n", - "I_G=((1/2)*m*r**2)/g\n", - "#The frictional torque is given as,\n", - "M=I_G*alpha #N-m\n", - "#Results\n", - "print('(a) The no of revolutions executed by the disc before coming to rest is %d'%n)\n", - "print('(b) The frictional torque is %f N-m'%M)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 22.2 Relation between the translatory motion and rotary motion of a body in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The acceleration at the centre is 4.896389 m/s**2\n", - "(b) The maximum angle of the inclined plane is 29.941943 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "s=1 # m\n", - "mu=0.192 # coefficient of static friction\n", - "g=9.81 # m/s**2\n", - "# Calculations\n", - "# The maximum angle of the inclined plane is given as,\n", - "theta=math.degrees(math.atan(3*mu)) # degree\n", - "a=(2/3)*g*math.sin(theta*180/math.pi) # m/s**2 # by solving eq'n 4\n", - "v=math.sqrt(2*a*s) # m/s\n", - "# Let the acceleration at the centre be A which is given as,\n", - "A=g*math.sin(theta*math.pi/180) # m/s**2 # from eq'n 1\n", - "# Results\n", - "print('(a) The acceleration at the centre is %f m/s**2'%A)\n", - "print('(b) The maximum angle of the inclined plane is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 22.5 Relation between the translatory motion and rotary motion of a body in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of weight A is 1.081102 m/s**2\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W_a=25 # N \n", - "W_b=25 # N \n", - "W=200 # N # weight of the pulley\n", - "i_g=0.2 # m # radius of gyration\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "# Solving eqn's 1 & 2 for acceleration of weight A (assume a)\n", - "a=(0.15*W_a*g)/(((W*i_g**2)/(0.45))+(0.45*W_a)+((0.6*W_b)/(3))) # m/s^2\n", - "# Results\n", - "print('The acceleration of weight A is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 22.8 Relation between the translatory motion and rotary motion of a body in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The acceleration of the pool is 1.615819 m/s**2\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "r_1=0.075 # m\n", - "r_2=0.15 # m\n", - "P=50 # N\n", - "W=100 # N\n", - "i_g=0.05 # m\n", - "theta=30 # degree\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "# The eq'n for acceleration of the pool is given by solving eqn's 1,2 &3 as,\n", - "a=(50*g*(r_2*math.cos(theta*math.pi/180)-r_1))/(100*((i_g**2/r_2)+r_2)) # m/s**2\n", - "# Results\n", - "print('The acceleration of the pool is %f m/s**2'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 22.10 Relation between the translatory motion and rotary motion of a body in plane motion" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The angular velocity of the rod is 4.101219 rad/sec\n", - "(b) The reaction at the hinge is 103.227964 N\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "L=1 # m # length of rod AB\n", - "m=10 # kg # mass of the rod\n", - "g=9.81 \n", - "theta=30 # degree\n", - "# Calculations\n", - "# solving eq'n 4 for omega we get,\n", - "omega=math.sqrt(2*16.82*math.sin(theta*math.pi/180)) # rad/s\n", - "# Now solving eq'ns 1 &3 for alpha we get,\n", - "alpha=(12/7)*g*math.cos(theta*math.pi/180) # rad/s\n", - "# Components of reaction are given as,\n", - "R_t=((m*g*math.cos(theta*math.pi/180))-((m*alpha*L)/4)) # N\n", - "R_n=((m*omega**2*L)/(4))+(m*g*math.sin(theta*math.pi/180)) # N\n", - "R=math.sqrt(R_t**2+R_n**2) # N \n", - "# Results\n", - "print('(a) The angular velocity of the rod is %f rad/sec'%omega)\n", - "print('(b) The reaction at the hinge is %f N'%R)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_23_KINETICS_OF_RIGID_BODY_WORK_AND_ENERGY_3P2GRwN.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_23_KINETICS_OF_RIGID_BODY_WORK_AND_ENERGY_3P2GRwN.ipynb deleted file mode 100644 index 0ef19ff6..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_23_KINETICS_OF_RIGID_BODY_WORK_AND_ENERGY_3P2GRwN.ipynb +++ /dev/null @@ -1,73 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 23 Kinetics of Rigid Body Work and Energy" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 23.2 Principle of work and energy for a rigid body" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance required to be rolled is 5.501808 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m=600 # kg # mass of the roller\n", - "r=0.25 # m # radius of the roller\n", - "P=850 # N # Force\n", - "v=3 # m/s # velocity to be acquired\n", - "theta=30 # degree # angle made by v with the force P\n", - "# Calculations\n", - "# The distance required to be rolled is given by equating the Work done between positions 1 & 2 as,\n", - "x=((3/4)*m*v**2)/(P*math.cos(theta*math.pi/180)) # m\n", - "# Results\n", - "print('The distance required to be rolled is %f m'%x)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_23_KINETICS_OF_RIGID_BODY_WORK_AND_ENERGY_9z15l6b.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_23_KINETICS_OF_RIGID_BODY_WORK_AND_ENERGY_9z15l6b.ipynb deleted file mode 100644 index 0ef19ff6..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_23_KINETICS_OF_RIGID_BODY_WORK_AND_ENERGY_9z15l6b.ipynb +++ /dev/null @@ -1,73 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 23 Kinetics of Rigid Body Work and Energy" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 23.2 Principle of work and energy for a rigid body" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The distance required to be rolled is 5.501808 m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m=600 # kg # mass of the roller\n", - "r=0.25 # m # radius of the roller\n", - "P=850 # N # Force\n", - "v=3 # m/s # velocity to be acquired\n", - "theta=30 # degree # angle made by v with the force P\n", - "# Calculations\n", - "# The distance required to be rolled is given by equating the Work done between positions 1 & 2 as,\n", - "x=((3/4)*m*v**2)/(P*math.cos(theta*math.pi/180)) # m\n", - "# Results\n", - "print('The distance required to be rolled is %f m'%x)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_24_MECHANICAL_VIBRATIONS_LVW8AS0.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_24_MECHANICAL_VIBRATIONS_LVW8AS0.ipynb deleted file mode 100644 index 5daf12ec..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_24_MECHANICAL_VIBRATIONS_LVW8AS0.ipynb +++ /dev/null @@ -1,295 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 24 Mechanical Vibrations" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.1 Simple Harmonic Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The amplitude of oscillation is 10 cm\n", - "(b) The maximum acceleration is 10.966227 cm/s**2\n", - "(c) The velocity of the particle at 5 cm from mean position is 9.068997 cm/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "f=1/6 # oscillations/second\n", - "x=8 # cm # distance from the mean position\n", - "# Calculations\n", - "omega=2*math.pi*f\n", - "# Amplitude is given by eq'n \n", - "r=math.sqrt((25*x**2)/16) # cm\n", - "# Maximum acceleration is given as,\n", - "a_max=(math.pi/3)**2*10 # cm/s^2\n", - "# Velocity when it is at a dist of 5 cm (assume s=5 cm) is given by\n", - "s=5 # cm\n", - "v=omega*math.sqrt(r**2-s**2) # cm/s\n", - "# Results\n", - "print('(a) The amplitude of oscillation is %d cm'%r)\n", - "print('(b) The maximum acceleration is %f cm/s**2'%a_max)\n", - "print('(c) The velocity of the particle at 5 cm from mean position is %f cm/s'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.2 Simple Harmonic Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The amplitude of oscillations is 0.252982 m\n", - "(b) The time period of oscillations is 1.216734 seconds\n", - "(c) The maximum velocity is 1.306395 m/s\n", - "(d) The maximum acceleration is 6.746192 m/s**2\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "x_1=0.1 # m # assume the distance of the particle from mean position as (x_1 & x_2)\n", - "x_2=0.2# m \n", - "# assume velocities as v_1 & v_2\n", - "v_1=1.2 # m/s\n", - "v_2=0.8 # m/s\n", - "# Calculations\n", - "# The amplitude of oscillations is given by dividing eq'n 1 by 2 as,\n", - "r=math.sqrt(0.32/5) # m\n", - "omega=v_1/(math.sqrt(r**2-x_1**2)) # radians/second\n", - "t=(2*math.pi)/omega # seconds\n", - "v_max=r*omega # m/s\n", - "# let the max acceleration be a which is given as,\n", - "a=r*omega**2 # m/s**2 \n", - "# Results\n", - "print('(a) The amplitude of oscillations is %f m'%r)\n", - "print('(b) The time period of oscillations is %f seconds'%t)\n", - "print('(c) The maximum velocity is %f m/s'%v_max)\n", - "print('(d) The maximum acceleration is %f m/s**2'%a) # the value of max acc is incorrect in the textbook\n", - "# NOTE: the value of t is incorrect in the text book\n", - "# The values may differ slightly due to decimal point accuracy" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.5 Equivalent spring constant" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The stiffness of the spring is 2.012152 N/cm\n", - "(b) The maximum Tension in the spring is 65.091138 N\n", - "(c) The maximum velocity is 0.471239 m/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variabes\n", - "W=50 # N # weight\n", - "x_0=0.075 # m # amplitude\n", - "f=1 # oscillation/sec # frequency\n", - "g=9.81 \n", - "# Calculations\n", - "omega=2*math.pi*f\n", - "K=(((2*math.pi)**2*W)/g)*(10**-2) # N/cm\n", - "# let the total extension of the string be delta which is given as,\n", - "delta=(W/K)+(x_0*10**2) # cm\n", - "T=K*delta # N # Max Tension\n", - "v=omega*x_0 #m/s # max velocity\n", - "# Results\n", - "print('(a) The stiffness of the spring is %f N/cm'%K)\n", - "print('(b) The maximum Tension in the spring is %f N'%T)\n", - "print('(c) The maximum velocity is %f m/s'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.10 Pendulum Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time period of oscillation of the pendulum for upward acc of the elevator is 1.912710 seconds\n", - "The time period of oscillation of the pendulum for downward acc of the elevator is 2.114580 seconds\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "l=1 # m # length of the simple pendulum\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "# Let t_s be the time period when the elevator is stationary\n", - "t_s=2*math.pi*math.sqrt(l/g) #/ seconds\n", - "# Let t_u be the time period when the elevator moves upwards. Then from eqn 1\n", - "t_u=2*math.pi*math.sqrt((l)/(g+(g/10))) # seconds\n", - "# Let t_d be the time period when the elevator moves downwards.\n", - "t_d=2*math.pi*math.sqrt(l/(g-(g/10))) # seconds\n", - "# Results\n", - "print('The time period of oscillation of the pendulum for upward acc of the elevator is %f seconds'%t_u)\n", - "print('The time period of oscillation of the pendulum for downward acc of the elevator is %f seconds'%t_d)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.11 Pendulum Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time period of oscillation of the pendulum for upward acc of the elevator is 0.953463 seconds\n", - "The time period of oscillation of the pendulum for downward acc of the elevator is 1.054093 seconds\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "t=1 # second # time period of the simple pendulum\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "# Length of pendulum is given as,\n", - "l=(t/(2*math.pi)**2)*g # m\n", - "# Let t_u be the time period when the elevator moves upwards. Then the time period is given as,\n", - "t_u=2*math.pi*math.sqrt((l)/(g+(g/10))) # seconds\n", - "# Let t_d be the time period when the elevator moves downwards.\n", - "t_d=2*math.pi*math.sqrt(l/(g-(g/10))) # seconds\n", - "# Results\n", - "print('The time period of oscillation of the pendulum for upward acc of the elevator is %f seconds'%t_u)\n", - "print('The time period of oscillation of the pendulum for downward acc of the elevator is %f seconds'%t_d)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.12 Pendulum Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time period of oscillations of the disc is 0.475599 seconds\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "m=15 # kg # mass of the disc\n", - "D=0.3 # m # diameter of the disc\n", - "R=0.15 # m # radius\n", - "l=1 # m # length of the shaft\n", - "d=0.01 # m # diameter of the shaft\n", - "G=30*10**9 # N-m**2 # modulus of rigidity\n", - "# Calculations\n", - "# M.I of the disc about the axis of rotation is given as,\n", - "I=(m*R**2)/2 # kg-m**2\n", - "# Stiffness of the shaft\n", - "k_t=(math.pi*d**4*G)/(32*l) # N-m/radian\n", - "t=2*math.pi*math.sqrt(I/k_t) # seconds\n", - "# Results\n", - "print('The time period of oscillations of the disc is %f seconds'%t)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_24_MECHANICAL_VIBRATIONS_jsYsvsW.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_24_MECHANICAL_VIBRATIONS_jsYsvsW.ipynb deleted file mode 100644 index d1bf8b67..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_24_MECHANICAL_VIBRATIONS_jsYsvsW.ipynb +++ /dev/null @@ -1,290 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 24 Mechanical Vibrations" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.1 Simple Harmonic Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The amplitude of oscillation is 10 cm\n", - "(b) The maximum acceleration is 10.966227 cm/s**2\n", - "(c) The velocity of the particle at 5 cm from mean position is 9.068997 cm/s\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "f=1/6 # oscillations/second\n", - "x=8 # cm # distance from the mean position\n", - "# Calculations\n", - "omega=2*math.pi*f\n", - "# Amplitude is given by eq'n \n", - "r=math.sqrt((25*x**2)/16) # cm\n", - "# Maximum acceleration is given as,\n", - "a_max=(math.pi/3)**2*10 # cm/s^2\n", - "# Velocity when it is at a dist of 5 cm (assume s=5 cm) is given by\n", - "s=5 # cm\n", - "v=omega*math.sqrt(r**2-s**2) # cm/s\n", - "# Results\n", - "print('(a) The amplitude of oscillation is %d cm'%r)\n", - "print('(b) The maximum acceleration is %f cm/s**2'%a_max)\n", - "print('(c) The velocity of the particle at 5 cm from mean position is %f cm/s'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.2 Simple Harmonic Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The amplitude of oscillations is 0.252982 m\n", - "(b) The time period of oscillations is 1.216734 seconds\n", - "(c) The maximum velocity is 1.306395 m/s\n", - "(d) The maximum acceleration is 6.746192 m/s**2\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "x_1=0.1 # m # assume the distance of the particle from mean position as (x_1 & x_2)\n", - "x_2=0.2# m \n", - "# assume velocities as v_1 & v_2\n", - "v_1=1.2 # m/s\n", - "v_2=0.8 # m/s\n", - "# Calculations\n", - "# The amplitude of oscillations is given by dividing eq'n 1 by 2 as,\n", - "r=math.sqrt(0.32/5) # m\n", - "omega=v_1/(math.sqrt(r**2-x_1**2)) # radians/second\n", - "t=(2*math.pi)/omega # seconds\n", - "v_max=r*omega # m/s\n", - "# let the max acceleration be a which is given as,\n", - "a=r*omega**2 # m/s**2 \n", - "# Results\n", - "print('(a) The amplitude of oscillations is %f m'%r)\n", - "print('(b) The time period of oscillations is %f seconds'%t)\n", - "print('(c) The maximum velocity is %f m/s'%v_max)\n", - "print('(d) The maximum acceleration is %f m/s**2'%a) # the value of max acc is incorrect in the textbook\n", - "# NOTE: the value of t is incorrect in the text book\n", - "# The values may differ slightly due to decimal point accuracy" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.5 Equivalent spring constant" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The stiffness of the spring is 2.012152 N/cm\n", - "(b) The maximum Tension in the spring is 65.091138 N\n", - "(c) The maximum velocity is 0.471239 m/s\n" - ] - } - ], - "source": [ - "# Initilization of variabes\n", - "W=50 # N # weight\n", - "x_0=0.075 # m # amplitude\n", - "f=1 # oscillation/sec # frequency\n", - "g=9.81 \n", - "# Calculations\n", - "omega=2*math.pi*f\n", - "K=(((2*math.pi)**2*W)/g)*(10**-2) # N/cm\n", - "# let the total extension of the string be delta which is given as,\n", - "delta=(W/K)+(x_0*10**2) # cm\n", - "T=K*delta # N # Max Tension\n", - "v=omega*x_0 #m/s # max velocity\n", - "# Results\n", - "print('(a) The stiffness of the spring is %f N/cm'%K)\n", - "print('(b) The maximum Tension in the spring is %f N'%T)\n", - "print('(c) The maximum velocity is %f m/s'%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.10 Pendulum Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time period of oscillation of the pendulum for upward acc of the elevator is 1.912710 seconds\n", - "The time period of oscillation of the pendulum for downward acc of the elevator is 2.114580 seconds\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "l=1 # m # length of the simple pendulum\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "# Let t_s be the time period when the elevator is stationary\n", - "t_s=2*math.pi*math.sqrt(l/g) #/ seconds\n", - "# Let t_u be the time period when the elevator moves upwards. Then from eqn 1\n", - "t_u=2*math.pi*math.sqrt((l)/(g+(g/10))) # seconds\n", - "# Let t_d be the time period when the elevator moves downwards.\n", - "t_d=2*math.pi*math.sqrt(l/(g-(g/10))) # seconds\n", - "# Results\n", - "print('The time period of oscillation of the pendulum for upward acc of the elevator is %f seconds'%t_u)\n", - "print('The time period of oscillation of the pendulum for downward acc of the elevator is %f seconds'%t_d)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.11 Pendulum Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time period of oscillation of the pendulum for upward acc of the elevator is 0.953463 seconds\n", - "The time period of oscillation of the pendulum for downward acc of the elevator is 1.054093 seconds\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "t=1 # second # time period of the simple pendulum\n", - "g=9.81 # m/s^2\n", - "# Calculations\n", - "# Length of pendulum is given as,\n", - "l=(t/(2*math.pi)**2)*g # m\n", - "# Let t_u be the time period when the elevator moves upwards. Then the time period is given as,\n", - "t_u=2*math.pi*math.sqrt((l)/(g+(g/10))) # seconds\n", - "# Let t_d be the time period when the elevator moves downwards.\n", - "t_d=2*math.pi*math.sqrt(l/(g-(g/10))) # seconds\n", - "# Results\n", - "print('The time period of oscillation of the pendulum for upward acc of the elevator is %f seconds'%t_u)\n", - "print('The time period of oscillation of the pendulum for downward acc of the elevator is %f seconds'%t_d)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 24.12 Pendulum Motion" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The time period of oscillations of the disc is 0.475599 seconds\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "m=15 # kg # mass of the disc\n", - "D=0.3 # m # diameter of the disc\n", - "R=0.15 # m # radius\n", - "l=1 # m # length of the shaft\n", - "d=0.01 # m # diameter of the shaft\n", - "G=30*10**9 # N-m**2 # modulus of rigidity\n", - "# Calculations\n", - "# M.I of the disc about the axis of rotation is given as,\n", - "I=(m*R**2)/2 # kg-m**2\n", - "# Stiffness of the shaft\n", - "k_t=(math.pi*d**4*G)/(32*l) # N-m/radian\n", - "t=2*math.pi*math.sqrt(I/k_t) # seconds\n", - "# Results\n", - "print('The time period of oscillations of the disc is %f seconds'%t)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_25_____SHEAR_FORCE_AND_BENDING_MOMENT_A2poeo5.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_25_____SHEAR_FORCE_AND_BENDING_MOMENT_A2poeo5.ipynb deleted file mode 100644 index e527f1a9..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_25_____SHEAR_FORCE_AND_BENDING_MOMENT_A2poeo5.ipynb +++ /dev/null @@ -1,198 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 25 Shear Force and Bending Moment" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 25.5 Shear Force and Bending Moment" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The graphs are the solutions\n" - ] - }, - { - "data": { - "image/png": "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\nAAAAAElFTkSuQmCC\n", - "text/plain": [ - "<matplotlib.figure.Figure at 0x703ea20>" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline\n", - "import matplotlib.pyplot as plt\n", - "\n", - "# Initilization of variables\n", - "L_AB=3 # m , length of the beam\n", - "L_AC=1 # m\n", - "L_BC=2 # m\n", - "M_C=12 # kNm , clockwise moment at C\n", - "\n", - "# Calculations\n", - "R_B=M_C/L_AB # kN , moment at A\n", - "R_A=-M_C/L_AB # kN , moment at B\n", - "\n", - "#S.F\n", - "F_A=R_A # kN \n", - "F_B=R_A # kN\n", - "# B.M\n", - "M_A=0 # kNm\n", - "M_C1=R_A*L_AC #kNm , M_C1 is the BM just before C\n", - "M_C2=(R_A*L_AC)+M_C #kNm , M_C2 is the BM just after C\n", - "M_B=0 #kNm\n", - "\n", - "# Plotting SFD & BMD\n", - "x=([0],[0.99],[1],[3])\n", - "y=([-4],[-4],[-4],[-4])\n", - "a=([0],[0.99],[1],[3])\n", - "b=([0],[-4],[8],[0])\n", - "plt.subplot(2,1,1)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Shear Force (kN)\")\n", - "plt.plot(x,y)\n", - "plt.subplot(2,1,2)\n", - "plt.plot(a,b)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Bending Moment (kNm)\")\n", - "\n", - "#Results\n", - "print('The graphs are the solutions')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 25.7 Shear Force and Bending Moment" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The graphs are the solutions\n" - ] - }, - { - "data": { - "image/png": "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\nLP9qfJqgVzlynY2/mDAEv767X+zuZ7r7gjz3fQWwh5nNBXYDhgOY2fpm9kS0zbrAxOiUwSRgrLuP\nz3O/UmI0lCjlIrsa37hx5V+NTz+0K0eus/H3A6YDT0e3e+ZbVMfd/+Puu7t7Z3f/ubsvi+5f4u4D\nousL3b1ntOxuC3cfns8+pTTpC0fKTc1qfD16hCH+cjuLqAl6lSPXt3kY0AvIJOTpwCYFikkqjJK9\nlKtMNb4rrwwT+sqtGp9G1SpHrsl+RS3V7crsN6yUKh1dSDnLVOObOhXOOCNU49t9d3j11aQja5g+\ne5Uj17f5LTP7BdDczDqa2Q3AywWMSyqIjuwlDbKr8R1+OBx8cOlX49ORfeXINdmfCnQDlgMPAJ8B\nvy1UUFJZlOwlTVq0CGvy58//vhrf0UeXZjU+ffYqR66z8b909wvcfTt33za6/r9CByeVQV84kkbZ\n1fg22aQ0q/FpGL9y5Dobv5OZ3Wpm483s+cwlnx2b2aFmNjOqs791PdvtZWZzzGyemZ2bzz6lNCnZ\nS5plqvHNmQMrrxyq8Z1/PnzySdKRaRi/kuT6m+5hYBqhzO3vsi75eBM4CKize56ZNSPU5d+TcBrh\nCDPrkud+pcQo2UslWGcduOaaUJTnww+hU6dQiveLL5KLSUf2lSPXt/kbd/+zu7/q7lMyl3x27O5z\n3X0+oVhPXXoB8919sbuvAB4kdMuTFFGyl0pSStX4dGRfOepN9ma2lpmtBYw1s5Oi6nZrZd1faBsA\n72Tdfje6T1JEyV4qUaYa3xNPJFeNT5+9ytFQ17sphPX0mX8O2UP3Dmxa34Pr6Xp3gbuPbVyoklY6\nupBKtvXWoRrfSy/B738fCvRccgkccEDhPxcaxq8c9SZ7d8+rSp6775HP44H3gHZZtzeM7quTWtyW\nHx1diHxfje+pp8IEvssvh8sug912K9w+9UO7/BSkxa2ZbQe84+4fRLcHE7rdLQaGuft/mhTtD/fx\nAnB2bXMAzKw5kGmUswR4FTjC3WfX8VxqcVuG+vYNRzM77JB0JCKloboaHnoILroI2rcPSb9Xr/j3\n86tfhc/dr34V/3NLccTV4vYW4OvoCXcidKa7G/gUuDXPAA80s3eA3sATZvZUdP93Xe/c/VtCW93x\nwFvAg3UleilfGkoU+aHaqvEdfHD81fh0ZF85GvqKbZ519D4QuNXdH3X3i4AO+ezY3ce4+0buvqq7\nr+/ue0f3f9f1Lrr9dNQZr6O63qWThvFFapddja9fv++r8S1aFM/z67NXORpM9maWOa+/G5BdSKeh\nyX0iOdEXjkj9aqvGd+qp+Vfj06ha5WjobX4AeNHM/gZ8BbwEYGYdCEP5InlTshfJTaYa3+zZ4ag/\nU41v2bKmPZ+G8StHvcne3S8FzgL+AuyQNfutGaE5jkjelOxFGqdmNb6OHWH48MZX49ORfeVo8G12\n90nu/pi7f5F13zx3n1rY0KRSKNmLNE12Nb5p0xpfjU9H9pVDv+kkcUr2IvmpWY2vSxe4556Gq/Hp\ns1c5lOwlcTq6EIlHphrfXXfBLbdAjx4wZkxI6rXRMH7lSOxtbkSL20VmNsPMppnZq8WMUYpDRxci\n8cpU47viijChr08feL6WpuT6oV05kvxN12CL20g10N/dt3L3AtSQkqQp2YvEzwz23RemToXf/haG\nDIE99oDXXvt+Gx3ZV47E3uYcW9wS/V3/HFNMyV6kcLKr8R12GBx0UKjGN2uWjuwrSTkkUQcmmNlr\nZnZC0sFI/HR0IVJ4Navx7bJLGNpXsq8MBa2CF1OL237uvsTM1iEk/dnuPrGujdX1rvzoyF6keDLV\n+E44IUzi22abpCOSxihI17tiiLrenZXLun0zGwr8192vqePv6npXhrp1C8uGundPOhIRkfISV9e7\nYqk1UDNrZWarRddbAz8HZhYzMCk8HdmLiBRWkkvvGmxxSzgFMNHMpgGTgLHuPj6ZiKVQlOxFRAor\n8WH8OGkYvzx16QKPPQabb550JCIi5aXchvGlgunIXkSksJTsJXFa6ysiUlhK9pI4HdmLiBSWkr0k\nTsleRKSwlOwlcUr2IiKFleTSuyvNbLaZTTezR82sTR3b7WVmc8xsnpmdW+w4pfCU7EVECivJI/vx\nQDd37wnMB35fcwMzawbcCOwJdAOOMLMuRY2yRDSlPGK5cIdXX61KOoyCSvP7B3p95SzNrw3S//py\nlWTXu2fdvTq6OQnYsJbNegHz3X2xu68AHgQOKFaMpSTN/2DdYfLkqqTDKKg0v3+g11fO0vzaIP2v\nL1elcs7+V8BTtdy/AfBO1u13o/skRVQHSUSksBLvemdmFwAr3P3+OPa59dZxPEvpWbIEHn886SgK\nY8kSaN486ShERNIr0XK5ZnYMcAKwq7svr+XvvYFh7r5XdPs8wN39ijqeT8eIIiJSUXIpl1vQI/v6\nmNlewO+AnWpL9JHXgA5m1h5YAgwCjqjrOXN5wSIiIpUmyXP2NwCrARPMbKqZ3QQ/7Hrn7t8CpxBm\n7r8FPOiOW8cOAAAgAElEQVTus5MKWEREpBylquudiIiI/FipzMbPS5oL75jZHWa21MzeSDqWQjCz\nDc3seTN7y8zeNLPTko4pTmbW0swmm9m06PUNTTqmuJlZs2h0LnVTSM1skZnNiN6/V5OOJ25m1tbM\nHo4KnL1lZtsnHVNczKxT9L5Njf77aZq+X8zsDDObaWZvmNl9ZrZyvduX+5F9VHhnHrAb8D7hPP8g\nd5+TaGAxMbMdgM+Bu919y6TjiZuZrQes5+7TzWw1YApwQFrePwAza+XuX5pZc+AfwGnunprEYWZn\nANsAbdx9/6TjiZOZvQ1s4+6fJB1LIZjZX4AX3X2Uma0EtHL3zxIOK3ZRnngX2N7d32lo+1JnZj8D\nJgJd3P1rMxsNjHP3u+t6TBqO7FNdeMfdJwKp/KIBcPcP3H16dP1zYDYpq6Xg7l9GV1sSJsWW9y/s\nLGa2IbAPcHvSsRSIkY7vyR+JSpTv6O6jANz9mzQm+sjuwD/TkOizNAdaZ36kEQ5265SGf8QqvJMS\nZrYx0BOYnGwk8YqGuacBHwAT3P21pGOK0bWEVTWp+QFTgxMmEb9mZickHUzMNgE+MrNR0VD3rWa2\natJBFchA4IGkg4iLu78PXA38C3gPWObuz9b3mDQke0mBaAj/EeD06Ag/Ndy92t23IpSE3t7MuiYd\nUxzMbF9gaTQyY9Elbfq5+9aE0YuTo9NqabESsDUwMnqNXwLnJRtS/MysBbA/8HDSscTFzNYgjGC3\nB34GrGZmv6jvMWlI9u8B7bJubxjdJ2UiGoZ6BLjH3f+WdDyFEg2RvgDslXQsMekH7B+d134A2MXM\n6jxnWI7cfUn03w+BxwinDdPiXeAdd389uv0IIfmnzd7AlOg9TIvdgbfd/T/REvW/An3re0Aakv13\nhXei2YiDgLTNCk7rUVPGncAsd78+6UDiZmY/MbO20fVVgT2AVEw+dPfz3b2du29K+Nw97+6Dk44r\nLmbWKhpxwsxaAz8HZiYbVXzcfSnwjpl1iu7aDZiVYEiFcgQpGsKP/AvobWarmJkR3rt6a9AkVkEv\nLu7+rZllCu80A+5IU+EdM7sf6A+sbWb/AoZmJtSkgZn1A34JvBmd13bgfHd/OtnIYrM+cFc0G7gZ\nMNrdn0w4JsnNusBjURnulYD73H18wjHF7TTgvmio+23g2ITjiZWZtSIcBf866Vji5O6vmtkjwDRg\nRfTfW+t7TNkvvRMREZH6pWEYX0REROqhZC8iIpJySvYiIiIpp2QvIiKSckr2IiIiKadkLyIiknJK\n9iIVxMwuiNpizojqoW9XhH0+lylOk+P2+5rZxYWMSaTSKNmLVAgz602o8d7T3XsQio0UtAuYme0D\nTG9MvwN3HwcMMLNVCheZSGVRshepHOsDH7n7NwBRXe0PAMxsoZldYWZvmNkkM9s0un9AdHuKmY03\ns3Wi+4ea2R1m9oKZLTCzU+vY5y+Bv0WPaW9ms6Mua3PN7F4z283MJka3t816XBUwoDD/G0Qqj5K9\nSOUYD7QzszlmNtLMdqrx90/cfUtgJJDpU/CSu/d2922A0cA5Wdt3JtT63x4YambNa9lnP2BK1u3N\ngKvcvTPQBTjC3XcgtMm9IGu7KcCOTXqVIvIjSvYiFcLdvyB0Nfs18CHwoJllN655MPrvA0Cf6PpG\nZvaMmb0BnA10y9p+nLt/4+4fA0sJteRrWjPab8ZCd880W3kLeC66/iahXWfGvwmtO0UkBkr2IhXE\ng7+7+zDgVOCQ7D9nXa+O/nsDMCI64j8RyD6PvrzG9rU11vqmxu2aj1medT378asAX9X9SkSkMZTs\nRSqEmXUysw5Zd/UEFmfdHhj9dxDwSnS9DfB+dP3oJux2bub8fyaM+kLMut6JFLWTFUla2be4FZGc\nrQbcYGZtCUfcC/hh6881zWwG8D9CD3CAi4FHzOw/wPPAxnU8d13tM8cBuxDap9bcruZjsm/vApxX\n5ysRkUZRi1sRwcwWAtu4+39ift71gLvcfc9GPOanhN7xe8QZi0gl0zC+iEDdR+b5PWlY2ndbY4rq\nAO2AswoRj0il0pG9iIhIyunIXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7J\nXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTl\nlOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRURE\nUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5E\nRCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTs\nRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJO\nyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk\n5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVE\nRFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsle\nREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU\n7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERS\nTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkRE\nJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxF\nRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7J\nXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTl\nlOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRURE\nUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5E\nRCTllOxFRERSTsleREQk5RJP9ma2l5nNMbN5ZnZuHduMMLP5ZjbdzHoWO0YREZFylmiyN7NmwI3A\nnkA34Agz61Jjm72Bzdy9IzAEuLnogYqIiJSxpI/sewHz3X2xu68AHgQOqLHNAcDdAO4+GWhrZusW\nN0wREZHylXSy3wB4J+v2u9F99W3zXi3biIiISB2STvYiIiJSYCslvP/3gHZZtzeM7qu5zUYNbAOA\n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\n", - "text/plain": [ - "<matplotlib.figure.Figure at 0x71794a8>" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline\n", - "import matplotlib.pyplot as plt\n", - "import numpy as np\n", - "\n", - "# Initilization of variables\n", - "L_AD=8 # m , length of the beam\n", - "L_AB=2 # m \n", - "L_BC=4 # m\n", - "L_CD=2 # m\n", - "UDL=1 # kN/m\n", - "P=2 # kN , point load at A\n", - "# Calculations\n", - "\n", - "# Solving eqn's 1&2 using matrix to get R_B & R_C as,\n", - "A=np.matrix([[1,1],[1,3]])\n", - "B=np.matrix([[8],[30]])\n", - "C=np.linalg.inv(A)*B\n", - "\n", - "# SHEAR FORCE\n", - "# the term F with suffixes 1 & 2 indicates SF just to left and right \n", - "F_A=-P # kN\n", - "F_B1=-P # kN\n", - "F_B2=-P+C[0] # kN\n", - "F_C1=-P+C[0]-(UDL*L_BC) #kN\n", - "F_C2=-P+C[0]-(UDL*L_BC)+C[1] # kN\n", - "F_D=0\n", - "\n", - "# BENDING MOMENT\n", - "# the term F with suffixes 1 & 2 indicates BM just to left and right\n", - "M_A=0 #kNm\n", - "M_B=(-P*L_CD) #kNm\n", - "M_C=(-P*(L_AB+L_BC))+(C[0]*L_BC)-(UDL*L_BC*(L_BC/2)) #kNm\n", - "M_D=0 #kNm\n", - "\n", - "# LOCATION OF MAXIMUM BM\n", - "#Max BM occurs at E at a distance of 2.5 m from B i.e x=L_AE=4.5 m from free end A. Thus max BM is given by taking moment at B\n", - "L_AE=4.5 # m , given\n", - "M_E=(-2*L_AE)+(4.5*(L_AE-2))-((1/2)*(L_AE-2)**2) #kNm\n", - "\n", - "# PLOTTING SFD & BMD\n", - "x=([0],[1.99],[2],[4.5],[5.99],[6],[8])\n", - "y=([-2],[-2],[2.5],[0],[-1.5],[2],[0])\n", - "a=([0],[2],[4.5],[6],[8])\n", - "b=([0],[-4],[-0.875],[-2],[0])\n", - "fig = plt.figure(figsize=(8,8))\n", - "ax = fig.add_subplot(311)\n", - "plt.subplot(311)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Shear Force (kN)\")\n", - "ax.plot(x,y)\n", - "plt.subplot(313)\n", - "plt.plot(a,b)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Bending Moment (kNm)\")\n", - "\n", - "#Results\n", - "print('The graphs are the solutions')" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_25_____SHEAR_FORCE_AND_BENDING_MOMENT_phg6mc9.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_25_____SHEAR_FORCE_AND_BENDING_MOMENT_phg6mc9.ipynb deleted file mode 100644 index e527f1a9..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_25_____SHEAR_FORCE_AND_BENDING_MOMENT_phg6mc9.ipynb +++ /dev/null @@ -1,198 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 25 Shear Force and Bending Moment" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 25.5 Shear Force and Bending Moment" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The graphs are the solutions\n" - ] - }, - { - "data": { - "image/png": "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\nAAAAAElFTkSuQmCC\n", - "text/plain": [ - "<matplotlib.figure.Figure at 0x703ea20>" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline\n", - "import matplotlib.pyplot as plt\n", - "\n", - "# Initilization of variables\n", - "L_AB=3 # m , length of the beam\n", - "L_AC=1 # m\n", - "L_BC=2 # m\n", - "M_C=12 # kNm , clockwise moment at C\n", - "\n", - "# Calculations\n", - "R_B=M_C/L_AB # kN , moment at A\n", - "R_A=-M_C/L_AB # kN , moment at B\n", - "\n", - "#S.F\n", - "F_A=R_A # kN \n", - "F_B=R_A # kN\n", - "# B.M\n", - "M_A=0 # kNm\n", - "M_C1=R_A*L_AC #kNm , M_C1 is the BM just before C\n", - "M_C2=(R_A*L_AC)+M_C #kNm , M_C2 is the BM just after C\n", - "M_B=0 #kNm\n", - "\n", - "# Plotting SFD & BMD\n", - "x=([0],[0.99],[1],[3])\n", - "y=([-4],[-4],[-4],[-4])\n", - "a=([0],[0.99],[1],[3])\n", - "b=([0],[-4],[8],[0])\n", - "plt.subplot(2,1,1)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Shear Force (kN)\")\n", - "plt.plot(x,y)\n", - "plt.subplot(2,1,2)\n", - "plt.plot(a,b)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Bending Moment (kNm)\")\n", - "\n", - "#Results\n", - "print('The graphs are the solutions')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 25.7 Shear Force and Bending Moment" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The graphs are the solutions\n" - ] - }, - { - "data": { - "image/png": "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\nLP9qfJqgVzlynY2/mDAEv767X+zuZ7r7gjz3fQWwh5nNBXYDhgOY2fpm9kS0zbrAxOiUwSRgrLuP\nz3O/UmI0lCjlIrsa37hx5V+NTz+0K0eus/H3A6YDT0e3e+ZbVMfd/+Puu7t7Z3f/ubsvi+5f4u4D\nousL3b1ntOxuC3cfns8+pTTpC0fKTc1qfD16hCH+cjuLqAl6lSPXt3kY0AvIJOTpwCYFikkqjJK9\nlKtMNb4rrwwT+sqtGp9G1SpHrsl+RS3V7crsN6yUKh1dSDnLVOObOhXOOCNU49t9d3j11aQja5g+\ne5Uj17f5LTP7BdDczDqa2Q3AywWMSyqIjuwlDbKr8R1+OBx8cOlX49ORfeXINdmfCnQDlgMPAJ8B\nvy1UUFJZlOwlTVq0CGvy58//vhrf0UeXZjU+ffYqR66z8b909wvcfTt33za6/r9CByeVQV84kkbZ\n1fg22aQ0q/FpGL9y5Dobv5OZ3Wpm483s+cwlnx2b2aFmNjOqs791PdvtZWZzzGyemZ2bzz6lNCnZ\nS5plqvHNmQMrrxyq8Z1/PnzySdKRaRi/kuT6m+5hYBqhzO3vsi75eBM4CKize56ZNSPU5d+TcBrh\nCDPrkud+pcQo2UslWGcduOaaUJTnww+hU6dQiveLL5KLSUf2lSPXt/kbd/+zu7/q7lMyl3x27O5z\n3X0+oVhPXXoB8919sbuvAB4kdMuTFFGyl0pSStX4dGRfOepN9ma2lpmtBYw1s5Oi6nZrZd1faBsA\n72Tdfje6T1JEyV4qUaYa3xNPJFeNT5+9ytFQ17sphPX0mX8O2UP3Dmxa34Pr6Xp3gbuPbVyoklY6\nupBKtvXWoRrfSy/B738fCvRccgkccEDhPxcaxq8c9SZ7d8+rSp6775HP44H3gHZZtzeM7quTWtyW\nHx1diHxfje+pp8IEvssvh8sug912K9w+9UO7/BSkxa2ZbQe84+4fRLcHE7rdLQaGuft/mhTtD/fx\nAnB2bXMAzKw5kGmUswR4FTjC3WfX8VxqcVuG+vYNRzM77JB0JCKloboaHnoILroI2rcPSb9Xr/j3\n86tfhc/dr34V/3NLccTV4vYW4OvoCXcidKa7G/gUuDXPAA80s3eA3sATZvZUdP93Xe/c/VtCW93x\nwFvAg3UleilfGkoU+aHaqvEdfHD81fh0ZF85GvqKbZ519D4QuNXdH3X3i4AO+ezY3ce4+0buvqq7\nr+/ue0f3f9f1Lrr9dNQZr6O63qWThvFFapddja9fv++r8S1aFM/z67NXORpM9maWOa+/G5BdSKeh\nyX0iOdEXjkj9aqvGd+qp+Vfj06ha5WjobX4AeNHM/gZ8BbwEYGYdCEP5InlTshfJTaYa3+zZ4ag/\nU41v2bKmPZ+G8StHvcne3S8FzgL+AuyQNfutGaE5jkjelOxFGqdmNb6OHWH48MZX49ORfeVo8G12\n90nu/pi7f5F13zx3n1rY0KRSKNmLNE12Nb5p0xpfjU9H9pVDv+kkcUr2IvmpWY2vSxe4556Gq/Hp\ns1c5lOwlcTq6EIlHphrfXXfBLbdAjx4wZkxI6rXRMH7lSOxtbkSL20VmNsPMppnZq8WMUYpDRxci\n8cpU47viijChr08feL6WpuT6oV05kvxN12CL20g10N/dt3L3AtSQkqQp2YvEzwz23RemToXf/haG\nDIE99oDXXvt+Gx3ZV47E3uYcW9wS/V3/HFNMyV6kcLKr8R12GBx0UKjGN2uWjuwrSTkkUQcmmNlr\nZnZC0sFI/HR0IVJ4Navx7bJLGNpXsq8MBa2CF1OL237uvsTM1iEk/dnuPrGujdX1rvzoyF6keDLV\n+E44IUzi22abpCOSxihI17tiiLrenZXLun0zGwr8192vqePv6npXhrp1C8uGundPOhIRkfISV9e7\nYqk1UDNrZWarRddbAz8HZhYzMCk8HdmLiBRWkkvvGmxxSzgFMNHMpgGTgLHuPj6ZiKVQlOxFRAor\n8WH8OGkYvzx16QKPPQabb550JCIi5aXchvGlgunIXkSksJTsJXFa6ysiUlhK9pI4HdmLiBSWkr0k\nTsleRKSwlOwlcUr2IiKFleTSuyvNbLaZTTezR82sTR3b7WVmc8xsnpmdW+w4pfCU7EVECivJI/vx\nQDd37wnMB35fcwMzawbcCOwJdAOOMLMuRY2yRDSlPGK5cIdXX61KOoyCSvP7B3p95SzNrw3S//py\nlWTXu2fdvTq6OQnYsJbNegHz3X2xu68AHgQOKFaMpSTN/2DdYfLkqqTDKKg0v3+g11fO0vzaIP2v\nL1elcs7+V8BTtdy/AfBO1u13o/skRVQHSUSksBLvemdmFwAr3P3+OPa59dZxPEvpWbIEHn886SgK\nY8kSaN486ShERNIr0XK5ZnYMcAKwq7svr+XvvYFh7r5XdPs8wN39ijqeT8eIIiJSUXIpl1vQI/v6\nmNlewO+AnWpL9JHXgA5m1h5YAgwCjqjrOXN5wSIiIpUmyXP2NwCrARPMbKqZ3QQ/7Hrn7t8CpxBm\n7r8FPOiOW8cOAAAgAElEQVTus5MKWEREpBylquudiIiI/FipzMbPS5oL75jZHWa21MzeSDqWQjCz\nDc3seTN7y8zeNLPTko4pTmbW0swmm9m06PUNTTqmuJlZs2h0LnVTSM1skZnNiN6/V5OOJ25m1tbM\nHo4KnL1lZtsnHVNczKxT9L5Njf77aZq+X8zsDDObaWZvmNl9ZrZyvduX+5F9VHhnHrAb8D7hPP8g\nd5+TaGAxMbMdgM+Bu919y6TjiZuZrQes5+7TzWw1YApwQFrePwAza+XuX5pZc+AfwGnunprEYWZn\nANsAbdx9/6TjiZOZvQ1s4+6fJB1LIZjZX4AX3X2Uma0EtHL3zxIOK3ZRnngX2N7d32lo+1JnZj8D\nJgJd3P1rMxsNjHP3u+t6TBqO7FNdeMfdJwKp/KIBcPcP3H16dP1zYDYpq6Xg7l9GV1sSJsWW9y/s\nLGa2IbAPcHvSsRSIkY7vyR+JSpTv6O6jANz9mzQm+sjuwD/TkOizNAdaZ36kEQ5265SGf8QqvJMS\nZrYx0BOYnGwk8YqGuacBHwAT3P21pGOK0bWEVTWp+QFTgxMmEb9mZickHUzMNgE+MrNR0VD3rWa2\natJBFchA4IGkg4iLu78PXA38C3gPWObuz9b3mDQke0mBaAj/EeD06Ag/Ndy92t23IpSE3t7MuiYd\nUxzMbF9gaTQyY9Elbfq5+9aE0YuTo9NqabESsDUwMnqNXwLnJRtS/MysBbA/8HDSscTFzNYgjGC3\nB34GrGZmv6jvMWlI9u8B7bJubxjdJ2UiGoZ6BLjH3f+WdDyFEg2RvgDslXQsMekH7B+d134A2MXM\n6jxnWI7cfUn03w+BxwinDdPiXeAdd389uv0IIfmnzd7AlOg9TIvdgbfd/T/REvW/An3re0Aakv13\nhXei2YiDgLTNCk7rUVPGncAsd78+6UDiZmY/MbO20fVVgT2AVEw+dPfz3b2du29K+Nw97+6Dk44r\nLmbWKhpxwsxaAz8HZiYbVXzcfSnwjpl1iu7aDZiVYEiFcgQpGsKP/AvobWarmJkR3rt6a9AkVkEv\nLu7+rZllCu80A+5IU+EdM7sf6A+sbWb/AoZmJtSkgZn1A34JvBmd13bgfHd/OtnIYrM+cFc0G7gZ\nMNrdn0w4JsnNusBjURnulYD73H18wjHF7TTgvmio+23g2ITjiZWZtSIcBf866Vji5O6vmtkjwDRg\nRfTfW+t7TNkvvRMREZH6pWEYX0REROqhZC8iIpJySvYiIiIpp2QvIiKSckr2IiIiKadkLyIiknJK\n9iIVxMwuiNpizojqoW9XhH0+lylOk+P2+5rZxYWMSaTSKNmLVAgz602o8d7T3XsQio0UtAuYme0D\nTG9MvwN3HwcMMLNVCheZSGVRshepHOsDH7n7NwBRXe0PAMxsoZldYWZvmNkkM9s0un9AdHuKmY03\ns3Wi+4ea2R1m9oKZLTCzU+vY5y+Bv0WPaW9ms6Mua3PN7F4z283MJka3t816XBUwoDD/G0Qqj5K9\nSOUYD7QzszlmNtLMdqrx90/cfUtgJJDpU/CSu/d2922A0cA5Wdt3JtT63x4YambNa9lnP2BK1u3N\ngKvcvTPQBTjC3XcgtMm9IGu7KcCOTXqVIvIjSvYiFcLdvyB0Nfs18CHwoJllN655MPrvA0Cf6PpG\nZvaMmb0BnA10y9p+nLt/4+4fA0sJteRrWjPab8ZCd880W3kLeC66/iahXWfGvwmtO0UkBkr2IhXE\ng7+7+zDgVOCQ7D9nXa+O/nsDMCI64j8RyD6PvrzG9rU11vqmxu2aj1medT378asAX9X9SkSkMZTs\nRSqEmXUysw5Zd/UEFmfdHhj9dxDwSnS9DfB+dP3oJux2bub8fyaM+kLMut6JFLWTFUla2be4FZGc\nrQbcYGZtCUfcC/hh6881zWwG8D9CD3CAi4FHzOw/wPPAxnU8d13tM8cBuxDap9bcruZjsm/vApxX\n5ysRkUZRi1sRwcwWAtu4+39ift71gLvcfc9GPOanhN7xe8QZi0gl0zC+iEDdR+b5PWlY2ndbY4rq\nAO2AswoRj0il0pG9iIhIyunIXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7J\nXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTl\nlOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRURE\nUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5E\nRCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTs\nRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJO\nyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk\n5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVE\nRFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsle\nREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU\n7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERS\nTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkRE\nJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxF\nRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7J\nXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTl\nlOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRURE\nUk7JXkREJOWU7EVERFJOyV5ERCTllOxFRERSTsleREQk5ZTsRUREUk7JXkREJOWU7EVERFJOyV5E\nRCTllOxFRERSTsleREQk5RJP9ma2l5nNMbN5ZnZuHduMMLP5ZjbdzHoWO0YREZFylmiyN7NmwI3A\nnkA34Agz61Jjm72Bzdy9IzAEuLnogYqIiJSxpI/sewHz3X2xu68AHgQOqLHNAcDdAO4+GWhrZusW\nN0wREZHylXSy3wB4J+v2u9F99W3zXi3biIiISB2STvYiIiJSYCslvP/3gHZZtzeM7qu5zUYNbAOA\n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\n", - "text/plain": [ - "<matplotlib.figure.Figure at 0x71794a8>" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline\n", - "import matplotlib.pyplot as plt\n", - "import numpy as np\n", - "\n", - "# Initilization of variables\n", - "L_AD=8 # m , length of the beam\n", - "L_AB=2 # m \n", - "L_BC=4 # m\n", - "L_CD=2 # m\n", - "UDL=1 # kN/m\n", - "P=2 # kN , point load at A\n", - "# Calculations\n", - "\n", - "# Solving eqn's 1&2 using matrix to get R_B & R_C as,\n", - "A=np.matrix([[1,1],[1,3]])\n", - "B=np.matrix([[8],[30]])\n", - "C=np.linalg.inv(A)*B\n", - "\n", - "# SHEAR FORCE\n", - "# the term F with suffixes 1 & 2 indicates SF just to left and right \n", - "F_A=-P # kN\n", - "F_B1=-P # kN\n", - "F_B2=-P+C[0] # kN\n", - "F_C1=-P+C[0]-(UDL*L_BC) #kN\n", - "F_C2=-P+C[0]-(UDL*L_BC)+C[1] # kN\n", - "F_D=0\n", - "\n", - "# BENDING MOMENT\n", - "# the term F with suffixes 1 & 2 indicates BM just to left and right\n", - "M_A=0 #kNm\n", - "M_B=(-P*L_CD) #kNm\n", - "M_C=(-P*(L_AB+L_BC))+(C[0]*L_BC)-(UDL*L_BC*(L_BC/2)) #kNm\n", - "M_D=0 #kNm\n", - "\n", - "# LOCATION OF MAXIMUM BM\n", - "#Max BM occurs at E at a distance of 2.5 m from B i.e x=L_AE=4.5 m from free end A. Thus max BM is given by taking moment at B\n", - "L_AE=4.5 # m , given\n", - "M_E=(-2*L_AE)+(4.5*(L_AE-2))-((1/2)*(L_AE-2)**2) #kNm\n", - "\n", - "# PLOTTING SFD & BMD\n", - "x=([0],[1.99],[2],[4.5],[5.99],[6],[8])\n", - "y=([-2],[-2],[2.5],[0],[-1.5],[2],[0])\n", - "a=([0],[2],[4.5],[6],[8])\n", - "b=([0],[-4],[-0.875],[-2],[0])\n", - "fig = plt.figure(figsize=(8,8))\n", - "ax = fig.add_subplot(311)\n", - "plt.subplot(311)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Shear Force (kN)\")\n", - "ax.plot(x,y)\n", - "plt.subplot(313)\n", - "plt.plot(a,b)\n", - "plt.xlabel(\"Span (m)\")\n", - "plt.ylabel(\"Bending Moment (kNm)\")\n", - "\n", - "#Results\n", - "print('The graphs are the solutions')" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX.ipynb index 0bfaddae..879e8f3d 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX.ipynb @@ -74,6 +74,7 @@ } ], "source": [ + "import math\n", "#Initilizatin of variable\n", "F=10 #N\n", "P_1=[2,4,3] \n", @@ -125,6 +126,7 @@ } ], "source": [ + "import math\n", "#initiliation of variables\n", "T=2500 #N\n", "#Co-ordinates\n", @@ -169,6 +171,7 @@ } ], "source": [ + "import math\n", "#initilization of variables\n", "A=[2,-1,1]\n", "B=[1,1,2]\n", @@ -208,6 +211,7 @@ } ], "source": [ + "import math\n", "#initilization of variables\n", "A=[2,-6,-3]\n", "B=[4,3,-1] \n", @@ -245,6 +249,7 @@ } ], "source": [ + "import math\n", "#initilization of variables\n", "A=[4,-3,1]\n", "P=[2,3,-1]\n", @@ -267,7 +272,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 1, "metadata": { "collapsed": false }, @@ -318,6 +323,7 @@ } ], "source": [ + "import math\n", "#initilization of variables\n", "A=[2,-6,-3]\n", "B=[4,3,-1]\n", @@ -343,7 +349,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 3, "metadata": { "collapsed": false }, @@ -358,6 +364,7 @@ } ], "source": [ + "import math\n", "# Initilization of Variable \n", "# Points As martices\n", "A=[0,1,2]\n", @@ -395,7 +402,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 4, "metadata": { "collapsed": false }, @@ -409,6 +416,7 @@ } ], "source": [ + "import math\n", "# Initilization of variables\n", "# Points as matrices\n", "O=[-2,3,5]\n", @@ -448,6 +456,7 @@ } ], "source": [ + "import math\n", "# Initilization of variables\n", "# Points as matrices\n", "P=[1,-1,2] # Point where force is applied\n", @@ -485,6 +494,7 @@ } ], "source": [ + "import math\n", "# Initilization of variables\n", "f=22 # N \n", "# Points as matrices\n", @@ -528,6 +538,7 @@ } ], "source": [ + "import math\n", "# Initilization of variables\n", "# Force Vector\n", "F=[50,-80,30]\n", @@ -577,6 +588,7 @@ } ], "source": [ + "import math\n", "# Initilization of variables\n", "f=100 # N # magnitude of force\n", "# Co-ordinates of corners of the box as matrices\n", @@ -631,6 +643,7 @@ } ], "source": [ + "from __future__ import division\n", "# Initilization of variables\n", "F=20 # kN # Force acting at O\n", "M_x=76 # kNm\n", @@ -651,7 +664,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 5, "metadata": { "collapsed": false }, @@ -711,6 +724,7 @@ } ], "source": [ + "from __future__ import division\n", "# Initilization of variables\n", "P=5 # kN\n", "Q=3 # kN\n", @@ -741,7 +755,7 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 7, "metadata": { "collapsed": false }, @@ -756,6 +770,7 @@ } ], "source": [ + "import numpy\n", "# Initilization of variables\n", "F=2 # kN\n", "W=1 # kN\n", @@ -787,21 +802,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [Root]", "language": "python", - "name": "python3" + "name": "Python [Root]" }, "language_info": { "codemirror_mode": { "name": "ipython", - "version": 3 + "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" + "pygments_lexer": "ipython2", + "version": "2.7.12" }, "widgets": { "state": {}, diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX_IefvlOy.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX_IefvlOy.ipynb deleted file mode 100644 index 0bfaddae..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX_IefvlOy.ipynb +++ /dev/null @@ -1,813 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 26 Appendix" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.1 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Position vector is -5.000000i+2.000000j+14.000000k\n", - "The value of r is 15.000000*l i + 15.000000*m j + 15.000000*n k\n", - "The unit vector in the direction of r is -0.333333i+0.133333j+0.933333k\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "P=[-5,2,14] #Point co-ordinates\n", - "#Calculations\n", - "r=math.sqrt(P[0]**2+P[1]**2+P[2]**2) #Magnitude of the poistion vector\n", - "#Direction cosines\n", - "l=P[0]/r \n", - "m=P[1]/r\n", - "n=P[2]/r\n", - "#Unit Vector calculations\n", - "r_unit=[]\n", - "r_unit[:]=[P[i]/r for i in range(0,3)]\n", - "#Results\n", - "print(\"The Position vector is %fi+%fj+%fk\"%(P[0],P[1],P[2]))\n", - "print('The value of r is %f*l i + %f*m j + %f*n k'%(r,r,r))\n", - "print(\"The unit vector in the direction of r is %fi+%fj+%fk\"%(r_unit[0],r_unit[1],r_unit[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.2 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force in vector notation is -1.097643i-9.878783j-1.097643k\n", - "Thetax=96.301726 degrees,Thetay=171.069858 degrees,Thetaz=96.301726 degrees\n" - ] - } - ], - "source": [ - "#Initilizatin of variable\n", - "F=10 #N\n", - "P_1=[2,4,3] \n", - "P_2=[1,-5,2]\n", - "\n", - "#Calculations\n", - "d_x=P_2[0]-P_1[0]\n", - "d_y=P_2[1]-P_1[1]\n", - "d_z=P_2[2]-P_1[2]\n", - "d=math.sqrt(d_x**2+d_y**2+d_z**2)\n", - "Fx=(F/d)*d_x #N\n", - "Fy=(F/d)*d_y #N\n", - "Fz=(F/d)*d_z #N\n", - "#Direction cosines\n", - "l=Fx/F\n", - "m=Fy/F\n", - "n=Fz/F\n", - "#Angles\n", - "theta_x=math.degrees(math.acos(l)) #degrees\n", - "theta_y=math.degrees(math.acos(m)) #degrees\n", - "theta_z=math.degrees(math.acos(n)) #degrees\n", - "\n", - "#Result\n", - "print(\"The force in vector notation is %fi%fj%fk\"%(Fx,Fy,Fz))\n", - "print(\"Thetax=%f degrees,Thetay=%f degrees,Thetaz=%f degrees\"%(theta_x,theta_y,theta_z)) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.3 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force vector is -1059.997880i+2119.995760j+794.998410k N\n", - "The angles are thetax=115.087329,thetay=32.005383 and thetaz=71.458022 degrees\n" - ] - } - ], - "source": [ - "#initiliation of variables\n", - "T=2500 #N\n", - "#Co-ordinates\n", - "Q=[40,0,-30]\n", - "P=[0,80,0]\n", - "\n", - "#Calculations\n", - "mag_QP=math.sqrt((P[0]-Q[0])**2+(P[1]-Q[1])**2+(P[2]-Q[2])**2) #Magnitude\n", - "QP=[(P[0]-Q[0]),(P[1]-Q[1]),(P[2]-Q[2])] \n", - "F=[]\n", - "F[:]=[(T/mag_QP)*QP[i] for i in range(0,3)] #N\n", - "thetax=(math.acos(F[0]/T)*180/math.pi) #degrees\n", - "thetay=(math.acos(F[1]/T)*180/math.pi) #degrees\n", - "thetaz=(math.acos(F[2]/T)*180/math.pi) #degrees\n", - "\n", - "#Result\n", - "print(\"The force vector is %fi+%fj+%fk N\"%(F[0],F[1],F[2]))\n", - "#Answer in the textbook is printed as 1600 which is incorrect\n", - "print(\"The angles are thetax=%f,thetay=%f and thetaz=%f degrees\"%(thetax,thetay,thetaz))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.4 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The unit vector is 0.635999i-0.212000j+0.741999k\n" - ] - } - ], - "source": [ - "#initilization of variables\n", - "A=[2,-1,1]\n", - "B=[1,1,2]\n", - "C=[3,-2,4]\n", - "#Calculations\n", - "R=[A[0]+B[0]+C[0],A[1]+B[1]+C[1],A[2]+B[2]+C[2]] #Resultant\n", - "mag=math.sqrt(R[0]**2+R[1]**2+R[2]**2)\n", - "#Unit vector\n", - "U=[]\n", - "U[:]=[R[i]/mag for i in range(0,3)] \n", - "#Result\n", - "print(\"The unit vector is %fi%fj+%fk\"%(U[0],U[1],U[2]))\n", - "#Answer for (k) is incorrect in the textbook" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.5 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The product of both the vectors is -7.000000\n", - "The angle between them is 101.309932 degrees\n" - ] - } - ], - "source": [ - "#initilization of variables\n", - "A=[2,-6,-3]\n", - "B=[4,3,-1] \n", - "#Calculations\n", - "AdotB=A[0]*B[0]+A[1]*B[1]+A[2]*B[2] \n", - "magA=math.sqrt(A[0]**2+A[1]**2+A[2]**2) \n", - "magB=math.sqrt(B[0]**2+B[1]**2+B[2]**2)\n", - "theta=math.degrees(math.acos(AdotB/(magA*magB))) #degrees\n", - "\n", - "#Result\n", - "print(\"The product of both the vectors is %f\"%AdotB)\n", - "print(\"The angle between them is %f degrees\"%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.6 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The value of A.costheta is 1.000000\n" - ] - } - ], - "source": [ - "#initilization of variables\n", - "A=[4,-3,1]\n", - "P=[2,3,-1]\n", - "Q=[-2,-4,3]\n", - "#Calculations\n", - "B=[Q[0]-P[0],Q[1]-P[1],Q[2]-P[2]]\n", - "AdotB=A[0]*B[0]+A[1]*B[1]+A[2]*B[2]\n", - "magB=math.sqrt(B[0]**2+B[1]**2+B[2]**2)\n", - "Acostheta=AdotB/magB\n", - "#Result\n", - "print(\"The value of A.costheta is %f\"%Acostheta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.7 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The work done is 135 units\n" - ] - } - ], - "source": [ - "import numpy as np\n", - "#Initilization of variables\n", - "F=np.array([5,10,-15])\n", - "a=np.array([1,0,3])\n", - "b=np.array([3,-1,-6])\n", - "#Calculations\n", - "d=b-a\n", - "work=F*d\n", - "Work=work[0]+work[1]+work[2]\n", - "#Result\n", - "print(\"The work done is %d units\"%Work)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.8 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 35, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The cross prcoduct of the two vectors is 15.000000i -10.000000j+30.000000k\n", - "The angle between the two is 78.690068 degrees\n" - ] - } - ], - "source": [ - "#initilization of variables\n", - "A=[2,-6,-3]\n", - "B=[4,3,-1]\n", - "#Calculations\n", - "AcrossB=[A[1]*B[2]-B[1]*A[2],A[2]*B[0]-A[0]*B[2],A[0]*B[1]-A[1]*B[0]]\n", - "mag=math.sqrt(AcrossB[0]**2+AcrossB[1]**2+AcrossB[2]**2)\n", - "n=[AcrossB[i]/mag for i in range(0,3)]\n", - "magA=math.sqrt(A[0]**2+A[1]**2+A[2]**2)\n", - "magB=math.sqrt(B[0]**2+B[1]**2+B[2]**2)\n", - "theta=math.degrees(math.asin(mag/(magA*magB)))\n", - "#Result\n", - "print(\"The cross prcoduct of the two vectors is %fi %fj+%fk\"%(AcrossB[0],AcrossB[1],AcrossB[2])) #the answer for j is wrong in textbook\n", - "print(\"The angle between the two is %f degrees\"%theta)\n", - "# Only 1 value for theta has been solved" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.9 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 38, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The vector notation of velocity is 10.474459i -6.110101j -0.436436k\n", - "The magnitude of the Velocity Vector is 12.134171\n" - ] - } - ], - "source": [ - "# Initilization of Variable \n", - "# Points As martices\n", - "A=[0,1,2]\n", - "B=[1,3,-2]\n", - "P=[3,6,4]\n", - "a_s=2 # Angular speed in rad/s\n", - "\n", - "# Calculations\n", - "C=(B[0]-A[0],B[1]-A[1],B[2]-A[2])\n", - "magC=(C[0]**2+C[1]**2+C[2]**2)**0.5 # Magnitude of the Vector C \n", - "# Unit vector\n", - "C_unit=(C[0]/magC,C[1]/magC,C[2]/magC) # Unit vector\n", - "# Position Vector\n", - "r=(P[0]-A[0],P[1]-A[1],P[2]-A[2])\n", - "# Velocity Vector\n", - "# Calculating the cross product as,\n", - "V=(C[1]*r[2]-C[2]*r[1],C[2]*r[0]-C[0]*r[2],C[0]*r[1]-C[1]*r[0])\n", - "# Vector notation\n", - "V_n=[]\n", - "V_n[:]=[(a_s/magC)*V[i] for i in range(0,3)]\n", - "# Velocity Magnitude\n", - "magV=math.sqrt(V[0]**2+V[1]**2+V[2]**2)\n", - "v=(a_s/magC)*magV\n", - "# Result\n", - "print(\"The vector notation of velocity is %fi %fj %fk\"%(V_n[0],V_n[1],V_n[2]))\n", - "print(\"The magnitude of the Velocity Vector is %f\"%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.10 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 39, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Moment about point O is 9.000000i -1.000000j+32.000000k\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "# Points as matrices\n", - "O=[-2,3,5]\n", - "P=[1,-2,4]\n", - "Q=[5,2,3]\n", - "F=[4,4,-1] # Force vector\n", - "# Calculations\n", - "# Positon vector , r_2 gives the same answer as r_1\n", - "r_1=(P[0]-O[0],P[1]-O[1],P[2]-O[2])\n", - "# Moment\n", - "# Calculating the cross product\n", - "M=(r_1[1]*F[2]-r_1[2]*F[1],r_1[2]*F[0]-r_1[0]*F[2],r_1[0]*F[1]-r_1[1]*F[0])\n", - "# Results\n", - "print('The Moment about point O is %fi %fj+%fk'%(M[0],M[1],M[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.11 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 40, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The moment of the force is 2.000000i -7.000000j -2.000000k\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "# Points as matrices\n", - "P=[1,-1,2] # Point where force is applied\n", - "O=[2,-1,3] # point where moment is to be found\n", - "F=[3,2,-4] # Force vector\n", - "# Calculations\n", - "# Position vector of point P wrt O\n", - "r=(P[0]-O[0],P[1]-O[1],P[2]-O[2])\n", - "# Moment\n", - "M=(r[1]*F[2]-r[2]*F[1],r[2]*F[0]-r[0]*F[2],r[0]*F[1]-r[1]*F[0])\n", - "# Resuts\n", - "print('The moment of the force is %fi %fj %fk'%(M[0],M[1],M[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.12 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 45, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The moment is -68.000000i + 102.000000j + 0.000000 k\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "f=22 # N \n", - "# Points as matrices\n", - "A=[4,-1,7]\n", - "O=[1,-3,2]\n", - "V=[9,6,-2] # Given vector\n", - "# Calculations\n", - "# Unit vector in the direction of the vector\n", - "denom=math.sqrt(V[0]**2+V[1]**2+V[2]**2)\n", - "v=[V[i]/denom for i in range(0,3)]\n", - "# Force\n", - "F=[f*v[i] for i in range(0,3)]\n", - "# Position vector of point A wrt O\n", - "r=(A[0]-O[0],A[1]-O[1],A[2]-O[2])\n", - "# Moment\n", - "M=(r[1]*F[2]-r[2]*F[1],r[2]*F[0]-r[0]*F[2],r[0]*F[1]-r[1]*F[0])\n", - "# Results\n", - "print('The moment is %fi + %fj + %f k'%(M[0],M[1],M[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.13 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 48, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The components of the force is along u=3.301270 N,along v=-94.282032 N,along w=30.000000 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "# Force Vector\n", - "F=[50,-80,30]\n", - "# from fig.13\n", - "theta1=30 # angles by which the axis is rotated [ all in degrees]\n", - "theta2=60\n", - "theta3=90\n", - "theta4=120\n", - "theta5=0\n", - "# Calculations\n", - "# Unit vector in u-direction\n", - "u_unit=(1*math.cos(theta1*math.pi/180),1*math.cos(theta2*math.pi/180),1*math.cos(theta3*math.pi/180))\n", - "# Unit vector in v-direction\n", - "v_unit=(1*math.cos(theta4*math.pi/180),1*math.cos(theta1*math.pi/180),1*math.cos(theta3*math.pi/180))\n", - "# Unit vector in w-direction\n", - "w_unit=(1*math.cos(theta3*math.pi/180),1*math.cos(theta3*math.pi/180),1*math.cos(theta5*math.pi/180))\n", - "# Components of force\n", - "# finding the dot product as\n", - "u=F[0]*u_unit[0]+F[1]*u_unit[1]+F[2]*u_unit[2] # N\n", - "v=F[0]*v_unit[0]+F[1]*v_unit[1]+F[2]*v_unit[2] # N\n", - "w=F[0]*w_unit[0]+F[1]*w_unit[1]+F[2]*w_unit[2] # N\n", - "# Results\n", - "print('The components of the force is along u=%f N,along v=%f N,along w=%f N'%(u,v,w))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.14 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 64, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The moment of the force about point E is 0.000000i - 44.721360j + 22.360680k N.m\n", - "The moment of force about axis AE is -44.721360 N.m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "f=100 # N # magnitude of force\n", - "# Co-ordinates of corners of the box as matrices\n", - "A=[0,0,0]\n", - "B=[0.5,0,0]\n", - "C=[0.5,0,1]\n", - "D=[0,0,1]\n", - "E=[0,0.5,0]\n", - "F=[0.5,0.5,0]\n", - "G=[0.5,0.5,1]\n", - "H=[0,0.5,1]\n", - "# Calculations\n", - "# Force vector\n", - "Fmag=f/math.sqrt((F[0]-C[0])**2+(F[1]-C[1])**2+(F[2]-C[2])**2)\n", - "F=[Fmag*(F[i]-C[i]) for i in range(0,3)]\n", - "# Position vector\n", - "r_EC=(C[0]-E[0],C[1]-E[1],C[2]-E[2])\n", - "# Moment about point E\n", - "# Calculating the cross product\n", - "M_E=((r_EC[1]*F[2]-r_EC[2]*F[1]),(r_EC[2]*F[0]-r_EC[0]*F[2]),(r_EC[0]*F[1]-r_EC[1]*F[0])) # N.m # The value taken for F is incorrect in textbook.\n", - "# Unit vector\n", - "n_AE=[(E[i]-A[i])/math.sqrt((E[0]-A[0])**2+(E[1]-A[1])**2+(E[2]-A[2])**2) for i in range(0,3)]\n", - "# Moment of force about axis AE\n", - "# finding the dot product\n", - "M_AE=M_E[0]*n_AE[0]+M_E[1]*n_AE[1]+M_E[2]*n_AE[2] # N.m\n", - "# Results\n", - "print('The moment of the force about point E is %fi - %fj + %fk N.m'%M_E)\n", - "print('The moment of force about axis AE is -%f N.m'%M_AE)\n", - "# The value of M_AE & M_E is incorrect in the textbook.Incorrect value of force vector is taken in calculation of M_E\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.16 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The point of application should be shifted to: x=3.800000 m and z=4.100000 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "F=20 # kN # Force acting at O\n", - "M_x=76 # kNm\n", - "M_y=82 # kNm\n", - "# Calculations\n", - "x=M_x/F # m\n", - "z=M_y/F # m\n", - "# Results\n", - "print('The point of application should be shifted to: x=%f m and z=%f m'%(x,z))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.17 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Tension in cable AD is 2282.996811 N\n", - "Tension in cable AB is 2040.860785 N\n", - "Tension in cable AC is 1588.382888 N\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "W=5000 # N\n", - "# Co-ordinates of various points\n", - "A=[0,4.5,0]\n", - "B=[2.8,0,0]\n", - "C=[0,0,-2.4]\n", - "D=[-2.6,0,1.8]\n", - "# Calculations\n", - "# Ref textbook for the values of tenion in the cable AB, AC & AD. The values consist of variables which cannot be defined here\n", - "# We re-arrange and define the equations of equilibrium as matrices and solve them as,\n", - "P=numpy.matrix('0.528,0.0,-0.472;0.0,0.47,-0.327;0.85,0.88,0.818')\n", - "Q=numpy.matrix('0;0;5000')\n", - "X=numpy.linalg.inv(P)*Q\n", - "# Results\n", - "print('Tension in cable AD is %f N'%X[2])\n", - "print('Tension in cable AB is %f N'%X[0])\n", - "print('Tension in cable AC is %f N'%X[1])\n", - "#Ans for T_AB is incorrect in textbook.\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.18 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reactions are: R_A=6.416667 kN ,R_C=3.892857 kN and R_B=-2.309524 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "P=5 # kN\n", - "Q=3 # kN\n", - "C=5 # kNm # couple\n", - "# ref fig.20 # Notations have been assumed\n", - "z1=1.5 # m\n", - "z2=0.625 # m\n", - "z3=0.5 # m\n", - "x1=3.5 # m\n", - "x2=0.625 # m\n", - "# Calculations\n", - "# sum M_x=0\n", - "R_A=((P*z2)+(Q*z3)+C)/z1 # kN\n", - "# M_z=0\n", - "R_C=((Q*x1)+(P*x2))/x1 # kN\n", - "# sum F_y=0\n", - "R_B=P+Q-R_A-R_C # kN\n", - "# Results\n", - "print('The reactions are: R_A=%f kN ,R_C=%f kN and R_B=%f kN'%(R_A,R_C,R_B))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.19 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The components of reaction at A are: A_x=-1.562500 kN , A_y=-1.687500 kN and A_z=6.250000 kN\n", - "The tensions in the cable are: T_FE=5.387931 kN and T_GD=3.810976 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "F=2 # kN\n", - "W=1 # kN\n", - "# Co-ordinates as matrices\n", - "A=[0,0,0]\n", - "C=[0,0,1.2]\n", - "B=[0,0,2.5]\n", - "D=[-1,1,0]\n", - "E=[1,1,0]\n", - "F=[0,0,1]\n", - "G=[0,0,2]\n", - "# Force vector\n", - "f=[0,-2,0]\n", - "# Weight vector\n", - "w=[0,-1,0]\n", - "# Calculations\n", - "# we have 5 unknowns: A_x,A_y,A_z,T_FE & T_GD\n", - "# we define and solve eqn's 1,2,3,4&5 using matrix as,\n", - "P=numpy.matrix('1 0 0 0.58 -0.41;0 1 0 0.58 0.41;0 0 1 -0.58 -0.82;0 0 0 0.58 0.82;0 0 0 0.58 -0.82')\n", - "Q=numpy.matrix('0;3;0;6.25;0')\n", - "X=numpy.linalg.inv(P)*Q\n", - "\n", - "# Results\n", - "print('The components of reaction at A are: A_x=%f kN , A_y=%f kN and A_z=%f kN'%(X[0],X[1],X[2]))\n", - "print('The tensions in the cable are: T_FE=%f kN and T_GD=%f kN'%(X[3],X[4]))\n", - "# The solution in the textbook is incorrect and yeilds singularity in matrix calculation." - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX_LtnuQx0.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX_LtnuQx0.ipynb deleted file mode 100644 index 879e8f3d..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_26_APPENDIX_LtnuQx0.ipynb +++ /dev/null @@ -1,828 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 26 Appendix" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.1 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Position vector is -5.000000i+2.000000j+14.000000k\n", - "The value of r is 15.000000*l i + 15.000000*m j + 15.000000*n k\n", - "The unit vector in the direction of r is -0.333333i+0.133333j+0.933333k\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "P=[-5,2,14] #Point co-ordinates\n", - "#Calculations\n", - "r=math.sqrt(P[0]**2+P[1]**2+P[2]**2) #Magnitude of the poistion vector\n", - "#Direction cosines\n", - "l=P[0]/r \n", - "m=P[1]/r\n", - "n=P[2]/r\n", - "#Unit Vector calculations\n", - "r_unit=[]\n", - "r_unit[:]=[P[i]/r for i in range(0,3)]\n", - "#Results\n", - "print(\"The Position vector is %fi+%fj+%fk\"%(P[0],P[1],P[2]))\n", - "print('The value of r is %f*l i + %f*m j + %f*n k'%(r,r,r))\n", - "print(\"The unit vector in the direction of r is %fi+%fj+%fk\"%(r_unit[0],r_unit[1],r_unit[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.2 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force in vector notation is -1.097643i-9.878783j-1.097643k\n", - "Thetax=96.301726 degrees,Thetay=171.069858 degrees,Thetaz=96.301726 degrees\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilizatin of variable\n", - "F=10 #N\n", - "P_1=[2,4,3] \n", - "P_2=[1,-5,2]\n", - "\n", - "#Calculations\n", - "d_x=P_2[0]-P_1[0]\n", - "d_y=P_2[1]-P_1[1]\n", - "d_z=P_2[2]-P_1[2]\n", - "d=math.sqrt(d_x**2+d_y**2+d_z**2)\n", - "Fx=(F/d)*d_x #N\n", - "Fy=(F/d)*d_y #N\n", - "Fz=(F/d)*d_z #N\n", - "#Direction cosines\n", - "l=Fx/F\n", - "m=Fy/F\n", - "n=Fz/F\n", - "#Angles\n", - "theta_x=math.degrees(math.acos(l)) #degrees\n", - "theta_y=math.degrees(math.acos(m)) #degrees\n", - "theta_z=math.degrees(math.acos(n)) #degrees\n", - "\n", - "#Result\n", - "print(\"The force in vector notation is %fi%fj%fk\"%(Fx,Fy,Fz))\n", - "print(\"Thetax=%f degrees,Thetay=%f degrees,Thetaz=%f degrees\"%(theta_x,theta_y,theta_z)) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.3 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force vector is -1059.997880i+2119.995760j+794.998410k N\n", - "The angles are thetax=115.087329,thetay=32.005383 and thetaz=71.458022 degrees\n" - ] - } - ], - "source": [ - "import math\n", - "#initiliation of variables\n", - "T=2500 #N\n", - "#Co-ordinates\n", - "Q=[40,0,-30]\n", - "P=[0,80,0]\n", - "\n", - "#Calculations\n", - "mag_QP=math.sqrt((P[0]-Q[0])**2+(P[1]-Q[1])**2+(P[2]-Q[2])**2) #Magnitude\n", - "QP=[(P[0]-Q[0]),(P[1]-Q[1]),(P[2]-Q[2])] \n", - "F=[]\n", - "F[:]=[(T/mag_QP)*QP[i] for i in range(0,3)] #N\n", - "thetax=(math.acos(F[0]/T)*180/math.pi) #degrees\n", - "thetay=(math.acos(F[1]/T)*180/math.pi) #degrees\n", - "thetaz=(math.acos(F[2]/T)*180/math.pi) #degrees\n", - "\n", - "#Result\n", - "print(\"The force vector is %fi+%fj+%fk N\"%(F[0],F[1],F[2]))\n", - "#Answer in the textbook is printed as 1600 which is incorrect\n", - "print(\"The angles are thetax=%f,thetay=%f and thetaz=%f degrees\"%(thetax,thetay,thetaz))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.4 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The unit vector is 0.635999i-0.212000j+0.741999k\n" - ] - } - ], - "source": [ - "import math\n", - "#initilization of variables\n", - "A=[2,-1,1]\n", - "B=[1,1,2]\n", - "C=[3,-2,4]\n", - "#Calculations\n", - "R=[A[0]+B[0]+C[0],A[1]+B[1]+C[1],A[2]+B[2]+C[2]] #Resultant\n", - "mag=math.sqrt(R[0]**2+R[1]**2+R[2]**2)\n", - "#Unit vector\n", - "U=[]\n", - "U[:]=[R[i]/mag for i in range(0,3)] \n", - "#Result\n", - "print(\"The unit vector is %fi%fj+%fk\"%(U[0],U[1],U[2]))\n", - "#Answer for (k) is incorrect in the textbook" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.5 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The product of both the vectors is -7.000000\n", - "The angle between them is 101.309932 degrees\n" - ] - } - ], - "source": [ - "import math\n", - "#initilization of variables\n", - "A=[2,-6,-3]\n", - "B=[4,3,-1] \n", - "#Calculations\n", - "AdotB=A[0]*B[0]+A[1]*B[1]+A[2]*B[2] \n", - "magA=math.sqrt(A[0]**2+A[1]**2+A[2]**2) \n", - "magB=math.sqrt(B[0]**2+B[1]**2+B[2]**2)\n", - "theta=math.degrees(math.acos(AdotB/(magA*magB))) #degrees\n", - "\n", - "#Result\n", - "print(\"The product of both the vectors is %f\"%AdotB)\n", - "print(\"The angle between them is %f degrees\"%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.6 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The value of A.costheta is 1.000000\n" - ] - } - ], - "source": [ - "import math\n", - "#initilization of variables\n", - "A=[4,-3,1]\n", - "P=[2,3,-1]\n", - "Q=[-2,-4,3]\n", - "#Calculations\n", - "B=[Q[0]-P[0],Q[1]-P[1],Q[2]-P[2]]\n", - "AdotB=A[0]*B[0]+A[1]*B[1]+A[2]*B[2]\n", - "magB=math.sqrt(B[0]**2+B[1]**2+B[2]**2)\n", - "Acostheta=AdotB/magB\n", - "#Result\n", - "print(\"The value of A.costheta is %f\"%Acostheta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.7 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The work done is 135 units\n" - ] - } - ], - "source": [ - "import numpy as np\n", - "#Initilization of variables\n", - "F=np.array([5,10,-15])\n", - "a=np.array([1,0,3])\n", - "b=np.array([3,-1,-6])\n", - "#Calculations\n", - "d=b-a\n", - "work=F*d\n", - "Work=work[0]+work[1]+work[2]\n", - "#Result\n", - "print(\"The work done is %d units\"%Work)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.8 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 35, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The cross prcoduct of the two vectors is 15.000000i -10.000000j+30.000000k\n", - "The angle between the two is 78.690068 degrees\n" - ] - } - ], - "source": [ - "import math\n", - "#initilization of variables\n", - "A=[2,-6,-3]\n", - "B=[4,3,-1]\n", - "#Calculations\n", - "AcrossB=[A[1]*B[2]-B[1]*A[2],A[2]*B[0]-A[0]*B[2],A[0]*B[1]-A[1]*B[0]]\n", - "mag=math.sqrt(AcrossB[0]**2+AcrossB[1]**2+AcrossB[2]**2)\n", - "n=[AcrossB[i]/mag for i in range(0,3)]\n", - "magA=math.sqrt(A[0]**2+A[1]**2+A[2]**2)\n", - "magB=math.sqrt(B[0]**2+B[1]**2+B[2]**2)\n", - "theta=math.degrees(math.asin(mag/(magA*magB)))\n", - "#Result\n", - "print(\"The cross prcoduct of the two vectors is %fi %fj+%fk\"%(AcrossB[0],AcrossB[1],AcrossB[2])) #the answer for j is wrong in textbook\n", - "print(\"The angle between the two is %f degrees\"%theta)\n", - "# Only 1 value for theta has been solved" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.9 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The vector notation of velocity is 10.474459i -6.110101j -0.436436k\n", - "The magnitude of the Velocity Vector is 12.134171\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of Variable \n", - "# Points As martices\n", - "A=[0,1,2]\n", - "B=[1,3,-2]\n", - "P=[3,6,4]\n", - "a_s=2 # Angular speed in rad/s\n", - "\n", - "# Calculations\n", - "C=(B[0]-A[0],B[1]-A[1],B[2]-A[2])\n", - "magC=(C[0]**2+C[1]**2+C[2]**2)**0.5 # Magnitude of the Vector C \n", - "# Unit vector\n", - "C_unit=(C[0]/magC,C[1]/magC,C[2]/magC) # Unit vector\n", - "# Position Vector\n", - "r=(P[0]-A[0],P[1]-A[1],P[2]-A[2])\n", - "# Velocity Vector\n", - "# Calculating the cross product as,\n", - "V=(C[1]*r[2]-C[2]*r[1],C[2]*r[0]-C[0]*r[2],C[0]*r[1]-C[1]*r[0])\n", - "# Vector notation\n", - "V_n=[]\n", - "V_n[:]=[(a_s/magC)*V[i] for i in range(0,3)]\n", - "# Velocity Magnitude\n", - "magV=math.sqrt(V[0]**2+V[1]**2+V[2]**2)\n", - "v=(a_s/magC)*magV\n", - "# Result\n", - "print(\"The vector notation of velocity is %fi %fj %fk\"%(V_n[0],V_n[1],V_n[2]))\n", - "print(\"The magnitude of the Velocity Vector is %f\"%v)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.10 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Moment about point O is 9.000000i -1.000000j+32.000000k\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "# Points as matrices\n", - "O=[-2,3,5]\n", - "P=[1,-2,4]\n", - "Q=[5,2,3]\n", - "F=[4,4,-1] # Force vector\n", - "# Calculations\n", - "# Positon vector , r_2 gives the same answer as r_1\n", - "r_1=(P[0]-O[0],P[1]-O[1],P[2]-O[2])\n", - "# Moment\n", - "# Calculating the cross product\n", - "M=(r_1[1]*F[2]-r_1[2]*F[1],r_1[2]*F[0]-r_1[0]*F[2],r_1[0]*F[1]-r_1[1]*F[0])\n", - "# Results\n", - "print('The Moment about point O is %fi %fj+%fk'%(M[0],M[1],M[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.11 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 40, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The moment of the force is 2.000000i -7.000000j -2.000000k\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "# Points as matrices\n", - "P=[1,-1,2] # Point where force is applied\n", - "O=[2,-1,3] # point where moment is to be found\n", - "F=[3,2,-4] # Force vector\n", - "# Calculations\n", - "# Position vector of point P wrt O\n", - "r=(P[0]-O[0],P[1]-O[1],P[2]-O[2])\n", - "# Moment\n", - "M=(r[1]*F[2]-r[2]*F[1],r[2]*F[0]-r[0]*F[2],r[0]*F[1]-r[1]*F[0])\n", - "# Resuts\n", - "print('The moment of the force is %fi %fj %fk'%(M[0],M[1],M[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.12 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 45, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The moment is -68.000000i + 102.000000j + 0.000000 k\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "f=22 # N \n", - "# Points as matrices\n", - "A=[4,-1,7]\n", - "O=[1,-3,2]\n", - "V=[9,6,-2] # Given vector\n", - "# Calculations\n", - "# Unit vector in the direction of the vector\n", - "denom=math.sqrt(V[0]**2+V[1]**2+V[2]**2)\n", - "v=[V[i]/denom for i in range(0,3)]\n", - "# Force\n", - "F=[f*v[i] for i in range(0,3)]\n", - "# Position vector of point A wrt O\n", - "r=(A[0]-O[0],A[1]-O[1],A[2]-O[2])\n", - "# Moment\n", - "M=(r[1]*F[2]-r[2]*F[1],r[2]*F[0]-r[0]*F[2],r[0]*F[1]-r[1]*F[0])\n", - "# Results\n", - "print('The moment is %fi + %fj + %f k'%(M[0],M[1],M[2]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.13 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 48, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The components of the force is along u=3.301270 N,along v=-94.282032 N,along w=30.000000 N\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "# Force Vector\n", - "F=[50,-80,30]\n", - "# from fig.13\n", - "theta1=30 # angles by which the axis is rotated [ all in degrees]\n", - "theta2=60\n", - "theta3=90\n", - "theta4=120\n", - "theta5=0\n", - "# Calculations\n", - "# Unit vector in u-direction\n", - "u_unit=(1*math.cos(theta1*math.pi/180),1*math.cos(theta2*math.pi/180),1*math.cos(theta3*math.pi/180))\n", - "# Unit vector in v-direction\n", - "v_unit=(1*math.cos(theta4*math.pi/180),1*math.cos(theta1*math.pi/180),1*math.cos(theta3*math.pi/180))\n", - "# Unit vector in w-direction\n", - "w_unit=(1*math.cos(theta3*math.pi/180),1*math.cos(theta3*math.pi/180),1*math.cos(theta5*math.pi/180))\n", - "# Components of force\n", - "# finding the dot product as\n", - "u=F[0]*u_unit[0]+F[1]*u_unit[1]+F[2]*u_unit[2] # N\n", - "v=F[0]*v_unit[0]+F[1]*v_unit[1]+F[2]*v_unit[2] # N\n", - "w=F[0]*w_unit[0]+F[1]*w_unit[1]+F[2]*w_unit[2] # N\n", - "# Results\n", - "print('The components of the force is along u=%f N,along v=%f N,along w=%f N'%(u,v,w))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.14 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 64, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The moment of the force about point E is 0.000000i - 44.721360j + 22.360680k N.m\n", - "The moment of force about axis AE is -44.721360 N.m\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "f=100 # N # magnitude of force\n", - "# Co-ordinates of corners of the box as matrices\n", - "A=[0,0,0]\n", - "B=[0.5,0,0]\n", - "C=[0.5,0,1]\n", - "D=[0,0,1]\n", - "E=[0,0.5,0]\n", - "F=[0.5,0.5,0]\n", - "G=[0.5,0.5,1]\n", - "H=[0,0.5,1]\n", - "# Calculations\n", - "# Force vector\n", - "Fmag=f/math.sqrt((F[0]-C[0])**2+(F[1]-C[1])**2+(F[2]-C[2])**2)\n", - "F=[Fmag*(F[i]-C[i]) for i in range(0,3)]\n", - "# Position vector\n", - "r_EC=(C[0]-E[0],C[1]-E[1],C[2]-E[2])\n", - "# Moment about point E\n", - "# Calculating the cross product\n", - "M_E=((r_EC[1]*F[2]-r_EC[2]*F[1]),(r_EC[2]*F[0]-r_EC[0]*F[2]),(r_EC[0]*F[1]-r_EC[1]*F[0])) # N.m # The value taken for F is incorrect in textbook.\n", - "# Unit vector\n", - "n_AE=[(E[i]-A[i])/math.sqrt((E[0]-A[0])**2+(E[1]-A[1])**2+(E[2]-A[2])**2) for i in range(0,3)]\n", - "# Moment of force about axis AE\n", - "# finding the dot product\n", - "M_AE=M_E[0]*n_AE[0]+M_E[1]*n_AE[1]+M_E[2]*n_AE[2] # N.m\n", - "# Results\n", - "print('The moment of the force about point E is %fi - %fj + %fk N.m'%M_E)\n", - "print('The moment of force about axis AE is -%f N.m'%M_AE)\n", - "# The value of M_AE & M_E is incorrect in the textbook.Incorrect value of force vector is taken in calculation of M_E\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.16 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The point of application should be shifted to: x=3.800000 m and z=4.100000 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "# Initilization of variables\n", - "F=20 # kN # Force acting at O\n", - "M_x=76 # kNm\n", - "M_y=82 # kNm\n", - "# Calculations\n", - "x=M_x/F # m\n", - "z=M_y/F # m\n", - "# Results\n", - "print('The point of application should be shifted to: x=%f m and z=%f m'%(x,z))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.17 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Tension in cable AD is 2282.996811 N\n", - "Tension in cable AB is 2040.860785 N\n", - "Tension in cable AC is 1588.382888 N\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "W=5000 # N\n", - "# Co-ordinates of various points\n", - "A=[0,4.5,0]\n", - "B=[2.8,0,0]\n", - "C=[0,0,-2.4]\n", - "D=[-2.6,0,1.8]\n", - "# Calculations\n", - "# Ref textbook for the values of tenion in the cable AB, AC & AD. The values consist of variables which cannot be defined here\n", - "# We re-arrange and define the equations of equilibrium as matrices and solve them as,\n", - "P=numpy.matrix('0.528,0.0,-0.472;0.0,0.47,-0.327;0.85,0.88,0.818')\n", - "Q=numpy.matrix('0;0;5000')\n", - "X=numpy.linalg.inv(P)*Q\n", - "# Results\n", - "print('Tension in cable AD is %f N'%X[2])\n", - "print('Tension in cable AB is %f N'%X[0])\n", - "print('Tension in cable AC is %f N'%X[1])\n", - "#Ans for T_AB is incorrect in textbook.\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.18 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reactions are: R_A=6.416667 kN ,R_C=3.892857 kN and R_B=-2.309524 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "# Initilization of variables\n", - "P=5 # kN\n", - "Q=3 # kN\n", - "C=5 # kNm # couple\n", - "# ref fig.20 # Notations have been assumed\n", - "z1=1.5 # m\n", - "z2=0.625 # m\n", - "z3=0.5 # m\n", - "x1=3.5 # m\n", - "x2=0.625 # m\n", - "# Calculations\n", - "# sum M_x=0\n", - "R_A=((P*z2)+(Q*z3)+C)/z1 # kN\n", - "# M_z=0\n", - "R_C=((Q*x1)+(P*x2))/x1 # kN\n", - "# sum F_y=0\n", - "R_B=P+Q-R_A-R_C # kN\n", - "# Results\n", - "print('The reactions are: R_A=%f kN ,R_C=%f kN and R_B=%f kN'%(R_A,R_C,R_B))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 26.19 Appendix" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The components of reaction at A are: A_x=-1.562500 kN , A_y=-1.687500 kN and A_z=6.250000 kN\n", - "The tensions in the cable are: T_FE=5.387931 kN and T_GD=3.810976 kN\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initilization of variables\n", - "F=2 # kN\n", - "W=1 # kN\n", - "# Co-ordinates as matrices\n", - "A=[0,0,0]\n", - "C=[0,0,1.2]\n", - "B=[0,0,2.5]\n", - "D=[-1,1,0]\n", - "E=[1,1,0]\n", - "F=[0,0,1]\n", - "G=[0,0,2]\n", - "# Force vector\n", - "f=[0,-2,0]\n", - "# Weight vector\n", - "w=[0,-1,0]\n", - "# Calculations\n", - "# we have 5 unknowns: A_x,A_y,A_z,T_FE & T_GD\n", - "# we define and solve eqn's 1,2,3,4&5 using matrix as,\n", - "P=numpy.matrix('1 0 0 0.58 -0.41;0 1 0 0.58 0.41;0 0 1 -0.58 -0.82;0 0 0 0.58 0.82;0 0 0 0.58 -0.82')\n", - "Q=numpy.matrix('0;3;0;6.25;0')\n", - "X=numpy.linalg.inv(P)*Q\n", - "\n", - "# Results\n", - "print('The components of reaction at A are: A_x=%f kN , A_y=%f kN and A_z=%f kN'%(X[0],X[1],X[2]))\n", - "print('The tensions in the cable are: T_FE=%f kN and T_GD=%f kN'%(X[3],X[4]))\n", - "# The solution in the textbook is incorrect and yeilds singularity in matrix calculation." - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE.ipynb index c7f48900..95032f1b 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE.ipynb @@ -68,6 +68,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "P=50 #N\n", "Q=100 #N\n", @@ -107,6 +109,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "Tac=3.5 #kN\n", "Tbc=3.5 #kN\n", @@ -143,6 +147,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "lAB=0.4 #m\n", "lBC=0.3 #m\n", @@ -176,6 +182,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "F=1000 #N\n", "lAB=0.5 #m\n", @@ -214,6 +222,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "F3=500 #N\n", "alpha=60 #degree #angle made by F3 with F2\n", @@ -254,6 +264,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "P=5000 #N\n", "lAB=5 #m\n", @@ -297,6 +309,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "W=1000 #N\n", "OD=0.4 #m\n", @@ -337,6 +351,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "W=2500 #N #This load acts at point B and C.\n", "alpha=30 #degree # angle made by T1 with +ve y-axis & T2 with +ve x-axis\n", @@ -373,6 +389,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "d=0.6 #m #diameter of the wheel\n", "r=0.3 #m #radius of the wheel\n", @@ -409,6 +427,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "Soa=1000 #N (tension)\n", "alpha=45 #degree #where alpha=(360/8)\n", @@ -446,6 +466,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "W=500 #N #weight of cylinder\n", "alpha=25 #degree #angle made by OA with horizontal\n", @@ -484,6 +506,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "Wa=1000 #N #weight of sphere A\n", "Wb=400 #N #weight of sphere B\n", @@ -526,6 +550,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "P=50 #N\n", "Q=100 #N\n", @@ -561,6 +587,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "theta1=50.5 #degree #is the angle made between BC & and BE\n", "theta2=36.87 #degree #is te angle ade between BA &BE \n", @@ -599,6 +627,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilazation of variables\n", "F=1000 #N\n", "theta=30 #degree #angle made by the force with the beam AB\n", @@ -636,6 +666,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "#Initilization of variables\n", "W=1000 #N\n", "r=0.30 #m #radius of the wheel\n", @@ -650,22 +682,23 @@ } ], "metadata": { + "anaconda-cloud": {}, "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [Root]", "language": "python", - "name": "python3" + "name": "Python [Root]" }, "language_info": { "codemirror_mode": { "name": "ipython", - "version": 3 + "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" + "pygments_lexer": "ipython2", + "version": "2.7.12" }, "widgets": { "state": {}, diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE_FxwDlhm.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE_FxwDlhm.ipynb deleted file mode 100644 index c7f48900..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE_FxwDlhm.ipynb +++ /dev/null @@ -1,677 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 2 Parallel Forces in a Plane" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.1 CFP" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of resultant is 145.465646 Newton (N)\n", - "The direction of resultant is 35.103909 degree\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "P=50 #N\n", - "Q=100 #N\n", - "beta=150 #degree # angle between P & the horizontal\n", - "#Calculations\n", - "R=math.sqrt(P**2+Q**2-(2*P*Q*math.cos(beta*math.pi/180))) # using the Trignometric solution\n", - "Alpha=math.degrees(math.asin((math.sin(beta*math.pi/180)*Q)/R))+15\n", - "#Result\n", - "print('The magnitude of resultant is %f Newton (N)'%R)\n", - "print('The direction of resultant is %f degree'%Alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.2 Addition of concurrent forces" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of the resultant is 145.465646 N\n", - "The ange of the resultant with x-axis is 35.103909 degree\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "P=50 #N\n", - "Q=100 #N\n", - "beta=15 #degree # angle between P& the horizontal\n", - "theta=45 #degree # angle between the resultant (R) & the horizontal\n", - "#Calculations\n", - "Rx=P*math.cos(beta*math.pi/180)+Q*math.cos(theta*math.pi/180) #N\n", - "Ry=P*math.sin(beta*math.pi/180)+Q*math.sin(theta*math.pi/180) #N\n", - "R=math.sqrt((Rx**2)+(Ry**2)) #N\n", - "alpha=math.degrees(math.atan(Ry/Rx)) #degree\n", - "#Results\n", - "print('The magnitude of the resultant is %f N'%R)\n", - "print('The ange of the resultant with x-axis is %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.4 Equilibrium equations" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum force that can be applied is 4.015035 kN\n", - "The direction of applied force is 75.000000 degree\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "Tac=3.5 #kN\n", - "Tbc=3.5 #kN\n", - "alpha=20 #degree #angle made by Tac with -ve X axis\n", - "beta=50 #degree #angle made by Tbc with +ve X axis\n", - "#Calculations\n", - "theta=math.degrees(math.atan(((Tac*math.sin(alpha*math.pi/180))+(Tbc*math.sin(beta*math.pi/180)))/((Tac*math.cos(alpha*math.pi/180))-(Tbc*math.cos(beta*math.pi/180))))) #degree\n", - "P=Tac*(math.cos(alpha*math.pi/180)-math.cos(beta*math.pi/180))/(math.cos(theta*math.pi/180)) #kN # from eq'n 1\n", - "#Results\n", - "print('The maximum force that can be applied is %f kN'%P)\n", - "print('The direction of applied force is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.8 Equilibrium of a body subjected to two forces" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle which the force should make with the horizontal to keep the edge AB of the body vertical 53.130102 degree\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "lAB=0.4 #m\n", - "lBC=0.3 #m\n", - "#Calculations\n", - "alpha=math.degrees(math.atan(lAB/lBC)) #degree\n", - "#Results\n", - "print('The angle which the force should make with the horizontal to keep the edge AB of the body vertical %f degree'%alpha) #here alpha=theta" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.9 Equilibrium of a body subjected to three forces" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the bar AC(by aw of concurrent forces) is 781.024968 N\n", - "The axial force in the bar BC(by aw of concurrent forces) is 640.312424 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "F=1000 #N\n", - "lAB=0.5 #m\n", - "lDC=0.25 #m #length of the perpendicular drawn from point C to AB\n", - "#Calculations\n", - "lAC=math.sqrt((0.3)**2+(0.25)**2) #m\n", - "lBC=math.sqrt((0.20)**2+(0.25)**2) #m\n", - "Sac=(lAC*F)/(lAB) #N #by law of concurrent forces\n", - "Sbc=(lBC*F)/(lAB) #N #by law of concurrent forces\n", - "#Results\n", - "print('The axial force in the bar AC(by aw of concurrent forces) is %f N'%Sac)\n", - "print('The axial force in the bar BC(by aw of concurrent forces) is %f N'%Sbc)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.10 Equilibrium of a body subjected to three forces" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force F1 is 439.692621 N\n", - "The force F2 is 326.351822 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "F3=500 #N\n", - "alpha=60 #degree #angle made by F3 with F2\n", - "beta=40 #degree #angle made by F1 with F3\n", - "theta=80 #degree #angle made by F1 with F2\n", - "#Calculations\n", - "# Solving by using law of sines\n", - "F1=(F3*math.sin(alpha*math.pi/180)/math.sin(theta*math.pi/180)) #N #by law of sines\n", - "F2=(F3*math.sin(beta*math.pi/180)/math.sin(theta*math.pi/180)) #N #by law of sines\n", - "#Resuts\n", - "print('The force F1 is %f N'%F1)\n", - "print('The force F2 is %f N'%F2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.11 Reaction at the hinge" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The X component of reaction at A is 4330.127019 N\n", - "The Y component of reaction at A is 1249.674658 N\n", - "The reaction at support A is 4506.848871 N\n", - "The reaction at support B is 1250.325342 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "P=5000 #N\n", - "lAB=5 #m\n", - "lOB=1.443 # m\n", - "alpha=30 #degree #angle made by force P with the beam\n", - "#Calculations\n", - "theta=math.degrees(math.atan(lOB/lAB)) # degree # eq'n 1\n", - "Xa=(P*math.cos(alpha*math.pi/180)) #N #using eq'n 4\n", - "Ya=Xa*math.tan(theta*math.pi/180) #N # from eq'n 3 & 4\n", - "Rb=P*math.sin(alpha*math.pi/180)-Ya # N from eq'n 5# substuting value of Ya in eq'n 5\n", - "Ra=math.sqrt((Xa**2)+(Ya**2)) #N\n", - "#Results\n", - "print('The X component of reaction at A is %f N'%Xa)\n", - "print('The Y component of reaction at A is %f N'%Ya)\n", - "print('The reaction at support A is %f N'%Ra)\n", - "print('The reaction at support B is %f N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.12 Reaction at the hinge" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at support A is 1250.000000 N\n", - "The reaction at support B is 750.000000 N\n", - "The angle that Rc makes with horizontal 53.130102 degree\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "W=1000 #N\n", - "OD=0.4 #m\n", - "AD=0.3 #m\n", - "AO=0.5 #m #AO=sqrt((0.4)**2+(0.3)**2)\n", - "#Calculations\n", - "Ra=W*AO/OD #N # The answer of Ra in the textbook is incorrect\n", - "Rc=W*AD/OD #N\n", - "alpha=math.degrees(math.atan(OD/AD)) #degree\n", - "#Results\n", - "print('The reaction at support A is %f N'%Ra)\n", - "print('The reaction at support B is %f N'%Rc)\n", - "print('The angle that Rc makes with horizontal %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.13 Reaction at the hinge" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Tension in portion AB is 4328.394968 N\n", - "Tension in portion BC is 2499.000000 N\n", - "Tension in portion CD is 2499.000000 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "W=2500 #N #This load acts at point B and C.\n", - "alpha=30 #degree # angle made by T1 with +ve y-axis & T2 with +ve x-axis\n", - "#Calculations\n", - "T2=W-(((math.cos(alpha*math.pi/180))**2/(math.sin(alpha*math.pi/180)))-(math.sin(alpha*math.pi/180))) # N # substuting eq'n 1 in 2\n", - "T1=(T2*math.cos(30*math.pi/180))/(math.sin(30*math.pi/180)) #N # using eq'n 1\n", - "T3=T2 #N # By equilibrium eq'n at point C(sumFx=0)\n", - "#Results\n", - "print('Tension in portion AB is %f N'%T1)\n", - "print('Tension in portion BC is %f N'%T2)\n", - "print('Tension in portion CD is %f N'%T3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.15 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force P so that the wheel is just to roll over the block is 577.350269 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "d=0.6 #m #diameter of the wheel\n", - "r=0.3 #m #radius of the wheel\n", - "W=1000 #N #weight of the wheel\n", - "h=0.15 #m #height of rectangular block\n", - "#Calculations\n", - "theta=math.atan((math.sqrt(h))/(math.sqrt(d-h)))\n", - "P=(W*math.tan(theta)) #N # dividing eq'n 1 & 2\n", - "#Resuts\n", - "print('The force P so that the wheel is just to roll over the block is %f N'%P)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.16 Equilibrium of a Body" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the bar AB is 1306.562965 N\n", - "The axial force in the bar OB is 1000.000000 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "Soa=1000 #N (tension)\n", - "alpha=45 #degree #where alpha=(360/8)\n", - "theta=67.5 #degree #angle made by bar AO with AB &AH\n", - "#Calcultions\n", - "Sab=Soa*(math.sin(theta*math.pi/180)/math.sin(alpha*math.pi/180)) # N # Using law of sines\n", - "Sah=Sab #N\n", - "Sob=(Sab*math.sin((180-2*(theta))*math.pi/180))/math.sin(theta*math.pi/180) #N\n", - "#Results\n", - "print('The axial force in the bar AB is %f N'%Sab) #Compression\n", - "print('The axial force in the bar OB is %f N'%Sob) #Tension" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.17 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at A is 453.153894 N\n", - "The reaction at B is 211.309131 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "W=500 #N #weight of cylinder\n", - "alpha=25 #degree #angle made by OA with horizontal\n", - "beta=65 #degree #angle made by OB with horizontal\n", - "theta=90 #degree # theta=(alpha+beta)\n", - "#Calculations\n", - "Ra=(W*math.sin(beta*math.pi/180))/math.sin(theta*math.pi/180) #N #from equilibrium eq'n\n", - "Rb=(W*math.sin(alpha*math.pi/180))/math.sin(theta*math.pi/180) #N #from equilibrium eqn's\n", - "#Results\n", - "print('The reaction at A is %f N'%Ra)\n", - "print('The reaction at B is %f N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.18 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at point P is 268.383687 N\n", - "The reaction at point L is 309.902788 N\n", - "The reaction at point N is 1245.048606 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "Wa=1000 #N #weight of sphere A\n", - "Wb=400 #N #weight of sphere B\n", - "Ra=0.09 #m #radius of sphere A\n", - "Rb=0.05 #m #radius of sphere B\n", - "theta=33.86 #degree #angle made by Rq with Wb\n", - "alpha=60 #degree #angle made by Rl with horizontal\n", - "#Calculations\n", - "Rq=Wb/math.cos(theta*math.pi/180) #N #using sum Fy=0 for sphere B\n", - "Rp=Rq*math.sin(theta*math.pi/180) #N #using sum Fx=0 for sphere B\n", - "Rl=(Rq*math.sin(theta*math.pi/180))/math.sin(alpha*math.pi/180) #N #using sum Fx=0 for sphere A\n", - "Rn=((Wa)+(Rq*math.cos(theta*math.pi/180))-(Rl*math.cos(alpha*math.pi/180))) #N\n", - "#Results\n", - "print('The reaction at point P is %f N'%Rp)\n", - "print('The reaction at point L is %f N'%Rl)\n", - "print('The reaction at point N is %f N'%Rn)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.19 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The tension in the string is 66.143783 N\n", - "The angle wich the string makes with the horizontal when the system is in equilibrium is 10.893395 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "P=50 #N\n", - "Q=100 #N\n", - "alpha=30 #degree #angle made by Rq with +ve Y-axis\n", - "#Calculations\n", - "theta=math.degrees(math.atan((P*1/math.tan(alpha*math.pi/180)-Q*math.tan(alpha*math.pi/180))/(P+Q))) #degree\n", - "T=Q/(math.cos(theta*math.pi/180)*1/math.tan(alpha*math.pi/180)-math.sin(theta*math.pi/180)) #N\n", - "#Results\n", - "print('The tension in the string is %f N'%T)\n", - "print('The angle wich the string makes with the horizontal when the system is in equilibrium is %f N'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.20 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction between the cylinder A and the wall of the channel is 784.797079 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "theta1=50.5 #degree #is the angle made between BC & and BE\n", - "theta2=36.87 #degree #is te angle ade between BA &BE \n", - "g=9.81 #m/s**2\n", - "Wa=15*g #N\n", - "Wb=40*g #N\n", - "Wc=20*g #N\n", - "#Calculations\n", - "R2=Wc/(math.sin(theta1*math.pi/180)) #N #from F.B.D of cylinder C(sum Fy=0)\n", - "R4=(Wb+R2*math.sin(theta1*math.pi/180))/math.sin(theta2*math.pi/180) #N #from F.B.D of cylinder B(sum Fy=0)\n", - "R6=R4*math.cos(theta2*math.pi/180) #N #from F.B.D of cylinder A(sum Fx=0)\n", - "#Results\n", - "print('The reaction between the cylinder A and the wall of the channel is %f N'%R6)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.21 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at D due to force of 1000 N acting at B is 500.000000 N\n" - ] - } - ], - "source": [ - "#Initilazation of variables\n", - "F=1000 #N\n", - "theta=30 #degree #angle made by the force with the beam AB\n", - "Lab=3 #m\n", - "Lae=2 #m\n", - "Lce=1 #m\n", - "#Calculations\n", - "Re=(F*Lab*math.sin(theta*math.pi/180))/Lae #N #Taking moment at A\n", - "Rd=(Re*Lce)/(Lab*math.sin(theta*math.pi/180)) #N #Taking moment about C\n", - "#Results\n", - "print('The reaction at D due to force of 1000 N acting at B is %f N'%Rd)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.23 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 37, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The least force required to just turn the wheel over the block is 866.025404 N\n", - "The angle wich should be made by Pmini with AC is 90.000000 degree\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "W=1000 #N\n", - "r=0.30 #m #radius of the wheel\n", - "h=0.15 #m #height of the obstacle\n", - "#Calculations\n", - "theta=math.degrees(math.asin(1)) #degree #P is mini when sin(theta)=1 from eq'n of P\n", - "Pmini=(W*math.sqrt((2*r*h)-(h**2)))/(r*math.sin(theta*math.pi/180)) #N\n", - "#Results\n", - "print('The least force required to just turn the wheel over the block is %f N'%Pmini)\n", - "print('The angle wich should be made by Pmini with AC is %f degree'%theta)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE_otZIEVC.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE_otZIEVC.ipynb deleted file mode 100644 index 95032f1b..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_2_CONCURRENT_FORCES_IN_A_PLANE_otZIEVC.ipynb +++ /dev/null @@ -1,710 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 2 Parallel Forces in a Plane" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.1 CFP" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of resultant is 145.465646 Newton (N)\n", - "The direction of resultant is 35.103909 degree\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "P=50 #N\n", - "Q=100 #N\n", - "beta=150 #degree # angle between P & the horizontal\n", - "#Calculations\n", - "R=math.sqrt(P**2+Q**2-(2*P*Q*math.cos(beta*math.pi/180))) # using the Trignometric solution\n", - "Alpha=math.degrees(math.asin((math.sin(beta*math.pi/180)*Q)/R))+15\n", - "#Result\n", - "print('The magnitude of resultant is %f Newton (N)'%R)\n", - "print('The direction of resultant is %f degree'%Alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.2 Addition of concurrent forces" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The magnitude of the resultant is 145.465646 N\n", - "The ange of the resultant with x-axis is 35.103909 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "P=50 #N\n", - "Q=100 #N\n", - "beta=15 #degree # angle between P& the horizontal\n", - "theta=45 #degree # angle between the resultant (R) & the horizontal\n", - "#Calculations\n", - "Rx=P*math.cos(beta*math.pi/180)+Q*math.cos(theta*math.pi/180) #N\n", - "Ry=P*math.sin(beta*math.pi/180)+Q*math.sin(theta*math.pi/180) #N\n", - "R=math.sqrt((Rx**2)+(Ry**2)) #N\n", - "alpha=math.degrees(math.atan(Ry/Rx)) #degree\n", - "#Results\n", - "print('The magnitude of the resultant is %f N'%R)\n", - "print('The ange of the resultant with x-axis is %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.4 Equilibrium equations" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The maximum force that can be applied is 4.015035 kN\n", - "The direction of applied force is 75.000000 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "Tac=3.5 #kN\n", - "Tbc=3.5 #kN\n", - "alpha=20 #degree #angle made by Tac with -ve X axis\n", - "beta=50 #degree #angle made by Tbc with +ve X axis\n", - "#Calculations\n", - "theta=math.degrees(math.atan(((Tac*math.sin(alpha*math.pi/180))+(Tbc*math.sin(beta*math.pi/180)))/((Tac*math.cos(alpha*math.pi/180))-(Tbc*math.cos(beta*math.pi/180))))) #degree\n", - "P=Tac*(math.cos(alpha*math.pi/180)-math.cos(beta*math.pi/180))/(math.cos(theta*math.pi/180)) #kN # from eq'n 1\n", - "#Results\n", - "print('The maximum force that can be applied is %f kN'%P)\n", - "print('The direction of applied force is %f degree'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.8 Equilibrium of a body subjected to two forces" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle which the force should make with the horizontal to keep the edge AB of the body vertical 53.130102 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "lAB=0.4 #m\n", - "lBC=0.3 #m\n", - "#Calculations\n", - "alpha=math.degrees(math.atan(lAB/lBC)) #degree\n", - "#Results\n", - "print('The angle which the force should make with the horizontal to keep the edge AB of the body vertical %f degree'%alpha) #here alpha=theta" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.9 Equilibrium of a body subjected to three forces" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the bar AC(by aw of concurrent forces) is 781.024968 N\n", - "The axial force in the bar BC(by aw of concurrent forces) is 640.312424 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "F=1000 #N\n", - "lAB=0.5 #m\n", - "lDC=0.25 #m #length of the perpendicular drawn from point C to AB\n", - "#Calculations\n", - "lAC=math.sqrt((0.3)**2+(0.25)**2) #m\n", - "lBC=math.sqrt((0.20)**2+(0.25)**2) #m\n", - "Sac=(lAC*F)/(lAB) #N #by law of concurrent forces\n", - "Sbc=(lBC*F)/(lAB) #N #by law of concurrent forces\n", - "#Results\n", - "print('The axial force in the bar AC(by aw of concurrent forces) is %f N'%Sac)\n", - "print('The axial force in the bar BC(by aw of concurrent forces) is %f N'%Sbc)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.10 Equilibrium of a body subjected to three forces" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force F1 is 439.692621 N\n", - "The force F2 is 326.351822 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "F3=500 #N\n", - "alpha=60 #degree #angle made by F3 with F2\n", - "beta=40 #degree #angle made by F1 with F3\n", - "theta=80 #degree #angle made by F1 with F2\n", - "#Calculations\n", - "# Solving by using law of sines\n", - "F1=(F3*math.sin(alpha*math.pi/180)/math.sin(theta*math.pi/180)) #N #by law of sines\n", - "F2=(F3*math.sin(beta*math.pi/180)/math.sin(theta*math.pi/180)) #N #by law of sines\n", - "#Resuts\n", - "print('The force F1 is %f N'%F1)\n", - "print('The force F2 is %f N'%F2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.11 Reaction at the hinge" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The X component of reaction at A is 4330.127019 N\n", - "The Y component of reaction at A is 1249.674658 N\n", - "The reaction at support A is 4506.848871 N\n", - "The reaction at support B is 1250.325342 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "P=5000 #N\n", - "lAB=5 #m\n", - "lOB=1.443 # m\n", - "alpha=30 #degree #angle made by force P with the beam\n", - "#Calculations\n", - "theta=math.degrees(math.atan(lOB/lAB)) # degree # eq'n 1\n", - "Xa=(P*math.cos(alpha*math.pi/180)) #N #using eq'n 4\n", - "Ya=Xa*math.tan(theta*math.pi/180) #N # from eq'n 3 & 4\n", - "Rb=P*math.sin(alpha*math.pi/180)-Ya # N from eq'n 5# substuting value of Ya in eq'n 5\n", - "Ra=math.sqrt((Xa**2)+(Ya**2)) #N\n", - "#Results\n", - "print('The X component of reaction at A is %f N'%Xa)\n", - "print('The Y component of reaction at A is %f N'%Ya)\n", - "print('The reaction at support A is %f N'%Ra)\n", - "print('The reaction at support B is %f N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.12 Reaction at the hinge" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at support A is 1250.000000 N\n", - "The reaction at support B is 750.000000 N\n", - "The angle that Rc makes with horizontal 53.130102 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "W=1000 #N\n", - "OD=0.4 #m\n", - "AD=0.3 #m\n", - "AO=0.5 #m #AO=sqrt((0.4)**2+(0.3)**2)\n", - "#Calculations\n", - "Ra=W*AO/OD #N # The answer of Ra in the textbook is incorrect\n", - "Rc=W*AD/OD #N\n", - "alpha=math.degrees(math.atan(OD/AD)) #degree\n", - "#Results\n", - "print('The reaction at support A is %f N'%Ra)\n", - "print('The reaction at support B is %f N'%Rc)\n", - "print('The angle that Rc makes with horizontal %f degree'%alpha)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.13 Reaction at the hinge" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Tension in portion AB is 4328.394968 N\n", - "Tension in portion BC is 2499.000000 N\n", - "Tension in portion CD is 2499.000000 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "W=2500 #N #This load acts at point B and C.\n", - "alpha=30 #degree # angle made by T1 with +ve y-axis & T2 with +ve x-axis\n", - "#Calculations\n", - "T2=W-(((math.cos(alpha*math.pi/180))**2/(math.sin(alpha*math.pi/180)))-(math.sin(alpha*math.pi/180))) # N # substuting eq'n 1 in 2\n", - "T1=(T2*math.cos(30*math.pi/180))/(math.sin(30*math.pi/180)) #N # using eq'n 1\n", - "T3=T2 #N # By equilibrium eq'n at point C(sumFx=0)\n", - "#Results\n", - "print('Tension in portion AB is %f N'%T1)\n", - "print('Tension in portion BC is %f N'%T2)\n", - "print('Tension in portion CD is %f N'%T3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.15 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force P so that the wheel is just to roll over the block is 577.350269 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "d=0.6 #m #diameter of the wheel\n", - "r=0.3 #m #radius of the wheel\n", - "W=1000 #N #weight of the wheel\n", - "h=0.15 #m #height of rectangular block\n", - "#Calculations\n", - "theta=math.atan((math.sqrt(h))/(math.sqrt(d-h)))\n", - "P=(W*math.tan(theta)) #N # dividing eq'n 1 & 2\n", - "#Resuts\n", - "print('The force P so that the wheel is just to roll over the block is %f N'%P)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.16 Equilibrium of a Body" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the bar AB is 1306.562965 N\n", - "The axial force in the bar OB is 1000.000000 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "Soa=1000 #N (tension)\n", - "alpha=45 #degree #where alpha=(360/8)\n", - "theta=67.5 #degree #angle made by bar AO with AB &AH\n", - "#Calcultions\n", - "Sab=Soa*(math.sin(theta*math.pi/180)/math.sin(alpha*math.pi/180)) # N # Using law of sines\n", - "Sah=Sab #N\n", - "Sob=(Sab*math.sin((180-2*(theta))*math.pi/180))/math.sin(theta*math.pi/180) #N\n", - "#Results\n", - "print('The axial force in the bar AB is %f N'%Sab) #Compression\n", - "print('The axial force in the bar OB is %f N'%Sob) #Tension" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.17 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at A is 453.153894 N\n", - "The reaction at B is 211.309131 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "W=500 #N #weight of cylinder\n", - "alpha=25 #degree #angle made by OA with horizontal\n", - "beta=65 #degree #angle made by OB with horizontal\n", - "theta=90 #degree # theta=(alpha+beta)\n", - "#Calculations\n", - "Ra=(W*math.sin(beta*math.pi/180))/math.sin(theta*math.pi/180) #N #from equilibrium eq'n\n", - "Rb=(W*math.sin(alpha*math.pi/180))/math.sin(theta*math.pi/180) #N #from equilibrium eqn's\n", - "#Results\n", - "print('The reaction at A is %f N'%Ra)\n", - "print('The reaction at B is %f N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.18 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at point P is 268.383687 N\n", - "The reaction at point L is 309.902788 N\n", - "The reaction at point N is 1245.048606 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "Wa=1000 #N #weight of sphere A\n", - "Wb=400 #N #weight of sphere B\n", - "Ra=0.09 #m #radius of sphere A\n", - "Rb=0.05 #m #radius of sphere B\n", - "theta=33.86 #degree #angle made by Rq with Wb\n", - "alpha=60 #degree #angle made by Rl with horizontal\n", - "#Calculations\n", - "Rq=Wb/math.cos(theta*math.pi/180) #N #using sum Fy=0 for sphere B\n", - "Rp=Rq*math.sin(theta*math.pi/180) #N #using sum Fx=0 for sphere B\n", - "Rl=(Rq*math.sin(theta*math.pi/180))/math.sin(alpha*math.pi/180) #N #using sum Fx=0 for sphere A\n", - "Rn=((Wa)+(Rq*math.cos(theta*math.pi/180))-(Rl*math.cos(alpha*math.pi/180))) #N\n", - "#Results\n", - "print('The reaction at point P is %f N'%Rp)\n", - "print('The reaction at point L is %f N'%Rl)\n", - "print('The reaction at point N is %f N'%Rn)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.19 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The tension in the string is 66.143783 N\n", - "The angle wich the string makes with the horizontal when the system is in equilibrium is 10.893395 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "P=50 #N\n", - "Q=100 #N\n", - "alpha=30 #degree #angle made by Rq with +ve Y-axis\n", - "#Calculations\n", - "theta=math.degrees(math.atan((P*1/math.tan(alpha*math.pi/180)-Q*math.tan(alpha*math.pi/180))/(P+Q))) #degree\n", - "T=Q/(math.cos(theta*math.pi/180)*1/math.tan(alpha*math.pi/180)-math.sin(theta*math.pi/180)) #N\n", - "#Results\n", - "print('The tension in the string is %f N'%T)\n", - "print('The angle wich the string makes with the horizontal when the system is in equilibrium is %f N'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.20 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction between the cylinder A and the wall of the channel is 784.797079 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "theta1=50.5 #degree #is the angle made between BC & and BE\n", - "theta2=36.87 #degree #is te angle ade between BA &BE \n", - "g=9.81 #m/s**2\n", - "Wa=15*g #N\n", - "Wb=40*g #N\n", - "Wc=20*g #N\n", - "#Calculations\n", - "R2=Wc/(math.sin(theta1*math.pi/180)) #N #from F.B.D of cylinder C(sum Fy=0)\n", - "R4=(Wb+R2*math.sin(theta1*math.pi/180))/math.sin(theta2*math.pi/180) #N #from F.B.D of cylinder B(sum Fy=0)\n", - "R6=R4*math.cos(theta2*math.pi/180) #N #from F.B.D of cylinder A(sum Fx=0)\n", - "#Results\n", - "print('The reaction between the cylinder A and the wall of the channel is %f N'%R6)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.21 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at D due to force of 1000 N acting at B is 500.000000 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilazation of variables\n", - "F=1000 #N\n", - "theta=30 #degree #angle made by the force with the beam AB\n", - "Lab=3 #m\n", - "Lae=2 #m\n", - "Lce=1 #m\n", - "#Calculations\n", - "Re=(F*Lab*math.sin(theta*math.pi/180))/Lae #N #Taking moment at A\n", - "Rd=(Re*Lce)/(Lab*math.sin(theta*math.pi/180)) #N #Taking moment about C\n", - "#Results\n", - "print('The reaction at D due to force of 1000 N acting at B is %f N'%Rd)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 2.23 Equilibrium of a body" - ] - }, - { - "cell_type": "code", - "execution_count": 37, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The least force required to just turn the wheel over the block is 866.025404 N\n", - "The angle wich should be made by Pmini with AC is 90.000000 degree\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "W=1000 #N\n", - "r=0.30 #m #radius of the wheel\n", - "h=0.15 #m #height of the obstacle\n", - "#Calculations\n", - "theta=math.degrees(math.asin(1)) #degree #P is mini when sin(theta)=1 from eq'n of P\n", - "Pmini=(W*math.sqrt((2*r*h)-(h**2)))/(r*math.sin(theta*math.pi/180)) #N\n", - "#Results\n", - "print('The least force required to just turn the wheel over the block is %f N'%Pmini)\n", - "print('The angle wich should be made by Pmini with AC is %f degree'%theta)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_3_PARALLEL_FORCES_IN_A_PLANE_bXdpI6Q.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_3_PARALLEL_FORCES_IN_A_PLANE_bXdpI6Q.ipynb deleted file mode 100644 index c0361f6a..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_3_PARALLEL_FORCES_IN_A_PLANE_bXdpI6Q.ipynb +++ /dev/null @@ -1,605 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 3 Parallel forces in a plane" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.1 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The load taken by man P is 400 N\n", - "The load taken by man Q is 600 N\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "W=1000 #N\n", - "Lab=1 #m\n", - "Lac=0.6 #m\n", - "theta=60 #degree #angle made by the beam with the horizontal\n", - "#Calculations\n", - "Q=(W*Lac*math.cos(theta*180/math.pi))/(Lab*math.cos(theta*180/math.pi)) #N # from eq'n 2\n", - "P=W-Q #N # from eq'n 1\n", - "#Results\n", - "print('The load taken by man P is %d N'%P)\n", - "print('The load taken by man Q is %d N'%Q)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.2 Resultant of forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction (downwards)at support A is 250 N\n", - "The reaction (upwards)at support B is 1250 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "F=1000 #N\n", - "Lab=1 #m\n", - "Lbc=0.25 #m\n", - "Lac=1.25 #m\n", - "#Calculations\n", - "Rb=(F*Lac)/Lab #N # from eq'n 2\n", - "Ra=Rb-F #N # fom eq'n 1\n", - "#Results\n", - "print('The reaction (downwards)at support A is %d N'%Ra)\n", - "print('The reaction (upwards)at support B is %d N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.3 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The vertical reaction (upwards) at A is 0.833333 kN\n", - "The horizontal reaction (towards A) is -20.000000 kN\n", - "The reaction (downwards) at B is -0.833333 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Inilitization of variables\n", - "Lab=12 #m\n", - "Mc=40 #kN-m \n", - "Md=10 #kN-m\n", - "Me=20 #kN-m\n", - "Fe=20 #kN #force acting at point E\n", - "#Calculations\n", - "Xa=-(Fe) #kN #take sum Fx=0\n", - "Rb=(Md+Me-Mc)/Lab #N #take moment at A\n", - "Ya=-Rb #N #take sum Fy=0\n", - "#Results\n", - "print('The vertical reaction (upwards) at A is %f kN'%Ya)\n", - "print('The horizontal reaction (towards A) is %d kN'%Xa)\n", - "print('The reaction (downwards) at B is %f kN'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.5 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at F i.e Rf is 3500.000000 N\n", - "The reaction at D i.e Rd is 1000.000000 N\n", - "The reaction at pt E i.e Re is 833.333333 N\n", - "The reaction at pt A i.e Ra is -333.333333 N\n" - ] - } - ], - "source": [ - "import numpy\n", - "#Initilization of variables\n", - "W=1000 #N\n", - "Lad=7.5 #m\n", - "Lae=1.5 #m\n", - "La1=3.75 #m #distance of 1st 1000N load from pt A\n", - "La2=5 #m #distance of 2nd 1000N load from pt A\n", - "La3=6 #m # distance of 3rd 1000N load from pt A\n", - "# Calculations (part1)\n", - "#using matrix to solve the given eqn's 1 & 2\n", - "A=numpy.matrix('1 -2.5;3.5 -5')\n", - "B=numpy.matrix('1000;7250')\n", - "C=numpy.linalg.inv(A)*B\n", - "#Calculations (part 2)\n", - "#Consider combined F.B.D of beams AB,BC &CD. Take moment at A\n", - "Re=((W*La1)+(W*La2)+(W*La3)+(C[1]*Lad)-(C[0]*La3))/Lae #N\n", - "Ra=C[1]-Re-C[0]+(3*W) #N #Taking sum of forces in Y direction\n", - "#Results\n", - "print('The reaction at F i.e Rf is %f N'%C[0])\n", - "print('The reaction at D i.e Rd is %f N'%C[1])\n", - "print('The reaction at pt E i.e Re is %f N'%Re)\n", - "print('The reaction at pt A i.e Ra is %f N'%Ra) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.6 Resultant of forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle theta is 15.945396 degrees\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=100 # N #force acting at D\n", - "AB=50 # N # weight of bar ab\n", - "CD=50 # N # weight of bar cd\n", - "# Calculations\n", - "# From the derived expression the value of the angle is given as,\n", - "theta=math.degrees(math.atan(5/17.5)) #degrees\n", - "# Results\n", - "print('The angle theta is %f degrees'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.7 Resultant of forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at wheel A is 0.950000 kN\n", - "The reaction at wheel B is 0.950000 kN\n", - "The reaction at wheel C is 0.600000 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "Ws=2 #kN #weight of scooter\n", - "Wd=0.5 #kN #weight of driver\n", - "Lab=1 #m\n", - "Led=0.8 #m\n", - "Leg=0.1 #m\n", - "#Calculations\n", - "Rc=((2*Leg)+(Wd*Led))/Lab #kN #take moment at E\n", - "Ra=(2+Wd-Rc)/2 # kN # as Ra=Rb,(Ra+Rb=2*Ra)\n", - "Rb=Ra # kN\n", - "#Results\n", - "print('The reaction at wheel A is %f kN'%Ra)\n", - "print('The reaction at wheel B is %f kN'%Rb)\n", - "print('The reaction at wheel C is %f kN'%Rc)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.8 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction for single force is -60 N\n", - "The distance of Ry from A is 0.783333 m\n", - "The moment at A is -47 N-m\n", - "The moment at B is 25.020000 N-m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "W1=15 #N #up\n", - "W2=60 #N #down\n", - "W3=10 #N #up\n", - "W4=25 #N #down\n", - "Lab=1.2 #m\n", - "Lac=0.4 #m\n", - "Lcd=0.3 #m\n", - "Ldb=0.5 #m\n", - "Lad=0.7 #m\n", - "Leb=0.417 #m #Leb=Lab-x\n", - "#Calculations\n", - "#(a) A single force\n", - "Ry=W1-W2+W3-W4 #N #take sum Fy=0\n", - "x=((-W2*Lac)+(W3*Lad)-(W4*Lab))/(Ry) #m\n", - "# (b) Single force moment at A\n", - "Ma=(Ry*x) #N-m\n", - "# Single force moment at B\n", - "Mb=W2*Leb #N-m\n", - "#Results\n", - "print('The reaction for single force is %d N'%Ry)\n", - "print('The distance of Ry from A is %f m'%x)\n", - "print('The moment at A is %d N-m'%Ma)\n", - "print('The moment at B is %f N-m'%Mb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.9 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Tension in wire 1 i.e T1 is 8101.126884 N \n", - "\n", - "Tension in wire 2 i.e T2 is 6786.756093 N \n", - "\n", - "Tension in wire 3 i.e T3 is 4444.444444 N \n", - "\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "Ra=5000 #N\n", - "Ma=10000 #Nm\n", - "alpha=60 #degree #angle made by T1 with the pole\n", - "beta=45 #degree #angle made by T2 with the pole\n", - "theta=30 #degree #angle made by T3 with the pole\n", - "Lab=6 #m\n", - "Lac=1.5 #m\n", - "Lcb=4.5 #m\n", - "#Calculations\n", - "T3=Ma/(4.5*math.sin(theta*math.pi/180)) #N #take moment at B\n", - "# Now we use matrix to solve eqn's 1 & 2 simultaneously,\n", - "A=numpy.matrix('-0.707 0.8666;0.707 0.5')\n", - "B=numpy.matrix('2222.2;8848.8')\n", - "C=numpy.linalg.inv(A)*B\n", - "#Results\n", - "print('Tension in wire 1 i.e T1 is %f N \\n'%C[1])\n", - "print('Tension in wire 2 i.e T2 is %f N \\n'%C[0])\n", - "print('Tension in wire 3 i.e T3 is %f N \\n'%T3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.10 Distributed Force in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resultant of the distibuted load lies at 2 m\n", - "The reaction at support A is 1000 N\n", - "The reaction at support B is 2000 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initilization of variables\n", - "w=2000 #N/m\n", - "Lab=3 #m\n", - "#Calculations\n", - "W=w*Lab/2 #N# Area under the curve\n", - "Lac=(2/3)*Lab #m#centroid of the triangular load system\n", - "Rb=(W*Lac)/Lab #N #sum of moment at A\n", - "Ra=W-Rb #N\n", - "#Results\n", - "print('The resultant of the distibuted load lies at %d m'%Lac)\n", - "print('The reaction at support A is %d N'%Ra)\n", - "print('The reaction at support B is %d N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.11 Distributed force in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resultant is 2000 N and the line of action of the force is 3 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initiization of variables\n", - "w=1500 #N/m\n", - "x=4 #m\n", - "L=4 #m\n", - "#Calculations\n", - "k=x**2/w #m**3/N\n", - "#Solving the intergral we get\n", - "W=L**3/(3*k) #N\n", - "x_bar=L**4/(4*k*W) #m\n", - "#Result\n", - "print(\"The resultant is %d N and the line of action of the force is %d m\"%(W,x_bar))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.12 Distributed force in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resultant of the distributed load system is 18 kN\n", - "The line of action of the resulting load is 3.500000 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "w1=1.5 #kN/m # intensity of varying load at the starting point of the beam\n", - "w2=4.5 #kN/m # intensity of varying load at the end of the beam\n", - "l=6 #m # ength of the beam\n", - "# Calculations\n", - "# The varying load distribution is divided into a rectangle and a right angled triangle\n", - "W1=w1*l #kN # where W1 is the area of the load diagram(rectangle ABED)\n", - "x1=l/2 #m # centroid of the rectangular load system\n", - "W2=(w2-w1)*l/2 #kN # where W1 is the area of the load diagram(triangle DCE)\n", - "x2=2*l/3 #m # centroid of the triangular load system\n", - "W=W1+W2 #kN # W is the resultant\n", - "x=((W1*x1)+(W2*x2))/W #m # where x is the distance where the resultant lies\n", - "#Results\n", - "print('The resultant of the distributed load system is %d kN'%W)\n", - "print('The line of action of the resulting load is %f m'%x)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.13 Distributed forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The horizontal reaction at A i.e Xa is 17.320508 kN\n", - "The vertical reaction at A i.e Ya is 10 kN\n", - "The reaction at A i.e Ra is 20 kN\n", - "The reaction at B i.e Rb is 45 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initiization of variables\n", - "W1=10 #kN #point load acting at D\n", - "W2=20 #kN # point load acting at C at an angle of 30 degree\n", - "W3=5 #kN/m # intensity of udl acting on span EB of 4m\n", - "W4=10 #kN/m # intensity of varying load acting on span BC of 3m\n", - "M=25 #kN-m # moment acting at E\n", - "theta=30 #degree # angle made by 20 kN load with the beam\n", - "Lad=2 #m\n", - "Leb=4 #m\n", - "Laf=6 #m #distance between the resultant of W3 & point A\n", - "Lac=11 #m\n", - "Lag=9 #m #distance between the resultant of W4 and point A\n", - "Lbc=3 #m\n", - "Lab=8 #m\n", - "# Calculations\n", - "Xa=20*math.cos(theta*math.pi/180) #kN # sum Fx=0\n", - "Rb=((W1*Lad)+(-M)+(W3*Leb*Laf)+(W2*math.sin(theta*math.pi/180)*Lac)+((W4*Lbc*Lag)/2))/Lab #kN # taking moment at A\n", - "Ya=W1+(W2*math.sin(theta*math.pi/180))+(W3*Leb)+(W4*Lbc/2)-Rb #kN # sum Fy=0\n", - "Ra=math.sqrt(Xa**2+Ya**2) #kN # resultant at A\n", - "#Results\n", - "print('The horizontal reaction at A i.e Xa is %f kN'%Xa)\n", - "print('The vertical reaction at A i.e Ya is %d kN'%Ya)\n", - "print('The reaction at A i.e Ra is %d kN'%Ra)\n", - "print('The reaction at B i.e Rb is %d kN'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.14 Distributed forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum width which is to be provided to the dam to prevent overturning about point B is 1.490712 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "h=4 #m #height of the dam wall\n", - "rho_w=1000 # kg/m**3 # density of water\n", - "rho_c=2400 # kg/m**3 # density of concrete\n", - "g=9.81 # m/s**2\n", - "# Calculations\n", - "P=(rho_w*g*h**2)/2 # The resultant force due to water pressure per unit length of the dam\n", - "x=(2/3)*h #m # distance at which the resutant of the triangular load acts \n", - "b=math.sqrt((2*P*h)/(3*h*rho_c*g)) # m # eq'n required to find the minimum width of the dam\n", - "# Results\n", - "print('The minimum width which is to be provided to the dam to prevent overturning about point B is %f m'%b)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_3_PARALLEL_FORCES_IN_A_PLANE_fuyX0to.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_3_PARALLEL_FORCES_IN_A_PLANE_fuyX0to.ipynb deleted file mode 100644 index b57e6663..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_3_PARALLEL_FORCES_IN_A_PLANE_fuyX0to.ipynb +++ /dev/null @@ -1,582 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 3 Parallel forces in a plane" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.1 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The load taken by man P is 400 N\n", - "The load taken by man Q is 600 N\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "W=1000 #N\n", - "Lab=1 #m\n", - "Lac=0.6 #m\n", - "theta=60 #degree #angle made by the beam with the horizontal\n", - "#Calculations\n", - "Q=(W*Lac*math.cos(theta*180/math.pi))/(Lab*math.cos(theta*180/math.pi)) #N # from eq'n 2\n", - "P=W-Q #N # from eq'n 1\n", - "#Results\n", - "print('The load taken by man P is %d N'%P)\n", - "print('The load taken by man Q is %d N'%Q)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.2 Resultant of forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction (downwards)at support A is 250 N\n", - "The reaction (upwards)at support B is 1250 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "F=1000 #N\n", - "Lab=1 #m\n", - "Lbc=0.25 #m\n", - "Lac=1.25 #m\n", - "#Calculations\n", - "Rb=(F*Lac)/Lab #N # from eq'n 2\n", - "Ra=Rb-F #N # fom eq'n 1\n", - "#Results\n", - "print('The reaction (downwards)at support A is %d N'%Ra)\n", - "print('The reaction (upwards)at support B is %d N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.3 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The vertical reaction (upwards) at A is 0.833333 kN\n", - "The horizontal reaction (towards A) is -20.000000 kN\n", - "The reaction (downwards) at B is -0.833333 kN\n" - ] - } - ], - "source": [ - "#Inilitization of variables\n", - "Lab=12 #m\n", - "Mc=40 #kN-m \n", - "Md=10 #kN-m\n", - "Me=20 #kN-m\n", - "Fe=20 #kN #force acting at point E\n", - "#Calculations\n", - "Xa=-(Fe) #kN #take sum Fx=0\n", - "Rb=(Md+Me-Mc)/Lab #N #take moment at A\n", - "Ya=-Rb #N #take sum Fy=0\n", - "#Results\n", - "print('The vertical reaction (upwards) at A is %f kN'%Ya)\n", - "print('The horizontal reaction (towards A) is %d kN'%Xa)\n", - "print('The reaction (downwards) at B is %f kN'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.5 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at F i.e Rf is 3500.000000 N\n", - "The reaction at D i.e Rd is 1000.000000 N\n", - "The reaction at pt E i.e Re is 833.333333 N\n", - "The reaction at pt A i.e Ra is -333.333333 N\n" - ] - } - ], - "source": [ - "import numpy\n", - "#Initilization of variables\n", - "W=1000 #N\n", - "Lad=7.5 #m\n", - "Lae=1.5 #m\n", - "La1=3.75 #m #distance of 1st 1000N load from pt A\n", - "La2=5 #m #distance of 2nd 1000N load from pt A\n", - "La3=6 #m # distance of 3rd 1000N load from pt A\n", - "# Calculations (part1)\n", - "#using matrix to solve the given eqn's 1 & 2\n", - "A=numpy.matrix('1 -2.5;3.5 -5')\n", - "B=numpy.matrix('1000;7250')\n", - "C=numpy.linalg.inv(A)*B\n", - "#Calculations (part 2)\n", - "#Consider combined F.B.D of beams AB,BC &CD. Take moment at A\n", - "Re=((W*La1)+(W*La2)+(W*La3)+(C[1]*Lad)-(C[0]*La3))/Lae #N\n", - "Ra=C[1]-Re-C[0]+(3*W) #N #Taking sum of forces in Y direction\n", - "#Results\n", - "print('The reaction at F i.e Rf is %f N'%C[0])\n", - "print('The reaction at D i.e Rd is %f N'%C[1])\n", - "print('The reaction at pt E i.e Re is %f N'%Re)\n", - "print('The reaction at pt A i.e Ra is %f N'%Ra) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.6 Resultant of forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle theta is 15.945396 degrees\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=100 # N #force acting at D\n", - "AB=50 # N # weight of bar ab\n", - "CD=50 # N # weight of bar cd\n", - "# Calculations\n", - "# From the derived expression the value of the angle is given as,\n", - "theta=math.degrees(math.atan(5/17.5)) #degrees\n", - "# Results\n", - "print('The angle theta is %f degrees'%theta)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.7 Resultant of forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at wheel A is 0.950000 kN\n", - "The reaction at wheel B is 0.950000 kN\n", - "The reaction at wheel C is 0.600000 kN\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "Ws=2 #kN #weight of scooter\n", - "Wd=0.5 #kN #weight of driver\n", - "Lab=1 #m\n", - "Led=0.8 #m\n", - "Leg=0.1 #m\n", - "#Calculations\n", - "Rc=((2*Leg)+(Wd*Led))/Lab #kN #take moment at E\n", - "Ra=(2+Wd-Rc)/2 # kN # as Ra=Rb,(Ra+Rb=2*Ra)\n", - "Rb=Ra # kN\n", - "#Results\n", - "print('The reaction at wheel A is %f kN'%Ra)\n", - "print('The reaction at wheel B is %f kN'%Rb)\n", - "print('The reaction at wheel C is %f kN'%Rc)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.8 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction for single force is -60 N\n", - "The distance of Ry from A is 0.783333 m\n", - "The moment at A is -47 N-m\n", - "The moment at B is 25.020000 N-m\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "W1=15 #N #up\n", - "W2=60 #N #down\n", - "W3=10 #N #up\n", - "W4=25 #N #down\n", - "Lab=1.2 #m\n", - "Lac=0.4 #m\n", - "Lcd=0.3 #m\n", - "Ldb=0.5 #m\n", - "Lad=0.7 #m\n", - "Leb=0.417 #m #Leb=Lab-x\n", - "#Calculations\n", - "#(a) A single force\n", - "Ry=W1-W2+W3-W4 #N #take sum Fy=0\n", - "x=((-W2*Lac)+(W3*Lad)-(W4*Lab))/(Ry) #m\n", - "# (b) Single force moment at A\n", - "Ma=(Ry*x) #N-m\n", - "# Single force moment at B\n", - "Mb=W2*Leb #N-m\n", - "#Results\n", - "print('The reaction for single force is %d N'%Ry)\n", - "print('The distance of Ry from A is %f m'%x)\n", - "print('The moment at A is %d N-m'%Ma)\n", - "print('The moment at B is %f N-m'%Mb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.9 Resultant of Forces in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Tension in wire 1 i.e T1 is 8101.126884 N \n", - "\n", - "Tension in wire 2 i.e T2 is 6786.756093 N \n", - "\n", - "Tension in wire 3 i.e T3 is 4444.444444 N \n", - "\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "Ra=5000 #N\n", - "Ma=10000 #Nm\n", - "alpha=60 #degree #angle made by T1 with the pole\n", - "beta=45 #degree #angle made by T2 with the pole\n", - "theta=30 #degree #angle made by T3 with the pole\n", - "Lab=6 #m\n", - "Lac=1.5 #m\n", - "Lcb=4.5 #m\n", - "#Calculations\n", - "T3=Ma/(4.5*math.sin(theta*math.pi/180)) #N #take moment at B\n", - "# Now we use matrix to solve eqn's 1 & 2 simultaneously,\n", - "A=numpy.matrix('-0.707 0.8666;0.707 0.5')\n", - "B=numpy.matrix('2222.2;8848.8')\n", - "C=numpy.linalg.inv(A)*B\n", - "#Results\n", - "print('Tension in wire 1 i.e T1 is %f N \\n'%C[1])\n", - "print('Tension in wire 2 i.e T2 is %f N \\n'%C[0])\n", - "print('Tension in wire 3 i.e T3 is %f N \\n'%T3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.10 Distributed Force in a Plane" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resultant of the distibuted load lies at 2 m\n", - "The reaction at support A is 1000 N\n", - "The reaction at support B is 2000 N\n" - ] - } - ], - "source": [ - "#Initilization of variables\n", - "w=2000 #N/m\n", - "Lab=3 #m\n", - "#Calculations\n", - "W=w*Lab/2 #N# Area under the curve\n", - "Lac=(2/3)*Lab #m#centroid of the triangular load system\n", - "Rb=(W*Lac)/Lab #N #sum of moment at A\n", - "Ra=W-Rb #N\n", - "#Results\n", - "print('The resultant of the distibuted load lies at %d m'%Lac)\n", - "print('The reaction at support A is %d N'%Ra)\n", - "print('The reaction at support B is %d N'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.11 Distributed force in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resultant is 2000 N and the line of action of the force is 3 m\n" - ] - } - ], - "source": [ - "#Initiization of variables\n", - "w=1500 #N/m\n", - "x=4 #m\n", - "L=4 #m\n", - "#Calculations\n", - "k=x**2/w #m**3/N\n", - "#Solving the intergral we get\n", - "W=L**3/(3*k) #N\n", - "x_bar=L**4/(4*k*W) #m\n", - "#Result\n", - "print(\"The resultant is %d N and the line of action of the force is %d m\"%(W,x_bar))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.12 Distributed force in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The resultant of the distributed load system is 18 kN\n", - "The line of action of the resulting load is 3.500000 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "w1=1.5 #kN/m # intensity of varying load at the starting point of the beam\n", - "w2=4.5 #kN/m # intensity of varying load at the end of the beam\n", - "l=6 #m # ength of the beam\n", - "# Calculations\n", - "# The varying load distribution is divided into a rectangle and a right angled triangle\n", - "W1=w1*l #kN # where W1 is the area of the load diagram(rectangle ABED)\n", - "x1=l/2 #m # centroid of the rectangular load system\n", - "W2=(w2-w1)*l/2 #kN # where W1 is the area of the load diagram(triangle DCE)\n", - "x2=2*l/3 #m # centroid of the triangular load system\n", - "W=W1+W2 #kN # W is the resultant\n", - "x=((W1*x1)+(W2*x2))/W #m # where x is the distance where the resultant lies\n", - "#Results\n", - "print('The resultant of the distributed load system is %d kN'%W)\n", - "print('The line of action of the resulting load is %f m'%x)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.13 Distributed forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The horizontal reaction at A i.e Xa is 17.320508 kN\n", - "The vertical reaction at A i.e Ya is 10 kN\n", - "The reaction at A i.e Ra is 20 kN\n", - "The reaction at B i.e Rb is 45 kN\n" - ] - } - ], - "source": [ - "# Initiization of variables\n", - "W1=10 #kN #point load acting at D\n", - "W2=20 #kN # point load acting at C at an angle of 30 degree\n", - "W3=5 #kN/m # intensity of udl acting on span EB of 4m\n", - "W4=10 #kN/m # intensity of varying load acting on span BC of 3m\n", - "M=25 #kN-m # moment acting at E\n", - "theta=30 #degree # angle made by 20 kN load with the beam\n", - "Lad=2 #m\n", - "Leb=4 #m\n", - "Laf=6 #m #distance between the resultant of W3 & point A\n", - "Lac=11 #m\n", - "Lag=9 #m #distance between the resultant of W4 and point A\n", - "Lbc=3 #m\n", - "Lab=8 #m\n", - "# Calculations\n", - "Xa=20*math.cos(theta*math.pi/180) #kN # sum Fx=0\n", - "Rb=((W1*Lad)+(-M)+(W3*Leb*Laf)+(W2*math.sin(theta*math.pi/180)*Lac)+((W4*Lbc*Lag)/2))/Lab #kN # taking moment at A\n", - "Ya=W1+(W2*math.sin(theta*math.pi/180))+(W3*Leb)+(W4*Lbc/2)-Rb #kN # sum Fy=0\n", - "Ra=math.sqrt(Xa**2+Ya**2) #kN # resultant at A\n", - "#Results\n", - "print('The horizontal reaction at A i.e Xa is %f kN'%Xa)\n", - "print('The vertical reaction at A i.e Ya is %d kN'%Ya)\n", - "print('The reaction at A i.e Ra is %d kN'%Ra)\n", - "print('The reaction at B i.e Rb is %d kN'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 3.14 Distributed forces in a plane" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum width which is to be provided to the dam to prevent overturning about point B is 1.490712 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "h=4 #m #height of the dam wall\n", - "rho_w=1000 # kg/m**3 # density of water\n", - "rho_c=2400 # kg/m**3 # density of concrete\n", - "g=9.81 # m/s**2\n", - "# Calculations\n", - "P=(rho_w*g*h**2)/2 # The resultant force due to water pressure per unit length of the dam\n", - "x=(2/3)*h #m # distance at which the resutant of the triangular load acts \n", - "b=math.sqrt((2*P*h)/(3*h*rho_c*g)) # m # eq'n required to find the minimum width of the dam\n", - "# Results\n", - "print('The minimum width which is to be provided to the dam to prevent overturning about point B is %f m'%b)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE0AOF_GRAVITY.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE0AOF.ipynb index ad72b04f..ad72b04f 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE0AOF_GRAVITY.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE0AOF.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF_GRAVITY.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF.ipynb index ad72b04f..ad72b04f 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF_GRAVITY.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF_G_TgesWBW.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF_G.ipynb index 44a3d544..44a3d544 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF_G_TgesWBW.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_4_CENTROID_CENTRE_OF_MASS_AND_CENTRE_OF_G.ipynb diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_5__GENERAL_CASE_OF_FORCES_IN_A_PLANE_dRf7oot.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_5__GENERAL_CASE_OF_FORCES_IN_A_PLANE_dRf7oot.ipynb deleted file mode 100644 index 6657b20a..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_5__GENERAL_CASE_OF_FORCES_IN_A_PLANE_dRf7oot.ipynb +++ /dev/null @@ -1,280 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 5 General Case of Forces in a plane" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.2 Equations of equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The reaction at P is', 5656.85424949238, 'N')\n", - "('The reaction at Q is ', 4000.0, 'N')\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "#Initialization of Variables\n", - "W=2000 #N\n", - "Lab=2 #m #length of the member from the vertical to the 1st load of 2000 N\n", - "Lac=5 #m #length of the member from the vertical to the 2nd load of 2000 N\n", - "Lpq=3.5 #m\n", - "\n", - "#Calculations\n", - "Rq=((W*Lab)+(W*Lac))/Lpq #N #take moment abt. pt P\n", - "Xp=Rq #N #sum Fx=0\n", - "Yp=2*W #N #sum Fy=0\n", - "Rp=math.sqrt(Xp**2+Yp**2) #N\n", - "\n", - "#Resuts\n", - "print('The reaction at P is' ,Rp ,'N')\n", - "print('The reaction at Q is ',Rq ,'N')" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.3 Equations of equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The reaction at A i.e Ra is ', matrix([[ 120.27406887]]), 'N')\n", - "('The reaction at B i.e Rb is ', matrix([[ 35.13703443]]), 'N')\n", - "('The required tension in the string is ', matrix([[ 40.57275258]]), 'N')\n" - ] - } - ], - "source": [ - "import math,numpy\n", - "#Initilization of vaiables\n", - "W=25 #N # self weight of the ladder\n", - "M=75 #N # weight of the man standing o the ladder\n", - "theta=63.43 #degree # angle which the ladder makes with the horizontal\n", - "alpha=30 #degree # angle made by the string with the horizontal\n", - "Loa=2 #m # spacing between the wall and the ladder\n", - "Lob=4 #m #length from the horizontal to the top of the ladder touching the wall(vertical)\n", - "\n", - "#Calculations\n", - "#Using matrix to solve the simultaneous eqn's 3 & 4\n", - "A=numpy.matrix('2 -4; 1 -0.577')\n", - "B=numpy.matrix('100;100')\n", - "C=numpy.linalg.inv(A)*B\n", - "\n", - "#Results\n", - "print('The reaction at A i.e Ra is ',C[0] ,'N')\n", - "print('The reaction at B i.e Rb is ',C[1] ,'N')\n", - "\n", - "#Calculations\n", - "T=C[1]/math.cos(math.radians(alpha)) #N # from (eqn 1)\n", - "\n", - "#Results\n", - "print('The required tension in the string is ',T, 'N')" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.4 Equations of Equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The reaction at B i.e Rb is ', 25.0, 'N')\n", - "('The horizontal reaction at A i.e Xa is ', 21.650635094610966, 'N')\n", - "('The vertical reaction at A i.e Ya is ', 112.5, 'N')\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "W=100 #N\n", - "theta=60 #degree angle made by the ladder with the horizontal\n", - "alpha=30 #degree angle made by the ladder with the vertical wall\n", - "Lob=4 #m length from the horizontal to the top of the ladder touching the wall(vertical)\n", - "Lcd=2 #m length from the horizontal to the centre of the ladder where the man stands\n", - "\n", - "#Calculations\n", - "Lab=Lob*(1/math.cos(math.radians(alpha))) #m length of the ladder\n", - "Lad=Lcd*math.tan(math.radians(alpha)) #m\n", - "Rb=(W*Lad)/Lab #N take moment at A\n", - "Xa=Rb*math.sin(math.radians(theta)) #N From eq'n 1\n", - "Ya=W+Rb*math.cos(math.radians(theta)) #N From eq'n 2\n", - "\n", - "#Results\n", - "print('The reaction at B i.e Rb is ',Rb, 'N')\n", - "print('The horizontal reaction at A i.e Xa is ',Xa, 'N')\n", - "print('The vertical reaction at A i.e Ya is ',Ya,'N')\n" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.5 Equations of Equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The horizontal reaction at A i.e Xa is ', 28.867513459481287, 'N')\n", - "('The vertical reaction at A i.e Ya is ', 100, 'N')\n", - "('The reaction at B i.e Rb is ', 28.867513459481287, 'N')\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "W=100 #N self weight of the man\n", - "alpha=30 #degree angle made by the ladder with the wall\n", - "Lob=4 #m length from the horizontal to the top of the ladder touching the wall(vertical)\n", - "Lcd=2 #m\n", - "\n", - "#Calculations\n", - "# using the equiblirium equations\n", - "Ya=W #N From eq'n 2\n", - "Lad=Lcd*math.tan(math.radians(alpha)) #m Lad is the distance fom pt A to the point where the line from the cg intersects the horizontal\n", - "Rb=(W*Lad)/Lob #N Taking sum of moment abt A\n", - "Xa=Rb #N From eq'n 1\n", - "\n", - "#Results\n", - "print('The horizontal reaction at A i.e Xa is ',Xa, 'N')\n", - "print('The vertical reaction at A i.e Ya is ',Ya,'N' )\n", - "print('The reaction at B i.e Rb is ',Rb ,'N')\n" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.6 Equations of Equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The horizontal reaction at A i.e Xa is ', 3.84, 'N')\n", - "('The vertical reaction at A i.e Ya is ', 7.12, 'N')\n", - "('Therefore the reaction at A i.e Ra is ', 8.089499366462674, 'N')\n", - "('The reaction at D i.e Rd is ', 4.8, 'N')\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "d=0.09 #m diametre of the right circular cylinder\n", - "h=0.12 #m height of the cyinder\n", - "W=10 #N self weight of the bar\n", - "l=0.24 #m length of the bar\n", - "\n", - "#Calculations\n", - "theta=math.degrees(math.atan(h/d)) #angle which the bar makes with the horizontal\n", - "Lad=math.sqrt(d**2+h**2) #m Lad is the length of the bar from point A to point B\n", - "Rd=(W*h*(math.cos(theta*math.pi/180)))/Lad #N Taking moment at A\n", - "Xa=Rd*(math.sin(theta*math.pi/180)) #N sum Fx=0.... From eq'n 1\n", - "Ya=W-(Rd*(math.cos(theta*math.pi/180))) #N sum Fy=0..... From eq'n 2\n", - "Ra=math.sqrt(Xa**2+Ya**2) #resultant of Xa & Ya\n", - "\n", - "#Results\n", - "print('The horizontal reaction at A i.e Xa is ',Xa, 'N')\n", - "print('The vertical reaction at A i.e Ya is ',Ya, 'N')\n", - "print('Therefore the reaction at A i.e Ra is ',Ra,'N')\n", - "print('The reaction at D i.e Rd is ',Rd,'N')" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_5__GENERAL_CASE_OF_FORCES_IN_A_PLANE_g5sMBYF.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_5__GENERAL_CASE_OF_FORCES_IN_A_PLANE_g5sMBYF.ipynb deleted file mode 100644 index a77ec491..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_5__GENERAL_CASE_OF_FORCES_IN_A_PLANE_g5sMBYF.ipynb +++ /dev/null @@ -1,279 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 5 General Case of Forces in a plane" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.2 Equations of equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The reaction at P is', 5656.85424949238, 'N')\n", - "('The reaction at Q is ', 4000.0, 'N')\n" - ] - } - ], - "source": [ - "import math\n", - "\n", - "#Initialization of Variables\n", - "W=2000 #N\n", - "Lab=2 #m #length of the member from the vertical to the 1st load of 2000 N\n", - "Lac=5 #m #length of the member from the vertical to the 2nd load of 2000 N\n", - "Lpq=3.5 #m\n", - "\n", - "#Calculations\n", - "Rq=((W*Lab)+(W*Lac))/Lpq #N #take moment abt. pt P\n", - "Xp=Rq #N #sum Fx=0\n", - "Yp=2*W #N #sum Fy=0\n", - "Rp=math.sqrt(Xp**2+Yp**2) #N\n", - "\n", - "#Resuts\n", - "print('The reaction at P is' ,Rp ,'N')\n", - "print('The reaction at Q is ',Rq ,'N')" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.3 Equations of equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The reaction at A i.e Ra is ', matrix([[ 120.27406887]]), 'N')\n", - "('The reaction at B i.e Rb is ', matrix([[ 35.13703443]]), 'N')\n", - "('The required tension in the string is ', matrix([[ 40.57275258]]), 'N')\n" - ] - } - ], - "source": [ - "import math,numpy\n", - "#Initilization of vaiables\n", - "W=25 #N # self weight of the ladder\n", - "M=75 #N # weight of the man standing o the ladder\n", - "theta=63.43 #degree # angle which the ladder makes with the horizontal\n", - "alpha=30 #degree # angle made by the string with the horizontal\n", - "Loa=2 #m # spacing between the wall and the ladder\n", - "Lob=4 #m #length from the horizontal to the top of the ladder touching the wall(vertical)\n", - "\n", - "#Calculations\n", - "#Using matrix to solve the simultaneous eqn's 3 & 4\n", - "A=numpy.matrix('2 -4; 1 -0.577')\n", - "B=numpy.matrix('100;100')\n", - "C=numpy.linalg.inv(A)*B\n", - "\n", - "#Results\n", - "print('The reaction at A i.e Ra is ',C[0] ,'N')\n", - "print('The reaction at B i.e Rb is ',C[1] ,'N')\n", - "\n", - "#Calculations\n", - "T=C[1]/math.cos(math.radians(alpha)) #N # from (eqn 1)\n", - "\n", - "#Results\n", - "print('The required tension in the string is ',T, 'N')" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.4 Equations of Equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The reaction at B i.e Rb is ', 25.0, 'N')\n", - "('The horizontal reaction at A i.e Xa is ', 21.650635094610966, 'N')\n", - "('The vertical reaction at A i.e Ya is ', 112.5, 'N')\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "W=100 #N\n", - "theta=60 #degree angle made by the ladder with the horizontal\n", - "alpha=30 #degree angle made by the ladder with the vertical wall\n", - "Lob=4 #m length from the horizontal to the top of the ladder touching the wall(vertical)\n", - "Lcd=2 #m length from the horizontal to the centre of the ladder where the man stands\n", - "\n", - "#Calculations\n", - "Lab=Lob*(1/math.cos(math.radians(alpha))) #m length of the ladder\n", - "Lad=Lcd*math.tan(math.radians(alpha)) #m\n", - "Rb=(W*Lad)/Lab #N take moment at A\n", - "Xa=Rb*math.sin(math.radians(theta)) #N From eq'n 1\n", - "Ya=W+Rb*math.cos(math.radians(theta)) #N From eq'n 2\n", - "\n", - "#Results\n", - "print('The reaction at B i.e Rb is ',Rb, 'N')\n", - "print('The horizontal reaction at A i.e Xa is ',Xa, 'N')\n", - "print('The vertical reaction at A i.e Ya is ',Ya,'N')\n" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.5 Equations of Equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The horizontal reaction at A i.e Xa is ', 28.867513459481287, 'N')\n", - "('The vertical reaction at A i.e Ya is ', 100, 'N')\n", - "('The reaction at B i.e Rb is ', 28.867513459481287, 'N')\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "W=100 #N self weight of the man\n", - "alpha=30 #degree angle made by the ladder with the wall\n", - "Lob=4 #m length from the horizontal to the top of the ladder touching the wall(vertical)\n", - "Lcd=2 #m\n", - "\n", - "#Calculations\n", - "# using the equiblirium equations\n", - "Ya=W #N From eq'n 2\n", - "Lad=Lcd*math.tan(math.radians(alpha)) #m Lad is the distance fom pt A to the point where the line from the cg intersects the horizontal\n", - "Rb=(W*Lad)/Lob #N Taking sum of moment abt A\n", - "Xa=Rb #N From eq'n 1\n", - "\n", - "#Results\n", - "print('The horizontal reaction at A i.e Xa is ',Xa, 'N')\n", - "print('The vertical reaction at A i.e Ya is ',Ya,'N' )\n", - "print('The reaction at B i.e Rb is ',Rb ,'N')\n" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Example 5.6 Equations of Equilibrium" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "('The horizontal reaction at A i.e Xa is ', 3.84, 'N')\n", - "('The vertical reaction at A i.e Ya is ', 7.12, 'N')\n", - "('Therefore the reaction at A i.e Ra is ', 8.089499366462674, 'N')\n", - "('The reaction at D i.e Rd is ', 4.8, 'N')\n" - ] - } - ], - "source": [ - "import math\n", - "#Initilization of variables\n", - "d=0.09 #m diametre of the right circular cylinder\n", - "h=0.12 #m height of the cyinder\n", - "W=10 #N self weight of the bar\n", - "l=0.24 #m length of the bar\n", - "\n", - "#Calculations\n", - "theta=math.degrees(math.atan(h/d)) #angle which the bar makes with the horizontal\n", - "Lad=math.sqrt(d**2+h**2) #m Lad is the length of the bar from point A to point B\n", - "Rd=(W*h*(math.cos(theta*math.pi/180)))/Lad #N Taking moment at A\n", - "Xa=Rd*(math.sin(theta*math.pi/180)) #N sum Fx=0.... From eq'n 1\n", - "Ya=W-(Rd*(math.cos(theta*math.pi/180))) #N sum Fy=0..... From eq'n 2\n", - "Ra=math.sqrt(Xa**2+Ya**2) #resultant of Xa & Ya\n", - "\n", - "#Results\n", - "print('The horizontal reaction at A i.e Xa is ',Xa, 'N')\n", - "print('The vertical reaction at A i.e Ya is ',Ya, 'N')\n", - "print('Therefore the reaction at A i.e Ra is ',Ra,'N')\n", - "print('The reaction at D i.e Rd is ',Rd,'N')" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION.ipynb index 5710d02f..ee662d5e 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION.ipynb @@ -64,7 +64,7 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 2, "metadata": { "collapsed": false }, @@ -116,6 +116,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "M=2000 # kg # mass of the car\n", "mu=0.3 # coefficient of static friction between the tyre and the road\n", @@ -137,7 +139,7 @@ }, { "cell_type": "code", - "execution_count": 46, + "execution_count": 3, "metadata": { "collapsed": false }, @@ -191,7 +193,7 @@ }, { "cell_type": "code", - "execution_count": 50, + "execution_count": 4, "metadata": { "collapsed": false }, @@ -225,22 +227,23 @@ } ], "metadata": { + "anaconda-cloud": {}, "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [Root]", "language": "python", - "name": "python3" + "name": "Python [Root]" }, "language_info": { "codemirror_mode": { "name": "ipython", - "version": 3 + "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" + "pygments_lexer": "ipython2", + "version": "2.7.12" }, "widgets": { "state": {}, diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION_Jc04I0n.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION_Jc04I0n.ipynb deleted file mode 100644 index 5710d02f..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION_Jc04I0n.ipynb +++ /dev/null @@ -1,252 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 6 Friction" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.1 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 31, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The required pull force P1 is 18.345820 N \n", - "The required push force P2 is 22.750511 N \n" - ] - } - ], - "source": [ - "import math,numpy\n", - "# Initilization of variables\n", - "m=5 #kg # mass of the bock\n", - "g=9.81 # m/s**2 # acceleration due to gravity\n", - "theta=15 # degree # angle made by the forces (P1 & P2) with the horizontal of the block\n", - "de=theta*math.pi/180\n", - "mu=0.4 #coefficient of static friction\n", - "#Calculations\n", - "# Case 1. Where P1 is the force required to just pull the bock\n", - "# Solving eqn's 1 & 2 using matrix\n", - "A=numpy.matrix([[math.cos(de),-mu],[math.sin(de),1]])\n", - "B=numpy.matrix([[0],[m*g]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Calculations \n", - "# Case 2. Where P2 is the force required to push the block\n", - "# Solving eqn's 1 & 2 using matrix\n", - "P=numpy.matrix([[-math.cos(de),mu],[-math.sin(de),1]])\n", - "Q=numpy.matrix([[0],[m*g]])\n", - "R=numpy.linalg.inv(P)*Q\n", - "# Results\n", - "print('The required pull force P1 is %f N '%C[0])\n", - "print('The required push force P2 is %f N '%R[0])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.4 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 39, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The inclination of the plane is 14.036243 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "W1=50 # N # weight of the first block\n", - "W2=50 # N # weight of the second block\n", - "mu_1=0.3 # coefficient of friction between the inclined plane and W1\n", - "mu_2=0.2 # coefficient of friction between the inclined plane and W2\n", - "# Calculations\n", - "# On adding eq'ns 1&3 and substuting the values of N1 & N2 from eqn's 2&4 in this and on solving for alpha we get,\n", - "alpha=math.atan((((mu_1*W1)+(mu_2*W2))/(W1+W2))) # degrees\n", - "a=math.degrees(alpha)\n", - "# Results\n", - "print('The inclination of the plane is %f degree'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.7 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 40, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of inclination is 16.699244 degree \n", - "\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "M=2000 # kg # mass of the car\n", - "mu=0.3 # coefficient of static friction between the tyre and the road\n", - "g=9.81 # m/s**2 # acc. due to gravity\n", - "# Calculations\n", - "# Divide eqn 1 by eqn 2, We get\n", - "theta=math.atan(mu) #degree\n", - "t=math.degrees(theta)\n", - "# Results\n", - "print('The angle of inclination is %f degree \\n'%t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.9 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 46, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum horizontal force (P) which should be applied to raise the block is 870.844400 N \n", - "\n", - "The required coefficient for the wedge to be self locking is 0.130900 \n", - "\n" - ] - } - ], - "source": [ - "import numpy as np\n", - "import math \n", - "# Initilization of variabes\n", - "Wa=1000 #N # weight of block A\n", - "Wb=500 #N # weight of block B\n", - "theta=15 # degree # angle of the wedge\n", - "mu=0.2 # coefficient of friction between the surfaces in contact\n", - "phi=7.5 # degrees # used in case 2\n", - "# Caculations \n", - "# CASE (a)\n", - "# consider the equilibrium of upper block A\n", - "# rearranging eq'ns 1 &2 and solving them using matrix for N1 & N2\n", - "A=np.matrix('1 -0.4522;-0.2 0.914')\n", - "B=np.matrix('0;1000')\n", - "C=np.linalg.inv(A)*B\n", - "# Now consider the equilibrium of lower block B\n", - "# From eq'n 4\n", - "N3=Wb+(C[1]*math.cos(theta*math.pi/180))-(mu*C[1]*math.sin(theta*math.pi/180)) #N\n", - "# Now from eq'n 3\n", - "P=(mu*N3)+(mu*C[1]*math.cos(theta*math.pi/180))+(C[1]*math.sin(theta*math.pi/180)) # N\n", - "# CASE (b)\n", - "# The eq'n for required coefficient for the wedge to be self locking is,\n", - "mu_req=(theta*math.pi)/(360) # multiplying with (pie/180) to convert it into radians\n", - "# Results\n", - "print('The minimum horizontal force (P) which should be applied to raise the block is %f N \\n'%P)\n", - "print('The required coefficient for the wedge to be self locking is %f \\n'%mu_req)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.13 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 50, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum value of x at which the load Q=200 N may be applied before slipping impends is 0.350000 m\n" - ] - } - ], - "source": [ - "import numpy as np\n", - "import math\n", - "# Initilization of variables\n", - "P=100 #N # force acting at 0.2 m from A\n", - "Q=200 #N # force acting at any distance x from B\n", - "l=1 #m # length of the bar\n", - "theta=45 #degree #angle made by the normal reaction at A&B with horizontal\n", - "# Calculations\n", - "# solving eqn's 1 & 2 using matrix for Ra & Rb,\n", - "A=np.matrix([[1,-1],[math.sin(theta*math.pi/180),math.sin(theta*math.pi/180)]])\n", - "B=np.matrix([[0],[P+Q]])\n", - "C=np.linalg.inv(A)*B\n", - "# Now take moment about B\n", - "x=((C[0]*l*math.sin(theta*math.pi/180))-(P*(l-0.2)))/200 #m # here 0.2 is the distance where 100 N load lies from A\n", - "# Results\n", - "print('The minimum value of x at which the load Q=200 N may be applied before slipping impends is %f m'%x)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION_zfudwhy.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION_zfudwhy.ipynb deleted file mode 100644 index ee662d5e..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_6_FRICTION_zfudwhy.ipynb +++ /dev/null @@ -1,255 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 6 Friction" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.1 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 31, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The required pull force P1 is 18.345820 N \n", - "The required push force P2 is 22.750511 N \n" - ] - } - ], - "source": [ - "import math,numpy\n", - "# Initilization of variables\n", - "m=5 #kg # mass of the bock\n", - "g=9.81 # m/s**2 # acceleration due to gravity\n", - "theta=15 # degree # angle made by the forces (P1 & P2) with the horizontal of the block\n", - "de=theta*math.pi/180\n", - "mu=0.4 #coefficient of static friction\n", - "#Calculations\n", - "# Case 1. Where P1 is the force required to just pull the bock\n", - "# Solving eqn's 1 & 2 using matrix\n", - "A=numpy.matrix([[math.cos(de),-mu],[math.sin(de),1]])\n", - "B=numpy.matrix([[0],[m*g]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Calculations \n", - "# Case 2. Where P2 is the force required to push the block\n", - "# Solving eqn's 1 & 2 using matrix\n", - "P=numpy.matrix([[-math.cos(de),mu],[-math.sin(de),1]])\n", - "Q=numpy.matrix([[0],[m*g]])\n", - "R=numpy.linalg.inv(P)*Q\n", - "# Results\n", - "print('The required pull force P1 is %f N '%C[0])\n", - "print('The required push force P2 is %f N '%R[0])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.4 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The inclination of the plane is 14.036243 degree\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "W1=50 # N # weight of the first block\n", - "W2=50 # N # weight of the second block\n", - "mu_1=0.3 # coefficient of friction between the inclined plane and W1\n", - "mu_2=0.2 # coefficient of friction between the inclined plane and W2\n", - "# Calculations\n", - "# On adding eq'ns 1&3 and substuting the values of N1 & N2 from eqn's 2&4 in this and on solving for alpha we get,\n", - "alpha=math.atan((((mu_1*W1)+(mu_2*W2))/(W1+W2))) # degrees\n", - "a=math.degrees(alpha)\n", - "# Results\n", - "print('The inclination of the plane is %f degree'%a)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.7 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 40, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of inclination is 16.699244 degree \n", - "\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "M=2000 # kg # mass of the car\n", - "mu=0.3 # coefficient of static friction between the tyre and the road\n", - "g=9.81 # m/s**2 # acc. due to gravity\n", - "# Calculations\n", - "# Divide eqn 1 by eqn 2, We get\n", - "theta=math.atan(mu) #degree\n", - "t=math.degrees(theta)\n", - "# Results\n", - "print('The angle of inclination is %f degree \\n'%t)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.9 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum horizontal force (P) which should be applied to raise the block is 870.844400 N \n", - "\n", - "The required coefficient for the wedge to be self locking is 0.130900 \n", - "\n" - ] - } - ], - "source": [ - "import numpy as np\n", - "import math \n", - "# Initilization of variabes\n", - "Wa=1000 #N # weight of block A\n", - "Wb=500 #N # weight of block B\n", - "theta=15 # degree # angle of the wedge\n", - "mu=0.2 # coefficient of friction between the surfaces in contact\n", - "phi=7.5 # degrees # used in case 2\n", - "# Caculations \n", - "# CASE (a)\n", - "# consider the equilibrium of upper block A\n", - "# rearranging eq'ns 1 &2 and solving them using matrix for N1 & N2\n", - "A=np.matrix('1 -0.4522;-0.2 0.914')\n", - "B=np.matrix('0;1000')\n", - "C=np.linalg.inv(A)*B\n", - "# Now consider the equilibrium of lower block B\n", - "# From eq'n 4\n", - "N3=Wb+(C[1]*math.cos(theta*math.pi/180))-(mu*C[1]*math.sin(theta*math.pi/180)) #N\n", - "# Now from eq'n 3\n", - "P=(mu*N3)+(mu*C[1]*math.cos(theta*math.pi/180))+(C[1]*math.sin(theta*math.pi/180)) # N\n", - "# CASE (b)\n", - "# The eq'n for required coefficient for the wedge to be self locking is,\n", - "mu_req=(theta*math.pi)/(360) # multiplying with (pie/180) to convert it into radians\n", - "# Results\n", - "print('The minimum horizontal force (P) which should be applied to raise the block is %f N \\n'%P)\n", - "print('The required coefficient for the wedge to be self locking is %f \\n'%mu_req)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 6.13 Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum value of x at which the load Q=200 N may be applied before slipping impends is 0.350000 m\n" - ] - } - ], - "source": [ - "import numpy as np\n", - "import math\n", - "# Initilization of variables\n", - "P=100 #N # force acting at 0.2 m from A\n", - "Q=200 #N # force acting at any distance x from B\n", - "l=1 #m # length of the bar\n", - "theta=45 #degree #angle made by the normal reaction at A&B with horizontal\n", - "# Calculations\n", - "# solving eqn's 1 & 2 using matrix for Ra & Rb,\n", - "A=np.matrix([[1,-1],[math.sin(theta*math.pi/180),math.sin(theta*math.pi/180)]])\n", - "B=np.matrix([[0],[P+Q]])\n", - "C=np.linalg.inv(A)*B\n", - "# Now take moment about B\n", - "x=((C[0]*l*math.sin(theta*math.pi/180))-(P*(l-0.2)))/200 #m # here 0.2 is the distance where 100 N load lies from A\n", - "# Results\n", - "print('The minimum value of x at which the load Q=200 N may be applied before slipping impends is %f m'%x)" - ] - } - ], - "metadata": { - "anaconda-cloud": {}, - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION.ipynb index eb34bfe8..e14e7ebb 100644 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION.ipynb +++ b/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION.ipynb @@ -75,6 +75,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "d1=0.6 #m # diameter of larger pulley\n", "d2=0.3 #m # diameter of smaller pulley\n", @@ -114,6 +116,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "W1=1000 #N\n", "mu=0.25 #coefficient of friction\n", @@ -149,6 +153,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "mu=0.5 # coefficient of friction between the belt and the wheel\n", "W=100 #N\n", @@ -192,6 +198,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initiization of variables\n", "W= 1000 #N # or 1kN\n", "mu=0.3 # coefficient of friction between the rope and the cylinder\n", @@ -229,6 +237,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "Pw=50 #kW\n", "T_max=1500 #N\n", @@ -271,6 +281,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "d1=0.45 #m # diameter of larger pulley\n", "d2=0.20 #m # diameter of smaller pulley\n", @@ -321,6 +333,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variabes\n", "b=0.1 #m #width of the belt\n", "t=0.008 #m #thickness of the belt\n", @@ -377,6 +391,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variables\n", "p=0.0125 # m # pitch of screw\n", "d=0.1 #m # diameter of the screw\n", @@ -423,6 +439,8 @@ } ], "source": [ + "from __future__ import division\n", + "import math\n", "# Initilization of variabes\n", "P=20000 #N #Weight of the shaft\n", "D=0.30 #m #diameter of the shaft\n", @@ -439,21 +457,21 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python [Root]", "language": "python", - "name": "python3" + "name": "Python [Root]" }, "language_info": { "codemirror_mode": { "name": "ipython", - "version": 3 + "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" + "pygments_lexer": "ipython2", + "version": "2.7.12" }, "widgets": { "state": {}, diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION_bwuImxc.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION_bwuImxc.ipynb deleted file mode 100644 index eb34bfe8..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION_bwuImxc.ipynb +++ /dev/null @@ -1,465 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 7 Application of friction" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.1 Application of Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of lap for the larger pulley is 203.073918 degree\n", - "The angle of lap for the smaller pulley is 156.926082 degree\n", - "The length of pulley required is 117.748668 cm\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "d1=24 # cm # diameter of larger pulley\n", - "d2=12 # cm # diameter of smaller pulley\n", - "d=30 #cm # seperation betweem 1st & the 2nd pulley\n", - "# Calcuations\n", - "r1=d1/2 #cm # radius of 1st pulley\n", - "r2=d2/2 #cm # radius of 2nd pulley\n", - "theta=math.degrees(math.asin((r1-r2)/d)) #degrees \n", - "# Angle of lap\n", - "beta_1=180+(2*theta) #degree # for larger pulley\n", - "beta_2=180-(2*theta) #degree #for smaller pulley\n", - "L=math.pi*(r1+r2)+(2*d)+((r1-r2)**2/d) #cm # Length of the belt\n", - "# Results\n", - "print('The angle of lap for the larger pulley is %f degree'%beta_1)\n", - "print('The angle of lap for the smaller pulley is %f degree'%beta_2)\n", - "print('The length of pulley required is %f cm'%L)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.2 Application of Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of lap for the pulley is 194.774097 degree\n", - "The length of pulley required is 8.420145 m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "d1=0.6 #m # diameter of larger pulley\n", - "d2=0.3 #m # diameter of smaller pulley\n", - "d=3.5 #m # separation between the pulleys\n", - "# Calculations\n", - "r1=d1/2 #m # radius of larger pulley\n", - "r2=d2/2 #m # radius of smaller pulley\n", - "theta=math.degrees(math.asin((r1+r2)/d)) #degree\n", - "# Angle of lap for both the pulleys is same, i.e\n", - "beta=180+(2*theta) # degree\n", - "L=((math.pi*(r1+r2))+(2*d)+((r1-r2)**2/d)) #cm # Length of the belt\n", - "# Results\n", - "print('The angle of lap for the pulley is %f degree'%beta)\n", - "print('The length of pulley required is %f m'%L)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.4 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum weight W2 to keep W1 in equilibrium is 455.975258 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W1=1000 #N\n", - "mu=0.25 #coefficient of friction\n", - "T1=W1 # Tension in the 1st belt carrying W1\n", - "e=2.718 #constant\n", - "# Calculations\n", - "T2=T1/(e**(mu*math.pi)) #N # Tension in the 2nd belt\n", - "W2=T2 #N\n", - "# Results\n", - "print('The minimum weight W2 to keep W1 in equilibrium is %f N'%W2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.5 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The braking moment (M) exerted by the vertical weight W is 42.980225 N-m\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "mu=0.5 # coefficient of friction between the belt and the wheel\n", - "W=100 #N\n", - "theta=45 #degree\n", - "e=2.718\n", - "Lac=0.75 #m # ength of the lever\n", - "Lab=0.25 #m\n", - "Lbc=0.50 #m\n", - "r=0.25 #m\n", - "# Calculations\n", - "beta=((180+theta)*math.pi)/180 # radian # angle of lap\n", - "# from eq'n 2\n", - "T1=(W*Lbc)/Lab #N \n", - "T2=T1/(e**(mu*beta)) #N # from eq'n 1\n", - "# consider the F.B.D of the pulley and take moment about its center, we get Braking Moment (M)\n", - "M=r*(T1-T2) #N-m\n", - "# Results\n", - "print('The braking moment (M) exerted by the vertical weight W is %f N-m'%M)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.6 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force required to suport the weight of 1000 N i.e 1kN is 3.502492 N\n" - ] - } - ], - "source": [ - "# Initiization of variables\n", - "W= 1000 #N # or 1kN\n", - "mu=0.3 # coefficient of friction between the rope and the cylinder\n", - "e=2.718 # constant\n", - "alpha=90 # degree # since 2*alpha=180 egree\n", - "# Calculations\n", - "beta=2*math.pi*3 # radian # for 3 turn of the rope\n", - "# Here T1 is the larger tension in that section of the rope which is about to slip\n", - "T1=W #N\n", - "F=W/e**(mu*(1/(math.sin(alpha*math.pi/180)))*(beta)) #N Here T2=F\n", - "# Results\n", - "print('The force required to suport the weight of 1000 N i.e 1kN is %f N'%F)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.7 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The number of ropes required to transmit 50 kW is 4.789906 or ~ 5\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "Pw=50 #kW\n", - "T_max=1500 #N\n", - "v=10 # m/s # velocity of rope\n", - "w=4 # N/m # weight of rope\n", - "mu=0.2 # coefficient of friction \n", - "g=9.81 # m/s**2 # acceleration due to gravity\n", - "e=2.718 # constant\n", - "alpha=30 # degree # since 2*alpha=60 \n", - "# Calcuations\n", - "T_e=(w*v**2)/g # N # where T_e is the centrifugal tension\n", - "T1=(T_max)-(T_e) #N\n", - "T2=T1/(e**(mu*(1/math.sin(alpha*math.pi/180))*(math.pi))) #N # From eq'n T1/T2=e^(mu*cosec(alpha)*beta)\n", - "P=(T1-T2)*v*(10**-3) #kW # power transmitted by a single rope\n", - "N=Pw/P # Number of ropes required\n", - "# Results\n", - "print('The number of ropes required to transmit 50 kW is %f or ~ %.0f'%(N,N))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.8 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The power transmitted by the cross belt drive is 1.180543 kW\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "d1=0.45 #m # diameter of larger pulley\n", - "d2=0.20 #m # diameter of smaller pulley\n", - "d=1.95 #m # separation between the pulley's\n", - "T_max=1000 #N # or 1kN which is the maximum permissible tension\n", - "mu=0.20 # coefficient of friction\n", - "N=100 # r.p.m # speed of larger pulley\n", - "e=2.718 # constant\n", - "T_e=0 #N # as the data for calculating T_e is not given we assume T_e=0\n", - "# Calculations\n", - "r1=d1/2 #m # radius of larger pulley\n", - "r2=d2/2 #m # radius of smaller pulley\n", - "theta=math.degrees(math.asin((r1+r2)/d)) # degree\n", - "# for cross drive the angle of lap for both the pulleys is same\n", - "beta=((180+(2*(theta)))*math.pi)/180 #radian\n", - "T1=T_max-T_e #N\n", - "T2=T1/(e**(mu*(beta))) #N # from formulae, T1/T2=e**(mu*beta)\n", - "v=((2*math.pi)*N*r1)/60 # m/s # where v=velocity of belt which is given as, v=wr=2*pie*N*r/60\n", - "P=(T1-T2)*v*(10**-3) #kW # Power\n", - "# Results\n", - "print('The power transmitted by the cross belt drive is %f kW'%P)\n", - "#answer given in the textbook is incorrect" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.9 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The initial power transmitted is 14.808043 kW\n", - "The initial tension in the belt is 682.223893 N\n", - "The maximum power that can be transmitted is 15.020439 kW\n", - "The maximum power is transmitted at a belt speed of 24.343225 m/s\n" - ] - } - ], - "source": [ - "# Initilization of variabes\n", - "b=0.1 #m #width of the belt\n", - "t=0.008 #m #thickness of the belt\n", - "v=26.67 # m/s # belt speed\n", - "beta=165 # radian # angle of lap for the smaller belt\n", - "mu=0.3 # coefficient of friction\n", - "sigma_max=2 # MN/m**2 # maximum permissible stress in the belt\n", - "m=0.9 # kg/m # mass of the belt\n", - "g=9.81 # m/s**2\n", - "e=2.718 # constant\n", - "# Calculations\n", - "A=b*t # m**2 # cross-sectional area of the belt\n", - "T_e=m*v**2 # N # where T_e is the Centrifugal tension\n", - "T_max=(sigma_max)*(A)*(10**6) # N # maximum tension in the belt\n", - "T1=(T_max)-(T_e) # N \n", - "T2=T1/(e**((mu*math.pi*beta)/180)) #N # from formulae T1/T2=e**(mu*beta)\n", - "P=(T1-T2)*v*(10**-3) #kW # Power transmitted\n", - "T_o=(T1+T2)/2 # N # Initial tension\n", - "# Now calculations to transmit maximum power\n", - "Te=T_max/3 # N # max tension\n", - "u=math.sqrt(T_max/(3*m)) # m/s # belt speed for max power\n", - "T_1=T_max-Te # N # T1 for case 2\n", - "T_2=T_1/(e**((mu*math.pi*beta)/180)) # N \n", - "P_max=(T_1-T_2)*u*(10**-3) # kW # Max power transmitted\n", - "# Results\n", - "print('The initial power transmitted is %f kW'%P)\n", - "print('The initial tension in the belt is %f N'%T_o)\n", - "print('The maximum power that can be transmitted is %f kW'%P_max)\n", - "print('The maximum power is transmitted at a belt speed of %f m/s'%u)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.10 Friction in a square threaded screw" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force required (i.e F1) to raise the weight is 1.208561 kN\n", - "The force required (i.e F2) to lower the weight is -0.794732 kN\n", - "The efficiency of the jack is 16.461202 percent\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "p=0.0125 # m # pitch of screw\n", - "d=0.1 #m # diameter of the screw\n", - "r=0.05 #m # radius of the screw\n", - "l=0.5 #m # length of the lever\n", - "W=50 #kN # load on the lever\n", - "mu=0.20 # coefficient of friction \n", - "# Calculations\n", - "theta=math.degrees(math.atan(p/(2*math.pi*r))) #degree # theta is the Helix angle\n", - "phi=math.degrees(math.atan(mu)) # degree # phi is the angle of friction\n", - "# Taking the leverage due to handle into account,force F1 required is,\n", - "a=theta+phi\n", - "b=theta-phi\n", - "F1=(W*(math.tan(a*math.pi/180)))*(r/l) #kN\n", - "# To lower the load\n", - "F2=(W*(math.tan(b*math.pi/180)))*(r/l) #kN # -ve sign of F2 indicates force required is in opposite sense\n", - "E=(math.tan(theta*math.pi/180)/math.tan((theta+phi)*math.pi/180))*100 # % # here E=eata=efficiency in %\n", - "# Results\n", - "print('The force required (i.e F1) to raise the weight is %f kN'%F1)\n", - "print('The force required (i.e F2) to lower the weight is %f kN'%F2)\n", - "print('The efficiency of the jack is %f percent'%E)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.11 Application of Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The frictional torque is 240.000000 N-m\n" - ] - } - ], - "source": [ - "# Initilization of variabes\n", - "P=20000 #N #Weight of the shaft\n", - "D=0.30 #m #diameter of the shaft\n", - "R=0.15 #m #radius of the shaft\n", - "mu=0.12 # coefficient of friction\n", - "# Calculations\n", - "# Friction torque T is given by formulae,\n", - "T=(2/3)*P*R*mu #N-m\n", - "M=T #N-m\n", - "# Results\n", - "print('The frictional torque is %f N-m'%M)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION_kGC9SQv.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION_kGC9SQv.ipynb deleted file mode 100644 index e14e7ebb..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_7_APPLICATION_OF_FRICTION_kGC9SQv.ipynb +++ /dev/null @@ -1,483 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 7 Application of friction" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.1 Application of Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of lap for the larger pulley is 203.073918 degree\n", - "The angle of lap for the smaller pulley is 156.926082 degree\n", - "The length of pulley required is 117.748668 cm\n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "d1=24 # cm # diameter of larger pulley\n", - "d2=12 # cm # diameter of smaller pulley\n", - "d=30 #cm # seperation betweem 1st & the 2nd pulley\n", - "# Calcuations\n", - "r1=d1/2 #cm # radius of 1st pulley\n", - "r2=d2/2 #cm # radius of 2nd pulley\n", - "theta=math.degrees(math.asin((r1-r2)/d)) #degrees \n", - "# Angle of lap\n", - "beta_1=180+(2*theta) #degree # for larger pulley\n", - "beta_2=180-(2*theta) #degree #for smaller pulley\n", - "L=math.pi*(r1+r2)+(2*d)+((r1-r2)**2/d) #cm # Length of the belt\n", - "# Results\n", - "print('The angle of lap for the larger pulley is %f degree'%beta_1)\n", - "print('The angle of lap for the smaller pulley is %f degree'%beta_2)\n", - "print('The length of pulley required is %f cm'%L)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.2 Application of Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The angle of lap for the pulley is 194.774097 degree\n", - "The length of pulley required is 8.420145 m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "d1=0.6 #m # diameter of larger pulley\n", - "d2=0.3 #m # diameter of smaller pulley\n", - "d=3.5 #m # separation between the pulleys\n", - "# Calculations\n", - "r1=d1/2 #m # radius of larger pulley\n", - "r2=d2/2 #m # radius of smaller pulley\n", - "theta=math.degrees(math.asin((r1+r2)/d)) #degree\n", - "# Angle of lap for both the pulleys is same, i.e\n", - "beta=180+(2*theta) # degree\n", - "L=((math.pi*(r1+r2))+(2*d)+((r1-r2)**2/d)) #cm # Length of the belt\n", - "# Results\n", - "print('The angle of lap for the pulley is %f degree'%beta)\n", - "print('The length of pulley required is %f m'%L)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.4 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The minimum weight W2 to keep W1 in equilibrium is 455.975258 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W1=1000 #N\n", - "mu=0.25 #coefficient of friction\n", - "T1=W1 # Tension in the 1st belt carrying W1\n", - "e=2.718 #constant\n", - "# Calculations\n", - "T2=T1/(e**(mu*math.pi)) #N # Tension in the 2nd belt\n", - "W2=T2 #N\n", - "# Results\n", - "print('The minimum weight W2 to keep W1 in equilibrium is %f N'%W2)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.5 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The braking moment (M) exerted by the vertical weight W is 42.980225 N-m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "mu=0.5 # coefficient of friction between the belt and the wheel\n", - "W=100 #N\n", - "theta=45 #degree\n", - "e=2.718\n", - "Lac=0.75 #m # ength of the lever\n", - "Lab=0.25 #m\n", - "Lbc=0.50 #m\n", - "r=0.25 #m\n", - "# Calculations\n", - "beta=((180+theta)*math.pi)/180 # radian # angle of lap\n", - "# from eq'n 2\n", - "T1=(W*Lbc)/Lab #N \n", - "T2=T1/(e**(mu*beta)) #N # from eq'n 1\n", - "# consider the F.B.D of the pulley and take moment about its center, we get Braking Moment (M)\n", - "M=r*(T1-T2) #N-m\n", - "# Results\n", - "print('The braking moment (M) exerted by the vertical weight W is %f N-m'%M)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.6 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force required to suport the weight of 1000 N i.e 1kN is 3.502492 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initiization of variables\n", - "W= 1000 #N # or 1kN\n", - "mu=0.3 # coefficient of friction between the rope and the cylinder\n", - "e=2.718 # constant\n", - "alpha=90 # degree # since 2*alpha=180 egree\n", - "# Calculations\n", - "beta=2*math.pi*3 # radian # for 3 turn of the rope\n", - "# Here T1 is the larger tension in that section of the rope which is about to slip\n", - "T1=W #N\n", - "F=W/e**(mu*(1/(math.sin(alpha*math.pi/180)))*(beta)) #N Here T2=F\n", - "# Results\n", - "print('The force required to suport the weight of 1000 N i.e 1kN is %f N'%F)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.7 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The number of ropes required to transmit 50 kW is 4.789906 or ~ 5\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "Pw=50 #kW\n", - "T_max=1500 #N\n", - "v=10 # m/s # velocity of rope\n", - "w=4 # N/m # weight of rope\n", - "mu=0.2 # coefficient of friction \n", - "g=9.81 # m/s**2 # acceleration due to gravity\n", - "e=2.718 # constant\n", - "alpha=30 # degree # since 2*alpha=60 \n", - "# Calcuations\n", - "T_e=(w*v**2)/g # N # where T_e is the centrifugal tension\n", - "T1=(T_max)-(T_e) #N\n", - "T2=T1/(e**(mu*(1/math.sin(alpha*math.pi/180))*(math.pi))) #N # From eq'n T1/T2=e^(mu*cosec(alpha)*beta)\n", - "P=(T1-T2)*v*(10**-3) #kW # power transmitted by a single rope\n", - "N=Pw/P # Number of ropes required\n", - "# Results\n", - "print('The number of ropes required to transmit 50 kW is %f or ~ %.0f'%(N,N))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.8 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The power transmitted by the cross belt drive is 1.180543 kW\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "d1=0.45 #m # diameter of larger pulley\n", - "d2=0.20 #m # diameter of smaller pulley\n", - "d=1.95 #m # separation between the pulley's\n", - "T_max=1000 #N # or 1kN which is the maximum permissible tension\n", - "mu=0.20 # coefficient of friction\n", - "N=100 # r.p.m # speed of larger pulley\n", - "e=2.718 # constant\n", - "T_e=0 #N # as the data for calculating T_e is not given we assume T_e=0\n", - "# Calculations\n", - "r1=d1/2 #m # radius of larger pulley\n", - "r2=d2/2 #m # radius of smaller pulley\n", - "theta=math.degrees(math.asin((r1+r2)/d)) # degree\n", - "# for cross drive the angle of lap for both the pulleys is same\n", - "beta=((180+(2*(theta)))*math.pi)/180 #radian\n", - "T1=T_max-T_e #N\n", - "T2=T1/(e**(mu*(beta))) #N # from formulae, T1/T2=e**(mu*beta)\n", - "v=((2*math.pi)*N*r1)/60 # m/s # where v=velocity of belt which is given as, v=wr=2*pie*N*r/60\n", - "P=(T1-T2)*v*(10**-3) #kW # Power\n", - "# Results\n", - "print('The power transmitted by the cross belt drive is %f kW'%P)\n", - "#answer given in the textbook is incorrect" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.9 Belt friction" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The initial power transmitted is 14.808043 kW\n", - "The initial tension in the belt is 682.223893 N\n", - "The maximum power that can be transmitted is 15.020439 kW\n", - "The maximum power is transmitted at a belt speed of 24.343225 m/s\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variabes\n", - "b=0.1 #m #width of the belt\n", - "t=0.008 #m #thickness of the belt\n", - "v=26.67 # m/s # belt speed\n", - "beta=165 # radian # angle of lap for the smaller belt\n", - "mu=0.3 # coefficient of friction\n", - "sigma_max=2 # MN/m**2 # maximum permissible stress in the belt\n", - "m=0.9 # kg/m # mass of the belt\n", - "g=9.81 # m/s**2\n", - "e=2.718 # constant\n", - "# Calculations\n", - "A=b*t # m**2 # cross-sectional area of the belt\n", - "T_e=m*v**2 # N # where T_e is the Centrifugal tension\n", - "T_max=(sigma_max)*(A)*(10**6) # N # maximum tension in the belt\n", - "T1=(T_max)-(T_e) # N \n", - "T2=T1/(e**((mu*math.pi*beta)/180)) #N # from formulae T1/T2=e**(mu*beta)\n", - "P=(T1-T2)*v*(10**-3) #kW # Power transmitted\n", - "T_o=(T1+T2)/2 # N # Initial tension\n", - "# Now calculations to transmit maximum power\n", - "Te=T_max/3 # N # max tension\n", - "u=math.sqrt(T_max/(3*m)) # m/s # belt speed for max power\n", - "T_1=T_max-Te # N # T1 for case 2\n", - "T_2=T_1/(e**((mu*math.pi*beta)/180)) # N \n", - "P_max=(T_1-T_2)*u*(10**-3) # kW # Max power transmitted\n", - "# Results\n", - "print('The initial power transmitted is %f kW'%P)\n", - "print('The initial tension in the belt is %f N'%T_o)\n", - "print('The maximum power that can be transmitted is %f kW'%P_max)\n", - "print('The maximum power is transmitted at a belt speed of %f m/s'%u)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.10 Friction in a square threaded screw" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force required (i.e F1) to raise the weight is 1.208561 kN\n", - "The force required (i.e F2) to lower the weight is -0.794732 kN\n", - "The efficiency of the jack is 16.461202 percent\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "p=0.0125 # m # pitch of screw\n", - "d=0.1 #m # diameter of the screw\n", - "r=0.05 #m # radius of the screw\n", - "l=0.5 #m # length of the lever\n", - "W=50 #kN # load on the lever\n", - "mu=0.20 # coefficient of friction \n", - "# Calculations\n", - "theta=math.degrees(math.atan(p/(2*math.pi*r))) #degree # theta is the Helix angle\n", - "phi=math.degrees(math.atan(mu)) # degree # phi is the angle of friction\n", - "# Taking the leverage due to handle into account,force F1 required is,\n", - "a=theta+phi\n", - "b=theta-phi\n", - "F1=(W*(math.tan(a*math.pi/180)))*(r/l) #kN\n", - "# To lower the load\n", - "F2=(W*(math.tan(b*math.pi/180)))*(r/l) #kN # -ve sign of F2 indicates force required is in opposite sense\n", - "E=(math.tan(theta*math.pi/180)/math.tan((theta+phi)*math.pi/180))*100 # % # here E=eata=efficiency in %\n", - "# Results\n", - "print('The force required (i.e F1) to raise the weight is %f kN'%F1)\n", - "print('The force required (i.e F2) to lower the weight is %f kN'%F2)\n", - "print('The efficiency of the jack is %f percent'%E)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 7.11 Application of Friction" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The frictional torque is 240.000000 N-m\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variabes\n", - "P=20000 #N #Weight of the shaft\n", - "D=0.30 #m #diameter of the shaft\n", - "R=0.15 #m #radius of the shaft\n", - "mu=0.12 # coefficient of friction\n", - "# Calculations\n", - "# Friction torque T is given by formulae,\n", - "T=(2/3)*P*R*mu #N-m\n", - "M=T #N-m\n", - "# Results\n", - "print('The frictional torque is %f N-m'%M)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_8______SIMPLE_LIFTING_MACHINES_Y28MAwB.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_8______SIMPLE_LIFTING_MACHINES_Y28MAwB.ipynb deleted file mode 100644 index bb4007a0..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_8______SIMPLE_LIFTING_MACHINES_Y28MAwB.ipynb +++ /dev/null @@ -1,292 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 8 Simple Lifting Machines" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.1 Simple Machine" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The efficiency of the machine is 83.333333 percent\n", - "(b) The effort loss in friction of the machine is 3.333333 N\n", - "(c) The Frictional load of the machine is 20 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "VR=6 # Velocity ratio\n", - "P=20 #N # Effort\n", - "W=100 #N # Load lifted\n", - "# Calculations\n", - "#(a)\n", - "P_actual=P #N\n", - "W_actual=W #N\n", - "MA=W/P # where, M.A= Mechanical advantage\n", - "E=(MA/VR)*100 #% # Where E= efficiency\n", - "#(b)\n", - "# Now ideal effort required is,\n", - "P_ideal=W/VR #N\n", - "# Effort loss in friction is, (Le)\n", - "Le=P_actual-P_ideal #N # Effort loss in friction\n", - "#(c)\n", - "# Ideal load lifted is,(W_ideal)\n", - "W_ideal=P*VR #N \n", - "# Frictional load/resistance,\n", - "F=W_ideal-W_actual # N\n", - "# Results\n", - "print('(a) The efficiency of the machine is %f percent'%E)\n", - "print('(b) The effort loss in friction of the machine is %f N'%Le)\n", - "print('(c) The Frictional load of the machine is %d N'%F)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.2 Simple machines performance" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The graph is the solution\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<matplotlib.figure.Figure at 0x3e32978>" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "%matplotlib inline\n", - "from matplotlib.pyplot import plot,subplot,xlabel,ylabel,text,show\n", - "import math\n", - "import numpy as np\n", - "\n", - "# Initilization of variables\n", - "V_r=20 # Velocity ratio\n", - "# Values from the table # Variables have been assumed\n", - "# Values of W in N\n", - "W=[30,40,50,60,70,80,90,100]\n", - "# P in N\n", - "P=[7,8.5,10,11.5,13.5,14.5,16,17.5]\n", - "MA=[]\n", - "MA[:]=[W[i]/P[i] for i in range(0,8)]\n", - "# Efficiency (n)\n", - "n = np.asarray(MA) * (V_r** -1) * 100\n", - "# Calculations\n", - "# Part (a)- Realtionship between W & P\n", - "# Here part a cannot be solved as it has variables which cannot be defined in Scilab. Ref.textbook for the solution\n", - "# Part (b)- Graph between W & efficiency n(eta)\n", - "x=[0,W[0],W[1],W[2],W[3],W[4],W[5],W[6],W[7]] # values for W # N\n", - "y=[0,n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]] # values for efficiency n (eta) # %\n", - "subplot(221)\n", - "xlabel(\"W (N)\")\n", - "ylabel(\"efficiency n (%)\")\n", - "plot(x,y)\n", - "# Results\n", - "print('The graph is the solution')\n", - "# The value of m is found by drawing a straight line in the graph and by taking its slope\n", - "# The curve of the graph may differ from textbook because of the graphical calculation." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.3 Performance of Machine" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The effort wasted in friction is 15 N\n", - "(b) The load wasted in friction is 240 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Calculations\n", - "W_actual=1360 #N #Load lifted\n", - "P_actual=100 #N # Effort\n", - "n=4 # no of pulleys\n", - "# Calculations\n", - "# for 1st system of pulleys having 4 movable pulleys, Velocity ratio is\n", - "VR=2**(n) # Velocity Ratio\n", - "# If the machine were to be ideal(frictionless)\n", - "MA=VR # Here, M.A= mechanical advantage \n", - "# For a load of 1360 N, ideal effort required is\n", - "P_ideal=W_actual/VR #N\n", - "# Effort loss in friction is,\n", - "P_friction=P_actual-P_ideal #N\n", - "# For a effort of 100 N, ideal load lifted is,\n", - "W_ideal=VR*100 #N \n", - "# Load lost in friction is,\n", - "W_friction=W_ideal-W_actual # N \n", - "# Results\n", - "print('(a) The effort wasted in friction is %d N'%P_friction)\n", - "print('(b) The load wasted in friction is %d N'%W_friction)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.4 Performance of a machine" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The effort required to lift the load of 1000 N is 266.666667 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=1000 #N # Load to be lifted\n", - "n=5 # no. of pulleys\n", - "E=75 #% # Efficiency\n", - "# Calculations\n", - "# Velocity Ratio is given as,\n", - "VR=n \n", - "# Mechanical Advantage (M.A) is,\n", - "MA=(E/100)*VR # from formulae, Efficiency=E=M.A/V.R\n", - "P=W/MA #N # Effort required\n", - "# Results\n", - "print('The effort required to lift the load of 1000 N is %f N'%P)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.5 Simple screw jack" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force required at the end of the handle is 15.408712 N\n", - "The force required if the screw jack is considered to be an ideal machine is 4.547284 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=2000 #N # Load to be raised\n", - "l=0.70 #m # length of the handle\n", - "d=0.05 #m # diameter of the screw\n", - "p=0.01 #m # pitch of the screw\n", - "mu=0.15 # coefficient of friction at the screw thread\n", - "E=1 # efficiency\n", - "# Calculations\n", - "phi=math.degrees(math.atan(mu)) #degree\n", - "theta=math.degrees(math.atan(p/(math.pi*d))) #degree # where theta is the Helix angle\n", - "# Force required at the circumference of the screw is,\n", - "P=W*(math.tan((theta+phi)*math.pi/180)) # N #\n", - "# Force required at the end of the handle is,\n", - "F=(P*(d/2))/l #N \n", - "# Force required (Ideal case)\n", - "VR=2*math.pi*l/p\n", - "MA=E*VR # from formulae E=M.A/V,R\n", - "P_ideal=W/MA #N # From formulae, M.A=W/P\n", - "# Results\n", - "print('The force required at the end of the handle is %f N'%F)\n", - "print('The force required if the screw jack is considered to be an ideal machine is %f N'%P_ideal)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_8______SIMPLE_LIFTING_MACHINES_mcoeolw.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_8______SIMPLE_LIFTING_MACHINES_mcoeolw.ipynb deleted file mode 100644 index 69e9fe67..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_8______SIMPLE_LIFTING_MACHINES_mcoeolw.ipynb +++ /dev/null @@ -1,282 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 8 Simple Lifting Machines" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.1 Simple Machine" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The efficiency of the machine is 83.333333 percent\n", - "(b) The effort loss in friction of the machine is 3.333333 N\n", - "(c) The Frictional load of the machine is 20 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "VR=6 # Velocity ratio\n", - "P=20 #N # Effort\n", - "W=100 #N # Load lifted\n", - "# Calculations\n", - "#(a)\n", - "P_actual=P #N\n", - "W_actual=W #N\n", - "MA=W/P # where, M.A= Mechanical advantage\n", - "E=(MA/VR)*100 #% # Where E= efficiency\n", - "#(b)\n", - "# Now ideal effort required is,\n", - "P_ideal=W/VR #N\n", - "# Effort loss in friction is, (Le)\n", - "Le=P_actual-P_ideal #N # Effort loss in friction\n", - "#(c)\n", - "# Ideal load lifted is,(W_ideal)\n", - "W_ideal=P*VR #N \n", - "# Frictional load/resistance,\n", - "F=W_ideal-W_actual # N\n", - "# Results\n", - "print('(a) The efficiency of the machine is %f percent'%E)\n", - "print('(b) The effort loss in friction of the machine is %f N'%Le)\n", - "print('(c) The Frictional load of the machine is %d N'%F)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.2 Simple machines performance" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The graph is the solution\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<matplotlib.figure.Figure at 0x7f3cdf1b6be0>" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline\n", - "from matplotlib.pyplot import plot,subplot,xlabel,ylabel,text,show\n", - "import math\n", - "import numpy as np\n", - "\n", - "# Initilization of variables\n", - "V_r=20 # Velocity ratio\n", - "# Values from the table # Variables have been assumed\n", - "# Values of W in N\n", - "W=[30,40,50,60,70,80,90,100]\n", - "# P in N\n", - "P=[7,8.5,10,11.5,13.5,14.5,16,17.5]\n", - "MA=[]\n", - "MA[:]=[W[i]/P[i] for i in range(0,8)]\n", - "# Efficiency (n)\n", - "n = np.asarray(MA) * (V_r** -1) * 100\n", - "# Calculations\n", - "# Part (a)- Realtionship between W & P\n", - "# Here part a cannot be solved as it has variables which cannot be defined in Scilab. Ref.textbook for the solution\n", - "# Part (b)- Graph between W & efficiency n(eta)\n", - "x=[0,W[0],W[1],W[2],W[3],W[4],W[5],W[6],W[7]] # values for W # N\n", - "y=[0,n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]] # values for efficiency n (eta) # %\n", - "subplot(221)\n", - "xlabel(\"W (N)\")\n", - "ylabel(\"efficiency n (%)\")\n", - "plot(x,y)\n", - "# Results\n", - "print('The graph is the solution')\n", - "# The value of m is found by drawing a straight line in the graph and by taking its slope\n", - "# The curve of the graph may differ from textbook because of the graphical calculation." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.3 Performance of Machine" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(a) The effort wasted in friction is 15 N\n", - "(b) The load wasted in friction is 240 N\n" - ] - } - ], - "source": [ - "# Calculations\n", - "W_actual=1360 #N #Load lifted\n", - "P_actual=100 #N # Effort\n", - "n=4 # no of pulleys\n", - "# Calculations\n", - "# for 1st system of pulleys having 4 movable pulleys, Velocity ratio is\n", - "VR=2**(n) # Velocity Ratio\n", - "# If the machine were to be ideal(frictionless)\n", - "MA=VR # Here, M.A= mechanical advantage \n", - "# For a load of 1360 N, ideal effort required is\n", - "P_ideal=W_actual/VR #N\n", - "# Effort loss in friction is,\n", - "P_friction=P_actual-P_ideal #N\n", - "# For a effort of 100 N, ideal load lifted is,\n", - "W_ideal=VR*100 #N \n", - "# Load lost in friction is,\n", - "W_friction=W_ideal-W_actual # N \n", - "# Results\n", - "print('(a) The effort wasted in friction is %d N'%P_friction)\n", - "print('(b) The load wasted in friction is %d N'%W_friction)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.4 Performance of a machine" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The effort required to lift the load of 1000 N is 266.666667 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=1000 #N # Load to be lifted\n", - "n=5 # no. of pulleys\n", - "E=75 #% # Efficiency\n", - "# Calculations\n", - "# Velocity Ratio is given as,\n", - "VR=n \n", - "# Mechanical Advantage (M.A) is,\n", - "MA=(E/100)*VR # from formulae, Efficiency=E=M.A/V.R\n", - "P=W/MA #N # Effort required\n", - "# Results\n", - "print('The effort required to lift the load of 1000 N is %f N'%P)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 8.5 Simple screw jack" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force required at the end of the handle is 15.408712 N\n", - "The force required if the screw jack is considered to be an ideal machine is 4.547284 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=2000 #N # Load to be raised\n", - "l=0.70 #m # length of the handle\n", - "d=0.05 #m # diameter of the screw\n", - "p=0.01 #m # pitch of the screw\n", - "mu=0.15 # coefficient of friction at the screw thread\n", - "E=1 # efficiency\n", - "# Calculations\n", - "phi=math.degrees(math.atan(mu)) #degree\n", - "theta=math.degrees(math.atan(p/(math.pi*d))) #degree # where theta is the Helix angle\n", - "# Force required at the circumference of the screw is,\n", - "P=W*(math.tan((theta+phi)*math.pi/180)) # N #\n", - "# Force required at the end of the handle is,\n", - "F=(P*(d/2))/l #N \n", - "# Force required (Ideal case)\n", - "VR=2*math.pi*l/p\n", - "MA=E*VR # from formulae E=M.A/V,R\n", - "P_ideal=W/MA #N # From formulae, M.A=W/P\n", - "# Results\n", - "print('The force required at the end of the handle is %f N'%F)\n", - "print('The force required if the screw jack is considered to be an ideal machine is %f N'%P_ideal)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_9_ANALYSIS_OF_PLANE_TRUSSES_AND_FRAMES_kqPSl8C.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_9_ANALYSIS_OF_PLANE_TRUSSES_AND_FRAMES_kqPSl8C.ipynb deleted file mode 100644 index 03331275..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_9_ANALYSIS_OF_PLANE_TRUSSES_AND_FRAMES_kqPSl8C.ipynb +++ /dev/null @@ -1,582 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 9 Analysis of Plane Trusses and Frames" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.1 Axial forces in members of Truss" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Axial Force in member AD (Fad) is 2886.751346 N \n", - "The Axial Force in member AB (Fab) is 1443.375673 N \n", - "The Axial Force in member CE (Fce) is 4041.451884 N \n", - "The Axial Force in member CB (Fcb) is 2020.725942 N \n", - "The Axial Force in member DB (Fdb) is 577.350269 N \n", - "The Axial Force in member DE (Fde)is 1732.050808 N \n", - "The Axial Force in member EB (Feb) is 577.350269 N \n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "W1=2000 #N # load at joint D of the truss\n", - "W2=4000 #N # load at joint E of the truss\n", - "Lac=6 #m # length of the tie\n", - "Lab=3 #m\n", - "Lbc=3 #m\n", - "theta=60 #degree # interior angles of the truss\n", - "# Calculations\n", - "# Here A is simply supported & B is roller support. Now the SUPPORT REACTIONS are given as,\n", - "Rc=((W1*(Lab/2))+(W2*(Lab+(Lbc/2))))/Lac #N # Taking moment at A\n", - "Ra=W1+W2-Rc #N # Take sum Fy=0\n", - "# ANALYSIS OF TRUSS BY METHOD OF JOINT\n", - "# ASSUMPTION- we consider the,(1) Forces moving towards each other as +ve i.e TENSILE (T) & (2) Forces moving away from each other as -ve i.e COMPRESSIVE (C)\n", - "# (1) JOINT A\n", - "Fad=Ra/(math.sin(theta*math.pi/180)) #N #(C) # Umath.sing eq'n 2\n", - "Fab=Fad*math.cos(theta*math.pi/180) #N # (T) # Umath.sing eq'n 1\n", - "# (2) JOINT C\n", - "Fce=Rc/(math.sin(theta*math.pi/180)) #N # (C) # using eq'n 4\n", - "Fcb=Fce*math.cos(theta*math.pi/180) #N # (T) # using eq'n 3\n", - "# (3) JOINT D\n", - "Fdb=((Fad*math.sin(theta*math.pi/180))-(W1))/math.sin(theta*math.pi/180) #N # (T) # Using eq'n 6\n", - "Fde=(Fdb*math.cos(theta*math.pi/180))+(Fad*math.cos(theta*math.pi/180)) #N # (C) # Using eq'n 5\n", - "# (4) JOINT E\n", - "Feb=((Fce*math.cos(theta*math.pi/180))-(Fde))/math.cos(theta*math.pi/180) #N # (C) # Using eq'n 7\n", - "# Results\n", - "print('The Axial Force in member AD (Fad) is %f N '%Fad)\n", - "print('The Axial Force in member AB (Fab) is %f N '%Fab)\n", - "print('The Axial Force in member CE (Fce) is %f N '%Fce)\n", - "print('The Axial Force in member CB (Fcb) is %f N '%Fcb)\n", - "print('The Axial Force in member DB (Fdb) is %f N '%Fdb)\n", - "print('The Axial Force in member DE (Fde)is %f N '%Fde)\n", - "print('The Axial Force in member EB (Feb) is %f N '%Feb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.2 axial forces in members of truss" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member DE (Fde)is 1732.050808 N \n", - "\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W1=2000 #N (or 2 kN)# load at joint D of the truss\n", - "W2=4000 #N (or 4 kN)# load at joint E of the truss\n", - "Lac=6 #m # length of the tie\n", - "Lab=3 #m\n", - "Lbc=3 #m\n", - "theta=60 #degree # interior angles of the truss\n", - "# Calculations\n", - "# Here A is simply supported & B is roller support. Now the SUPPORT REACTIONS are given as,\n", - "Rc=((W1*(Lab/2))+(W2*(Lab+(Lbc/2))))/Lac #N # Taking moment at A\n", - "Ra=W1+W2-Rc #N # Take sum Fy=0\n", - "# Calculations\n", - "# Calculating the axial forces in the respective members by METHOD OF SECTION\n", - "# A section is drawn passing through member DE such that it cuts the respective member. Now consider the equilibrium of the left hand portion of the truss. The three unknown forces are Fde, Fdb, & Fab\n", - "# Take moment about B\n", - "Fde=((3*Ra)-(W1*Lab*math.sin(30*math.pi/180)))/(3*math.cos(30*math.pi/180)) #N # (T)\n", - "# Results\n", - "print('The axial force in the member DE (Fde)is %f N \\n'%Fde)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.3 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member DC (Fdc) is 1.000000 kN\n", - "The axial force in the member DB (Fdb) is 1.414214 kN\n", - "The axial force in the member CA (Fca) is 1.414214 kN\n", - "The axial force in the member CB (Fcb) is -1.000000 kN\n", - "The axial force in the member EC (Fec) is 0.000000 kN\n", - "The axial force in the member ED (Fed) is 0.000000 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=1 #kN # load on the truss at joint D\n", - "theta=45 #degree # angle made by the members AC & BD with the horizontal\n", - "Lab=1 #m \n", - "Lcd=1 #m # here Lcd= the distance from B to the line of extension drawn from 1kN force on the horizontal\n", - "# Calculations \n", - "# (1) JOINT E\n", - "# Here the joint E is in equilibrium under two forces Fec & Fed which are non-collinear. Hence they must be 0. i.e Fec=Fed=0 \n", - "Fec=0\n", - "Fed=0\n", - "# (2) JOINT D\n", - "Fdb=W/math.sin(theta*math.pi/180) # kN # (C)# sum Fy=0\n", - "Fdc=Fdb*math.cos(theta*math.pi/180) # kN # (T) # sum Fx=0\n", - "# (3) JOINT C\n", - "Fca=Fdc/math.sin(theta*math.pi/180) # kN # (T) # sum Fx=0\n", - "Fcb=-(Fca*math.sin(theta*math.pi/180)) # kN # (C) # sum Fy=0\n", - "# Results\n", - "print('The axial force in the member DC (Fdc) is %f kN'%Fdc)\n", - "print('The axial force in the member DB (Fdb) is %f kN'%Fdb)\n", - "print('The axial force in the member CA (Fca) is %f kN'%Fca)\n", - "print('The axial force in the member CB (Fcb) is %f kN'%Fcb)\n", - "print('The axial force in the member EC (Fec) is %f kN'%Fec)\n", - "print('The axial force in the member ED (Fed) is %f kN'%Fed)\n", - "# Here -ve sign indicates COMPRESSIVE force & +ve indicates TENSILE force" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.5 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member FG (Ffg) is 2000.000000 N\n", - "The axial force in the member CE (Fce) is -2309.401077 N\n", - "The axial force in the member CG (Fcg) is 0.000000 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W1=1000 #N # Load acting at the end pannels and the ridge\n", - "W2=2000 #N # Load acting at the intermidiate pannels\n", - "Laf=1 #m\n", - "Lgf=1 #m\n", - "Lag=2 #m\n", - "Lbg=1 #m\n", - "Lab=3 #m\n", - "theta=30 #degree # angle made by the principal rafter with the tie beam\n", - "beta=60 #degree # angle made by the slings (i.e members CF & CG) with the tie beam\n", - "# Calculations\n", - "# consider the equilibrium of the entire truss as a F.B.D\n", - "Xa=2*(W1*math.sin(theta*math.pi/180))+(W2*math.sin(theta*math.pi/180)) #N # sum Fx=0\n", - "Rb=((W2*Laf*math.cos(theta*math.pi/180))+(W1*Lag*math.cos(theta*math.pi/180)))/Lab # N # Moment at A=0\n", - "Ya=2*(W1*math.cos(theta*math.pi/180))+(W2*math.cos(theta*math.pi/180))-(Rb) #N # sum Fy=0\n", - "# Now pass a section through the truss such that it cuts the members CE,CG & FG. Now consider the equilibrium of the right hand side of the truss\n", - "# Take moment about C\n", - "Ffg=(Rb*(Lbg+0.5))/(0.5*math.tan(beta*math.pi/180)) # N # (T) # Here 0.5 is the half distance of Lgf\n", - "# Take moment about G\n", - "Fce=(-Rb*Lbg)/(Lbg*math.sin(theta*math.pi/180)) # N # (C)\n", - "# Take moment about B\n", - "Fcg=0/(Lbg*math.sin(beta*math.pi/180)) # N\n", - "# Results \n", - "print('The axial force in the member FG (Ffg) is %f N'%Ffg)\n", - "print('The axial force in the member CE (Fce) is %f N'%Fce)\n", - "print('The axial force in the member CG (Fcg) is %f N'%Fcg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.6 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member CD (Fcd) is 25.000000 N\n", - "The axial force in the member GB (Fgb) is 32.735027 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W1=100 #N # load acting at pt. C vertically\n", - "W2=50 #N # load acting at point B horizontaly\n", - "L=2 #m # length of each bar in the hexagonal truss\n", - "theta=60 #degree # internal angle of the truss\n", - "# Calculations\n", - "# We calculate the values of different members of the truss\n", - "HG=L*math.sin(theta*math.pi/180)\n", - "AF=L\n", - "# Support A is hinged whereas support F is a roller support. Firstly we find the support reactios as follows,\n", - "Rf=(W2*HG)/AF #N # moment at F\n", - "Xa=W2 #N # sum Fx=0\n", - "Ya=W1-Rf #N # sum Fy=0\n", - "# Now pass a section through the truss cutting the members CD,GD,GE & GF and consider equilibrium of right hand portion of the truss\n", - "Fcd=(Rf*(L/2))/(L*math.sin(theta*math.pi/180)) # N (C) # Taking moment about G\n", - "# Now pass a scetion pq cutting the members CB,GB & GA\n", - "Fga=((Rf*(L+(L/2)))-(W1*(L/2)))/(L*math.sin(theta*math.pi/180)) # N (T) # Taking moment about B\n", - "# take moment about G\n", - "Fcb=((W1*(L/2))+(Rf*(L/2)))/(L*math.sin(theta*math.pi/180)) # N (C)\n", - "Fgb=(Fcb*math.cos(theta*math.pi/180))-(Fga*math.cos(theta*math.pi/180)) # N (T) # sum Fx=0\n", - "# Results\n", - "print('The axial force in the member CD (Fcd) is %f N'%Fcd)\n", - "print('The axial force in the member GB (Fgb) is %f N'%Fgb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.10 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(1) The axial force in the bar CE (Fce) is 10.666667 kN\n", - "(2) The axial force in the bar BD (Fbd) is -21.333333 kN\n", - "(3) The axial force in the bar BE (Fbe) is -13.333333 kN\n", - "(4) The axial force in the bar CD (Fcd) is 13.333333 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=24 # kN # Load acting at pt C\n", - "Laf=12 # m # length of the tie beam\n", - "l=4 # m# length of each member in the tie\n", - "h=3 # m # height of the slings\n", - "Lae=8 # m\n", - "# Calculations\n", - "s=math.sqrt((l**2)+(h**2)) # m # sloping length \n", - "# From triangle BCD,\n", - "theta=math.degrees(math.acos(h/s))\n", - "# SUPPORT REACTIONS\n", - "Rf=(W*l)/Laf # kN # take moment at A\n", - "Ra=W-Rf # kN # sum Fy=0\n", - "# now pass a sectio mn through the truss and consider te equilibrium of the left hand portion \n", - "Fce=(Ra*l)/h # kN (T) # Take moment at B\n", - "Fbd=((W*l)-(Ra*Lae))/h # kN (C) # take moment at E\n", - "Fbe=(Ra-W)/math.cos(theta*math.pi/180) # kN\n", - "Fbd=(-Ra*l)/h # kN # take moment at C\n", - "Fce=((Ra*Lae)-(W*l))/h # kN (T) # take moment at D\n", - "Fcd=(W-Ra)/math.cos(theta*math.pi/180) # kN (T) # sum Fy=0\n", - "# Resuts\n", - "print('(1) The axial force in the bar CE (Fce) is %f kN'%Fce)\n", - "print('(2) The axial force in the bar BD (Fbd) is %f kN'%Fbd)\n", - "print('(3) The axial force in the bar BE (Fbe) is %f kN'%Fbe)\n", - "print('(4) The axial force in the bar CD (Fcd) is %f kN'%Fcd)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.12 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at A ( Ra) is 4.001736 kN\n", - "The reaction at B ( Rb) is 4.144943 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W1=4 # kN # load acting at a distance of 5 m from C\n", - "W2=3 # kN # load acting at a distance of 7.5 m from C\n", - "L=30 #m # distance AB\n", - "L1=15 # dist AC\n", - "L2=15 #m #dist BC\n", - "l1=10 #m # distance between A and 4 kN load\n", - "l2=22.5 #m # distance between A and 3 kN load\n", - "# Calculations\n", - "# (1) Reactions\n", - "Yb=((W1*l1)+(W2*l2))/L # kN # Take moment at A\n", - "Ya=W1+W2-Yb # kN # sum Fy=0\n", - "# Xa=Xb........(eq'n 1) # sum Fx=0\n", - "# (2) Dismember\n", - "# Member AC. Consider equilibrium of member AC\n", - "# Xa=Xc ... Consider thus as eq'n 2 # sum Fx=0\n", - "Yc=W1-Ya # kN # sum Fy=0\n", - "# Take moment about A\n", - "Xc=((W1*l1)-(Yc*L1))/L1 # kN \n", - "# now from eq'n 1 & 2\n", - "Xa=Xc # kN\n", - "Xb=Xa # kN\n", - "# The components of reactions at A & B are,\n", - "Ra=math.sqrt(Xa**2+Ya**2) # kN\n", - "Rb=math.sqrt(Xb**2+Yb**2) # kN\n", - "# Results\n", - "print('The reaction at A ( Ra) is %f kN'%Ra)\n", - "print('The reaction at B ( Rb) is %f kN'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.13 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force in tie bar AB is 1.299038 kN\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W1=2 # kN # load acting at a distance of 1m from point A\n", - "W2=1 # kN # load acting at a distance of 1m from point B\n", - "theta=30 # degree\n", - "L=4 # m # length of the tie beam\n", - "l=1 #m # length of each member in the tie\n", - "# Calculations\n", - "# (a) Reactions\n", - "Yb=((W1*l)+(W2*3*l))/L # kN # Taking moment about A\n", - "Ya=W1+W2-Yb # kN # sum Fy=0\n", - "# (b) Dismember\n", - "# MEMBER AB\n", - "# Xa=Xb........ (eq'n 1) # sum Fx=0\n", - "# MEMBER AC\n", - "# Xa=Xc.........(eq'n 2) # sum Fx=0\n", - "Yc=W1-Ya # kN # sum Fy=0\n", - "# Taking moment about A\n", - "Xc=((W1*l)-(Yc*2*l))/(2*math.tan(theta*math.pi/180)) # kN\n", - "# From eq'n 1 & 2\n", - "Xa=Xc # kN\n", - "Xb=Xa # kN\n", - "# Results\n", - "print('The force in tie bar AB is %f kN'%Xb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.14 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The compressive force in bar BC (Fbc) is 1250.000000 N\n", - "The shear force on the pin is 2015.564437 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "# Initilization of variables\n", - "W=1000 # N \n", - "r=0.25 # radius of pulley at E \n", - "Lab=2 #m\n", - "Lad=1 # m\n", - "Lbd=1 # m \n", - "Ldc=0.75 # m\n", - "l1=0.5 #m # c/c distance between bar AB and point E\n", - "l2=1.25 # m # dist between rigid support and the weight\n", - "# Calculations\n", - "# (a) Reactions\n", - "Xa=W # N # sum Fx=0\n", - "Yb=((W*l1)+(W*l2))/Lab # N # Take moment about A\n", - "Ya=W-Yb # N # sum Fy=0\n", - "# Dismember\n", - "# MEMBER ADB\n", - "# consider triangle BCD to find theta, where s= length of bar BC, \n", - "s=math.sqrt(Lbd**2+Ldc**2) # m\n", - "theta=math.degrees(math.acos(Lbd/s)) # degree\n", - "# equilibrium eq'n of member ADB\n", - "Yd=(Ya*Lab)/Lad # take moment about B\n", - "Fbc=(Yb+Ya-Yd)/math.sin(theta*math.pi/180) # N # sum Fy=0\n", - "Xd=(Fbc*math.cos(theta*math.pi/180))+(Xa) # N # sum Fx=0\n", - "# PIN D\n", - "Rd=math.sqrt(Xd**2+Yd**2) # N # shear force on the pin\n", - "# Results\n", - "print('The compressive force in bar BC (Fbc) is %f N'%Fbc)\n", - "print('The shear force on the pin is %f N'%Rd)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.15 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(1) The value of axial force (Rd) in bar 2 is 2651.650429 N\n", - "(2) The value of axial force (Re) in bar 3 is 2651.650429 N\n", - "(3) The value of axial force (Yb) in bar 1 is 1875.000000 N\n", - "(4) The value of axial force (Yc) in bar 4 is -625.000000 N\n" - ] - } - ], - "source": [ - "from __future__ import division\n", - "import math\n", - "import numpy\n", - "# Initiliztion of variables\n", - "P=5000 # N\n", - "theta=45 # degree # angle made by Rd & Re with the horizontal\n", - "Lab=3 # m\n", - "Lac=3 # m\n", - "Lbd=2 # m\n", - "Lce=2 # m\n", - "l=1.5 # m # dist of load P from B\n", - "# Calculations (BEAM AB )\n", - "# Consider the equilibrium of beams \n", - "# We are using matrix to solve the simultaneous eqn's \n", - "A=numpy.matrix([[(Lbd*math.sin(theta*math.pi/180)),Lab],[(Lce*math.sin(theta*math.pi/180)),-Lac]])\n", - "B=numpy.matrix([[(P*l)],[0]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Calculations (BEAM AC)\n", - "Re=C[0] # N (C) # from eq'n 1\n", - "Ya=(Re*Lce*math.sin(theta*math.pi/180))/Lac # N # from eq'n 7\n", - "Xa=C[0]*math.cos(theta*math.pi/180) # N # from eq'n 2\n", - "Ra=math.sqrt(Xa**2+Ya**2) # N (C)\n", - "Yb=P-Ya-(C[0]*math.sin(theta*math.pi/180)) # N (C) # eq'n 3\n", - "Yc=Ya-(Re*math.sin(theta*math.pi/180)) # N (T)\n", - "# Results \n", - "print('(1) The value of axial force (Rd) in bar 2 is %f N'%C[0])\n", - "print('(2) The value of axial force (Re) in bar 3 is %f N'%Re)\n", - "print('(3) The value of axial force (Yb) in bar 1 is %f N'%Yb)\n", - "print('(4) The value of axial force (Yc) in bar 4 is %f N'%Yc)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python [Root]", - "language": "python", - "name": "Python [Root]" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 2 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython2", - "version": "2.7.12" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} diff --git a/Engineering_Mechanics_by_A._K._Tayal/Chapter_9_ANALYSIS_OF_PLANE_TRUSSES_AND_FRAMES_tyRPw3C.ipynb b/Engineering_Mechanics_by_A._K._Tayal/Chapter_9_ANALYSIS_OF_PLANE_TRUSSES_AND_FRAMES_tyRPw3C.ipynb deleted file mode 100644 index 49750588..00000000 --- a/Engineering_Mechanics_by_A._K._Tayal/Chapter_9_ANALYSIS_OF_PLANE_TRUSSES_AND_FRAMES_tyRPw3C.ipynb +++ /dev/null @@ -1,564 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Chapter 9 Analysis of Plane Trusses and Frames" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.1 Axial forces in members of Truss" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The Axial Force in member AD (Fad) is 2886.751346 N \n", - "The Axial Force in member AB (Fab) is 1443.375673 N \n", - "The Axial Force in member CE (Fce) is 4041.451884 N \n", - "The Axial Force in member CB (Fcb) is 2020.725942 N \n", - "The Axial Force in member DB (Fdb) is 577.350269 N \n", - "The Axial Force in member DE (Fde)is 1732.050808 N \n", - "The Axial Force in member EB (Feb) is 577.350269 N \n" - ] - } - ], - "source": [ - "import math\n", - "# Initilization of variables\n", - "W1=2000 #N # load at joint D of the truss\n", - "W2=4000 #N # load at joint E of the truss\n", - "Lac=6 #m # length of the tie\n", - "Lab=3 #m\n", - "Lbc=3 #m\n", - "theta=60 #degree # interior angles of the truss\n", - "# Calculations\n", - "# Here A is simply supported & B is roller support. Now the SUPPORT REACTIONS are given as,\n", - "Rc=((W1*(Lab/2))+(W2*(Lab+(Lbc/2))))/Lac #N # Taking moment at A\n", - "Ra=W1+W2-Rc #N # Take sum Fy=0\n", - "# ANALYSIS OF TRUSS BY METHOD OF JOINT\n", - "# ASSUMPTION- we consider the,(1) Forces moving towards each other as +ve i.e TENSILE (T) & (2) Forces moving away from each other as -ve i.e COMPRESSIVE (C)\n", - "# (1) JOINT A\n", - "Fad=Ra/(math.sin(theta*math.pi/180)) #N #(C) # Umath.sing eq'n 2\n", - "Fab=Fad*math.cos(theta*math.pi/180) #N # (T) # Umath.sing eq'n 1\n", - "# (2) JOINT C\n", - "Fce=Rc/(math.sin(theta*math.pi/180)) #N # (C) # using eq'n 4\n", - "Fcb=Fce*math.cos(theta*math.pi/180) #N # (T) # using eq'n 3\n", - "# (3) JOINT D\n", - "Fdb=((Fad*math.sin(theta*math.pi/180))-(W1))/math.sin(theta*math.pi/180) #N # (T) # Using eq'n 6\n", - "Fde=(Fdb*math.cos(theta*math.pi/180))+(Fad*math.cos(theta*math.pi/180)) #N # (C) # Using eq'n 5\n", - "# (4) JOINT E\n", - "Feb=((Fce*math.cos(theta*math.pi/180))-(Fde))/math.cos(theta*math.pi/180) #N # (C) # Using eq'n 7\n", - "# Results\n", - "print('The Axial Force in member AD (Fad) is %f N '%Fad)\n", - "print('The Axial Force in member AB (Fab) is %f N '%Fab)\n", - "print('The Axial Force in member CE (Fce) is %f N '%Fce)\n", - "print('The Axial Force in member CB (Fcb) is %f N '%Fcb)\n", - "print('The Axial Force in member DB (Fdb) is %f N '%Fdb)\n", - "print('The Axial Force in member DE (Fde)is %f N '%Fde)\n", - "print('The Axial Force in member EB (Feb) is %f N '%Feb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.2 axial forces in members of truss" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member DE (Fde)is 1732.050808 N \n", - "\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W1=2000 #N (or 2 kN)# load at joint D of the truss\n", - "W2=4000 #N (or 4 kN)# load at joint E of the truss\n", - "Lac=6 #m # length of the tie\n", - "Lab=3 #m\n", - "Lbc=3 #m\n", - "theta=60 #degree # interior angles of the truss\n", - "# Calculations\n", - "# Here A is simply supported & B is roller support. Now the SUPPORT REACTIONS are given as,\n", - "Rc=((W1*(Lab/2))+(W2*(Lab+(Lbc/2))))/Lac #N # Taking moment at A\n", - "Ra=W1+W2-Rc #N # Take sum Fy=0\n", - "# Calculations\n", - "# Calculating the axial forces in the respective members by METHOD OF SECTION\n", - "# A section is drawn passing through member DE such that it cuts the respective member. Now consider the equilibrium of the left hand portion of the truss. The three unknown forces are Fde, Fdb, & Fab\n", - "# Take moment about B\n", - "Fde=((3*Ra)-(W1*Lab*math.sin(30*math.pi/180)))/(3*math.cos(30*math.pi/180)) #N # (T)\n", - "# Results\n", - "print('The axial force in the member DE (Fde)is %f N \\n'%Fde)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.3 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member DC (Fdc) is 1.000000 kN\n", - "The axial force in the member DB (Fdb) is 1.414214 kN\n", - "The axial force in the member CA (Fca) is 1.414214 kN\n", - "The axial force in the member CB (Fcb) is -1.000000 kN\n", - "The axial force in the member EC (Fec) is 0.000000 kN\n", - "The axial force in the member ED (Fed) is 0.000000 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=1 #kN # load on the truss at joint D\n", - "theta=45 #degree # angle made by the members AC & BD with the horizontal\n", - "Lab=1 #m \n", - "Lcd=1 #m # here Lcd= the distance from B to the line of extension drawn from 1kN force on the horizontal\n", - "# Calculations \n", - "# (1) JOINT E\n", - "# Here the joint E is in equilibrium under two forces Fec & Fed which are non-collinear. Hence they must be 0. i.e Fec=Fed=0 \n", - "Fec=0\n", - "Fed=0\n", - "# (2) JOINT D\n", - "Fdb=W/math.sin(theta*math.pi/180) # kN # (C)# sum Fy=0\n", - "Fdc=Fdb*math.cos(theta*math.pi/180) # kN # (T) # sum Fx=0\n", - "# (3) JOINT C\n", - "Fca=Fdc/math.sin(theta*math.pi/180) # kN # (T) # sum Fx=0\n", - "Fcb=-(Fca*math.sin(theta*math.pi/180)) # kN # (C) # sum Fy=0\n", - "# Results\n", - "print('The axial force in the member DC (Fdc) is %f kN'%Fdc)\n", - "print('The axial force in the member DB (Fdb) is %f kN'%Fdb)\n", - "print('The axial force in the member CA (Fca) is %f kN'%Fca)\n", - "print('The axial force in the member CB (Fcb) is %f kN'%Fcb)\n", - "print('The axial force in the member EC (Fec) is %f kN'%Fec)\n", - "print('The axial force in the member ED (Fed) is %f kN'%Fed)\n", - "# Here -ve sign indicates COMPRESSIVE force & +ve indicates TENSILE force" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.5 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member FG (Ffg) is 2000.000000 N\n", - "The axial force in the member CE (Fce) is -2309.401077 N\n", - "The axial force in the member CG (Fcg) is 0.000000 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W1=1000 #N # Load acting at the end pannels and the ridge\n", - "W2=2000 #N # Load acting at the intermidiate pannels\n", - "Laf=1 #m\n", - "Lgf=1 #m\n", - "Lag=2 #m\n", - "Lbg=1 #m\n", - "Lab=3 #m\n", - "theta=30 #degree # angle made by the principal rafter with the tie beam\n", - "beta=60 #degree # angle made by the slings (i.e members CF & CG) with the tie beam\n", - "# Calculations\n", - "# consider the equilibrium of the entire truss as a F.B.D\n", - "Xa=2*(W1*math.sin(theta*math.pi/180))+(W2*math.sin(theta*math.pi/180)) #N # sum Fx=0\n", - "Rb=((W2*Laf*math.cos(theta*math.pi/180))+(W1*Lag*math.cos(theta*math.pi/180)))/Lab # N # Moment at A=0\n", - "Ya=2*(W1*math.cos(theta*math.pi/180))+(W2*math.cos(theta*math.pi/180))-(Rb) #N # sum Fy=0\n", - "# Now pass a section through the truss such that it cuts the members CE,CG & FG. Now consider the equilibrium of the right hand side of the truss\n", - "# Take moment about C\n", - "Ffg=(Rb*(Lbg+0.5))/(0.5*math.tan(beta*math.pi/180)) # N # (T) # Here 0.5 is the half distance of Lgf\n", - "# Take moment about G\n", - "Fce=(-Rb*Lbg)/(Lbg*math.sin(theta*math.pi/180)) # N # (C)\n", - "# Take moment about B\n", - "Fcg=0/(Lbg*math.sin(beta*math.pi/180)) # N\n", - "# Results \n", - "print('The axial force in the member FG (Ffg) is %f N'%Ffg)\n", - "print('The axial force in the member CE (Fce) is %f N'%Fce)\n", - "print('The axial force in the member CG (Fcg) is %f N'%Fcg)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.6 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The axial force in the member CD (Fcd) is 25.000000 N\n", - "The axial force in the member GB (Fgb) is 32.735027 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W1=100 #N # load acting at pt. C vertically\n", - "W2=50 #N # load acting at point B horizontaly\n", - "L=2 #m # length of each bar in the hexagonal truss\n", - "theta=60 #degree # internal angle of the truss\n", - "# Calculations\n", - "# We calculate the values of different members of the truss\n", - "HG=L*math.sin(theta*math.pi/180)\n", - "AF=L\n", - "# Support A is hinged whereas support F is a roller support. Firstly we find the support reactios as follows,\n", - "Rf=(W2*HG)/AF #N # moment at F\n", - "Xa=W2 #N # sum Fx=0\n", - "Ya=W1-Rf #N # sum Fy=0\n", - "# Now pass a section through the truss cutting the members CD,GD,GE & GF and consider equilibrium of right hand portion of the truss\n", - "Fcd=(Rf*(L/2))/(L*math.sin(theta*math.pi/180)) # N (C) # Taking moment about G\n", - "# Now pass a scetion pq cutting the members CB,GB & GA\n", - "Fga=((Rf*(L+(L/2)))-(W1*(L/2)))/(L*math.sin(theta*math.pi/180)) # N (T) # Taking moment about B\n", - "# take moment about G\n", - "Fcb=((W1*(L/2))+(Rf*(L/2)))/(L*math.sin(theta*math.pi/180)) # N (C)\n", - "Fgb=(Fcb*math.cos(theta*math.pi/180))-(Fga*math.cos(theta*math.pi/180)) # N (T) # sum Fx=0\n", - "# Results\n", - "print('The axial force in the member CD (Fcd) is %f N'%Fcd)\n", - "print('The axial force in the member GB (Fgb) is %f N'%Fgb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.10 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(1) The axial force in the bar CE (Fce) is 10.666667 kN\n", - "(2) The axial force in the bar BD (Fbd) is -21.333333 kN\n", - "(3) The axial force in the bar BE (Fbe) is -13.333333 kN\n", - "(4) The axial force in the bar CD (Fcd) is 13.333333 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=24 # kN # Load acting at pt C\n", - "Laf=12 # m # length of the tie beam\n", - "l=4 # m# length of each member in the tie\n", - "h=3 # m # height of the slings\n", - "Lae=8 # m\n", - "# Calculations\n", - "s=math.sqrt((l**2)+(h**2)) # m # sloping length \n", - "# From triangle BCD,\n", - "theta=math.degrees(math.acos(h/s))\n", - "# SUPPORT REACTIONS\n", - "Rf=(W*l)/Laf # kN # take moment at A\n", - "Ra=W-Rf # kN # sum Fy=0\n", - "# now pass a sectio mn through the truss and consider te equilibrium of the left hand portion \n", - "Fce=(Ra*l)/h # kN (T) # Take moment at B\n", - "Fbd=((W*l)-(Ra*Lae))/h # kN (C) # take moment at E\n", - "Fbe=(Ra-W)/math.cos(theta*math.pi/180) # kN\n", - "Fbd=(-Ra*l)/h # kN # take moment at C\n", - "Fce=((Ra*Lae)-(W*l))/h # kN (T) # take moment at D\n", - "Fcd=(W-Ra)/math.cos(theta*math.pi/180) # kN (T) # sum Fy=0\n", - "# Resuts\n", - "print('(1) The axial force in the bar CE (Fce) is %f kN'%Fce)\n", - "print('(2) The axial force in the bar BD (Fbd) is %f kN'%Fbd)\n", - "print('(3) The axial force in the bar BE (Fbe) is %f kN'%Fbe)\n", - "print('(4) The axial force in the bar CD (Fcd) is %f kN'%Fcd)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.12 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The reaction at A ( Ra) is 4.001736 kN\n", - "The reaction at B ( Rb) is 4.144943 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W1=4 # kN # load acting at a distance of 5 m from C\n", - "W2=3 # kN # load acting at a distance of 7.5 m from C\n", - "L=30 #m # distance AB\n", - "L1=15 # dist AC\n", - "L2=15 #m #dist BC\n", - "l1=10 #m # distance between A and 4 kN load\n", - "l2=22.5 #m # distance between A and 3 kN load\n", - "# Calculations\n", - "# (1) Reactions\n", - "Yb=((W1*l1)+(W2*l2))/L # kN # Take moment at A\n", - "Ya=W1+W2-Yb # kN # sum Fy=0\n", - "# Xa=Xb........(eq'n 1) # sum Fx=0\n", - "# (2) Dismember\n", - "# Member AC. Consider equilibrium of member AC\n", - "# Xa=Xc ... Consider thus as eq'n 2 # sum Fx=0\n", - "Yc=W1-Ya # kN # sum Fy=0\n", - "# Take moment about A\n", - "Xc=((W1*l1)-(Yc*L1))/L1 # kN \n", - "# now from eq'n 1 & 2\n", - "Xa=Xc # kN\n", - "Xb=Xa # kN\n", - "# The components of reactions at A & B are,\n", - "Ra=math.sqrt(Xa**2+Ya**2) # kN\n", - "Rb=math.sqrt(Xb**2+Yb**2) # kN\n", - "# Results\n", - "print('The reaction at A ( Ra) is %f kN'%Ra)\n", - "print('The reaction at B ( Rb) is %f kN'%Rb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.13 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The force in tie bar AB is 1.299038 kN\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W1=2 # kN # load acting at a distance of 1m from point A\n", - "W2=1 # kN # load acting at a distance of 1m from point B\n", - "theta=30 # degree\n", - "L=4 # m # length of the tie beam\n", - "l=1 #m # length of each member in the tie\n", - "# Calculations\n", - "# (a) Reactions\n", - "Yb=((W1*l)+(W2*3*l))/L # kN # Taking moment about A\n", - "Ya=W1+W2-Yb # kN # sum Fy=0\n", - "# (b) Dismember\n", - "# MEMBER AB\n", - "# Xa=Xb........ (eq'n 1) # sum Fx=0\n", - "# MEMBER AC\n", - "# Xa=Xc.........(eq'n 2) # sum Fx=0\n", - "Yc=W1-Ya # kN # sum Fy=0\n", - "# Taking moment about A\n", - "Xc=((W1*l)-(Yc*2*l))/(2*math.tan(theta*math.pi/180)) # kN\n", - "# From eq'n 1 & 2\n", - "Xa=Xc # kN\n", - "Xb=Xa # kN\n", - "# Results\n", - "print('The force in tie bar AB is %f kN'%Xb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.14 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "The compressive force in bar BC (Fbc) is 1250.000000 N\n", - "The shear force on the pin is 2015.564437 N\n" - ] - } - ], - "source": [ - "# Initilization of variables\n", - "W=1000 # N \n", - "r=0.25 # radius of pulley at E \n", - "Lab=2 #m\n", - "Lad=1 # m\n", - "Lbd=1 # m \n", - "Ldc=0.75 # m\n", - "l1=0.5 #m # c/c distance between bar AB and point E\n", - "l2=1.25 # m # dist between rigid support and the weight\n", - "# Calculations\n", - "# (a) Reactions\n", - "Xa=W # N # sum Fx=0\n", - "Yb=((W*l1)+(W*l2))/Lab # N # Take moment about A\n", - "Ya=W-Yb # N # sum Fy=0\n", - "# Dismember\n", - "# MEMBER ADB\n", - "# consider triangle BCD to find theta, where s= length of bar BC, \n", - "s=math.sqrt(Lbd**2+Ldc**2) # m\n", - "theta=math.degrees(math.acos(Lbd/s)) # degree\n", - "# equilibrium eq'n of member ADB\n", - "Yd=(Ya*Lab)/Lad # take moment about B\n", - "Fbc=(Yb+Ya-Yd)/math.sin(theta*math.pi/180) # N # sum Fy=0\n", - "Xd=(Fbc*math.cos(theta*math.pi/180))+(Xa) # N # sum Fx=0\n", - "# PIN D\n", - "Rd=math.sqrt(Xd**2+Yd**2) # N # shear force on the pin\n", - "# Results\n", - "print('The compressive force in bar BC (Fbc) is %f N'%Fbc)\n", - "print('The shear force on the pin is %f N'%Rd)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Example 9.15 Axial Forces in members of the truss" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(1) The value of axial force (Rd) in bar 2 is 2651.650429 N\n", - "(2) The value of axial force (Re) in bar 3 is 2651.650429 N\n", - "(3) The value of axial force (Yb) in bar 1 is 1875.000000 N\n", - "(4) The value of axial force (Yc) in bar 4 is -625.000000 N\n" - ] - } - ], - "source": [ - "import numpy\n", - "# Initiliztion of variables\n", - "P=5000 # N\n", - "theta=45 # degree # angle made by Rd & Re with the horizontal\n", - "Lab=3 # m\n", - "Lac=3 # m\n", - "Lbd=2 # m\n", - "Lce=2 # m\n", - "l=1.5 # m # dist of load P from B\n", - "# Calculations (BEAM AB )\n", - "# Consider the equilibrium of beams \n", - "# We are using matrix to solve the simultaneous eqn's \n", - "A=numpy.matrix([[(Lbd*math.sin(theta*math.pi/180)),Lab],[(Lce*math.sin(theta*math.pi/180)),-Lac]])\n", - "B=numpy.matrix([[(P*l)],[0]])\n", - "C=numpy.linalg.inv(A)*B\n", - "# Calculations (BEAM AC)\n", - "Re=C[0] # N (C) # from eq'n 1\n", - "Ya=(Re*Lce*math.sin(theta*math.pi/180))/Lac # N # from eq'n 7\n", - "Xa=C[0]*math.cos(theta*math.pi/180) # N # from eq'n 2\n", - "Ra=math.sqrt(Xa**2+Ya**2) # N (C)\n", - "Yb=P-Ya-(C[0]*math.sin(theta*math.pi/180)) # N (C) # eq'n 3\n", - "Yc=Ya-(Re*math.sin(theta*math.pi/180)) # N (T)\n", - "# Results \n", - "print('(1) The value of axial force (Rd) in bar 2 is %f N'%C[0])\n", - "print('(2) The value of axial force (Re) in bar 3 is %f N'%Re)\n", - "print('(3) The value of axial force (Yb) in bar 1 is %f N'%Yb)\n", - "print('(4) The value of axial force (Yc) in bar 4 is %f N'%Yc)" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.5.1" - }, - "widgets": { - "state": {}, - "version": "1.1.2" - } - }, - "nbformat": 4, - "nbformat_minor": 0 -} |