diff options
Diffstat (limited to 'Applied_Physics_for_Engineers/Chapter_16.ipynb')
-rwxr-xr-x | Applied_Physics_for_Engineers/Chapter_16.ipynb | 431 |
1 files changed, 431 insertions, 0 deletions
diff --git a/Applied_Physics_for_Engineers/Chapter_16.ipynb b/Applied_Physics_for_Engineers/Chapter_16.ipynb new file mode 100755 index 00000000..43737f91 --- /dev/null +++ b/Applied_Physics_for_Engineers/Chapter_16.ipynb @@ -0,0 +1,431 @@ +{ + "metadata": { + "name": "" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 16: Crystal Physics" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.1, Page 820" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "p = 1; q = 2; r = 3; # Coefficients of intercepts along three axes\n", + "\n", + "#Calculations\n", + "p_inv = 1./p; # Reciprocate the first coefficient\n", + "q_inv = 1./q; # Reciprocate the second coefficient\n", + "r_inv = 1./r; # Reciprocate the third coefficient\n", + "mul_fact = p*q*r; # Find l.c.m. of m,n and p\n", + "m1 = p_inv*mul_fact; # Clear the first fraction\n", + "m2 = q_inv*mul_fact; # Clear the second fraction\n", + "m3 = r_inv*mul_fact; # Clear the third fraction\n", + "\n", + "#Result\n", + "print \"The required miller indices are : (%d %d %d) \"%(m1,m2,m3)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The required miller indices are : (6 3 2) \n" + ] + } + ], + "prompt_number": 4 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.2, Page 820" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "p = 2; q = 3; r = -4; # Coefficients of intercepts along three axes\n", + "\n", + "#Calculations\n", + "p_inv = 1./p; # Reciprocate the first coefficient\n", + "q_inv = 1./q; # Reciprocate the second coefficient\n", + "r_inv = 1./r; # Reciprocate the third coefficient\n", + "mul_fact = p*q*abs(r); # Find l.c.m. of m,n and p\n", + "m1 = p_inv*mul_fact; # Clear the first fraction\n", + "m2 = q_inv*mul_fact; # Clear the second fraction\n", + "m3 = r_inv*mul_fact; # Clear the third fraction\n", + "\n", + "#Result\n", + "print \"The miller indices of laticce plane are : (%d %d %d) \"%(m1,m2,m3)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The miller indices of laticce plane are : (12 8 -6) \n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.3, Page 821" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import numpy\n", + "\n", + "#Variable declaration\n", + "p = 3; q = 4; r = numpy.inf; # Coefficients of intercepts along three axes\n", + "\n", + "#Calculations\n", + "p_inv = 1./p; # Reciprocate the first coefficient\n", + "q_inv = 1./q; # Reciprocate the second coefficient\n", + "r_inv = 1./r; # Reciprocate the third coefficient\n", + "mul_fact = p*q; # Find l.c.m. of m,n and p\n", + "m1 = p_inv*mul_fact; # Clear the first fraction\n", + "m2 = q_inv*mul_fact; # Clear the second fraction\n", + "m3 = r_inv*mul_fact; # Clear the third fraction\n", + "\n", + "#Result\n", + "print \"The miller indices of the given planes are : (%d %d %d) \"%(m1,m2,m3)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The miller indices of the given planes are : (4 3 0) \n" + ] + } + ], + "prompt_number": 14 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.4, Page 822 " + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "p = 1.2; # First coefficient of intercept along X-axis, angstrom\n", + "a = 1.2\n", + "b = 1.8\n", + "c = 2.0; # Lattice parameters along three axes, angstrom\n", + "h = 2.\n", + "k = 3.\n", + "l = 1.; # Miller indices of lattice plane\n", + "\n", + "#Calculations\n", + "# As p:q:r = a/h:b/k:c/l, solving for q and r\n", + "q = p*(b/k)/(a/h); # Second coefficient of intercept along X-axis, angstrom \n", + "r = p*(c/l)/(a/h); # Third coefficient of intercept along X-axis, angstrom \n", + "\n", + "#Result\n", + "print \"The lengths of the intercepts on Y and Z axes are %3.1f angstrom and %3.1f angstrom respectively\"%(q, r)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The lengths of the intercepts on Y and Z axes are 1.2 angstrom and 4.0 angstrom respectively\n" + ] + } + ], + "prompt_number": 18 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.5, Page 822" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "M = 58.5; # Molecular weight of NaCl, g-mole\n", + "rho = 2.198e+03; # Density of Nacl, kg per metre cube\n", + "n = 4; # No. of atoms per unit cell for an fcc lattice of NaCl crystal\n", + "NA = 6.023e+26; # Avogadro's No., atoms/k-mol\n", + "\n", + "#Calculations\n", + "# Volume of the unit cell is given by\n", + "# a^3 = M*n/(N*d)\n", + "# Solving for a\n", + "a = (n*M/(rho*NA))**(1./3); # Lattice constant of unit cell of NaCl\n", + "\n", + "#Result\n", + "print \"Lattice constant for the NaCl crystal = %4.2f angstrom\"%(a/1e-010)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Lattice constant for the NaCl crystal = 5.61 angstrom\n" + ] + } + ], + "prompt_number": 20 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.6, Page 823" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "M = 119; # Molecular weight of KBr, g-mole\n", + "rho = 2.7; # Density of KBr, g per cm-cube\n", + "n = 4; # No. of atoms per unit cell for an fcc lattice of KBr crystal\n", + "NA = 6.023e+23; # Avogadro's No., atoms/mol\n", + "\n", + "#Calculations\n", + "# Volume of the unit cell is given by\n", + "# a^3 = M*n/(N*d)\n", + "# Solving for a\n", + "a = (n*M/(rho*NA))**(1./3); # Lattice constant of unit cell of KBr\n", + "\n", + "#Result\n", + "print \"Lattice constant for the KBr crystal = %4.2f angstrom\"%(a/1e-008)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Lattice constant for the KBr crystal = 6.64 angstrom\n" + ] + } + ], + "prompt_number": 21 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.7, Page 823" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "\n", + "#Variable declaration\n", + "M = 63.5; # Molecular weight of Cu, g-mole\n", + "rho = 8.96; # Density of Cu, g per cm-cube\n", + "n = 4; # No. of atoms per unit cell for an fcc lattice of Cu \n", + "NA = 6.023e+23; # Avogadro's No., atoms/mol\n", + "\n", + "#Calculations\n", + "# Volume of the unit cell is given by\n", + "# a^3 = M*n/(N*d)\n", + "# Solving for a\n", + "a = (n*M/(rho*NA))**(1./3); # Lattice constant of unit cell of Cu\n", + "d = a/sqrt(2); # Distance between the two nearest Cu atoms, angstrom \n", + "\n", + "#Results\n", + "print \"Lattice constant for the Cu crystal = %4.2f angstrom\"%(a/1e-008)\n", + "print \"The distance between the two nearest Cu atoms = %4.2f angstrom\"%(d/1e-008)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Lattice constant for the Cu crystal = 3.61 angstrom\n", + "The distance between the two nearest Cu atoms = 2.55 angstrom\n" + ] + } + ], + "prompt_number": 23 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.8, Page 824" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "\n", + "a = 1; # For simplicity assume lattice parameter of cubic crystal to be unity, unit\n", + "# For (011) planes\n", + "h = 0; k = 1; l = 1; # Miller Indices for planes in a cubic crystal\n", + "d_011 = a/(h**2+k**2+l**2)**(1./2); # The interplanar spacing for cubic crystals, m\n", + "print \"The interplanar spacing between consecutive (011) planes = a/sqrt(%d)\"%(1/d_011**2)\n", + "\n", + "# For (101) planes\n", + "h = 1; k = 0; l = 1; # Miller Indices for planes in a cubic crystal\n", + "d_101 = a/(h**2+k**2+l**2)**(1./2); # The interplanar spacing for cubic crystals, m\n", + "print \"The interplanar spacing between consecutive (101) planes = a/sqrt(%d)\"%(1/d_101**2)\n", + "\n", + "# For (112) planes\n", + "h = 1; k = 1; l = 2; # Miller Indices for planes in a cubic crystal\n", + "d_112 = a/(h**2+k**2+l**2)**(1./2); # The interplanar spacing for cubic crystals, m\n", + "print \"The interplanar spacing between consecutive (112) planes = a/sqrt(%d)\"%(1/d_112**2) #incorrect answer in textbook\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The interplanar spacing between consecutive (011) planes = a/sqrt(2)\n", + "The interplanar spacing between consecutive (101) planes = a/sqrt(2)\n", + "The interplanar spacing between consecutive (112) planes = a/sqrt(5)\n" + ] + } + ], + "prompt_number": 24 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.9, Page 824" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "a = 4.2e-010; # Lattice parameter of cubic crystal, m\n", + "h = 3; k = 2; l = 1; # Miller Indices for planes in a cubic crystal\n", + "\n", + "#Calculations\n", + "d_321 = a/(h**2+k**2+l**2)**(1./2); # The interplanar spacing for cubic crystals, m\n", + "\n", + "#Result\n", + "print \"The interplanar spacing between consecutive (321) planes = %4.2f angstrom\"%(d_321/1e-010)\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The interplanar spacing between consecutive (321) planes = 1.12 angstrom\n" + ] + } + ], + "prompt_number": 25 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 16.10, Page 825" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "from math import *\n", + "\n", + "#Variable declaration\n", + "a = 2.5\n", + "b = 2.5\n", + "c = 1.8; # Lattice parameter of tetragonal crystal, angstrom\n", + "h = 1\n", + "k = 1\n", + "l = 1; # Miller Indices for planes in a tetragonal crystal\n", + "\n", + "#Calculations\n", + "d_hkl = 1/sqrt((h/a)**2+(k/b)**2+(l/c)**2); # The interplanar spacing for tetragonal crystals, m\n", + "\n", + "#Result\n", + "print \"The interplanar spacing between consecutive (111) planes = %4.2f angstrom\"%d_hkl\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "The interplanar spacing between consecutive (111) planes = 1.26 angstrom\n" + ] + } + ], + "prompt_number": 27 + } + ], + "metadata": {} + } + ] +}
\ No newline at end of file |