diff options
author | hardythe1 | 2015-06-03 15:27:17 +0530 |
---|---|---|
committer | hardythe1 | 2015-06-03 15:27:17 +0530 |
commit | df60071cf1d1c18822d34f943ab8f412a8946b69 (patch) | |
tree | ab059cf19bad4a1233a464ccf5d72cf8b3fb323c /Advanced_Strength_and_Applied_Elasticity | |
parent | fba055ce5aa0955e22bac2413c33493b10ae6532 (diff) | |
download | Python-Textbook-Companions-df60071cf1d1c18822d34f943ab8f412a8946b69.tar.gz Python-Textbook-Companions-df60071cf1d1c18822d34f943ab8f412a8946b69.tar.bz2 Python-Textbook-Companions-df60071cf1d1c18822d34f943ab8f412a8946b69.zip |
add books
Diffstat (limited to 'Advanced_Strength_and_Applied_Elasticity')
14 files changed, 2577 insertions, 0 deletions
diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter1.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter1.ipynb new file mode 100755 index 00000000..8ed4d6a9 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter1.ipynb @@ -0,0 +1,134 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:76379bde89e3a33a0904d639103a0d51711eca282502a3d06dfa062f7d30798f"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter1-Analysis of stress"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex1-page13"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "##Mohr's circle\n",
+ "#calculate centre of circle and max and min stress and principal stress and maxi shearing stress\n",
+ "import numpy\n",
+ "from numpy.linalg import inv\n",
+ "import math\n",
+ "sigma=((40+80)/2.)\n",
+ "print'%s %.2f %s'%(\"center of the circle in MPa = \",sigma,\"\")\n",
+ "\n",
+ "##solution a\n",
+ "x=((80-40)**2.);\n",
+ "y=30**2.;\n",
+ "sigma1=60.+math.sqrt((.25*x)+y)\n",
+ "print'%s %.2f %s'%(\"maxi pricipal stress in MPa = \",sigma1,\"\");## print'%s %.2f %s'%laying result\n",
+ "sigma2=60.-math.sqrt((.25*x)+y)\n",
+ "print'%s %.2f %s'%(\"mini pricipal stress in MPa = \",sigma2,\"\");## print'%s %.2f %s'%laying result\n",
+ "theta1=((math.atan((30./20.))/2)*57.3)\n",
+ "print'%s %.2f %s'%(\"pricipal stresses in degree\",theta1,\"\");## print'%s %.2f %s'%laying result\n",
+ "theta2=(((math.atan(30/20.))+180.)/2.)*57.3\n",
+ "print'%s %.2f %s'%(\"pricipal stresses in degree\",theta2,\"\");## print'%s %.2f %s'%laying result\n",
+ "\n",
+ "##solution b\n",
+ "tau=math.sqrt((.25*x)+y)\n",
+ "print'%s %.2f %s'%(\"maxi shearing stress in MPa = \",tau,\"\");## print'%s %.2f %s'%laying result\n",
+ "theta3=theta1+45.\n",
+ "print'%s %.2f %s'%(\"stress in MPa = \",theta3,\"\");## print'%s %.2f %s'%laying result\n",
+ "theta4=theta2+45\n",
+ "print'%s %.2f %s'%(\"stress in MPa = \",theta4,\"\");## print'%s %.2f %s'%laying result\n",
+ "\n",
+ "##final solution in matrix form\n",
+ "p=([80 ,30, 30 ,40])\n",
+ "print(p) \n",
+ "q=([sigma1, 0 ,0 ,sigma2])\n",
+ "print(q)\n",
+ "r=([sigma, -tau, -tau, sigma])\n",
+ "print(r)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "center of the circle in MPa = 60.00 \n",
+ "maxi pricipal stress in MPa = 96.06 \n",
+ "mini pricipal stress in MPa = 23.94 \n",
+ "pricipal stresses in degree 28.16 \n",
+ "pricipal stresses in degree 5185.16 \n",
+ "maxi shearing stress in MPa = 36.06 \n",
+ "stress in MPa = 73.16 \n",
+ "stress in MPa = 5230.16 \n",
+ "[80, 30, 30, 40]\n",
+ "[96.05551275463989, 0, 0, 23.944487245360108]\n",
+ "[60.0, -36.05551275463989, -36.05551275463989, 60.0]\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex2-pg14"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "##Mohr's circle\n",
+ "#calculate circle and radius of circle and oriention of the stresses in MPA\n",
+ "import math\n",
+ "radius=((14+28)/2.)\n",
+ "print'%s %.2f %s'%(\"radius of the circle in degree = \",radius,\"\")\n",
+ "sigma1=(7+radius *math.cos(60/57.3))\n",
+ "print'%s %.2f %s'%(\" the circle in MPa = \",sigma1,\"\")\n",
+ "sigma2=(7-radius *math.cos(60/57.3))\n",
+ "print'%s %.2f %s'%(\" the circle in MPa = \",sigma2,\"\")\n",
+ "tau1=radius*math.sin(60./57.3)\n",
+ "print'%s %.2f %s'%(\" orientation of the stresses in MPa = \",tau1,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "radius of the circle in degree = 21.00 \n",
+ " the circle in MPa = 17.50 \n",
+ " the circle in MPa = -3.50 \n",
+ " orientation of the stresses in MPa = 18.19 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter11.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter11.ipynb new file mode 100755 index 00000000..ba80b825 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter11.ipynb @@ -0,0 +1,82 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f729277270c4906babbae57b26d0a48c913109394e1fe2bf1cae355bbbb10bbd"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter11-Elastic Stability"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex1-pg319"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calcualte weight and N\n",
+ "E=210*10**9. ##Pa\n",
+ "d=100. ##mm\n",
+ "t=50 ##mm\n",
+ "A=0.005\n",
+ "Iz=0.05*(0.1**3)/12.\n",
+ "print(Iz)\n",
+ "Iy=0.1*(0.05**3)/12\n",
+ "print(Iy)\n",
+ "##r=sqrt(Iy/A)\n",
+ "r= math.sqrt(Iy/A)\n",
+ "print(r)##mm\n",
+ "L=2.75\n",
+ "\n",
+ "##P=W/tand(15)=3.732\n",
+ "Pcr=(math.pi**2.*E*Iz)/L**2.\n",
+ "print'%s %.2f %s'%(\"into W is= \",Pcr,\"\")\n",
+ "W=Pcr/3.732\n",
+ "print'%s %.2f %s'%(\"in N is= \",W,\"\")\n",
+ "\n",
+ "Pcr=(math.pi**2*E*Iy)/L**2.\n",
+ "print'%s %.2f %s'%(\"into W is= \",Pcr,\"\")\n",
+ "W=Pcr/3.732\n",
+ "print'%s %.2f %s'%(\"in N is= \",W,\"\")\n",
+ "\n",
+ "## Ans varies due to round of error\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "4.16666666667e-06\n",
+ "1.04166666667e-06\n",
+ "0.0144337567297\n",
+ "into W is= 1141937.70 \n",
+ "in N is= 305985.45 \n",
+ "into W is= 285484.42 \n",
+ "in N is= 76496.36 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter12.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter12.ipynb new file mode 100755 index 00000000..e66fbaea --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter12.ipynb @@ -0,0 +1,77 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:2781545e4a86c16cb74b3bfc3908d3f7649eaff2f44e3b1448ebf17923520f6f"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter12-Plastic Behaviour of Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex1-pg345"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate plastic yeilding and max allowable stress and axial stress and transverse stress and total elonganation for stability in meter\n",
+ "alpha=45.\n",
+ "sigmayp=35.*10**6 ##Pa\n",
+ "k=840.##MPa\n",
+ "n=0.2\n",
+ "L0=3 ##m\n",
+ "Aad=10.*10**-5 ##m**2\n",
+ "Acd=10.*10**-5 ##m**2\n",
+ "Abd=15.*10**-5 ##m**2\n",
+ "\n",
+ "P=sigmayp*Abd+2.*sigmayp*Aad*math.cos(45/57.3)\n",
+ "print'%s %.2f %s'%(\"plastic yeilding in N is= \",P,\"\")\n",
+ "sigma=k*n**n\n",
+ "print'%s %.2f %s'%(\"maxi allowable stress in MPa is= \",sigma,\"\")\n",
+ "epsilon1=n\n",
+ "print'%s %.2f %s'%(\"axial stress is= \",epsilon1,\"\")\n",
+ "epsilon2=-0.1\n",
+ "print'%s %.2f %s'%(\"transverse stress is= \",epsilon2,\"\")\n",
+ "epsilon3=-0.1\n",
+ "print'%s %.2f %s'%(\"transverse stress is= \",epsilon3,\"\")\n",
+ "z=3*n\n",
+ "print'%s %.2f %s'%(\"total elongation for stability in meter is= \",z,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "plastic yeilding in N is= 10200.03 \n",
+ "maxi allowable stress in MPa is= 608.81 \n",
+ "axial stress is= 0.20 \n",
+ "transverse stress is= -0.10 \n",
+ "transverse stress is= -0.10 \n",
+ "total elongation for stability in meter is= 0.60 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter2.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter2.ipynb new file mode 100755 index 00000000..8f910d4c --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter2.ipynb @@ -0,0 +1,162 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:e953f526db565d7aa504d8011697e642d2061a58d6ef5161bb85dc3f3417f791"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter2-Strain and stress -strain relations"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex1-pg38"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate radius of circle and principal stresses and distance between o and c and strain and shear strain and maxi shear stress\n",
+ "radius=((math.sqrt(195**2.+130**2.))*10**(-6.));\n",
+ "print'%s %.5f %s'%(\"radius of the circle in degree = \",radius,\"\")\n",
+ "theta1=(math.atan(130./195.))*57.3\n",
+ "print'%s %.2f %s'%(\"pricipal stresses in degree\",theta1,\"\");## print'%s %.2f %s'%laying result\n",
+ "epsilonx=510.*10**(-6.)\n",
+ "epsilony=120.*10**(-6.)\n",
+ "epsilon=(epsilonx+epsilony)/2.\n",
+ "print'%s %.5f %s'%(\"distance between O and c=\",epsilon,\"\")\n",
+ "\n",
+ "##solution a\n",
+ "angle=60.- theta1\n",
+ "print'%s %.2f %s'%(\"angle of ACA1 in degree = \",angle,\"\")## print'%s %.2f %s'%laying result\n",
+ "epsilonx1=epsilon+radius*math.cos(26.3/57.3)\n",
+ "print'%s %.5f %s'%(\"strains in x axis= \",epsilonx1,\"\")## print'%s %.2f %s'%laying result\n",
+ "epsilony1=epsilon-radius*math.cos(26.3/57.3)\n",
+ "print'%s %.5f %s'%(\"strains in y axis= \",epsilony1,\"\")## print'%s %.2f %s'%laying result\n",
+ "gammaxy=-2*(radius*math.sin(26.3/57.3))\n",
+ "print'%s %.5f %s'%(\"shear strain\",gammaxy,\"\")## print'%s %.2f %s'%laying result\n",
+ "\n",
+ "##solution b\n",
+ "epsilon1=epsilon+radius\n",
+ "print'%s %.5f %s'%(\"strains in x axis= \",epsilon1,\"\")## print'%s %.2f %s'%laying result\n",
+ "epsilon2=epsilon-radius\n",
+ "print'%s %.5f %s'%(\"strains in x axis= \",epsilon2,\"\")## print'%s %.2f %s'%laying result\n",
+ "\n",
+ "##solution c\n",
+ "gammamax=-+468*10**(-6)\n",
+ "print'%s %.5f %s'%(\"maxi shear stress= \",gammamax,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "radius of the circle in degree = 0.00023 \n",
+ "pricipal stresses in degree 33.69 \n",
+ "distance between O and c= 0.00031 \n",
+ "angle of ACA1 in degree = 26.31 \n",
+ "strains in x axis= 0.00053 \n",
+ "strains in y axis= 0.00010 \n",
+ "shear strain -0.00021 \n",
+ "strains in x axis= 0.00055 \n",
+ "strains in x axis= 0.00008 \n",
+ "maxi shear stress= -0.00047 \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex2-pg46"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate value of epsilon and gamma\n",
+ "epsilon0=190.*10**(-6)\n",
+ "epsilon60=200.*10**(-6)\n",
+ "epsilon120=-300.*10**(-6)\n",
+ "E=200.## GPa\n",
+ "v=0.3\n",
+ "epsilonx=epsilon0\n",
+ "print'%s %.4f %s'%(\"value of epsilonx is= \",epsilonx,\"\")\n",
+ "\n",
+ "## epsilon60=((epsilonx+epsilony)/2)-((epsilonx-epsilony)/4)+(gammaxy*sqrt(3))/4 eqn 1\n",
+ "## epsilon120=((epsilonx+epsilony)/2)-((epsilonx-epsilony)/4)-(gammaxy*sqrt(3))/4 eqn 2\n",
+ "\n",
+ "epsilony=(2.*(epsilon60+epsilon120)-epsilon0)/3.\n",
+ "print'%s %.4f %s'%(\"value of epsilony is= \",epsilony,\"\")\n",
+ "gammaxy=(2./math.sqrt(3.))*(epsilon60-epsilon120)## from eqn 1 and eqn 2\n",
+ "print'%s %.5f %s'%(\"value of gammaxy is= \",gammaxy,\"\")\n",
+ "epsilon1=((epsilonx+epsilony)/2.)+math.sqrt(((epsilonx-epsilony)/2.)**2.+(gammaxy/2.)**2.)## epsilony value is in negative so the sign changes in the eqn\n",
+ "print'%s %.5f %s'%(\"value of epsilon1 is= \",epsilon1,\"\")\n",
+ "epsilon2=((epsilonx+epsilony)/2.)-math.sqrt(((epsilonx-epsilony)/2.)**2+(gammaxy/2.)**2.)##epsilony value is in negative so the sign changes in the eqn\n",
+ "print'%s %.4f %s'%(\"value of epsilon2 is= \",epsilon2,\"\")\n",
+ "\n",
+ "gammamax=(2.*10**-6)*math.sqrt(((epsilonx-epsilony)/2.)**2.+(gammaxy/2.)**2)\n",
+ "print'%s %.3e %s'%(\"max shear strain is= \",gammamax,\"\")\n",
+ "thetap=math.atan((577./320.)/2.)*57.3\n",
+ "print'%s %.2f %s'%(\"orientations of principal axes is= \",thetap,\"\") ## or\n",
+ "thetap1=math.atan((577./320.)*2.)*57.\n",
+ "print'%s %.2f %s'%(\"orientations of principal axes is= \",thetap1,\"\")\n",
+ "sigma1=(200.*10**9/(1.-0.09))*(epsilon1+0.3*epsilon2)\n",
+ "print'%s %.2f %s'%(\"plane stresss is Pa= \",sigma1,\"\")\n",
+ "sigma2=(200*10**3/(1-0.09))*(epsilon2+0.3*epsilon1)\n",
+ "print'%s %.2f %s'%(\"plane stresss is MPa= \",sigma2,\"\")\n",
+ "\n",
+ "taumax=(200.*10**9./(2.*(1.+0.3)))*gammamax\n",
+ "print'%s %.2f %s'%(\"plane stresss is MPa= \",taumax,\"\")\n",
+ "#error in orientationd of principal axes because of round off error \n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "value of epsilonx is= 0.0002 \n",
+ "value of epsilony is= -0.0001 \n",
+ "value of gammaxy is= 0.00058 \n",
+ "value of epsilon1 is= 0.00036 \n",
+ "value of epsilon2 is= -0.0003 \n",
+ "max shear strain is= 6.601e-10 \n",
+ "orientations of principal axes is= 42.04 \n",
+ "orientations of principal axes is= 74.12 \n",
+ "plane stresss is Pa= 59348428.75 \n",
+ "plane stresss is MPa= -42.21 \n",
+ "plane stresss is MPa= 50.78 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter3.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter3.ipynb new file mode 100755 index 00000000..022cbc70 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter3.ipynb @@ -0,0 +1,86 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:3244e03679979a09b0b5fff869e60076c9b12f1d282baaf63c6b3b44f5166d94"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter3-Two-Dimensional problems in elasticity"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex5-pg83"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate alpha and semiaxes of elliptical contaact area and max contact pressure\n",
+ "E=210. ##GPa\n",
+ "v=0.3\n",
+ "r1=0.4 ##m radius\n",
+ "r2=0.3 ##m cross radius\n",
+ "P=90. ##kN compression load\n",
+ "\n",
+ "\n",
+ "m=4./((1./r1)+(1./r2))\n",
+ "print'%s %.2f %s'%(\"m\",m,\"\")\n",
+ "A=(1/2.)*((1./r1)+(1./r2))\n",
+ "print'%s %.2f %s'%(\"A\",A,\"\")\n",
+ "B=(1/2.)*((1./r1)-(1./r2))\n",
+ "print'%s %.2f %s'%(\"B\",B,\"\")\n",
+ "coss=(((1./r1)-(1./r2))/((1./r1)+(1./r2)))\n",
+ "print'%s %.2f %s'%(\"cos aplha is= \",coss,\"\")\n",
+ "n=(4.*E*10**9.)/(3.*(1.-v**2.))\n",
+ "print'%s %.3e %s'%(\"n is \",n,\"\")\n",
+ "s=math.acos(coss)*57.3\n",
+ "print'%s %.2f %s'%(\" s is alpha value = \",s,\"\") ## ans is 81.79degree but here since cosa is in negative we get ans as 98.21\n",
+ "ca=1.1040 ## from the interpolating table\n",
+ "cb=0.9112 ## from the interpolating table\n",
+ "a=ca*(90000.*m/n)**(0.33)\n",
+ "print'%s %.4f %s'%(\"semiaxes of the elliptical contact area in meter is= \",a,\"\")\n",
+ "b=cb*(90000*m/n)**(0.33)\n",
+ "print'%s %.4f %s'%(\"semiaxes of the elliptical contact area in meter is= \",b,\"\")\n",
+ "sigmac=1.5*(90000./(math.pi*a*b))\n",
+ "print'%s %.3e %s'%(\"max contact pressure in Pa is= \",sigmac,\"\") ## text book ans is wrong\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "m 0.69 \n",
+ "A 2.92 \n",
+ "B -0.42 \n",
+ "cos aplha is= -0.14 \n",
+ "n is 3.077e+11 \n",
+ " s is alpha value = 98.22 \n",
+ "semiaxes of the elliptical contact area in meter is= 0.0068 \n",
+ "semiaxes of the elliptical contact area in meter is= 0.0056 \n",
+ "max contact pressure in Pa is= 1.125e+09 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter4.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter4.ipynb new file mode 100755 index 00000000..f27a172a --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter4.ipynb @@ -0,0 +1,456 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b2511135f67d993f9545458e234822b8b9ce052d6d1f7413c45653c1b17f1152"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter4-Mechanical Behavior of Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex1-pg101"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate diameterof the bar in all cases\n",
+ "import numpy\n",
+ "from numpy.linalg import inv\n",
+ "sigmayp=350. ##MPa\n",
+ "sigma3=0.\n",
+ "M=8. ##kN\n",
+ "Mt=24. ##kNm\n",
+ "N=2.\n",
+ "v=0.3\n",
+ "\n",
+ "## sigma= My/I ==32M/%pid**3\n",
+ "## tau= Mt*r/J ==16Mt/%pid**3\n",
+ "##sigma1=(16*(M+sqrt(M**2+Mt**2)))/(%pi*d**3)\n",
+ "##sigma2=(16*(M-sqrt(M**2+Mt**2)))/(%pi*d**3)\n",
+ "\n",
+ "##solution a: max principal stress theory\n",
+ "##(16*(M+sqrt(M**2+Mt**2)))/(%pi*d**3)=sigmayp/N\n",
+ "\n",
+ "a=(16.*(M+math.sqrt(M**2.+Mt**2.)))/math.pi\n",
+ "print(a)\n",
+ "b=sigmayp*10**6./N\n",
+ "print(b)\n",
+ "d=(a/b)**(1/3.)\n",
+ "print'%s %.5f %s'%(\"diameter of the bar in meter is= \",d,\"\")\n",
+ "\n",
+ "##solution b:max shearing stress theory\n",
+ "\n",
+ "c=(32.*math.sqrt(M**2.+Mt**2.))/math.pi\n",
+ "print(c)\n",
+ "d=(c/b)**(1/3.)\n",
+ "print'%s %.5f %s'%(\"diameter of the bar in meter is= \",d,\"\")\n",
+ "\n",
+ "##solution c:max principal strain theory\n",
+ "##epsilon1=(sigma1-v(sigma2+sigma3))/E=epsilonyp/N=sigmayp/EN Or\n",
+ "##sigma1-v(sigma2+sigma3)=b given\n",
+ "##sigma1=b+v(sigma2+sigma3) substituting the values of the sigma 1,2 and 3 we get\n",
+ "##(16*(M+sqrt(M**2+Mt**2)-vM-v*sqrt(M**2+Mt**2)))/(%pi*d**3)=b\n",
+ "e=(16.*(M+math.sqrt(M**2.+Mt**2.)-v*M-v*math.sqrt(M**2.+Mt**2.)))/math.pi\n",
+ "print(e)\n",
+ "d=(e/b)**(1/3.)\n",
+ "print'%s %.5f %s'%(\"diameter of the bar in meter is= \",d,\"\")\n",
+ "\n",
+ "##solution d:max energy of distortion theory\n",
+ "\n",
+ "f=(16.*math.sqrt(4*M**2.+3.*Mt**2.))/math.pi\n",
+ "print'%s %.5f %s'%(\"f\",f,\"\")\n",
+ "d=(f/b)**(1/3.)\n",
+ "print'%s %.5f %s'%(\"diameter of the bar in meter is= \",d,\"\")\n",
+ "print(\"all the values are converted into meter\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "169.586448419\n",
+ "175000000.0\n",
+ "diameter of the bar in meter is= 0.00990 \n",
+ "257.685565975\n",
+ "diameter of the bar in meter is= 0.01138 \n",
+ "118.710513893\n",
+ "diameter of the bar in meter is= 0.00879 \n",
+ "f 226.85113 \n",
+ "diameter of the bar in meter is= 0.01090 \n",
+ "all the values are converted into meter\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex3-pg107"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate max principal stress\n",
+ "sigmau1=300. ##MPa\n",
+ "sigmau2=700. ##MPa\n",
+ "b=0.105 ##m outer diameter\n",
+ "a=0.100 ##m inner diameter\n",
+ "\n",
+ "##sigma1==(-sigma2)==tau\n",
+ "\n",
+ "sigma3=0.\n",
+ "\n",
+ "##Mt=J*tau/r= (%pi*(b**2-a**2))/2*b\n",
+ "##Mt=((%pi*(b**4-a**4))/(2*b))*tau equation a\n",
+ "q=(math.pi*(b**4.-a**4.))/(2.*b)\n",
+ "\n",
+ "##solution a: max principal stress theory\n",
+ "tau=sigmau1\n",
+ "Mt=q*tau*10**6.\n",
+ "print'%s %.2f %s'%(\"max principal stress in Nm is= \",Mt,\"\")\n",
+ "\n",
+ "##solution b:max shearing stress theory\n",
+ "## |sigma1-sigma2|=sigmau1\n",
+ "## 2*sigma1==sigmau1==2*tau or\n",
+ "\n",
+ "Mt=q*tau*10**6\n",
+ "print'%s %.2f %s'%(\"max shearing stress in Nm is= \",Mt,\"\")\n",
+ "\n",
+ "##solution c:Coulomb- mohr theory\n",
+ "##(tau/sigmau1)-(-tau/sigmau2)=1\n",
+ "tau=1*((sigmau1*sigmau2)/(sigmau1+sigmau2))\n",
+ "print'%s %.2f %s'%(\"tau in MPa is= \",tau,\"\")\n",
+ "Mt=q*tau*10**6\n",
+ "print'%s %.2f %s'%(\"Coulomb- mohr in Nm is= \",Mt,\"\")\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "max principal stress in Nm is= 96718.98 \n",
+ "max shearing stress in Nm is= 96718.98 \n",
+ "tau in MPa is= 210.00 \n",
+ "Coulomb- mohr in Nm is= 67703.29 \n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4-pg109"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate laod and intertia\n",
+ "a=0.05 ## m\n",
+ "Fm=90. ##kN\n",
+ "sigmacr=210. ## MPa\n",
+ "sigmayp=280. ## MPa\n",
+ "\n",
+ "##sigmaa=Ma*c/I equation 1\n",
+ "##Ma=0.025*Fa\n",
+ "c=0.025\n",
+ "I=(a**4.)/12.\n",
+ "print'%s %.7f %s'%(\"I\",I,\"\")\n",
+ "##sigmaa=((0.025*Fa)*c)/I substituting the values\n",
+ "\n",
+ "\n",
+ "##sigmam=Fm/A equation 2\n",
+ "sigmam=Fm/(a*a)\n",
+ "print'%s %.2f %s'%(\"in kilo Pa is= \",sigmam,\"\")\n",
+ "\n",
+ "##(((1200*Fa)/sigmacr)+(sigmam/sigmayp))=1\n",
+ "Fa=(1.-(sigmam/sigmayp))*(sigmacr/1200.)\n",
+ "print'%s %.2f %s'%(\"load Fa in N is= \",Fa,\"\") ##wrong ans in textbook\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "I 0.0000005 \n",
+ "in kilo Pa is= 36000.00 \n",
+ "load Fa in N is= -22.32 \n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex5-pg110"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate the value of pressure \n",
+ "r=0.04 ##m\n",
+ "t=5. ##mm\n",
+ "sigmae=250. ##MPa\n",
+ "sigmay=300. ##MPa\n",
+ "\n",
+ "##sigmathetamax=(p*r)/t =8*p max values of tangential stresses\n",
+ "##sigmathetamin=((-p/4)*r)/t =-2*p min values of tangential stresses\n",
+ "##sigmazamax=(p*r)/2*t =4*p axial principal stresses\n",
+ "##sigmazmin=((-p/4)*r)/2*t =-p\n",
+ "\n",
+ "##sigmathetaa=(sigmathetamax-sigmathetamin)/2= 5p alternating and mean stresses\n",
+ "##sigmathetam=(sigmathetamax+sigmathetamin)/2= 3p\n",
+ "##sigmaza=(sigmazamax-sigmazmin)/2 =2.5p\n",
+ "##sigmazm=(sigmazamax+sigmazmin)/2 =1.5p\n",
+ "\n",
+ "##sqrt(sigmathetaa**2-sigmathetaa*sigmaza+sigmaza**2)=sigmaea\n",
+ "##sqrt(sigmathetam**2-sigmathetam*sigmazm+sigmazm**2)=sigmaem\n",
+ "\n",
+ "##sqrt(25p**2-12.3p**2+6.25p**2)=sigmaea\n",
+ "##sqrt(9p**2-4.5p**2+2.25p**2)=sigmaem solving this equation we get\n",
+ "sigmaea=4.33 ##p\n",
+ "sigmaem=2.60 ##p\n",
+ "\n",
+ "p=1./((sigmaea/sigmae)+(sigmaem/sigmay))\n",
+ "print'%s %.2f %s'%(\"the value of p in MPa is= \",p,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the value of p in MPa is= 38.48 \n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex6-pg112"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "import numpy\n",
+ "from numpy.linalg import inv\n",
+ "#find alternating and mean values of stresses and sigma and cycle\n",
+ "a=([[700 ,14 ,0], [14, -350, 0],[0, 0, -350]])\n",
+ "print(a)\n",
+ "c=([[-660, -7, 0], [-7 ,-350, 0], [0, 0, -350]])\n",
+ "print(c)\n",
+ "sigmau=2400. ##MPa\n",
+ "K=1.\n",
+ "sigmae=800. ##MPa\n",
+ "Nf=1. ##cycles for SAE\n",
+ "Nff=10**3 ##cycles for Gerber\n",
+ "Ne=10**8 ##cycles\n",
+ "\n",
+ "sigmaxa=(700.+660.)/2.\n",
+ "print'%s %.2f %s'%(\"alternating and mean values of stresses in MPa is= \",sigmaxa,\"\")\n",
+ "sigmaxm=(700-660)/2.\n",
+ "print'%s %.2f %s'%(\"alternating and mean values of stresses in MPa is= \",sigmaxm,\"\")\n",
+ "sigmaya=(-350+350)/2.\n",
+ "print'%s %.2f %s'%(\"alternating and mean values of stresses in MPa is= \",sigmaya,\"\")\n",
+ "sigmaym=(-350-350)/2.\n",
+ "print'%s %.2f %s'%(\"alternating and mean values of stresses in MPa is= \",sigmaya,\"\")\n",
+ "sigmazm=(-350-350)/2.\n",
+ "print'%s %.2f %s'%(\"alternating and mean values of stresses in MPa is= \",sigmazm,\"\")\n",
+ "tauxya=(14+7)/2.\n",
+ "print'%s %.2f %s'%(\"alternating and mean values of stresses in MPa is= \",tauxya,\"\")\n",
+ "tauxym=(14-7)/2.\n",
+ "print'%s %.2f %s'%(\"alternating and mean values of stresses in MPa is= \",tauxym,\"\")\n",
+ "\n",
+ "sigmaea=math.sqrt(((sigmaxa-sigmaya)**2.+(sigmaya-sigmaxa)**2.+6.*(tauxya)**2.)/2.)\n",
+ "print'%s %.2f %s'%(\"in MPa is =\",sigmae,\"\")\n",
+ "sigmaem=math.sqrt(((sigmaxm-sigmaym)**2.+(sigmaym-sigmaxm)**2.+6.*(tauxym)**2.)/2.)\n",
+ "print'%s %.2f %s'%(\"in MPa is= \",sigmaem,\"\")\n",
+ "\n",
+ "##solution a: \n",
+ "sigmacr=sigmaea/(1-(sigmaem/2400.))\n",
+ "print'%s %.3f %s'%(\"sigmacr\",sigmacr,\"\")\n",
+ "b=math.log(sigmau/sigmae)/math.log(1./Ne)\n",
+ "print'%s %.3f %s'%(\"b\",b,\"\")\n",
+ "\n",
+ "Ncr=1.*(sigmacr/2400.)**(1./b)\n",
+ "print'%s %.3f %s'%(\"in cycles is= \",Ncr,\"\")\n",
+ "\n",
+ "##solution b:\n",
+ "sigmacr=sigmaea/(1.-(sigmaem/sigmau)**2.)\n",
+ "print'%s %.3f %s'%(\"in MPa is= \",sigmacr,\"\")\n",
+ "b=math.log(2160./sigmae)/math.log(10**3./Ne)\n",
+ "print'%s %.3f %s'%(\"b\",b,\"\")\n",
+ "\n",
+ "Ncr=Nff*(sigmacr/(0.9*2400))**(-11.587)\n",
+ "print'%s %.3e %s'%(\"in cycles is= \",Ncr,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "[[700, 14, 0], [14, -350, 0], [0, 0, -350]]\n",
+ "[[-660, -7, 0], [-7, -350, 0], [0, 0, -350]]\n",
+ "alternating and mean values of stresses in MPa is= 680.00 \n",
+ "alternating and mean values of stresses in MPa is= 20.00 \n",
+ "alternating and mean values of stresses in MPa is= 0.00 \n",
+ "alternating and mean values of stresses in MPa is= 0.00 \n",
+ "alternating and mean values of stresses in MPa is= -350.00 \n",
+ "alternating and mean values of stresses in MPa is= 10.50 \n",
+ "alternating and mean values of stresses in MPa is= 3.50 \n",
+ "in MPa is = 800.00 \n",
+ "in MPa is= 370.05 \n",
+ "sigmacr 804.248 \n",
+ "b -0.060 \n",
+ "in cycles is= 91502934.807 \n",
+ "in MPa is= 696.809 \n",
+ "b -0.086 \n",
+ "in cycles is= 4.934e+08 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ex7-pg115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate Inertia and deflection of a point in meter and impact factor and pressure and static deflection of the beam and impact facotr\n",
+ "W=180. ##N\n",
+ "h=0.1 ##m\n",
+ "L=1.16 ##m\n",
+ "w=0.025 ##m\n",
+ "d=0.075 ##m\n",
+ "E=200. ##GPa\n",
+ "k=180. ##kN/m\n",
+ "\n",
+ "I=w*d**3.\n",
+ "print'%s %.5f %s'%(\"I\",I,\"\")\n",
+ "##deltast=(W*L**3)/(48*E*I) equation 1\n",
+ "deltast=(W*L**3*12.)/(48.*E*10**9.*I)\n",
+ "print'%s %.5f %s'%(\"deflection of a point in meter is= \",deltast,\"\")\n",
+ "\n",
+ "##deltastmax=Mc/I equation 2\n",
+ "deltastmax=(W*L*12*0.0375)/(4*I)\n",
+ "print'%s %.2f %s'%(\"deflection of a point in Pa is= \",deltastmax,\"\")\n",
+ "\n",
+ "##solution a:\n",
+ "a=1+math.sqrt(1.+((2.*h)/deltast))\n",
+ "print'%s %.2f %s'%(\"imapct factor is= \",a,\"\")\n",
+ "deltamax=deltast*a\n",
+ "print'%s %.2f %s'%(\"in meter is =\",deltastmax,\"\")\n",
+ "sigmamax=deltastmax*a\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",sigmamax,\"\")\n",
+ "\n",
+ "##solution b:\n",
+ "deltast=deltast+(90./180000.)\n",
+ "print'%s %.5f %s'%(\"static deflection of the beam in meter is= \",deltast,\"\")\n",
+ "a=1+math.sqrt(1.+((2.*h)/deltast))\n",
+ "print'%s %.2f %s'%(\"imapct factor is= \",a,\"\")\n",
+ "deltamax=deltast*a\n",
+ "print'%s %.3f %s'%(\"in meter is =\",deltamax,\"\")\n",
+ "sigmamax=deltastmax*a\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",sigmamax,\"\")\n",
+ "#round off error\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "I 0.00001 \n",
+ "deflection of a point in meter is= 0.00003 \n",
+ "deflection of a point in Pa is= 2227200.00 \n",
+ "imapct factor is= 78.51 \n",
+ "in meter is = 2227200.00 \n",
+ "in Pa is= 174848357.07 \n",
+ "static deflection of the beam in meter is= 0.00053 \n",
+ "imapct factor is= 20.39 \n",
+ "in meter is = 0.011 \n",
+ "in Pa is= 45415592.13 \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter5.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter5.ipynb new file mode 100755 index 00000000..0c66212b --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter5.ipynb @@ -0,0 +1,228 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:4defd5409de6787753d9afa80f45fd44de9564eee21481b5ef4ed48087f19bda"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter5-Bending of Beams"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex1-pg128"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate meter and sigma \n",
+ "Mz=11000. ##Nm\n",
+ "A1=0.13*0.02 ##m\n",
+ "A2=0.15*0.02 ##m\n",
+ "z1=0.01 ##m\n",
+ "z2=0.075 ##m\n",
+ "yA=0.043 ##m\n",
+ "zA=-0.106 ##m\n",
+ "yB=-0.063 ##m\n",
+ "zB=0.\n",
+ "\n",
+ "##location of the centroid\n",
+ "z=(A1*z1+A2*z2)/(A1+A2)\n",
+ "print'%s %.2f %s'%(\"in meter is= \",z,\"\")\n",
+ "\n",
+ "Iz=(0.02*(0.13)**3)/12.+ (0.13*0.02*(0.04)**2)+(0.15*(0.02)**3.)/12.+ (0.15*0.02*(0.035)**2.)\n",
+ "print'%s %.5f %s'%(\"Iz in meter^4 is= \",Iz,\"\")\n",
+ "Iy=(0.02*(0.13)**3)/12.+ (0.13*0.02*(0.04)**2)+(0.15*(0.02)**3)/.12+ (0.15*0.02*(0.035)**2.)\n",
+ "print'%s %.5f %s'%(\"Iy in meter^4 is= \",Iy,\"\")\n",
+ "Iyz=0+A1*0.04*(-0.035)+0+A2*(-0.035)*0.03\n",
+ "print'%s %.2f %s'%(\"Iyz in meter^4 is= \",Iyz,\"\")\n",
+ "##thetap=(atand((-2*Iyz)/(Iz-Iy)))/2\n",
+ "##print'%s %.2f %s'%(thetap)\n",
+ "I1=(Iz+math.sqrt(0.+(6.79*10**-6)**2.))\n",
+ "print'%s %.5f %s'%(\"I1 in meter^4 is= \",I1,\"\")\n",
+ "I2=(Iz-math.sqrt(0+(6.79*10**-6)**2))\n",
+ "print'%s %.6f %s'%(\"I2 in meter^4 is= \",I2,\"\")\n",
+ "My1=11000.*math.sin(45/57.3)\n",
+ "print'%s %.2f %s'%(\"My1 in Nm is\",My1,\"\")\n",
+ "Mz1=11000*math.sin(45/57.3)\n",
+ "print'%s %.2f %s'%(\"Mz1 in Nm is\",Mz1,\"\")\n",
+ "\n",
+ "sigmaxA=((My1*(zA))/I1)-((Mz1*yA)/I2)\n",
+ "print'%s %.2f %s'%(\"sigmaxA in MPa is\",sigmaxA,\"\")\n",
+ "sigmaxB=0-((My1*yB)/I2)\n",
+ "print'%s %.2f %s'%(\"sigmaxB in MPa is\",sigmaxB,\"\")\n",
+ "\n",
+ "My=0.\n",
+ "y=((Mz*Iyz)*z)/(Mz*Iy) ##.......equal to z=-1.71y\n",
+ "print'%s %.3f %s'%(\"y\",y,\"\")\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "in meter is= 0.04 \n",
+ "Iz in meter^4 is= 0.00001 \n",
+ "Iy in meter^4 is= 0.00002 \n",
+ "Iyz in meter^4 is= -0.00 \n",
+ "I1 in meter^4 is= 0.00002 \n",
+ "I2 in meter^4 is= 0.000005 \n",
+ "My1 in Nm is 7777.72 \n",
+ "Mz1 in Nm is 7777.72 \n",
+ "sigmaxA in MPa is -114417761.50 \n",
+ "sigmaxB in MPa is 101941050.82 \n",
+ "y -0.014 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4-144"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate the distance \n",
+ "import scipy\n",
+ "from scipy import integrate\n",
+ "t=1.25 ##mm\n",
+ "y=15.87 ##mm\n",
+ "z=5.28 ##mm\n",
+ "Iy=4765.62 ##mm**4\n",
+ "Iz=21054.69 ##mm**4\n",
+ "Iyz=3984.37 ##mm**4\n",
+ "thetap=13.05 ##degree\n",
+ "Iy1=3828.12 ##mm**4\n",
+ "Iz1=21953.12##mm**4\n",
+ "s=12.5\n",
+ "\n",
+ "##tau=(Vy/Iz1*t)*s*t(19.55+s*asind(13.05)/2)....equation 1\n",
+ "##F1=integrate((tau*t)ds)\n",
+ "def fun(s):\n",
+ "\ty=(0)\n",
+ "\treturn y\n",
+ "x=scipy.integrate.quad(fun,0,1)\n",
+ "x=x[0]\n",
+ "##F1=0.0912*Vy1 substituting the value of tau we get F1\n",
+ "##Vy1*ez1=37.5*F1 substituting the value of F1 we get ez1\n",
+ "ez1=37.5*0.0912\n",
+ "print'%s %.2f %s'%(\"the distance in mm is= \",ez1,\"\")\n",
+ "\n",
+ "##tau=(Vz1/Iy1*t)*s*t(12.05-s*asind(13.05)/2)....equation 2\n",
+ "##F1=integrate((tau*t)ds)\n",
+ "def fun(s):\n",
+ "\ty=(0)\n",
+ "\treturn y\n",
+ "x=scipy.integrate.quad(fun,0,1)\n",
+ "x=x[0]\n",
+ "\n",
+ "##F1=0.204*Vz1 substituting the value of tau we get F1\n",
+ "##Vz1*ey1=37.5*F1 substituting the value of F1 we get ez1\n",
+ "ey1=37.5*0.204\n",
+ "print'%s %.2f %s'%(\"the distance in mm is= \",ey1,\"\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the distance in mm is= 3.42 \n",
+ "the distance in mm is= 7.65 \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex5-pg154"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate stress and meter\n",
+ "import scipy\n",
+ "from scipy import integrate\n",
+ "P=70. ##kN\n",
+ "c=0.05##m\n",
+ "c1=c\n",
+ "c2=c\n",
+ "R=0.1+0.05\n",
+ "A=0.005\n",
+ "\n",
+ "##m=(-1/(2*c))*integrate((y/R+y)dy)\n",
+ "def fun(c):\n",
+ "\ty=(-c)\n",
+ "\treturn y\n",
+ "\n",
+ "x=scipy.integrate.quad(fun,0,1)\n",
+ "m=-1.+(R/2.*c)*math.log((R+c)/(R-c))\n",
+ "print'%s %.2f %s'%(\"m\",m,\"\")\n",
+ "##m=(-1/(2*c))*integrate((y/R)-(y**2/R**2)+(y**3/R**3)-(y**4/R**4)+.....)dy)\n",
+ "m=-1+(3/2.)*math.log(2.)\n",
+ "print'%s %.3f %s'%(\"m\",m,\"\")\n",
+ "\n",
+ "M=P*R\n",
+ "print'%s %.2f %s'%(\"M\",M,\"\")\n",
+ "sigmatheta1=(-P*c2)/(m*A*(R-c1))\n",
+ "print'%s %.2f %s'%(\"stress in Pa is= \",sigmatheta1,\"\")\n",
+ "sigmatheta2=(P*c2)/(m*A*(R+c2))\n",
+ "print'%s %.2f %s'%(\"stress in Pa is= \",sigmatheta2,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "m -1.00 \n",
+ "m 0.040 \n",
+ "M 10.50 \n",
+ "stress in Pa is= -176230.22 \n",
+ "stress in Pa is= 88115.11 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter6.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter6.ipynb new file mode 100755 index 00000000..aad26d04 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter6.ipynb @@ -0,0 +1,151 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:3332a69be3bda89d0bbf53dbcf52a61ce9890c1e2f91bf32984da88ae13bb216"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter6-Torsion of Prismatic Bars"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex2-177"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate applied torque and shearing stress and angle of twist per unit length \n",
+ "G=28. ##GPa\n",
+ "t1=0.012\n",
+ "t2=0.006\n",
+ "t3=0.01\n",
+ "t4=0.006\n",
+ "A=0.125\n",
+ "h=226000. ##N/m\n",
+ "Mt=2.*A*h\n",
+ "print'%s %.2f %s'%(\"applied torque in Nm is=\",Mt,\"\")\n",
+ "\n",
+ "tau1=(h/t1)\n",
+ "print'%s %.2f %s'%(\"shearing stress in Pa is= \",tau1,\"\")\n",
+ "tau2=(h/t2)\n",
+ "print'%s %.2f %s'%(\"shearing stress in Pa is= \",tau2,\"\")\n",
+ "tau3=(h/t3)\n",
+ "print'%s %.2f %s'%(\"shearing stress in Pa is= \",tau3,\"\")\n",
+ "tau4=(h/t4)\n",
+ "print'%s %.2f %s'%(\"shearing stress in Pa is= \",tau4,\"\")\n",
+ "\n",
+ "##theta=(h/2*G*A)intc((1/t)ds)\n",
+ "theta=(h/(2*G*10**9*A))*((0.25/t1)+2*(0.5/t2)+(0.25/t3))\n",
+ "print'%s %.4f %s'%(\"angle of twist per unit length in rad/m is= \",theta,\"\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "applied torque in Nm is= 56500.00 \n",
+ "shearing stress in Pa is= 18833333.33 \n",
+ "shearing stress in Pa is= 37666666.67 \n",
+ "shearing stress in Pa is= 22600000.00 \n",
+ "shearing stress in Pa is= 37666666.67 \n",
+ "angle of twist per unit length in rad/m is= 0.0069 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4-pg185"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate torsional rigidity of the beam and maxi longitudinal bending stress in the flange and total angle of twist\n",
+ "G=80. ##GPa\n",
+ "E=200. ##GPa\n",
+ "tf=10. ##mm\n",
+ "tw=0.007 ##m\n",
+ "t1=tw\n",
+ "t2=0.01\n",
+ "h=0.2 ##m\n",
+ "b=0.1 ##m\n",
+ "b2=b\n",
+ "b1=0.19\n",
+ "L=2.4 ##m\n",
+ "If=0.01*0.1**3\n",
+ "Mt=1200.\n",
+ "L=2.4\n",
+ "\n",
+ "##solution a:\n",
+ "##C=Mt/theta\n",
+ "##C=(b1*t1**3+2*b2*t2**3)*(G/3)\n",
+ "C=((b1*t1**3.+2.*b2*t2**3)/3.)## without substituting the value of G we get C\n",
+ "print'%s %.8f %s'%(\"torsional rigidity of the beam is= \",C,\"\")\n",
+ "\n",
+ "##a=(If*E)/12\n",
+ "a=If/12.## without substituting the value of E we get a\n",
+ "print(a)\n",
+ "##alpha=1/(h*sqrt((E*If)/(2*C)))\n",
+ "y=math.sqrt((2.5*a)/(2.*C))## without substituting the value of h\n",
+ "print(y)\n",
+ "##(1/alpha)==y\n",
+ "##sigmafmax=(Mfmax*x)/If\n",
+ "sigmafmax=(3.43*Mt*0.05)/a\n",
+ "print'%s %.2f %s'%(\"maxi longitudinal bending stress in the flange in MPa is= \",sigmafmax,\"\")\n",
+ "\n",
+ "##soluton b:\n",
+ "si=(Mt/(C*G*10**9))*(L-y*h)\n",
+ "print'%s %.2f %s'%(\"the angle of twist at the free end in radian is =\",si,\"\")\n",
+ "si1=(Mt*L)/(C*G*10**9.)\n",
+ "print'%s %.2f %s'%(\"total angle of twist in radians is= \",si1,\"\")\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "torsional rigidity of the beam is= 0.00000009 \n",
+ "8.33333333333e-07\n",
+ "3.43291315217\n",
+ "maxi longitudinal bending stress in the flange in MPa is= 246960000.00 \n",
+ "the angle of twist at the free end in radian is = 0.29 \n",
+ "total angle of twist in radians is= 0.41 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter7.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter7.ipynb new file mode 100755 index 00000000..ad86d09a --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter7.ipynb @@ -0,0 +1,669 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cb28374726804cd374e61b1808cab7ccc40447e8df5be7bbb88241dd0bce4859"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter7-Numerical Methods"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex3-pg204"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate tauA and tauB\n",
+ "import numpy\n",
+ "from numpy.linalg import inv\n",
+ "a=15. ##mm\n",
+ "b=10. ##mm\n",
+ "h=5. ##mm\n",
+ "h1=4.4 ##mm\n",
+ "h2=2.45 ##mm\n",
+ "h3=3. ##mm\n",
+ "\n",
+ "x=([[2, 0, 0, 0, 2, -4],[0, 2, 0, 1 ,-4 ,1],[0, 0, 2, -4, 1, 0],[-4, 2 ,0 ,0 ,0 ,1],[1, -4.27, 1, 0, 1.06, 0],[0, 1.25, -7.41, 1.34, 0, 0]])\n",
+ "print(x)\n",
+ "y=([[-2], [-2], [-2], [-2], [-2], [-2]])\n",
+ "print(y)\n",
+ "z=numpy.dot(inv(x),y)\n",
+ "X1=z[1]\n",
+ "X2=z[2]\n",
+ "X3=z[3]\n",
+ "X4=z[0]\n",
+ "X5=z[4]\n",
+ "X6=z[5]\n",
+ "print(X4)\n",
+ "\n",
+ "print(X1)\n",
+ "print(X2)\n",
+ "print(X3)\n",
+ "print(X5)\n",
+ "print(X6)\n",
+ " \n",
+ "dfi=2.075 \n",
+ "d3fi=-0.001\n",
+ "d2fi=-1.383\n",
+ "d4fi=0.002\n",
+ "\n",
+ "##tauB=derivative(fi,y)B\n",
+ "tauB=(dfi+(d2fi/2.)-(d3fi/3.)+(d4fi/4.))\n",
+ "print'%s %.2f %s'%('tauB=',tauB,' G*thetab')\n",
+ "\n",
+ "dfi=1.536\n",
+ "d2fi=-0.613\n",
+ "d3fi=-0.002\n",
+ "d4fi=0.001\n",
+ "d5fi=0.001\n",
+ "d6fi=-0.002\n",
+ "\n",
+ "##tauA=derivative(fi,x)A\n",
+ "tauA=(dfi+(-d2fi/2.)-(d3fi/3.)-(d4fi/4.)+(d5fi/5.)+(d6fi/6.))\n",
+ "print'%s %.2f %s'%('tauA=',tauA,' G*thetaa')\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "[[2, 0, 0, 0, 2, -4], [0, 2, 0, 1, -4, 1], [0, 0, 2, -4, 1, 0], [-4, 2, 0, 0, 0, 1], [1, -4.27, 1, 0, 1.06, 0], [0, 1.25, -7.41, 1.34, 0, 0]]\n",
+ "[[-2], [-2], [-2], [-2], [-2], [-2]]\n",
+ "[ 2.07117939]\n",
+ "[ 1.76075859]\n",
+ "[ 0.84472513]\n",
+ "[ 1.53616791]\n",
+ "[ 2.45522136]\n",
+ "[ 2.76320038]\n",
+ "tauB= 1.38 G*thetab\n",
+ "tauA= 1.84 G*thetaa\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex6-pg210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate effective fem at joint B and the change of moment in beam segment AB and BC\n",
+ "p=15.\n",
+ "P=45.\n",
+ "a=3.\n",
+ "b=1.5\n",
+ "L1=3.\n",
+ "L2=4.5\n",
+ "MfAB=-(p*L1**2)/12.\n",
+ "print'%s %.2f %s'%(\"in kNm is= \",MfAB,\"\")\n",
+ "MfBA=(11.25)\n",
+ "print'%s %.2f %s'%(\"in kNm is= \",MfBA,\"\")\n",
+ "MfBC=-(P*a*b**2)/L2**2\n",
+ "print'%s %.2f %s'%(\"in kNm is= \",MfBC,\"\")\n",
+ "MfCB=(P*b*a**2)/L2**2\n",
+ "print'%s %.2f %s'%(\"in kNm is= \",MfCB,\"\")\n",
+ "B=MfBA+MfBC\n",
+ "print'%s %.2f %s'%(\"effective fem at joint B in kNm is= \",B,\"\")\n",
+ "AB=0.429*-B ## joint rotates until a change in moment is +3.75\n",
+ "print'%s %.2f %s'%(\"the change of moment in beam segment AB in kN is=\",AB,\"\")\n",
+ "BC=0.571*-B\n",
+ "print'%s %.2f %s'%(\"the change of moment in beam segment AB in kN is=\",BC,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "in kNm is= -11.25 \n",
+ "in kNm is= 11.25 \n",
+ "in kNm is= -15.00 \n",
+ "in kNm is= 30.00 \n",
+ "effective fem at joint B in kNm is= -3.75 \n",
+ "the change of moment in beam segment AB in kN is= 1.61 \n",
+ "the change of moment in beam segment AB in kN is= 2.14 \n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex7-pg221"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "#find epsilon\n",
+ "import math\n",
+ "import numpy\n",
+ "from numpy.linalg import inv\n",
+ "p=14. ##MPa\n",
+ "t=0.3 ##cm\n",
+ "E=200. ##GPa\n",
+ "v=0.3\n",
+ "gamma1=77. ##kN/m**3\n",
+ "alpha=12.*10**-6 ## per degree celcius\n",
+ "A=2\n",
+ "T=50. ##degree celcius\n",
+ "\n",
+ "D=numpy.matrix([[3.33, 0.99, 0],[0.99 ,3.3, 0],[0, 0, 1.16]])\n",
+ "print(D)\n",
+ "##[D*]=(t*[D])/4*A\n",
+ "Dj=(10**6)*D\n",
+ "\n",
+ "D1=Dj/8. \n",
+ "\n",
+ "print(D1)\n",
+ "\n",
+ "##solution a: stiffness matrix\n",
+ "xi=0.\n",
+ "x1=0.\n",
+ "xj=4.\n",
+ "x2=4.\n",
+ "xm=0.\n",
+ "x3=0.\n",
+ "yi=-1.\n",
+ "y1=-1.\n",
+ "yj=-1.\n",
+ "y2=-1.\n",
+ "ym=1.\n",
+ "y3=1.\n",
+ "\n",
+ "ai=0.-4.\n",
+ "a1=0.-4.\n",
+ "print(ai,a1)\n",
+ "aj=0-0.\n",
+ "a2=0-0.\n",
+ "print(aj,a2)\n",
+ "am=4.-0.\n",
+ "a3=4.-0.\n",
+ "print(am,a3)\n",
+ "\n",
+ "bi=-1-1\n",
+ "b1=-1-1\n",
+ "print(bi,b1)\n",
+ "bj=1.+1.\n",
+ "b2=1.+1.\n",
+ "print(bj,b2)\n",
+ "bm=-1.+1.\n",
+ "b3=-1+1.\n",
+ "print(bm,b3)\n",
+ "\n",
+ "k11=(10**6/8.)*(3.3*4+1.16*16)\n",
+ "print'%s %.2f %s'%('k11=',k11,'')\n",
+ "k12=(10**6/8)*(3.3*2*-2+0)\n",
+ "print'%s %.2f %s'%('k12=',k12,'')\n",
+ "k13=(10**6/8)*(0+1.16*4*-4)\n",
+ "print'%s %.2f %s'%('k13=',k13,'')\n",
+ "k22=(10**6/8.)*(3.3*4+0)\n",
+ "print'%s %.2f %s'%('k22=',k22,'')\n",
+ "k23=0.\n",
+ "print'%s %.2f %s'%('k23=',k23,'')\n",
+ "k32=0.\n",
+ "print'%s %.2f %s'%('k32=',k32,'')\n",
+ "k21=(10**6/8)*(3.3*2*-2+0)\n",
+ "print'%s %.2f %s'%('k21=',k21,'')\n",
+ "k31=(10**6/8)*(0+1.16*4*-4)\n",
+ "print'%s %.2f %s'%('k31=',k31,'')\n",
+ "k33=(10**6/8.)*(0+1.16*16)\n",
+ "print'%s %.2f %s'%('k33=',k33,'')\n",
+ "\n",
+ "kuu=numpy.matrix([[k11 ,k12, k13],[k21 ,k22 ,k23],[k31, k32, k33]])\n",
+ "print(kuu)\n",
+ "kuv=10**6*numpy.matrix([[2.15, -1.16, -0.99],[-0.99, 0, 0.99],[-1.16 ,1.16, 0]])\n",
+ "print(kuv)\n",
+ "kvv=10**6*numpy.matrix([[7.18 ,-0.58, -6.6],[-0.58, 0.58 ,0],[-6.6, 0, 6.6]])\n",
+ "print(kvv)\n",
+ "kvu=numpy.matrix([[2.15, -0.99, -1.16],[-1.16, 0, 1.16],[-0.99, 0.99, 0]])\n",
+ "print(kvu)\n",
+ "\n",
+ "\n",
+ "\n",
+ "##solution b:\n",
+ "Fx=0\n",
+ "Fy=0.077 ##N/cm**2\n",
+ "Qbe=[0,0,0,-0.0308,-0.0308,-0.0308]##N\n",
+ "print(Qbe)\n",
+ "\n",
+ "\n",
+ "Qp3=numpy.matrix([[0,-420,-420,0,-840,-840]])\n",
+ "print('Qp3')\n",
+ "\n",
+ "epsilon=alpha*T\n",
+ "print'%s %.2f %s'%('epsilon=',epsilon,'')\n",
+ "##Qte=[B']*[D]*epsilon*At\n",
+ "Qte=(1/8.)*numpy.matrix([[-2, 0, -4],[2, 0, 0],[0, 0, 4],[0, -4, -2],[0 ,0, 2],[0, 4 ,0]])*((200*10**5)/0.91)*numpy.matrix([[1, 0.3, 0,],[0.3 ,1 ,0],[0, 0 ,0.35]])*numpy.matrix([[0.0006],[0.0006],[0]])*(1.2)\n",
+ "print(Qte)\n",
+ "\n",
+ "Qe=numpy.matrix([[-5142.85,4742.85,-400,-10285.71,-840.03,9445.67]])\n",
+ "print (Qe)\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "[[ 3.33 0.99 0. ]\n",
+ " [ 0.99 3.3 0. ]\n",
+ " [ 0. 0. 1.16]]\n",
+ "[[ 416250. 123750. 0.]\n",
+ " [ 123750. 412500. 0.]\n",
+ " [ 0. 0. 145000.]]\n",
+ "(-4.0, -4.0)\n",
+ "(0.0, 0.0)\n",
+ "(4.0, 4.0)\n",
+ "(-2, -2)\n",
+ "(2.0, 2.0)\n",
+ "(0.0, 0.0)\n",
+ "k11= 3970000.00 \n",
+ "k12= -1650000.00 \n",
+ "k13= -2320000.00 \n",
+ "k22= 1650000.00 \n",
+ "k23= 0.00 \n",
+ "k32= 0.00 \n",
+ "k21= -1650000.00 \n",
+ "k31= -2320000.00 \n",
+ "k33= 2320000.00 \n",
+ "[[ 3970000. -1650000. -2320000.]\n",
+ " [-1650000. 1650000. 0.]\n",
+ " [-2320000. 0. 2320000.]]\n",
+ "[[ 2150000. -1160000. -990000.]\n",
+ " [ -990000. 0. 990000.]\n",
+ " [-1160000. 1160000. 0.]]\n",
+ "[[ 7180000. -580000. -6600000.]\n",
+ " [ -580000. 580000. 0.]\n",
+ " [-6600000. 0. 6600000.]]\n",
+ "[[ 2.15 -0.99 -1.16]\n",
+ " [-1.16 0. 1.16]\n",
+ " [-0.99 0.99 0. ]]\n",
+ "[0, 0, 0, -0.0308, -0.0308, -0.0308]\n",
+ "Qp3\n",
+ "epsilon= 0.00 \n",
+ "[[ -5142.85714286]\n",
+ " [ 5142.85714286]\n",
+ " [ 0. ]\n",
+ " [-10285.71428571]\n",
+ " [ 0. ]\n",
+ " [ 10285.71428571]]\n",
+ "[[ -5142.85 4742.85 -400. -10285.71 -840.03 9445.67]]\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex8-pg223"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate epsilon and sigma \n",
+ "import numpy\n",
+ "from numpy.linalg import inv\n",
+ "t=0.3 ##cm\n",
+ "E=200 ##GPa\n",
+ "v=0.3\n",
+ "i=2.\n",
+ "j=4.\n",
+ "m=3.\n",
+ "L=5000. ##N\n",
+ "\n",
+ "a1=0-4\n",
+ "a2=0-4\n",
+ "print(a1,a2)\n",
+ "aj=4-0\n",
+ "a4=4-0\n",
+ "print(aj,a4)\n",
+ "am=4-4\n",
+ "a3=4-4\n",
+ "print(am,a3)\n",
+ "\n",
+ "bi=1-1\n",
+ "b2=1-1\n",
+ "print(bi,b2)\n",
+ "bj=1+1\n",
+ "b4=1+1\n",
+ "print(bj,b4)\n",
+ "bm=-1-1\n",
+ "b3=-1-1\n",
+ "print(bm,b3)\n",
+ "\n",
+ "k22=(10**6/8.)*(3.3*0+1.16*16)\n",
+ "print'%s %.2f %s'%('k22=\\n',k22,'')\n",
+ "k44=(10**6/8.)*(3.3*4*+1.16*16)\n",
+ "print'%s %.2f %s'%('k44=\\n',k44,'')\n",
+ "k24=(10**6/8.)*(3.3*0+1.16*4*-4)\n",
+ "print'%s %.2f %s'%('k24=\\n',k24,'')\n",
+ "k42=(10**6/8)*(3.3*0+1.16*4*-4)\n",
+ "print'%s %.2f %s'%('k42=\\n',k42,'')\n",
+ "k23=0\n",
+ "print'%s %.2f %s'%('k23=\\n',k23,'')\n",
+ "k32=0\n",
+ "print'%s %.2f %s'%('k32=\\n',k32,'')\n",
+ "k43=(10**6/8)*(3.3*2*-2+1.16*0)\n",
+ "print'%s %.2f %s'%('k43=\\n',k43,'')\n",
+ "k34=(10**6/8)*(3.3*2*-2+1.16*0)\n",
+ "print'%s %.2f %s'%('k34=\\n',k34,'')\n",
+ "k33=(10**6/8)*(3.3*4+1.16*0)\n",
+ "print'%s %.2f %s'%('k33=\\n',k33,'')\n",
+ "\n",
+ "\n",
+ "kuu=numpy.matrix([[k22, k23, k24],[k32, k33, k34,],[k42, k43, k44]])\n",
+ "print(kuu)\n",
+ "kuv=10**6*numpy.matrix([[0 ,1.16 ,-1.16],[0.99 ,0 ,-0.99],[-0.99, -1.16, 2.15]])\n",
+ "print(kuv)\n",
+ "kvv=10**6*numpy.matrix([[6.6, 0 ,-6.6],[0, 0.58, -0.58],[-6.6 ,-0.58, 7.18]])\n",
+ "print(kvv)\n",
+ "kvu=10**6*numpy.matrix([[0 ,0.99, -0.99],[1.16, 0, -1.16],[-1.16 ,-0.99, 2.15]])\n",
+ "print(kvu)\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "k1=numpy.matrix([[3.97, -1.65, -2.32, 0],[-1.65, 1.65 ,0 ,0],[-2.32, 0, 2.32, 0],[0, 0 ,0 ,0]])\n",
+ "print(k1)\n",
+ "k2=numpy.matrix([[2.15, -1.16, -0.99, 0],[-0.99, 0, 0.99, 0],[-1.16, 1.16, 0, 0],[0, 0 ,0 ,0]])\n",
+ "print(k2)\n",
+ "k3=numpy.matrix([[2.15, -0.99 ,-1.16, 0],[-1.16, 0 ,1.16, 0],[-0.99 ,0.99, 0 ,0],[0 ,0, 0, 0]])\n",
+ "print(k3)\n",
+ "k4=numpy.matrix([[7.18 ,-0.58, -6.6, 0],[-0.58, 0.58, 0 ,0],[-6.6, 0, 6.6, 0],[0, 0 ,0, 0]])\n",
+ "print(k4)\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "k5=numpy.matrix([[0, 0 ,0 ,0],[0 ,2.32, 0, -2.32],[0, 0, 1.65, -1.65],[0 ,-2.32, -1.65, 3.97]])\n",
+ "print(k5)\n",
+ "k6=numpy.matrix([[0, 0, 0 ,0],[0, 0 ,1.16, -1.16],[0, 0.99, 0 ,-0.99],[0, -0.99, -1.16, 2.15]])\n",
+ "print(k6)\n",
+ "k7=numpy.matrix([[0, 0 ,0 ,0],[0, 0, 0.99, -0.99],[0 ,1.16, 0, -1.16],[0, -1.16, -0.99, 2.15]])\n",
+ "print(k7)\n",
+ "k8=numpy.matrix([[0 ,0, 0 ,0],[0 ,6.6 ,0 ,-6.6],[0, 0 ,0.58 ,-0.58],[0 ,-6.6 ,-0.58, 7.18]])\n",
+ "print(k8)\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "Qy4=((3.*(-5000.))/4.*1.)*((1./2.)*(1.+1.)+0.33*(-0.25*(1.-1.+1.)-0.75))\n",
+ "print'%s %.2f %s'%('Qy4=',Qy4,'') ## textbook ans is wrong\n",
+ "Qy2=((3*(-5000))/4*1)*((1/2)*(1+1)-0.33*(1+0.75*(1-1+1)-0.75))\n",
+ "print'%s %.2f %s'%('Qy2=',Qy2,'') ## textbook ans is wrong\n",
+ "\n",
+ "Q=numpy.matrix([[0, 0, 0, 0 ,0 ,Qy4 ,0, Qy2]])\n",
+ "print(Q)\n",
+ "u1=0\n",
+ "u3=0\n",
+ "v1=0\n",
+ "v3=0\n",
+ "\n",
+ "Z=numpy.matrix([[3.97, -2.32, 0, -1.16],[-2.32, 3.97, -0.99, 2.15],[0, -0.99, 7.18, -6.6],[-1.16, 2.15, -6.6, 7.18]])\n",
+ "print(Z)\n",
+ "z=numpy.linalg.inv(Z)\n",
+ "print(z)\n",
+ "X=z*numpy.matrix([[0],[0],[-2512.5],[-2512.5]]) \n",
+ "print(X)\n",
+ "X1= X*10**-6\n",
+ "print(\"u2 u4 v2 v4 is= \",X1,\"\")\n",
+ "\n",
+ "Y=numpy.matrix([[-2, 2, 0, 0, 0, 0],[0, 0, 0, -4, 0, 4],[-4 ,0, 4, -2, 2, 0]])\n",
+ "print(Y)\n",
+ "W=Y*numpy.matrix([[0],[-0.0012],[0],[0],[-0.0068],[0]])\n",
+ "print(W)\n",
+ "W1=W*(1./8.)\n",
+ "print(\"W1\")\n",
+ "\n",
+ "y=numpy.matrix([[1, 0.3, 0],[0.3, 1, 0],[0, 0, 0.35]])*W1\n",
+ "print(y)\n",
+ "u=(200.*10**9/0.91)\n",
+ "print(u)\n",
+ "U=u*y\n",
+ "print(U,\"sigmax sigmay tauxy in Pa is= \")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(-4, -4)\n",
+ "(4, 4)\n",
+ "(0, 0)\n",
+ "(0, 0)\n",
+ "(2, 2)\n",
+ "(-2, -2)\n",
+ "k22=\n",
+ " 2320000.00 \n",
+ "k44=\n",
+ " 30624000.00 \n",
+ "k24=\n",
+ " -2320000.00 \n",
+ "k42=\n",
+ " -2320000.00 \n",
+ "k23=\n",
+ " 0.00 \n",
+ "k32=\n",
+ " 0.00 \n",
+ "k43=\n",
+ " -1650000.00 \n",
+ "k34=\n",
+ " -1650000.00 \n",
+ "k33=\n",
+ " 1650000.00 \n",
+ "[[ 2320000. 0. -2320000.]\n",
+ " [ 0. 1650000. -1650000.]\n",
+ " [ -2320000. -1650000. 30624000.]]\n",
+ "[[ 0. 1160000. -1160000.]\n",
+ " [ 990000. 0. -990000.]\n",
+ " [ -990000. -1160000. 2150000.]]\n",
+ "[[ 6600000. 0. -6600000.]\n",
+ " [ 0. 580000. -580000.]\n",
+ " [-6600000. -580000. 7180000.]]\n",
+ "[[ 0. 990000. -990000.]\n",
+ " [ 1160000. 0. -1160000.]\n",
+ " [-1160000. -990000. 2150000.]]\n",
+ "[[ 3.97 -1.65 -2.32 0. ]\n",
+ " [-1.65 1.65 0. 0. ]\n",
+ " [-2.32 0. 2.32 0. ]\n",
+ " [ 0. 0. 0. 0. ]]\n",
+ "[[ 2.15 -1.16 -0.99 0. ]\n",
+ " [-0.99 0. 0.99 0. ]\n",
+ " [-1.16 1.16 0. 0. ]\n",
+ " [ 0. 0. 0. 0. ]]\n",
+ "[[ 2.15 -0.99 -1.16 0. ]\n",
+ " [-1.16 0. 1.16 0. ]\n",
+ " [-0.99 0.99 0. 0. ]\n",
+ " [ 0. 0. 0. 0. ]]\n",
+ "[[ 7.18 -0.58 -6.6 0. ]\n",
+ " [-0.58 0.58 0. 0. ]\n",
+ " [-6.6 0. 6.6 0. ]\n",
+ " [ 0. 0. 0. 0. ]]\n",
+ "[[ 0. 0. 0. 0. ]\n",
+ " [ 0. 2.32 0. -2.32]\n",
+ " [ 0. 0. 1.65 -1.65]\n",
+ " [ 0. -2.32 -1.65 3.97]]\n",
+ "[[ 0. 0. 0. 0. ]\n",
+ " [ 0. 0. 1.16 -1.16]\n",
+ " [ 0. 0.99 0. -0.99]\n",
+ " [ 0. -0.99 -1.16 2.15]]\n",
+ "[[ 0. 0. 0. 0. ]\n",
+ " [ 0. 0. 0.99 -0.99]\n",
+ " [ 0. 1.16 0. -1.16]\n",
+ " [ 0. -1.16 -0.99 2.15]]\n",
+ "[[ 0. 0. 0. 0. ]\n",
+ " [ 0. 6.6 0. -6.6 ]\n",
+ " [ 0. 0. 0.58 -0.58]\n",
+ " [ 0. -6.6 -0.58 7.18]]\n",
+ "Qy4= -2512.50 \n",
+ "Qy2= 1237.50 \n",
+ "[[ 0. 0. 0. 0. 0. -2512.5 0. 1237.5]]\n",
+ "[[ 3.97 -2.32 0. -1.16]\n",
+ " [-2.32 3.97 -0.99 2.15]\n",
+ " [ 0. -0.99 7.18 -6.6 ]\n",
+ " [-1.16 2.15 -6.6 7.18]]\n",
+ "[[ 0.42911692 0.17986034 0.25168713 0.24682604]\n",
+ " [ 0.17986034 0.4831756 -0.25583582 -0.3507947 ]\n",
+ " [ 0.25168713 -0.25583582 1.36613468 1.37304916]\n",
+ " [ 0.24682604 -0.3507947 1.37304916 1.54633026]]\n",
+ "[[-1252.51435698]\n",
+ " [ 1524.15919903]\n",
+ " [-6882.19940602]\n",
+ " [-7334.94080944]]\n",
+ "('u2 u4 v2 v4 is= ', matrix([[-0.00125251],\n",
+ " [ 0.00152416],\n",
+ " [-0.0068822 ],\n",
+ " [-0.00733494]]), '')\n",
+ "[[-2 2 0 0 0 0]\n",
+ " [ 0 0 0 -4 0 4]\n",
+ " [-4 0 4 -2 2 0]]"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "[[-0.0024]\n",
+ " [ 0. ]\n",
+ " [-0.0136]]\n",
+ "W1\n",
+ "[[ -3.00000000e-04]\n",
+ " [ -9.00000000e-05]\n",
+ " [ -5.95000000e-04]]"
+ ]
+ },
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "2.1978021978e+11\n",
+ "(matrix([[ -6.59340659e+07],\n",
+ " [ -1.97802198e+07],\n",
+ " [ -1.30769231e+08]]), 'sigmax sigmay tauxy in Pa is= ')\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex9-pg226"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate sigma \n",
+ "L=76.2 ##mm\n",
+ "h=50.8 ##mm\n",
+ "t=25.4 ##mm\n",
+ "p=6895. ##kPa\n",
+ "E=207. ##GPa\n",
+ "v=0.15\n",
+ "\n",
+ "##solution a: exact solution\n",
+ "##p=Mh/I\n",
+ "##sigmax=-(y/h)*p\n",
+ "sigmay=0.\n",
+ "tauxy=0.\n",
+ "##derivative(u,x)=-(yp/Eh)\n",
+ "##derivative(v,y)=(v*y*p)/(Eh)\n",
+ "##derivative(u,y)+derivative(v,x)=0\n",
+ "##u=-(p/E*h)*x*y ## for u(0,0)=v(0,0)=0 and u(L,0)=0\n",
+ "##v=-(p/2*E*h)*(x**2+v*y**2)\n",
+ "##sigmax=-(1/0.0508)*(y*p)\n",
+ "sigmaxmax=6895. ##kPa\n",
+ "##u(0.0762,-0.0254)=25.4*10**-6 ##m\n",
+ "##v(0.0762,0)=1.905*10**-6 ##m\n",
+ "\n",
+ "##solution b:\n",
+ "Qx10=((0.0254*0.0254)/6.)*((2.*sigmaxmax)+3447.5)\n",
+ "print'%s %.2f %s'%(\"in mN is= \",Qx10,\"\")\n",
+ "Qx11=((0.0254*0.0254)/6.)*(2*3447.5+sigmaxmax)+((0.0254*0.0254)/6)*(2*3447.5+0.)\n",
+ "print'%s %.2f %s'%(\"in mN is= \",Qx11,\"\")\n",
+ "Qx12=((0.0254*0.0254)/6.)*(0+3447.5)\n",
+ "print'%s %.2f %s'%(\"in mN is= \",Qx12,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "in mN is= 1.85 \n",
+ "in mN is= 2.22 \n",
+ "in mN is= 0.37 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter8.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter8.ipynb new file mode 100755 index 00000000..1a1e4e4a --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter8.ipynb @@ -0,0 +1,409 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:54c92a13ce853ac5fe5325a355c839b097f01e81340aa957e3602b8ea43de184"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter8-Axisymmetrically Loaded Members"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex1-pg239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate pressure and for longitudinal stress \n",
+ "di=0.3 ##m\n",
+ "de=0.4 ##m\n",
+ "v=0.3\n",
+ "sigmathetamax=250*10**6 ##Pa\n",
+ "p0=0.\n",
+ "pi=0.\n",
+ "\n",
+ "##solution a:\n",
+ "a=0.15\n",
+ "b=0.2\n",
+ "r=a\n",
+ "##sigmathetamax=pi*((b**2+a**2)/(b**2-a**2))\n",
+ "pi=sigmathetamax*((b**2-a**2.)/(b**2+a**2.))\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",pi,\"\")\n",
+ "\n",
+ "##solution b:\n",
+ "r=a\n",
+ "##sigmathetamax=-2*p0*(b**2/(b**2-a**2))\n",
+ "p0=-(-sigmathetamax)*((b**2.-a**2.)/(2.*b**2.))\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",p0,\"\")\n",
+ "\n",
+ "##solution c:\n",
+ "u=((a**3*pi)/(b**2-a**2))*(0.7+1.3*(b**2./a**2.))\n",
+ "print'%s %.2f %s'%(\"in per E meter is= \",u,\"\")\n",
+ "sigmaz=(pi*a**2-p0*b**2)/(b**2-a**2)\n",
+ "print'%s %.2f %s'%(\"for longitudinal stress is\",sigmaz,\"\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "in Pa is= 70000000.00 \n",
+ "in Pa is= 54687500.00 \n",
+ "in per E meter is= 40650000.00 \n",
+ "for longitudinal stress is -35000000.00 \n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex2-pg241"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate pressure \n",
+ "sigmayp=340. ##MPa\n",
+ "tauyp=sigmayp/2. ##MPa\n",
+ "print'%s %.2f %s'%(\"in MPa is=\",tauyp,\"\")\n",
+ "a=0.1 ##m\n",
+ "b=0.15 ##m\n",
+ "v=0.3 \n",
+ "##pi=4*p0\n",
+ "##sigmatheta=(pi*(a**2+b**2)-2*p0*b**2)/(b**2-a**2)\n",
+ "##sigmatheta=1.7*pi\n",
+ "\n",
+ "##sloution a: maxi principal stress theory\n",
+ "sigmatheta=1.7\n",
+ "pi=sigmayp/sigmatheta\n",
+ "print'%s %.2f %s'%(\"in MPa is= \",pi,\"\")\n",
+ "\n",
+ "##sloution b: maxi shearing stress theory\n",
+ "##(sigmatheta-sigmar)/2=1.35*pi\n",
+ "pi=tauyp/1.35\n",
+ "print'%s %.2f %s'%(\"in MPa is= \",pi,\"\")\n",
+ "\n",
+ "##solution c: energy of distortion theory\n",
+ "sigmar=-1\n",
+ "sigmayp1=math.sqrt(sigmatheta**2+sigmar**2-sigmatheta*sigmar)##*pi\n",
+ "print(sigmayp1)\n",
+ "pi=sigmayp/sigmayp1\n",
+ "print'%s %.2f %s'%(\"in MPa is=\",pi,\"\")\n",
+ "\n",
+ "##solution d: maxi principal strain theory\n",
+ "##(sigmatheta-v*sigmar)/E=sigmayp/E\n",
+ "pi=sigmayp/(sigmatheta-v*sigmar)\n",
+ "print'%s %.2f %s'%(\"in MPa is= \",pi,\"\")\n",
+ "\n",
+ "##solution e: octahedral shearing stress theory:\n",
+ "pi=(math.sqrt(2.)*sigmayp)/math.sqrt((sigmatheta-sigmar)**2.+sigmar**2.+(-sigmatheta)**2)\n",
+ "print'%s %.2f %s'%(\"in MPa is= \",pi,\"\")\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "in MPa is= 170.00 \n",
+ "in MPa is= 200.00 \n",
+ "in MPa is= 125.93 \n",
+ "2.36431808351\n",
+ "in MPa is= 143.80 \n",
+ "in MPa is= 170.00 \n",
+ "in MPa is= 143.80 \n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex3-pg243"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate contact pressure and tangential stresses in the outer cylinder\n",
+ "a=0.15 ##m\n",
+ "b=0.2 ##m\n",
+ "c=0.25 ##m\n",
+ "E=200*10**9. ##Pa\n",
+ "delta=0.0001 ##m\n",
+ "140 ##MPa\n",
+ "\n",
+ "p=((E*delta)/8.)*(((b**2.-a**2.)*(c**2.-b**2.))/(2.*(b**2.)*(c**2.-a**2.)))\n",
+ "print'%s %.2f %s'%(\"the contact pressure in Pa is= \",p,\"\") ## textbook ans is wrong\n",
+ "\n",
+ "p=12.3*10**6\n",
+ "sigmatheta=p*((b**2+c**2.)/(c**2.-b**2.)) ## where r=0.2\n",
+ "print'%s %.2f %s'%(\"tangential stresses in the outer cylinder in Pa is= \",sigmatheta,\"\")\n",
+ "sigmatheta1=(2*p*b**2)/(c**2-b**2) ## where r=0.25\n",
+ "print'%s %.2f %s'%(\"tangential stresses in the outer cylinder in Pa is= \",sigmatheta1,\"\")\n",
+ "sigmatheta3=-(2*p*b**2)/(b**2-a**2) ## where r=0.15\n",
+ "print'%s %.2f %s'%(\"tangential stresses in the inner cylinder in Pa is= \",sigmatheta3,\"\")\n",
+ "sigmatheta4=-p*((b**2.+a**2.)/(b**2.-a**2.)) ## where r=0.2\n",
+ "print'%s %.2f %s'%(\"tangential stresses in the inner cylinder in Pa is= \",sigmatheta4,\"\")\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the contact pressure in Pa is= 307617.19 \n",
+ "tangential stresses in the outer cylinder in Pa is= 56033333.33 \n",
+ "tangential stresses in the outer cylinder in Pa is= 43733333.33 \n",
+ "tangential stresses in the inner cylinder in Pa is= -56228571.43 \n",
+ "tangential stresses in the inner cylinder in Pa is= -43928571.43 \n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4-pg246"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate radial displacement of disk and shaft\n",
+ "dn=0.1 ##m\n",
+ "do=0.5 ##m\n",
+ "t=0.08 ##m\n",
+ "w=6900*(2*math.pi/60.) ##rpm\n",
+ "row=7.8*10**3##Ns**2/m**4\n",
+ "E=200*10**9 ##Pa\n",
+ "v=0.3\n",
+ "b=0.05\n",
+ "c=0.25\n",
+ "\n",
+ "\n",
+ "##solution a:\n",
+ "##ud=((0.05*3.3*0.7)*(0.0025+0.0625-(1.3/3.3)*0.0025+(1.3/0.7)*0.0625)*row*w**2)/(8*E)\n",
+ "ud=((0.05*3.3*0.7)*(b**2+c**2-(1.3/3.3)*b**2+(1.3/0.7)*c**2))/(8)\n",
+ "print'%s %.4f %s'%(\"radial displacement of the disk in meter is= \",ud,\"\")\n",
+ "\n",
+ "##us=((0.05*0.7)*(3.3*0.0025-1.3*0.0025)*row*w**2)/(8*E)\n",
+ "us=((0.05*0.7)*(3.3*b**2-1.3*b**2))/(8)\n",
+ "print'%s %.6f %s'%(\"radial displacement of the shaft in meter is= \",us,\"\")\n",
+ "delta=(ud-us)*row*w**2./E\n",
+ "print(delta)\n",
+ "\n",
+ "##solution b:\n",
+ "##p=E*delta*(c**2-b**2)/(2*b*c**2)\n",
+ "p=E*delta*(c**2-b**2)/(2*b*c**2)\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",p,\"\")\n",
+ "sigmathetamax=p*(c**2+b**2)/(c**2-b**2)\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",sigmathetamax,\"\")\n",
+ "\n",
+ "##solution c:\n",
+ "sigmathetamax=3.3*(b**2.+c**2.-(1.9/3.3)*b**2.+c**2.)*row*w**2./8.\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",sigmathetamax,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "radial displacement of the disk in meter is= 0.0026 \n",
+ "radial displacement of the shaft in meter is= 0.000022 \n",
+ "5.24957318528e-05\n",
+ "in Pa is= 100791805.16 \n",
+ "in Pa is= 109191122.25 \n",
+ "in Pa is= 211764600.73 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex5-pg250"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate sigma theta and sigma \n",
+ "ti=0.075 ##m\n",
+ "to=0.015##m\n",
+ "a=0.05##m\n",
+ "b=0.25##m\n",
+ "delta=0.05 ##mm\n",
+ "w=6900*(2*math.pi/60.) ##rpm\n",
+ "s=1.\n",
+ "row=7.8*10**3##Ns**2/m**4\n",
+ "E=200. ##GPa\n",
+ "\n",
+ "##solution a:\n",
+ "t1=ti*a**s\n",
+ "print'%s %.4f %s'%(\"t1 is=\",t1,\"\")\n",
+ "t1=to*b**2.\n",
+ "print'%s %.4f %s'%(\"t1 is=\",t1,\"\")\n",
+ "##(ti/to)=(t1*a**-s)/(t1*b**-s)=(b/a)**s\n",
+ "c=(b/a)**s\n",
+ "\n",
+ "(ti/to)==c\n",
+ "print'%s %.2f %s'%(\"ti/t0 is=\",c,\"\")\n",
+ "m1=-0.5+math.sqrt((0.5)**2+(1+0.3*1))\n",
+ "print'%s %.2f %s'%(\"m1 is=\",m1,\"\")\n",
+ "m2=-0.5-math.sqrt((0.5)**2.+(1.+0.3*1.))\n",
+ "print'%s %.2f %s'%(\"m2 is=\",m2,\"\")\n",
+ "\n",
+ "##sigmar=0=(c1/t1)*(0.05)**m1+(c2/t1)*(0.05)**(m2)-0.00176*row*w**2 ## r=0.05\n",
+ "##sigmar=0=(c1/t1)*(0.25)**m1+(c2/t1)*(0.25)**(m2)-0.0439*row*w**2 ## r=0.25\n",
+ "\n",
+ "c1=t1*0.12529*row*w**2.\n",
+ "print'%s %.2f %s'%(\"c1 is=\",c1,\"\")\n",
+ "c2=t1*-6.272*10**-5*row*w**2\n",
+ "print'%s %.2f %s'%(\"c2 is=\",c2,\"\")\n",
+ "\n",
+ "r=0.05\n",
+ "sigmar=(0.12529*r**0.745-6.272*10**-5*r**(-1.745)-0.70*r**2)##*row*w**2\n",
+ "print'%s %.5f %s'%(\"sigmar is= \",sigmar,\"\")\n",
+ "\n",
+ "sigmatheta=(0.09334*r**0.745+1.095*10**-4*r**(-1.745)-0.40*r**2)##*row*w**2\n",
+ "print'%s %.2f %s'%(\"sigmatheta is= \",sigmatheta,\"\")\n",
+ "\n",
+ "##solution b:\n",
+ "r=0.05\n",
+ "##ur=(r*sigmatheta)/E\n",
+ "ur=(r*sigmatheta)\n",
+ "print'%s %.7f %s'%(\"ur is= \",ur,\"\")\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "t1 is= 0.0037 \n",
+ "t1 is= 0.0009 \n",
+ "ti/t0 is= 5.00 \n",
+ "m1 is= 0.74 \n",
+ "m2 is= -1.74 \n",
+ "c1 is= 478341.11 \n",
+ "c2 is= -239.46 \n",
+ "sigmar is= 0.00001 \n",
+ "sigmatheta is= 0.03 \n",
+ "ur is= 0.0014711 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex6-pg251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate pressure\n",
+ "b=0.25 ##m\n",
+ "w=6900.*(2*math.pi/60.) ##rpm\n",
+ "t1=0.075 ##m\n",
+ "t2=0.015 ##m\n",
+ "row=7.8*10**3##Ns**2/m**4\n",
+ "c1=t1\n",
+ "\n",
+ "x=t2/t1\n",
+ "print(x)\n",
+ "\n",
+ "##(t2/t1)==(c1*exp(-(row*w**2/2*sigma)*b**2))/c1\n",
+ "##exp(-(row*w**2/2*sigma)*b**2)=x\n",
+ "##log(x)=-(row*w**2*b**2/2*sigma)\n",
+ "y=2.*math.log(x)\n",
+ "print(y)\n",
+ "sigma=-(row*w**2.*b**2.)/y\n",
+ "print'%s %.2f %s'%(\"in Pa is= \",sigma,\"\")\n",
+ "\n",
+ "##t=c1*exp(-row*(w**2/2*sigma)*r**2)\n",
+ "z=row*(w**2./(2.*sigma))\n",
+ "print(z)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "0.2\n",
+ "-3.21887582487\n",
+ "in Pa is= 79072562.70 \n",
+ "25.7510065989\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/Chapter9.ipynb b/Advanced_Strength_and_Applied_Elasticity/Chapter9.ipynb new file mode 100755 index 00000000..3d23ec50 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/Chapter9.ipynb @@ -0,0 +1,123 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:7853c3db6f4cd796ee2eb082e96153a72623c7508ac062b3bd0f06e348f02e54"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter9-Beams On Elastic Foundations"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Ex1-pg273"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#calculate length and maxi force per unit of length between beam & foundation \n",
+ "w=0.1 ##m\n",
+ "d=0.115 ##m\n",
+ "l=4. ##m\n",
+ "p=175. ##kN/m\n",
+ "k=14*10**6. ##Pa\n",
+ "E=200*10**9. ##Pa\n",
+ "I=(0.1*(0.15)**3.)\n",
+ "\n",
+ "##deltav=(p/2*k)*derivative(x)*beta*exp**(betax)*(cos beta(x)+sin beta(x))\n",
+ "##vA=(p/2k)*(2-exp**(betaa)*cos betaa - exp**(betab)*cos betab)\n",
+ "\n",
+ "beta=(k/(4.*E*I/12.))**(0.25)\n",
+ "print'%s %.2f %s'%(\"in meter inverse is= \",beta,\"\")\n",
+ "\n",
+ "vmax=(p*(2-(-0.0345)-(0.0345)))/(2*14000.)\n",
+ "print'%s %.2f %s'%(\"in meter is= \",vmax,\"\")\n",
+ "z=k*vmax\n",
+ "print'%s %.2f %s'%(\"maxi force per unit of length between beam & foundation in kN/m is= \",z,\"\")\n",
+ "\n",
+ "## Ans varies due to round of error\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "in meter inverse is= 0.89 \n",
+ "in meter is= 0.01 \n",
+ "maxi force per unit of length between beam & foundation in kN/m is= 175000.00 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4-pg279"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#find foundation modulus of the equivalent continuous elastic support in Pa\n",
+ "a=1.5 ##m\n",
+ "E=206.8*10**9 ##Pa\n",
+ "K=10000. ##N/m\n",
+ "I=6*10**-6 ##m**4\n",
+ "P=6700 ##N\n",
+ "c=0.05\n",
+ "\n",
+ "k=K/a\n",
+ "print'%s %.2f %s'%(\"foundation modulus of the equivalent continuous elastic support in Pa is=\",k,\"\")\n",
+ "\n",
+ "beta=(k/(4.*E*I))**(1/4.)\n",
+ "print(beta)\n",
+ "\n",
+ "##sigmamax=(M*c/I)=(P*c/4*beta*I)\n",
+ "sigmamax=((P*c)/(4.*beta*I))\n",
+ "print'%s %.2f %s'%(\"in Pa is=\",sigmamax,\"\")\n",
+ "\n",
+ "vmax=(P*beta)/(2.*k)\n",
+ "print'%s %.2f %s'%(\"in meter is=\",vmax,\"\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "foundation modulus of the equivalent continuous elastic support in Pa is= 6666.67 \n",
+ "0.191441787744\n",
+ "in Pa is= 72911632.81 \n",
+ "in meter is= 0.10 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter1.png b/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter1.png Binary files differnew file mode 100755 index 00000000..8fecff81 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter1.png diff --git a/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter2.png b/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter2.png Binary files differnew file mode 100755 index 00000000..e2d29b60 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter2.png diff --git a/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter3.png b/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter3.png Binary files differnew file mode 100755 index 00000000..8573e810 --- /dev/null +++ b/Advanced_Strength_and_Applied_Elasticity/screenshots/Chapter3.png |