{
 "metadata": {
  "name": ""
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "Chapter 6 : Imperfections, Defects and Dislocations in Solids"
     ]
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 6.1 pageno : 125"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "\n",
      "import math \n",
      "\n",
      "# Variables\n",
      "na = 6.023*10**23;\t\t\t#Avagadro's no.\n",
      "p = 3170.;\t        \t\t#density in kg/m**3\n",
      "\n",
      "# Calculations\n",
      "mw = 7.9*10**-2;\t\t\t#molecular weight of CaF2\n",
      "nl = na*p/mw;\t\t\t    #calcium ions/cubic m\n",
      "ni = 2.*nl;\t\t\t        # /cubic m\n",
      "t = 1300.;\t        \t\t#in K\n",
      "ef = 2.7*1.6*10**-19.;\t\t\t#energy of formation of one frenkel defect\n",
      "k = 1.38*10**-23;\t\t\t#boltzmann constant\n",
      "nf = math.sqrt(nl*ni)*math.exp(-ef/(2*k*t));\t\t\t#in /cubic m\n",
      "\n",
      "\n",
      "# Results\n",
      "print \"No. of Frenkel defect per unit volume of Calcium Fluoride (in /m**3)  =  %.2e /m**3\"%nf\n",
      "\n",
      "# note: Answers may vary because of rouding error."
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "No. of Frenkel defect per unit volume of Calcium Fluoride (in /m**3)  =  2.02e+23 /m**3\n"
       ]
      }
     ],
     "prompt_number": 3
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 6.2 pageno : 127"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "\n",
      "import math \n",
      "\n",
      "# Variables\n",
      "r = 8.314;\t\t\t# J/mol K\n",
      "t1 = 300.;\t\t\t#in K\n",
      "t2 = 1000.;\t\t\t#in K\n",
      "\n",
      "# Calculations\n",
      "ent = 168*10**3;        \t\t\t#enthalpy of formation of vacancy in J/mol\n",
      "x1 = math.exp(-ent/(r*t1));\t\t\t#x1 = n/Na\n",
      "x2 = math.exp(-ent/(r*t2));\t\t\t#x2 = n/Na\n",
      "rt = x1/x2;             \t\t\t#ratio \n",
      "\n",
      "# Results\n",
      "print \"Ratio of no. of vacancies  =  %.2e\"%rt\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Ratio of no. of vacancies  =  3.34e-21\n"
       ]
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 6.3 page no : 132"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "\n",
      "# Calculations\n",
      "# for 1/6[121] dislocation\n",
      "a1 = 1./6 * 1              # x - component\n",
      "b1 = 1./6 * 2              # y - component\n",
      "c1 = 1./6 * 1              # z - component\n",
      "\n",
      "# for 1/6[211] dislocation\n",
      "a2 = 1./6 * 2              # x - component\n",
      "b2 = 1./6 * 1              # y - component\n",
      "c2 = 1./6 * -1              # z - component\n",
      "\n",
      "a = a1 + a2              # x - component\n",
      "b = b1 + b2              # y - component\n",
      "c = c1 + c2              # z - component\n",
      "\n",
      "# Results\n",
      "print \"X-component  a = %.1f\"%a\n",
      "print \"Y-component  b = %.1f\"%b\n",
      "print \"Z-component  c = %.1f\"%c\n",
      "\n",
      "print \"Thus,  [abc] = [%.1f %.1f %.1f] = 1/2[110]\"%(a,b,c)\n",
      "print \"Hence, 1/6[121] + 1/6[211] -> 1/2[110] proved\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "X-component  a = 0.5\n",
        "Y-component  b = 0.5\n",
        "Z-component  c = 0.0\n",
        "Thus,  [abc] = [0.5 0.5 0.0] = 1/2[110]\n",
        "Hence, 1/6[121] + 1/6[211] -> 1/2[110] proved\n"
       ]
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 6.4 pageno : 136"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "\n",
      "import math \n",
      "\n",
      "# Variables\n",
      "v = 0.31;       \t\t\t#poisson's ratio\n",
      "bv = .25*10**-9;\t\t\t#burger's vector in m\n",
      "ri = 1.1*10**-9;\t\t\t#in m\n",
      "\n",
      "# Calculations\n",
      "r0 = 10.**5*bv;\t    \t\t#in m\n",
      "sm = 45.*10**9;\t\t    \t#shear modulous in n/sqm\n",
      "gb_2 = sm*bv**2;\n",
      "u_ed = (gb_2/(4*3.14*(1-v)))*math.log(r0/ri);\n",
      "u_sd = (gb_2/(4*3.14))*math.log(r0/ri);\n",
      "r = u_ed/u_sd;\t\t\t#ratio\n",
      "\n",
      "# Results\n",
      "print \"Elastic Strain Energy of Edge dislocation (in J/m)  =  %.2e J/m\"%u_ed\n",
      "print \"Elastic Strain Energy of Screw dislocation (in J/m)  =  %.2e J/m\"%u_sd\n",
      "print \"Ratio of energies of edge dislocation over screw dislocation  =  %.2f\"%r\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Elastic Strain Energy of Edge dislocation (in J/m)  =  3.26e-09 J/m\n",
        "Elastic Strain Energy of Screw dislocation (in J/m)  =  2.25e-09 J/m\n",
        "Ratio of energies of edge dislocation over screw dislocation  =  1.45\n"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 6.5 pageno : 139"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "\n",
      "# Variables\n",
      "r = 1.7*10**-10;\t\t\t#atomic radius in m\n",
      "n1 = 10.**-3;   \t\t\t#1mm = 10**-3m\n",
      "\n",
      "# Calculations\n",
      "a = 2*r;\t\t        \t#in m\n",
      "n = n1/a;\n",
      "ed = 2.*10**-6; \t\t\t#edge dislocation in m\n",
      "ns = ed/a;\n",
      "nv = n*ns;\n",
      "\n",
      "# Results\n",
      "print \"Total no. of created vacancies  =  %.2e\"%nv\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Total no. of created vacancies  =  1.73e+10\n"
       ]
      }
     ],
     "prompt_number": 8
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 6.6 pageno : 142"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "\n",
      "# Variables\n",
      "c1 = 3.61           # lattice parameter of copper\n",
      "c2 = 44             # shear modulus of copper\n",
      "\n",
      "# Calculations\n",
      "b = c1*math.sqrt(1**2 + 1**2 + 0**2)/2.\n",
      "U = c2*b**2 * 10**9 * 10**-20/2.\n",
      "\n",
      "# Results\n",
      "print \"The magnitude of the Burgers vector : %.3f A\"%b\n",
      "print \"LIne energy of dislocation U : %.3e J/m\"%U"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The magnitude of the Burgers vector : 2.553 A\n",
        "LIne energy of dislocation U : 1.434e-09 J/m\n"
       ]
      }
     ],
     "prompt_number": 11
    },
    {
     "cell_type": "heading",
     "level": 3,
     "metadata": {},
     "source": [
      "Example 6.7 pageno : 144"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "\n",
      "# Variables\n",
      "a = 3.84          # lattice constant\n",
      "h = 1\n",
      "k = 1\n",
      "l = 0\n",
      "\n",
      "# calculations\n",
      "b = a*math.sqrt(h**2  + k**2 + l**2)/2.\n",
      "h1 = b/math.tan(math.radians(1))\n",
      "h3  = b/math.tan(math.radians(3))\n",
      "\n",
      "# Results\n",
      "print \"b = %.3f A\"%b\n",
      "print \"Spacing between dislocaitons in a low angle tilt boundary in iridium\"\n",
      "print \"When,\"\n",
      "print \"Angle of tilts 1 = %.2f A\"%h1\n",
      "print \"Angle of tilts 3 = %.2f A\"%h3"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "b = 2.715 A\n",
        "Spacing between dislocaitons in a low angle tilt boundary in iridium\n",
        "When,\n",
        "Angle of tilts 1 = 155.56 A\n",
        "Angle of tilts 3 = 51.81 A\n"
       ]
      }
     ],
     "prompt_number": 1
    }
   ],
   "metadata": {}
  }
 ]
}