summaryrefslogtreecommitdiff
path: root/Engineering_Mechancis,_Schaum_Series_by_McLean/chapter4.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Engineering_Mechancis,_Schaum_Series_by_McLean/chapter4.ipynb')
-rwxr-xr-xEngineering_Mechancis,_Schaum_Series_by_McLean/chapter4.ipynb365
1 files changed, 365 insertions, 0 deletions
diff --git a/Engineering_Mechancis,_Schaum_Series_by_McLean/chapter4.ipynb b/Engineering_Mechancis,_Schaum_Series_by_McLean/chapter4.ipynb
new file mode 100755
index 00000000..c2e59463
--- /dev/null
+++ b/Engineering_Mechancis,_Schaum_Series_by_McLean/chapter4.ipynb
@@ -0,0 +1,365 @@
+{
+ "metadata": {
+ "name": "chapter 4.ipynb"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "CHAPTER 4: Resultants of Non-coplanar Force Systems"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4-1, Page no: 48"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "import numpy as np\n",
+ "#Initilization Of Variables\n",
+ "\n",
+ "F1=20 #lb\n",
+ "F2=15 #lb\n",
+ "F3=30 #lb\n",
+ "F4=50 #lb\n",
+ "#Co-ordinates of Forces\n",
+ "C1=np.array([2,1,6])\n",
+ "C2=np.array([4,-2,5])\n",
+ "C3=np.array([-3,-2,1])\n",
+ "C4=np.array([5,1,-2])\n",
+ "\n",
+ "#Calculations\n",
+ "\n",
+ "A=(C1[0]**2+C1[1]**2+C1[2]**2)**0.5\n",
+ "B=(C2[0]**2+C2[1]**2+C2[2]**2)**0.5\n",
+ "C=(C3[0]**2+C3[1]**2+C3[2]**2)**0.5\n",
+ "D=(C4[0]**2+C4[1]**2+C4[2]**2)**0.5\n",
+ "#Calculations for cos(thetax),cos(thetay) and cos(thetaz)\n",
+ "theta1=(A**-1)*np.array([C1[0],C1[1],C1[2]])\n",
+ "theta2=(B**-1)*np.array([C2[0],C2[1],C2[2]])\n",
+ "theta3=(C**-1)*np.array([C3[0],C3[1],C3[2]])\n",
+ "theta4=(D**-1)*np.array([C4[0],C4[1],C4[2]])\n",
+ "#Calculations for forces (in form of force vectors)\n",
+ "Fa=F1*np.array([theta1[0],theta1[1],theta1[2]]) #lb\n",
+ "Fb=F2*np.array([theta2[0],theta2[1],theta2[2]]) #lb\n",
+ "Fc=F3*np.array([theta3[0],theta3[1],theta3[2]]) #lb\n",
+ "Fd=F4*np.array([theta4[0],theta4[1],theta4[2]]) #lb\n",
+ "Fx=Fa[0]+Fb[0]+Fc[0]+Fd[0] #lb\n",
+ "Fy=Fa[1]+Fb[1]+Fc[1]+Fd[1] #lb\n",
+ "Fz=Fa[2]+Fb[2]+Fc[2]+Fd[2] #lb\n",
+ "R=(Fx**2+Fy**2+Fz**2)**0.5 #lb\n",
+ "thetax=arccos(Fx*R**-1)*(180/pi) #degrees\n",
+ "thetay=180-((180*arccos(Fy*R**-1))/pi) #degrees\n",
+ "thetaz=(180*arccos(Fz*R**-1))/pi #degrees\n",
+ "\n",
+ "#Result\n",
+ "\n",
+ "print'The resultant of the force system is',round(R,1),\"lb\"\n",
+ "print'The angle of the resultant with respect to x axis is',round(thetax,1),\"degree\"\n",
+ "print'The angle of the resultant with respect to y axis is',round(thetay),\"degree\"\n",
+ "print'The angle of the resultant with respect to a axis is',round(thetaz,1),\"degree\"\n",
+ "\n",
+ "# Thetax is off by 0.1 degrees"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The resultant of the force system is 42.5 lb\n",
+ "The angle of the resultant with respect to x axis is 30.1 degree\n",
+ "The angle of the resultant with respect to y axis is 79.0 degree\n",
+ "The angle of the resultant with respect to a axis is 62.4 degree\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4-2, Page no: 49"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Initilization of variables\n",
+ "\n",
+ "F=[20,-10,30] #N\n",
+ "#co-ordinates in meters\n",
+ "a=2 #m\n",
+ "b=4 #m\n",
+ "c=7 #m\n",
+ "d=3 #m\n",
+ "e=2 #m\n",
+ "f=4 #m\n",
+ "\n",
+ "#Calculations\n",
+ "\n",
+ "R=F[0]+F[1]+F[2] #N\n",
+ "M_o=F[0]*a+F[1]*b+F[2]*c #N.m\n",
+ "x=M_o*R**-1 #m\n",
+ "M_x=-F[2]*f-F[0]*d-F[1]*e #N.m\n",
+ "z=-M_x/R #m\n",
+ "\n",
+ "#Result\n",
+ "\n",
+ "print'The resultant is +',round(R),\"N\"\n",
+ "print'The moment about point O is +',round(M_o),\"N.m\"\n",
+ "print'The position of R is at',round(x,2),\"m (from origin)\"\n",
+ "print'The moment is',round(M_x),\"N.m\"\n",
+ "print'The z co-ordinate is +',round(z),\"m\"\n",
+ "\n",
+ "# Here the value of R & M_o is correct which should yeild the vaue of x (M_o/R) correctly. However dueto some error in the software the correct value is not being printed.\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The resultant is + 40.0 N\n",
+ "The moment about point O is + 210.0 N.m\n",
+ "The position of R is at 5.25 m (from origin)\n",
+ "The moment is -160.0 N.m\n",
+ "The z co-ordinate is + 4.0 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4-3, Page No: 49"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Initilization of variables\n",
+ "\n",
+ "F=[100,50,-150] #Force vector N\n",
+ "a=2 #m\n",
+ "b=2 #m \n",
+ "c=3 #m\n",
+ "d=2 #m\n",
+ "e=4 #m\n",
+ "f=8 #m\n",
+ "\n",
+ "#Calculations\n",
+ "\n",
+ "R=F[0]+F[1]+F[2] #N\n",
+ "M_x=-F[0]*a+F[1]*b-F[2]*c #N.m\n",
+ "M_z=F[0]*d+F[1]*e+F[2]*f #N.m\n",
+ "C=sqrt(M_x**2+M_z**2) #N-m\n",
+ "thetax=arctan(M_x*-M_z**-1)*(180/pi) #degrees\n",
+ "\n",
+ "#Result\n",
+ "\n",
+ "print'The resultant is',round(R),\"N\"\n",
+ "print'The moment about x axis is +',round(M_x),\"N.m\"\n",
+ "print'The moment about z axis is',round(M_z),\"N.m\"\n",
+ "print'The couple acting is',round(C),\"N.m\"\n",
+ "print'The trace makes an angle with x axis of',round(thetax,1),\"degrees\"\n",
+ "\n",
+ "# The answer for C waries by 1 N.m as compared to the book."
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The resultant is 0.0 N\n",
+ "The moment about x axis is + 350.0 N.m\n",
+ "The moment about z axis is -800.0 N.m\n",
+ "The couple acting is 873.0 N.m\n",
+ "The trace makes an angle with x axis of 23.6 degrees\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4-4, Page No: 50"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "import numpy as np\n",
+ "\n",
+ "#Initilization of variables\n",
+ "x1=-2\n",
+ "y1=2\n",
+ "z1=-2\n",
+ "x2=3\n",
+ "y2=0\n",
+ "z2=-4\n",
+ "x3=3\n",
+ "y3=2\n",
+ "z3=2\n",
+ "F1=40 #lb\n",
+ "F2=30 #lb\n",
+ "F3=20 #lb\n",
+ "Mxm=np.array([-92.4,-48,-19.4])\n",
+ "Mym=np.array([-46.2,72,9.8])\n",
+ "Mzm=np.array([46.2,-36,19.4])\n",
+ "\n",
+ "#Calculations\n",
+ "mag1=(x1**2+y1**2+z1**2)**0.5\n",
+ "mag2=(x2**2+y2**2+z2**2)**0.5\n",
+ "mag3=(x3**2+y3**2+z3**2)**0.5\n",
+ "thetax1=(x1*mag1**-1) #degrees\n",
+ "thetay1=(y1*mag1**-1) #degrees\n",
+ "thetaz1=(z1*mag1**-1) #degrees\n",
+ "thetax2=(x2*mag2**-1) #degrees\n",
+ "thetay2=(y2*mag2**-1) #degrees\n",
+ "thetaz2=(z2*mag2**-1) #degrees\n",
+ "thetax3=(x3*mag3**-1) #degrees\n",
+ "thetay3=(y3*mag3**-1) #degrees\n",
+ "thetaz3=(z3*mag3**-1) #degrees\n",
+ "#Now we will define all the components in terms of matrices for simplicity of computation\n",
+ "F=np.array([F1,F2,F3]) #lb\n",
+ "Fx1=F[0]*thetax1\n",
+ "Fy1=F[0]*thetay1\n",
+ "Fz1=F[0]*thetaz1\n",
+ "Fx2=F[1]*thetax2\n",
+ "Fy2=F[1]*thetay2\n",
+ "Fz2=F[1]*thetaz2\n",
+ "Fx3=F[2]*thetax3\n",
+ "Fy3=F[2]*thetay3\n",
+ "Fz3=F[2]*thetaz3\n",
+ "Fx=Fx1+Fx2+Fx3 #lb\n",
+ "Fy=Fy1+Fy2+Fy3 #lb\n",
+ "Fz=Fz1+Fz2+Fz3 #lb\n",
+ "R=(Fx**2+Fy**2+Fz**2)**0.5 #lb\n",
+ "thetax=arccos(Fx*R**-1)*(180/pi) #degrees\n",
+ "thetay=arccos(Fy*R**-1)*(180/pi) #degrees\n",
+ "thetaz=arccos(Fz*R**-1)*(180/pi) #degrees\n",
+ "#Moment calculations\n",
+ "Mx=Mxm[0]+Mxm[1]+Mxm[2] #lb-ft\n",
+ "My=Mym[0]+Mym[1]+Mym[2] #lb-ft\n",
+ "Mz=Mzm[0]+Mzm[1]+Mzm[2] #lb-ft\n",
+ "C=(Mx**2+My**2+Mz**2)**0.5 #lb-ft\n",
+ "#Direction cosines\n",
+ "PHIx=arccos(Mx*C**-1)*(180/pi) #degrees\n",
+ "PHIy=arccos(My*C**-1)*(180/pi) #degrees\n",
+ "PHIz=arccos(Mz*C**-1)*(180/pi) #degrees\n",
+ "\n",
+ "#Result\n",
+ "print'The result of the force is',round(R,1),\"lb\"\n",
+ "print'The angles with respect to X-Axis,Y-Axis and Z-axis are:',round(thetax,1),\"degrees\",',',round(thetay,1),\"degrees\",'and',round(thetaz,1),\"degrees respectively.\"\n",
+ "print'The magnitude of resultant couple is',round(C),\"lb-ft\"\n",
+ "print'The angles are as follows: Cosphix=',round(PHIx,1),\"degrees\",',Cosphiy=',round(PHIy,1),\"degrees\",'and Cosphiz=',round(PHIz,1),\"degrees\"\n",
+ "\n",
+ "# The answers may wary due to decimal point descrepancy"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The result of the force is 50.6 lb\n",
+ "The angles with respect to X-Axis,Y-Axis and Z-axis are: 79.2 degrees , 49.6 degrees and 137.6 degrees respectively.\n",
+ "The magnitude of resultant couple is 166.0 lb-ft\n",
+ "The angles are as follows: Cosphix= 163.8 degrees ,Cosphiy= 77.6 degrees and Cosphiz= 79.8 degrees\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4-5, Page no 52"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "import numpy as np\n",
+ "\n",
+ "#Initilization of variables\n",
+ "F=np.array([150,90,160]) #lb force vector kind of decleration\n",
+ "# Co-ordinates defined as [x,y,z] all the co-ordinates are in feet\n",
+ "C_1=np.array([2,0,0]) \n",
+ "C_2=np.array([0,0,1])\n",
+ "C_3=np.array([0,-2,-1])\n",
+ "C_4=np.array([-1,0,-1])\n",
+ "\n",
+ "#Calculations\n",
+ "A=C_2-C_1\n",
+ "B=C_4-C_3\n",
+ "F1=(F[0]*A)/(A[0]**2+A[1]**2+A[2]**2)**0.5\n",
+ "F2=(F[1]*B)/(B[0]**2+B[1]**2+B[2]**2)**0.5\n",
+ "R=F1+F2\n",
+ "# Determine C1 & C2\n",
+ "# Calculating the cross products of C1 & C2 as,\n",
+ "C1=np.array([[C_1[1]*F1[2]-C_1[2]*F1[1]],[-(C_1[0]*F1[2]-C_1[2]*F1[0])],[C_1[0]*F1[1]-C_1[1]*F1[0]]]) # lb-ft\n",
+ "C2=np.array([[C_3[1]*F2[2]-C_3[2]*F2[1]],[-(C_3[0]*F2[2]-C_3[2]*F2[0])],[C_3[0]*F2[1]-C_3[1]*F2[0]]]) # lb-ft\n",
+ "C3=np.array([[0],[0],[160]]) # lb-ft\n",
+ "C=C1+C2+C3\n",
+ "\n",
+ "#Result\n",
+ "print'The resultant force couple is',round(C[0],1),\"i\",round(C[1],1),\"j +\",round(C[2],1),\"k lb-ft\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The resultant force couple is 80.5 i -93.9 j + 79.5 k lb-ft\n"
+ ]
+ }
+ ],
+ "prompt_number": 48
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file