From 79c59acc7af08ede23167b8455de4b716f77601f Mon Sep 17 00:00:00 2001 From: hardythe1 Date: Thu, 11 Jun 2015 17:31:11 +0530 Subject: add books --- .../Chapter2.ipynb | 559 +++++++++++++++++++++ 1 file changed, 559 insertions(+) create mode 100755 Engineering_Physics_by_P.K.Palanisamy/Chapter2.ipynb (limited to 'Engineering_Physics_by_P.K.Palanisamy/Chapter2.ipynb') diff --git a/Engineering_Physics_by_P.K.Palanisamy/Chapter2.ipynb b/Engineering_Physics_by_P.K.Palanisamy/Chapter2.ipynb new file mode 100755 index 00000000..5f7356c7 --- /dev/null +++ b/Engineering_Physics_by_P.K.Palanisamy/Chapter2.ipynb @@ -0,0 +1,559 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#2: Crystallography and Crystal Structures" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.3, Page number 2.9" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "number of atoms in (100) is a**(-2) atoms/mm**2\n", + "number of atoms in (110) is 0.707106781186547/a**2 atoms/mm**2\n", + "number of atoms in (111) is 0.577350269189626/a**2 atoms/mm**2\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "from sympy import *\n", + "import numpy as np\n", + "\n", + "#Variable declaration\n", + "a=Symbol('a'); #lattice constant(mm)\n", + "x1=4;\n", + "x2=math.sqrt(2);\n", + "b=a*math.sqrt(2);\n", + "theta=30; #angle(degrees)\n", + "\n", + "#Calculation\n", + "theta=theta*math.pi/180; #angle(radian)\n", + "na1=x1*1/(x1*a**2); #number of atoms in (100)(per mm**2)\n", + "na2=1/(x2*a**2); #number of atoms in (110)(per mm**2)\n", + "A3=(1/2)*b*b*math.cos(theta); \n", + "t=60/360*3;\n", + "na3=t/A3; #number of atoms in (111)(per mm**2)\n", + "\n", + "#Result\n", + "print \"number of atoms in (100) is\",na1,\"atoms/mm**2\"\n", + "print \"number of atoms in (110) is\",na2,\"atoms/mm**2\"\n", + "print \"number of atoms in (111) is\",na3,\"atoms/mm**2\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.4, Page number 2.11" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "interplanar spacing for (110) is 0.2556 nm\n", + "interplanar spacing for (212) is 0.1205 nm\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "r=0.1278; #atomic radius(m)\n", + "h1=1;\n", + "k1=1;\n", + "l1=0;\n", + "h2=2;\n", + "k2=1;\n", + "l2=2;\n", + "\n", + "#Calculation\n", + "a=round(4*r/math.sqrt(2),4);\n", + "d110=a/math.sqrt(h1**2+k1**2+l1**2); #interplanar spacing for (110)(nm)\n", + "d212=a/math.sqrt(h2**2+k2**2+l2**2); #interplanar spacing for (212)(nm)\n", + "\n", + "#Result\n", + "print \"interplanar spacing for (110) is\",round(d110,4),\"nm\"\n", + "print \"interplanar spacing for (212) is\",d212,\"nm\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.5, Page number 2.11" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "seperation between successive lattice planes is 1 : 0.71 : 0.58\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "h1=1;\n", + "k1=0;\n", + "l1=0;\n", + "h2=1;\n", + "k2=1;\n", + "l2=0;\n", + "h3=1;\n", + "k3=1;\n", + "l3=1;\n", + "\n", + "#Calculation\n", + "d100=1/math.sqrt(h1**2+k1**2+l1**2); #interplanar spacing for (110)\n", + "d110=1/math.sqrt(h2**2+k2**2+l2**2); #interplanar spacing for (110)\n", + "d111=1/math.sqrt(h3**2+k3**2+l3**2); #interplanar spacing for (111)\n", + "\n", + "#Result\n", + "print \"seperation between successive lattice planes is\",int(d100),\":\",round(d110,2),\":\",round(d111,2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.6, Page number 2.12" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "miller indices of plane is ( 3.0 6.0 1.0 )\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "a=1;\n", + "b=1/2;\n", + "c=3;\n", + "\n", + "#Calculation\n", + "A=1/a;\n", + "B=1/b;\n", + "C=1/c;\n", + "h=A*c;\n", + "k=B*c;\n", + "l=C*c; #miller indices of plane\n", + "\n", + "#Result\n", + "print \"miller indices of plane is (\",h,k,l,\")\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.7, Page number 2.22" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "radius of interstitial sphere is 0.155 r\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "r=1; #assume\n", + "\n", + "#Calculation\n", + "a=4/math.sqrt(3);\n", + "R=(a-(2*r))/2; #radius of interstitial sphere(r)\n", + "\n", + "#Result\n", + "print \"radius of interstitial sphere is\",round(R,3),\"r\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.8, Page number 2.23" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "decrease of volume is 0.5 %\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "r1=1.258; #atomic radius(angstrom)\n", + "r2=1.292; #atomic radius(angstrom)\n", + "\n", + "#Calculation\n", + "a1=4*r1/math.sqrt(3); #spacing(angstrom)\n", + "n1=((1/8)*8)+1; #number of atoms per unit cell\n", + "v1=a1**3/n1; #volume occupied by 1 atom(m**3)\n", + "n2=(1/2*6)+(1/8*8); #number of atoms per unit cell\n", + "a2=2*math.sqrt(2)*r2; #spacing(angstrom)\n", + "v2=a2**3/n2; #volume occupied by 1 atom(m**3)\n", + "dc=(v1-v2)*100/v1; #change in volume(%)\n", + "\n", + "#Result\n", + "print \"decrease of volume is\",round(dc,1),\"%\" " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.9, Page number 2.24" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "volume of unit cell is 9.356 *10**-29 m**3\n", + "density of zinc is 6960 kg/m**3\n", + "answer varies due to rounding off errors\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "a=0.27*10**-9; #spacing(m)\n", + "c=0.494*10**-9;\n", + "n=6; #number of atoms\n", + "M=65.37; #atomic weight\n", + "N=6.023*10**26; #avagadro number\n", + "\n", + "#Calculation\n", + "V=3*math.sqrt(3)*a**2*c/2; #volume of unit cell(m**3)\n", + "rho=n*M/(N*V); #density of zinc(kg/m**3)\n", + "\n", + "#Result\n", + "print \"volume of unit cell is\",round(V*10**29,3),\"*10**-29 m**3\"\n", + "print \"density of zinc is\",int(rho),\"kg/m**3\"\n", + "print \"answer varies due to rounding off errors\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.10, Page number 2.24" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "radius of interstitial sphere is 0.414 r\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "r=1; #assume\n", + "\n", + "#Calculation\n", + "a=4*r/math.sqrt(2);\n", + "R=(a/2)-r; #radius of interstitial sphere(r)\n", + "\n", + "#Result\n", + "print \"radius of interstitial sphere is\",round(R,3),\"r\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.11, Page number 2.25" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "number of atoms per m**3 is 1.77 *10**29\n", + "density of diamond is 3535.7 kg/m**3\n", + "answer varies due to rounding off errors\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "a=0.356*10**-9; #cube edge(m)\n", + "m=12.01; #atomic weight of carbon\n", + "N=6.023*10**26; #avagadro number\n", + "\n", + "#Calculation\n", + "n=8/a**3; #number of atoms per m**3\n", + "M=m/N;\n", + "d=M*n; #density of diamond(kg/m**3)\n", + "\n", + "#Result\n", + "print \"number of atoms per m**3 is\",round(n/10**29,2),\"*10**29\"\n", + "print \"density of diamond is\",round(d,1),\"kg/m**3\"\n", + "print \"answer varies due to rounding off errors\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.12, Page number 2.26" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "distance between 2 adjacent atoms is 2.81 angstrom\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "mw=23+35.5; #molecular weight of NaCl(gm/mol)\n", + "N=6.023*10**23; #avagadro number(per mol)\n", + "d=2.18; #mass of unit volume\n", + "\n", + "#Calculation\n", + "M=mw/N; #mass of NaCl molecule(gm)\n", + "n=2*d/M; #number of atoms per unit volume(atoms/cm**3)\n", + "a=(1/n)**(1/3); #distance between 2 adjacent atoms(cm)\n", + "\n", + "#Result\n", + "print \"distance between 2 adjacent atoms is\",round(a*10**8,2),\"angstrom\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.13, Page number 2.26" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "density of copper crystal is 8.929 gm/cm**3\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "M=63.5; #atomic weight\n", + "N=6.023*10**23; #avagadro number\n", + "r=1.278*10**-8; #radius(m)\n", + "n=4;\n", + "\n", + "#Calculation\n", + "m=M/N; #mass of copper atom(gm)\n", + "a=4*r/math.sqrt(2);\n", + "Mu=n*m; #mass of unit cell\n", + "d=Mu/a**3; #density of copper crystal(gm/cm**3)\n", + "\n", + "#Result\n", + "print \"density of copper crystal is\",round(d,3),\"gm/cm**3\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##Example number 2.14, Page number 2.27" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "free volume per unit cell is 7.6795 *10**-30 m**3\n", + "answer varies due to rounding off errors\n" + ] + } + ], + "source": [ + "#importing modules\n", + "import math\n", + "from __future__ import division\n", + "\n", + "#Variable declaration\n", + "r=0.1249*10**-9; #radius(m)\n", + "pf=0.68; #packing factor\n", + "\n", + "#Calculation\n", + "a=4*r/math.sqrt(3); #lattice constant(m)\n", + "v=a**3; #volume of unit cell(m**3)\n", + "Fv=(1-pf)*v; #free volume per unit cell(m**3)\n", + "\n", + "#Result\n", + "print \"free volume per unit cell is\",round(Fv*10**30,4),\"*10**-30 m**3\"\n", + "print \"answer varies due to rounding off errors\"" + ] + } + ], + "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.9" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} -- cgit