{ "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 }