{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 8:Transformation of stress and strain and Yield and Fracture criteria " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 8.1 page number 405 " ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The stress action in normal direction on AB 1.29 Mpa\n", "The stress action in tangential direction on AB 2.12 Mpa\n" ] } ], "source": [ "#Given \n", "import math \n", "from math import radians\n", "o = 22.5 #degrees , The angle of infetisimal wedge \n", "A = 1 #mm2 The area of the element \n", "A_ab = 1*(math.cos(radians(o))) #mm2 - The area corresponds to AB\n", "A_bc = 1*(math.sin(radians(o))) #mm2 - The area corresponds to BC\n", "S_1 = 3 #MN The stresses applying on the element \n", "S_2 = 2 #MN\n", "S_3 = 2 #MN\n", "S_4 = 1 #MN \n", "F_1 = S_1*A_ab # The Forces obtained by multiplying stress by their areas \n", "F_2 = S_2*A_ab\n", "F_3 = S_3*A_bc\n", "F_4 = S_4*A_bc\n", "#sum of F_N = 0 equilibrim in normal direction \n", "N = (F_1-F_3)*(math.cos(radians(o))) + (F_4 - F_2)*(math.sin(radians(o)))\n", "\n", "#sum of F_s = 0 equilibrim in tangential direction \n", "\n", "S = (F_2-F_4)*(math.cos(radians(o))) + (F_1 - F_3)*(math.sin(radians(o)))\n", "\n", "Stress_Normal = N/A #Mpa - The stress action in normal direction on AB\n", "Stress_tan = S/A #Mpa - The stress action in tangential direction on AB\n", "print \"The stress action in normal direction on AB\",round(Stress_Normal,2),\"Mpa\"\n", "print \"The stress action in tangential direction on AB\",round(Stress_tan,2),\"Mpa\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 8.2 page number 413" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "a) The stress action in normal direction on AB 4.12 Mpa\n", "a) The stress action in tangential direction on AB 0.71 Mpa\n", "b) The principle stress 4.2 Mpa tension\n", "b) The principle stress -0.06 Mpa compression\n", "b) The principle plane angles are 32.0 , 122.0 degrees\n", "c) The maximum shear is -2.24 Mpa\n", "a) [ 4.2 -0.1 0. ] Mpa\n", "b) [ 2. -2.24 -2.24 2. ] Mpa\n" ] } ], "source": [ "#Given\n", "o = -22.5 #degrees , The angle of infetisimal wedge \n", "A = 1 #mm2 The area of the element \n", "import math \n", "from math import radians\n", "from numpy import array\n", "A_ab = 1*(math.cos(radians(o))) #mm2 - The area corresponds to AB\n", "A_bc = 1*(math.sin(radians(o))) #mm2 - The area corresponds to BC\n", "S_1 = 3.0 #MN The stresses applying on the element \n", "S_2 = 2.0 #MN\n", "S_3 = 2.0 #MN\n", "S_4 = 1.0 #MN\n", "#Caliculations \n", "\n", "F_1 = S_1*A_ab # The Forces obtained by multiplying stress by their areas \n", "F_2 = S_2*A_ab\n", "F_3 = S_3*A_bc\n", "F_4 = S_4*A_bc\n", "#sum of F_N = 0 equilibrim in normal direction \n", "N = (F_1-F_3)*(math.cos(radians(o))) + (F_4 - F_2)*(math.sin(radians(o)))\n", "\n", "#sum of F_s = 0 equilibrim in tangential direction \n", "\n", "S = (F_2-F_4)*(math.cos(radians(o))) + (F_1 - F_3)*(math.sin(radians(o)))\n", "\n", "Stress_Normal = N/A #Mpa - The stress action in normal direction on AB\n", "Stress_tan = S/A #Mpa - The stress action in tangential direction on AB\n", "print \"a) The stress action in normal direction on AB\",round(Stress_Normal,2),\"Mpa\"\n", "print \"a) The stress action in tangential direction on AB\",round(Stress_tan,2),\"Mpa\"\n", "\n", "#Part- b\n", "\n", "S_max = (S_4+S_1)/2 + (((((S_4-S_1)/2)**2) + S_3**2)**0.5) #Mpa - The maximum stress\n", "S_min = (S_4+S_1)/2.0 - (((((S_4-S_1/2))**2) + S_3**2)**0.5) #Mpa - The minumum stress\n", "k = 0.5*math.atan(S_3/((S_1-S_4)/2)) #radians The angle of principle axis\n", "k_1 = math.degrees(k)\n", "k_2 = k_1+90 #The principle plane angles\n", "print \"b) The principle stress \",round(S_max,1),\"Mpa tension\"\n", "print \"b) The principle stress \",round(S_min,2),\"Mpa compression\"\n", "print \"b) The principle plane angles are\",round(k_1,0),\",\",round(k_2,0),\"degrees\"\n", "\n", "#part-c\n", "#The maximum shear stress case\n", "t_xy = (((((S_4-S_1)/2)**2) + S_3**2)**0.5) #Mpa - The maximum shear stress case\n", "K = 0.5*math.atan((-(S_1-S_4)/(2*S_3))) #radians The angle of principle axis\n", "K_0 = math.degrees(K)\n", "if K_0<0:\n", " K_1 = K_0+90\n", "else:\n", " K_1 = K_0\n", "K_2 = K_1+90 #PRinciple plain angles\n", "T_xy = -((S_1-S_4)/2)*(math.sin(radians(2*K_1))) + ((S_4+S_1)/2)*(math.cos(radians(2*K_1))) # Shear stress\n", "print \"c) The maximum shear is \",round(T_xy,2),\"Mpa\" \n", "S_mat_a = array([round(S_max,1),round(S_min,1),0]) #MPa maximum stress matrix\n", "S_mat_b = array([(S_4+S_1)/2,round(T_xy,2),round(T_xy,2),(S_4+S_1)/2]) #MPa maximum stress matrix at maximum shear\n", "print \"a)\",S_mat_a,\"Mpa\"\n", "print \"b)\",S_mat_b,\"Mpa\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 8.3 page number 421" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The principle stresses are 6.0 Mpa -4.0 Mpa\n", "The maximum shear stress 5.0 Mpa\n" ] } ], "source": [ "#Given \n", "import math \n", "from math import radians \n", "S_x = -2 #Mpa _ the noraml stress in x direction\n", "S_y = 4 #Mpa _ the noraml stress in Y direction\n", "c = (S_x + S_y)/2 #Mpa - The centre of the mohr circle \n", "point_x = -2 #The x coordinate of a point on mohr circle\n", "point_y = 4 #The y coordinate of a point on mohr circle\n", "Radius = pow((point_x-c)**2 + point_y**2,0.5) # The radius of the mohr circle\n", "S_1 = Radius +1#MPa The principle stress\n", "S_2 = -Radius +1 #Mpa The principle stress\n", "S_xy_max = Radius #Mpa The maximum shear stress\n", "print \"The principle stresses are\",S_1 ,\"Mpa\",S_2,\"Mpa\"\n", "print \"The maximum shear stress\",S_xy_max,\"Mpa\"\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 8.4 page number 423" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The normal stress on the 221/2 plane 4.82 Mpa\n", "The tangential stress on the 221/2 plane 1.43 Mpa\n" ] } ], "source": [ "#Given\n", "import math \n", "S_x = 3.0 #Mpa _ the noraml stress in x direction\n", "S_y = 1.0 #Mpa _ the noraml stress in Y direction\n", "c = (S_x + S_y)/2 #Mpa - The centre of the mohr circle \n", "point_x = 1 #The x coordinate of a point on mohr circle\n", "point_y = 3 #The y coordinate of a point on mohr circle\n", "#Caliculations \n", "\n", "Radius = pow((point_x-c)**2 + point_y**2,0.5) # The radius of the mohr circle\n", "#22.5 degrees line is drawn \n", "o = 22.5 #degrees \n", "a = 71.5 - 2*o #Degrees, from diagram \n", "stress_n = c + Radius*math.sin(math.degrees(o)) #Mpa The normal stress on the plane \n", "stress_t = Radius*math.cos(math.degrees(o)) #Mpa The tangential stress on the plane\n", "print \"The normal stress on the 221/2 plane \",round(stress_n,2),\"Mpa\"\n", "print \"The tangential stress on the 221/2 plane \",round(stress_t,2),\"Mpa\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 8.7 page number 437" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The principle strains are 400 um/m -600 um/m\n", "The angle of principle plane 18.43 degrees\n" ] } ], "source": [ "import math\n", "e_x = -500 #10-6 m/m The contraction in X direction\n", "e_y = 300 #10-6 m/m The contraction in Y direction\n", "e_xy = -600 #10-6 m/m discorted angle\n", "centre = (e_x + e_y)/2 #10-6 m/m \n", "point_x = -500 #The x coordinate of a point on mohr circle\n", "point_y = 300 #The y coordinate of a point on mohr circle\n", "Radius = 500 #10-6 m/m - from mohr circle\n", "e_1 = Radius +centre #MPa The principle strain\n", "e_2 = -Radius +centre #Mpa The principle strain\n", "k = math.atan(300.0/900) # from geometry\n", "k_1 = math.degrees(k)\n", "print \"The principle strains are\",e_1,\"um/m\",e_2,\"um/m\"\n", "print \"The angle of principle plane\",round(k_1,2) ,\"degrees\"\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 8.8 page number 441" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The principle stresses are 48.35 Mpa -105.49 MPa\n" ] } ], "source": [ "#Given\n", "e_0 = -500 #10-6 m/m \n", "e_45 = 200 #10-6 m/m \n", "e_90 = 300 #10-6 m/m\n", "E = 200 #Gpa - youngs modulus of steel \n", "v = 0.3 # poissions ratio \n", "#Caliculations \n", "\n", "e_xy = 2*e_45 - (e_0 +e_90 ) #10-6 m/m from equation 8-40 in text\n", "# from example 8.7\n", "e_x = -500 #10-6 m/m The contraction in X direction\n", "e_y = 300 #10-6 m/m The contraction in Y direction\n", "e_xy = -600 #10-6 m/m discorted angle\n", "centre = (e_x + e_y)/2 #10-6 m/m \n", "point_x = -500 #The x coordinate of a point on mohr circle\n", "point_y = 300 #The y coordinate of a point on mohr circle\n", "Radius = 500 #10-6 m/m - from mohr circle\n", "e_1 = Radius +centre #MPa The principle strain\n", "e_2 = -Radius +centre #Mpa The principle strain\n", "\n", "stress_1 = E*(10**-3)*(e_1+v*e_2)/(1-v**2) #Mpa the stress in this direction \n", "stress_2 = E*(10**-3)*(e_2+v*e_1)/(1-v**2) #Mpa the stress in this direction \n", "print\"The principle stresses are \",round(stress_1,2),\"Mpa\",round(stress_2,2),\"MPa\" " ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }