summaryrefslogtreecommitdiff
path: root/Material_Science
diff options
context:
space:
mode:
authorhardythe12015-04-07 15:58:05 +0530
committerhardythe12015-04-07 15:58:05 +0530
commitc7fe425ef3c5e8804f2f5de3d8fffedf5e2f1131 (patch)
tree725a7d43dc1687edf95bc36d39bebc3000f1de8f /Material_Science
parent62aa228e2519ac7b7f1aef53001f2f2e988a6eb1 (diff)
downloadPython-Textbook-Companions-c7fe425ef3c5e8804f2f5de3d8fffedf5e2f1131.tar.gz
Python-Textbook-Companions-c7fe425ef3c5e8804f2f5de3d8fffedf5e2f1131.tar.bz2
Python-Textbook-Companions-c7fe425ef3c5e8804f2f5de3d8fffedf5e2f1131.zip
added books
Diffstat (limited to 'Material_Science')
-rwxr-xr-xMaterial_Science/README.txt10
-rwxr-xr-xMaterial_Science/material_science_ch_1.ipynb102
-rwxr-xr-xMaterial_Science/material_science_ch_10.ipynb1488
-rwxr-xr-xMaterial_Science/material_science_ch_11.ipynb194
-rwxr-xr-xMaterial_Science/material_science_ch_12.ipynb461
-rwxr-xr-xMaterial_Science/material_science_ch_14.ipynb103
-rwxr-xr-xMaterial_Science/material_science_ch_15.ipynb104
-rwxr-xr-xMaterial_Science/material_science_ch_16.ipynb108
-rwxr-xr-xMaterial_Science/material_science_ch_18.ipynb1115
-rwxr-xr-xMaterial_Science/material_science_ch_19.ipynb526
-rwxr-xr-xMaterial_Science/material_science_ch_2.ipynb1395
-rwxr-xr-xMaterial_Science/material_science_ch_20.ipynb141
-rwxr-xr-xMaterial_Science/material_science_ch_23.ipynb113
-rwxr-xr-xMaterial_Science/material_science_ch_3.ipynb361
-rwxr-xr-xMaterial_Science/material_science_ch_4.ipynb61
-rwxr-xr-xMaterial_Science/material_science_ch_5.ipynb106
-rwxr-xr-xMaterial_Science/material_science_ch_6.ipynb105
-rwxr-xr-xMaterial_Science/material_science_ch_7.ipynb573
-rwxr-xr-xMaterial_Science/material_science_ch_8.ipynb853
-rwxr-xr-xMaterial_Science/screenshots/pl.pngbin0 -> 60638 bytes
-rwxr-xr-xMaterial_Science/screenshots/plane.pngbin0 -> 78614 bytes
-rwxr-xr-xMaterial_Science/screenshots/pln.pngbin0 -> 64313 bytes
22 files changed, 7919 insertions, 0 deletions
diff --git a/Material_Science/README.txt b/Material_Science/README.txt
new file mode 100755
index 00000000..21630bdf
--- /dev/null
+++ b/Material_Science/README.txt
@@ -0,0 +1,10 @@
+Contributed By: Laxman Sole
+Course: btech
+College/Institute/Organization: Vishwakarma Institute of Technology, Pune
+Department/Designation: Electronics Engineering
+Book Title: Material Science
+Author: V. Rajendran
+Publisher: Tata Mcgraw Hill, New Delhi
+Year of publication: 2012
+Isbn: 0-07-132897-1
+Edition: 1 \ No newline at end of file
diff --git a/Material_Science/material_science_ch_1.ipynb b/Material_Science/material_science_ch_1.ipynb
new file mode 100755
index 00000000..974292a4
--- /dev/null
+++ b/Material_Science/material_science_ch_1.ipynb
@@ -0,0 +1,102 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 1:Materials Properties and Requirements "
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1.1, page no-8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Resistance of the wire\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "r=0.45*10**-3 # radius of the wire\n",
+ "L=0.3 # length of the wire\n",
+ "rho=17.0*10**-9 # resistivity of wire in ohm-m \n",
+ "\n",
+ "#Calculations\n",
+ "R=rho*(L/(math.pi*r**2))\n",
+ "\n",
+ "#Result\n",
+ "print('The resistance of the wire is %.3f ohm'%R)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The resistance of the wire is 0.008 ohm\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 1.2, page no-8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Extension of a wire\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "r=1.25*10**-3 # radius of the wire in m\n",
+ "L=3.0 # length of wire in m\n",
+ "F=4900.0 # applied force in Newton\n",
+ "e=2.05*10**11 # modulus of elasticity\n",
+ "\n",
+ "#calculation\n",
+ "s=F/(math.pi*r**2*e)\n",
+ "\n",
+ "#result\n",
+ "print('strain = %.3f\\nTherefore, extension = %.3f m'%(s,s*3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "strain = 0.005\n",
+ "Therefore, extension = 0.015 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_10.ipynb b/Material_Science/material_science_ch_10.ipynb
new file mode 100755
index 00000000..35c3d6bc
--- /dev/null
+++ b/Material_Science/material_science_ch_10.ipynb
@@ -0,0 +1,1488 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10: Transport Properties of Semiconductors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.1, page no-267"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# intrinsic properties\n",
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "T=300 # Temperature\n",
+ "mue=0.4 # Electron mobility \n",
+ "muh=0.2 # Hole mobility \n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "eg=0.7*e # Band gap\n",
+ "m=9.1*10**-31 # Mass of electron\n",
+ "me=0.55 # electron effective mass \n",
+ "mh=0.37 # hole effective \n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "#Calculations\n",
+ "ni=2*(2*math.pi*k*T/(h**2))**(1.5)\n",
+ "ni=ni*(m**1.5)*(mh*me)**(3.0/4.0)\n",
+ "ni=ni*math.e**(-eg/(k*T))\n",
+ "sig=ni*e*(mue+muh)\n",
+ "rho=1/sig\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nThe intrinsic concentration ni=%.3f *10^13 /m^3\"%(ni*10**-13))\n",
+ "print(\"\\nIntrinsic Conductivity,Sigma =%.3f *10^-6 per m^3\\n\\nIntrinsic Resistivity, rho = %.2f*10^6 Ohm-m\"%(sig*10**6,rho*10**-6))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The intrinsic concentration ni=1.352 *10^13 /m^3\n",
+ "\n",
+ "Intrinsic Conductivity,Sigma =1.298 *10^-6 per m^3\n",
+ "\n",
+ "Intrinsic Resistivity, rho = 0.77*10^6 Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.2, page no-268"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi energy\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "ni=1.45*10**10 # intrinsic concentration\n",
+ "nd=10**16 # donor concentration\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "T=300 # Temperature\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#Calculations\n",
+ "Ef=k*T*math.log(nd/ni)\n",
+ "Ef=Ef/e\n",
+ "\n",
+ "#Result\n",
+ "print(\"The Fermi energy with respect to Ef in intrinsic Si = %.3f eV\"%Ef)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi energy with respect to Ef in intrinsic Si = 0.348 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.3, page no-269"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# conductivity of intrinsic\n",
+ "\n",
+ "import math\n",
+ "#Variable declarations\n",
+ "ni=2.5*10**19 # intrinsic concentration\n",
+ "mue=0.39 # electron mobility \n",
+ "muh=0.19 # hole mobility \n",
+ "l=10**-2 # length of rod\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "\n",
+ "# Calculations\n",
+ "sig=ni*e*(mue+muh)\n",
+ "R=l/(sig*10**-6)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The conductivity of intrinsic Ge is %.2f /ohm-m\\nThe Resistance is %.0f\"%(sig,R))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The conductivity of intrinsic Ge is 2.32 /ohm-m\n",
+ "The Resistance is 4310\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.4, page no-269"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# conductivity of intrinsic Ge\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "ni=1.5*10**16 # intrinsic concentration\n",
+ "mue=0.13 # electron mobility \n",
+ "muh=0.05 # hole mobility \n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#Calculations\n",
+ "sig=ni*e*(mue+muh)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The conductivity of intrinsic Ge is %.2f *10^-4 /ohm-m\"%(sig*10**4))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The conductivity of intrinsic Ge is 4.32 *10^-4 /ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.5, page no-270"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# intrinsic conductivity and resistivity\n",
+ "\n",
+ "import math\n",
+ "\n",
+ "#variable declaration\n",
+ "ni=2.15*10**13 # intrinsic concentration\n",
+ "mue=3900 # electron mobility \n",
+ "muh=1900 # hole concentration\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#calculation\n",
+ "sig=ni*e*(mue+muh)\n",
+ "r=1/sig\n",
+ "\n",
+ "# Result\n",
+ "print(\"The conductivity of intrinsic Ge is %.2f *10^-2 /ohm-cm\\nThe intrinsic resistivity is %.0f Ohm-cm\"%(sig*10**2,r))\n",
+ "#answers in the book is wrong"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The conductivity of intrinsic Ge is 2.00 *10^-2 /ohm-cm\n",
+ "The intrinsic resistivity is 50 Ohm-cm\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.6, page no-270"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# intrinsic conductivity and resistivity\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "ni=2.1*10**19 # intrinsic concentration\n",
+ "mue=0.4 # electron mobility \n",
+ "muh=0.2 # hole mobility\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "p=4.5*10**23 # boron density \n",
+ "\n",
+ "# Calculation\n",
+ "sig=ni*e*(mue+muh)\n",
+ "r=p*e*muh\n",
+ "\n",
+ "#Result\n",
+ "print(\"The conductivity of intrinsic Ge is %.3f *10^-2 /ohm-cm\\nThe intrinsic resistivity is %.2f *10^4 per ohm-m\"%(sig,r*10**-4))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The conductivity of intrinsic Ge is 2.016 *10^-2 /ohm-cm\n",
+ "The intrinsic resistivity is 1.44 *10^4 per ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.7, page no-271"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# intrinsic conductivity and resistivity\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "n=5*10**28 # Atomic concentration\n",
+ "ni=1.45*10**13 # intrinsic concentration\n",
+ "mue=1.35 # electron mobility\n",
+ "muh=0.45 # hole mobility\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "p=4.5*10**23 # boron density\n",
+ "\n",
+ "# calculation\n",
+ "sig=ni*e*(mue+muh)\n",
+ "rho=1/sig\n",
+ "r=rho*10**12\n",
+ "nd=n/10**9\n",
+ "p=(ni**2)/nd\n",
+ "sig2=nd*e*mue\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe intrinsic conductivity is %.2f *10^-6 /ohm-cm\\n\\nThe intrinsic resistivity is %.2f *10^-5 Ohm-m\\n\\nResistance = %.2f*10^7 Ohm\\n\\nDonar concentration is %.0f*10^19\\n\\nConcentration of hole is %.1f*10^6 m^-3\\n\\nConductivity = %.1f per ohm-m\"%(sig*10**6,rho*10**-5,r*10**-17,nd*10**-19,p*10**-6,sig2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The intrinsic conductivity is 4.18 *10^-6 /ohm-cm\n",
+ "\n",
+ "The intrinsic resistivity is 2.39 *10^-5 Ohm-m\n",
+ "\n",
+ "Resistance = 2.39*10^7 Ohm\n",
+ "\n",
+ "Donar concentration is 5*10^19\n",
+ "\n",
+ "Concentration of hole is 4.2*10^6 m^-3\n",
+ "\n",
+ "Conductivity = 10.8 per ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.8, page no-272"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Conductivity, Intrinsic carrier concentration and band gap of Ge\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "T=300 # Temperature\n",
+ "rho=2.12 # Resistivity\n",
+ "mue=0.36 # Electron mobility\n",
+ "muh=0.17 # Hole mobility\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "# Calculations\n",
+ "sig=1/rho\n",
+ "ni=sig/(e*(muh+mue))\n",
+ "Nc=2*(2*math.pi*k*T/h**(2))**(1.5)\n",
+ "Nc=Nc*(0.5*m)**(1.5)\n",
+ "Nv=2*(2*math.pi*k*T/h**(2))**(1.5)\n",
+ "Nv=Nv*(0.37*m)**(1.5)\n",
+ "eg=2*k*T*math.log(math.sqrt(Nc*Nv)/ni)\n",
+ "eg=eg/e\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nConductivity = %.6f per Ohm-m\\nIntrinsic carrier concentration, ni=%.5f*10^18\"%(sig,ni*10**-18))\n",
+ "print(\"\\nNc=%.3f*10^24\\nNv=%.3f*10^24\"%(Nc*10**-24,Nv*10**-24))\n",
+ "print(\"\\nThe band gap of Ge is %.3f eV\"%eg)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Conductivity = 0.471698 per Ohm-m\n",
+ "Intrinsic carrier concentration, ni=5.56248*10^18\n",
+ "\n",
+ "Nc=8.852*10^24\n",
+ "Nv=5.635*10^24\n",
+ "\n",
+ "The band gap of Ge is 0.727 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.9, page no-273"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# carrier concentration \n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "e=1.6*10**-19 # Electronic charge\n",
+ "m=9.1*10**-31 # Mass of electron\n",
+ "h=6.62*10**-34 # Planck's constant\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "eg=0.7*e # Band gap energy\n",
+ "T=300 # Temperature\n",
+ "\n",
+ "#Calculations\n",
+ "ni=2*(2*3.14*m*k*T/(h**(2)))**(1.5) # math.pi= 3.14\n",
+ "ni=ni*math.e**(-eg/(2*k*T))\n",
+ "\n",
+ "#Result\n",
+ "print(\"The carrier concentration of an intrinsic semiconductor is = %.2f*10^18 per m^3\"%(ni*10**-18))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The carrier concentration of an intrinsic semiconductor is = 33.49*10^18 per m^3\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.10, page no-273"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Carrier concentration\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "e=1.6*10**-19 # Electronic charge\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "h=6.626*10**-34 # planck's constant\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "eg=1.1*e # Energy gap\n",
+ "mue=0.48 # Mobility of electron\n",
+ "muh=0.013 # Mobility of hole\n",
+ "T=300 # temperature\n",
+ "\n",
+ "#Calculations\n",
+ "ni=2*(2*math.pi*m*k*T/(h**(2)))**(1.5)\n",
+ "ni=ni*math.e**(-eg/(2*k*T))\n",
+ "sig=ni*e*(mue+muh)\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe carrier concentration of an intrinsic semiconductor is = %.2f*10^16 per m^3\\nThe electrical conductiivity of Si is %.2f*10^-3 per Ohm-m\"%(ni*10**-16,sig*10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The carrier concentration of an intrinsic semiconductor is = 1.47*10^16 per m^3\n",
+ "The electrical conductiivity of Si is 1.16*10^-3 per Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.11, page no-275"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi energy of Si\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "e=1.6*10**-19 # ELectronic charge\n",
+ "eg=1.12 # Band gap\n",
+ "me=0.12 # Effective mass of electron\n",
+ "mh=0.28 # Effective mass of hole\n",
+ "T=300 # Temperature \n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "# Calculations\n",
+ "ef=(eg/2)+(3*k*T/(4*e))*math.log(mh/me)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The Fermi energy of Si at 300 K is %.3f eV\"%ef)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi energy of Si at 300 K is 0.576 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.12, page no-275"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi level shift\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "e=1.6*10**-19 # Electronic charge\n",
+ "eg=1*e # Energy gap\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "m=4.0 # hole to elctron mass ratio\n",
+ "\n",
+ "# calculations\n",
+ "T=0.1*e*4/(3*k*math.log(m))\n",
+ "\n",
+ "# Result\n",
+ "print(\"Temperature at which Fermi level is shifted 10%% is %.f K\"%T)\n",
+ "# Answer in the book is wrong"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature at which Fermi level is shifted 10% is 1115 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.13, page no-276"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# conductivity of Ge\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "ni=2.4*10**19 # intrinsic concentration\n",
+ "mue=0.39 # Electron mobility \n",
+ "muh=0.19 # hole mobility\n",
+ "\n",
+ "# caclualtions\n",
+ "sig=ni*e*(mue+muh)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The conductivity of Ge at 300 K is %.2f per Ohm-m\"%(math.floor(sig*100)/100))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The conductivity of Ge at 300 K is 2.22 per Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.14, page no-277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi energy level position\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "T1=300 # Lower Temperature \n",
+ "T2=330 # Higher Temperature\n",
+ "eg=0.3 # Fermi level posiion at lower temperature\n",
+ "\n",
+ "# Calculations\n",
+ "eg2=eg*T2/T1\n",
+ "\n",
+ "#Result\n",
+ "print(\"E_c-E_f330=%.2f eV\\n\\nAt 330 K, the Fermi energy level lies %.2f eV, bellow the conduction band.\"%(eg2,eg2))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "E_c-E_f330=0.33 eV\n",
+ "\n",
+ "At 330 K, the Fermi energy level lies 0.33 eV, bellow the conduction band.\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.15, page no-277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# conductivity of Ge\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "e=1.6*10**-19 # Charge of electron\n",
+ "eg=0.72*e # Energy gap\n",
+ "t1=293.0 # lower temperature\n",
+ "t2=313.0 # higher temperature\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "# calculations\n",
+ "sig1=2\n",
+ "n=((t2/t1)**(3.0/2.0))*math.e**((eg/(2*k))*((1/t1)-(1/t2)))\n",
+ "sig2=sig1*n\n",
+ "\n",
+ "#Result\n",
+ "print(\"The conductivity of Ge at 40\u00b0C is %.3f per Ohm-m\"%sig2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The conductivity of Ge at 40\u00b0C is 5.487 per Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 27
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.16, page no-278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# intrinsic concentration of Si\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "m=9.1*10**-31 # mass of electron \n",
+ "mm=0.31*m # effective mass of electron\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "k=1.38*10**-23 # Boltzmann's constant \n",
+ "eg=1.1*e # Energy gap\n",
+ "T=300 # Temperature\n",
+ "\n",
+ "# Calculations\n",
+ "ni=2*(2*math.pi*mm*k*T/(h**(2)))**(1.5)\n",
+ "ni=ni*math.e**(-eg/(2*k*T))\n",
+ "\n",
+ "#Result\n",
+ "print(\"The intrinsic concentration of Si at %d K is %.4f * 10^15 electrons per m^3\"%(T,ni*10**-15))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The intrinsic concentration of Si at 300 K is 2.5367 * 10^15 electrons per m^3\n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.17, page no-279"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# drift mobility\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "hc=0.55*10**-10 # Hall coefficient of Cu (modulus)\n",
+ "cc=5.9*10**7 # Conductivity of Cu \n",
+ "T=300 # Temperature\n",
+ "\n",
+ "#Calculations\n",
+ "dm=hc*cc\n",
+ "\n",
+ "#Result\n",
+ "print(\"The drift mobility is given by mu_d = %.1f * 10^-3 m^2/V-s\"%(dm*10**3))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The drift mobility is given by mu_d = 3.2 * 10^-3 m^2/V-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 29
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.18, page no-279"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# concentration and averrage o of electron contributed per atom\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "sig=5.9*10**7 # Resistivity\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "mu=3.2*10**-3 # electron drift mobility \n",
+ "d=8900 # Density\n",
+ "avg=6.022*10**23 # Avogadro's number\n",
+ "awt=63.5 # Atomic weight\n",
+ "\n",
+ "#calculations\n",
+ "ni=sig/(e*mu) \n",
+ "n=avg*d*1000/awt\n",
+ "k=ni/n\n",
+ "\n",
+ "#Result\n",
+ "print(\"Concentration of free electron in pure Cu is %.2f*10^28\\nThe average number of electrons contributed per Cu atom is %.2f i.e. %.0f\"%(n*10**-28,math.floor(k*100)/100,k))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Concentration of free electron in pure Cu is 8.44*10^28\n",
+ "The average number of electrons contributed per Cu atom is 1.36 i.e. 1\n"
+ ]
+ }
+ ],
+ "prompt_number": 33
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.19, page no-280"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility of the Ge\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "i=5*10**-3 # current through the specimen\n",
+ "v=1.35 # voltage across the specimen \n",
+ "l=0.01 # length of the sample\n",
+ "b=5*10**-3 # Breadth of the sample \n",
+ "t=10**-3 # Thickness of the sample\n",
+ "a=5*10**-6 # Area of the sample\n",
+ "vy=20*10**-3 # Hall voltage\n",
+ "H=0.45 # Magnetic field\n",
+ "\n",
+ "# Calculations\n",
+ "rho=v*a/(l*i)\n",
+ "Ey=vy/t\n",
+ "j=i/a\n",
+ "k=Ey/(H*j)\n",
+ "Rh=3*math.pi*k/8\n",
+ "mu=Rh/rho\n",
+ "\n",
+ "#Result\n",
+ "print(\"The mobility of the Ge sample is %.2f m^2/V-s\"%mu)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mobility of the Ge sample is 0.39 m^2/V-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 34
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.20, page no-282"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Hall potential difference\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "I=200 # current flowing\n",
+ "H=1.5 # Applied magnetic field\n",
+ "n=8.4*10**28 # no of electrons per unit volume\n",
+ "d=1.0*10**-3 # thickness of the strip\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "# calculations\n",
+ "v=I*H/(n*d*e)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The Hall potential difference appearance between the ship is %.0f \u00b5v\"%(v*10**6))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Hall potential difference appearance between the ship is 22 \u00b5v\n"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.21, page no-283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#carrier concentration and mobility of Si\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "rh=3.66*10**-4 # Hall coefficient of specimen\n",
+ "rho=8.93*10**-3 # resistivity of thespecimen\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#calculations\n",
+ "ni=1/(rh*e)\n",
+ "muh=rh/rho\n",
+ "\n",
+ "#Result\n",
+ "print(\"the carrier concentration of Si doped specimen is %.3f *10^22 m^-3\"%(ni*10**-22))\n",
+ "print(\"\\n The mobility of Si doped specimen is %.5f m^2/V-s\"%muh)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "the carrier concentration of Si doped specimen is 1.708 *10^22 m^-3\n",
+ "\n",
+ " The mobility of Si doped specimen is 0.04099 m^2/V-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.22, page no-283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# #carrier concentration and electron mobility\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "Rh=3.66*10**-11 # Hall coefficient\n",
+ "sig=112*10**7 # Conductivity\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "# Calculations\n",
+ "n=3*math.pi/(8*Rh*e)\n",
+ "mu=sig/(n*e)\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nThe concentration of electrons is %.0f*10^29 m^-3\\nthe electron mobility at room temperature = %.3f m^2/V-s\"%(n*10**-29,mu))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The concentration of electrons is 2*10^29 m^-3\n",
+ "the electron mobility at room temperature = 0.035 m^2/V-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.23, page no-284"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Hall voltage\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "I=50 # Current\n",
+ "B=1.5 # Magnetic field \n",
+ "t=0.5*10**-2 # Thickness of the slab\n",
+ "e=1.6*10**-19 # Electronic charge\n",
+ "d=2*10**-2 # Width of the slab \n",
+ "N=8.4*10**28 # Concentration of electron\n",
+ "\n",
+ "# Calculations\n",
+ "v=B*I/(N*e*d)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The Hall voltage is %.2f *10^-7 V\"%(v*10**7))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Hall voltage is 2.79 *10^-7 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 39
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.24, page no-284"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# relaxation time of electrons in metal\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "rho=1.54*10**-8 # resistivity of metal\n",
+ "ni=5.8*10**28 # carrier concentration\n",
+ "m=9.1*10**-31 # mass of an electron\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "# Calculations\n",
+ "tau=m/(rho*ni*(e**2))\n",
+ "\n",
+ "#Result\n",
+ "print(\"The relaxation time of electrons in metal is %.2f*10^-14 s\"%(tau*10**14))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The relaxation time of electrons in metal is 3.98*10^-14 s\n"
+ ]
+ }
+ ],
+ "prompt_number": 40
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.25, page no-285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility of electrons\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "sig=6.22*10**7 # conductivity of metal\n",
+ "n=5.9*10**28 # carrier concentration of electron\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#calculation\n",
+ "mu=sig/(n*e)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The mobility of electrons in Si is %.2f*10^-3 m^2/V-s\"%(mu*10**3))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mobility of electrons in Si is 6.59*10^-3 m^2/V-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 41
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.26, page no-285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility of the electrons\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "rho=0.1 # resistivity of metal\n",
+ "ni=10**20 # carrier concentration of electron \n",
+ "vd=1 # drift velocity \n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "# calculations\n",
+ "mu=1/(rho*ni*e)\n",
+ "E=vd/mu\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nThe mobility of the electrons in material is %.3f m^2/V-s\\nThe electric field is %.1f V/m\"%(mu,E))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The mobility of the electrons in material is 0.625 m^2/V-s\n",
+ "The electric field is 1.6 V/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 42
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.27, page no-286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility of electrons\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "sig=6.22*10**7 # conductivity of metal\n",
+ "n=5.9*10**28 #carrier concentration of electron \n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "# calculations\n",
+ "mu=sig/(n*e)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The mobility of electrons in silver is %.2f*10^-3 m^2/V-s\"%(mu*10**3))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mobility of electrons in silver is 6.59*10^-3 m^2/V-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 43
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.28, page no-286"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility of the electrons\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "rho=0.1 # resistivity of metal\n",
+ "ni=10**20 # carrier concentration of electron \n",
+ "vd=1 # drift velocity \n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "# calculations\n",
+ "mu=1/(rho*ni*e)\n",
+ "E=vd/mu\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nThe mobility of the electrons in material is %.3f m^2/V-s\\nThe electric field is %.1f V/m\"%(mu,E))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The mobility of the electrons in material is 0.625 m^2/V-s\n",
+ "The electric field is 1.6 V/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 44
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.29, page no-287"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# relaxation time, mobility and conductivity\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "avg=6.023*10**23 # Avogadro's number\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "e=1.6*10**-19 # charge of an electron \n",
+ "d=8.92*10**3 # density of copper \n",
+ "rho=1.73*10**-8 # resistivity of copper\n",
+ "z=63.5 # Atomic weight of copper\n",
+ "\n",
+ "# Calculations\n",
+ "n=avg*d/z\n",
+ "sig=1/rho\n",
+ "tau=sig*m/(n*(e**2))\n",
+ "mu=sig/(e*n)\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe relaxation time is %.2f *10^-11 s\\nThe mobility of electrons in copper is %.2f m^2/V-s\"%(tau*10**11,mu))\n",
+ "print(\"The conductivity of coppper is %.2f * 10^7 per Ohm-m\\n\"%(sig*10**-7))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The relaxation time is 2.43 *10^-11 s\n",
+ "The mobility of electrons in copper is 4.27 m^2/V-s\n",
+ "The conductivity of coppper is 5.78 * 10^7 per Ohm-m\n",
+ "\n"
+ ]
+ }
+ ],
+ "prompt_number": 45
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.30, page no-288"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility of electrons and drift velocity\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "rho=1.54*10**-8 # resistivity of silver\n",
+ "E=100 # electric field along the wire\n",
+ "ni=5.8*10**28 # carrier concentration of electron\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "# calculations\n",
+ "mu=1/(rho*ni*e)\n",
+ "vd=mu*E\n",
+ "\n",
+ "#Result\n",
+ "print(\"The mobility of electrons in silver is %.4f*10^-3 m^2/V-s\\nThe drift velocity id %.5f m/s\"%(mu*10**3,vd))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mobility of electrons in silver is 6.9973*10^-3 m^2/V-s\n",
+ "The drift velocity id 0.69973 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 46
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.31, page no-288"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# relaxation time for electrons\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "rho=1.43*10**-8 # resistivity of metal\n",
+ "ni=6.5*10**28 # carrier concentration of electron\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "m=9.1*10**-31 # mass of an electron\n",
+ "\n",
+ "# calculations\n",
+ "tau=m/(rho*ni*e**2)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The relaxation time for electrons in the metal is %.2f *10^-14 s\"%(math.ceil(tau*10**16)/100))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The relaxation time for electrons in the metal is 3.83 *10^-14 s\n"
+ ]
+ }
+ ],
+ "prompt_number": 50
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.32, page no-289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# concentration, mobility and velocity of electron\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "R=60 # resistance of aluminium\n",
+ "rho=2.7*10**-8 # resistivity of aluminium\n",
+ "i=15 # current in the wire\n",
+ "l=5 # length of the aluminium wire\n",
+ "m=3 # number of free electron per atom \n",
+ "e=1.6*10**-19 # electronic charge \n",
+ "d=2.7*10**3 # density of aluminium\n",
+ "awt=26.98 # Atomic weight of aluminium\n",
+ "avg=6.023*10**23 # Avogadro's number\n",
+ "\n",
+ "# calculations\n",
+ "n=m*avg*1000*d/awt\n",
+ "mu=1/(rho*n*e)\n",
+ "vd=mu*i*R*10**-3/l\n",
+ "\n",
+ "# Result\n",
+ "print(\"Free electron concentration is %.3f * 10^29\"%(n*10**-29))\n",
+ "print(\"\\nThe mobility of electron in aluminium is %.4f*10^-3 m^2/v-s\"%(mu*10**3))\n",
+ "print(\"\\nThe drift velocity of the electron in Al is %.1f*10^-4 m/s\"%(vd*10**4))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Free electron concentration is 1.808 * 10^29\n",
+ "\n",
+ "The mobility of electron in aluminium is 1.2801*10^-3 m^2/v-s\n",
+ "\n",
+ "The drift velocity of the electron in Al is 2.3*10^-4 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 51
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.33, page no-290"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Thermal and drift velocity of electron in copper\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "R=0.02 # resistance of the Cu\n",
+ "i=15 # current in the wire\n",
+ "mu=4.3*10**-3 # mobility of the free electron \n",
+ "l=2 # length of the Cu wire\n",
+ "k=1.38*10**-23 # Boltzmann's constant \n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "T=300 # temperature \n",
+ "\n",
+ "# Calculations\n",
+ "v=i*R \n",
+ "E=v/l\n",
+ "vd=E*mu\n",
+ "vth=math.sqrt(3*k*T/m)\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nThe thermal velocity of the free electrons in copper is %.3f mm/s\"%(vth*10**-5))\n",
+ "print(\"The drift velocity of electrons in copper is %.3f mm/s\"%(vd*10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The thermal velocity of the free electrons in copper is 1.168 mm/s\n",
+ "The drift velocity of electrons in copper is 0.645 mm/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 52
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_11.ipynb b/Material_Science/material_science_ch_11.ipynb
new file mode 100755
index 00000000..eddc35e2
--- /dev/null
+++ b/Material_Science/material_science_ch_11.ipynb
@@ -0,0 +1,194 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11: Mechanical Properties"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ " Example 11.1, page no-332"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Stress produced in an Al\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "ld=2000.0 # Load applied\n",
+ "g=9.8 # Acceleration due to gravity in m/s^2\n",
+ "r=0.005 # radious of test piece\n",
+ "\n",
+ "#Calculation\n",
+ "force=ld*g\n",
+ "stress= force/(math.pi*r**2)\n",
+ "\n",
+ "#Result\n",
+ "print('The stress produce in an aluminium alloy is %.1f MPa'%(stress*10**-6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The stress produce in an aluminium alloy is 249.6 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.2, page no-332"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# perentage elongation and reduction\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "lf=53.75*10**-3\n",
+ "l0=50*10**-3\n",
+ "df=9.4*10**-3\n",
+ "d0=8.8*10**-3\n",
+ "\n",
+ "#Calculation\n",
+ "pl=(lf-l0)*100.0/l0\n",
+ "pa=((math.pi*df**2)-(math.pi*d0**2))*100.0/(math.pi*df**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe %% elongation is %.1f%% and \\nthe %% reduction in area is %.2f%%'%(pl,pa))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The % elongation is 7.5% and \n",
+ "the % reduction in area is 12.36%\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.3, page no-332"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Brinell Hardness Number\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "ts=937.0 # Tensile strength of steel\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "bhn=ts/3.45\n",
+ "\n",
+ "#Result\n",
+ "print('The Brinell Hardness Number is %.2f'%bhn)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Brinell Hardness Number is 271.59\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.4, page no-333"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Tensile strength and fatigue limit of Steel plate\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "p=3000.0 # Load applied\n",
+ "D=10.0 # diameter of the indenter\n",
+ "d=2.2 # diameter of the impression\n",
+ "\n",
+ "#Calculation\n",
+ "Hb=2*p/(math.pi*D*(D-math.sqrt(D**2-d**2)))\n",
+ "Hb= math.floor(Hb*10)/10\n",
+ "ts=3.45*Hb\n",
+ "fl=0.5*ts\n",
+ "\n",
+ "#Result\n",
+ "print('\\nBrinell Hardness Number of steel Plate, Hb=%.1f\\n'%Hb)\n",
+ "print('\\nThe Tensile strength of steel plate is %.3f MPa\\n'%ts)\n",
+ "print('\\nThe Fatigue limit of steel plate is %.4f MPa'%fl)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Brinell Hardness Number of steel Plate, Hb=779.5\n",
+ "\n",
+ "\n",
+ "The Tensile strength of steel plate is 2689.275 MPa\n",
+ "\n",
+ "\n",
+ "The Fatigue limit of steel plate is 1344.6375 MPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_12.ipynb b/Material_Science/material_science_ch_12.ipynb
new file mode 100755
index 00000000..7deff30f
--- /dev/null
+++ b/Material_Science/material_science_ch_12.ipynb
@@ -0,0 +1,461 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12: Thermal Properties"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.1, page no-350"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Change in length due to heating\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "alfe=8.8*10**-6 # linear coefficient of thermal expansion for alumina\n",
+ "lo=0.1 # length of the alumina rod\n",
+ "delT=973.0 # difference in temperature\n",
+ "\n",
+ "#Calculation\n",
+ "delL=alfe*lo*delT\n",
+ "\n",
+ "#Result\n",
+ "print('The change in length produced by heating is %.3f mm'%(delL*10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The change in length produced by heating is 0.856 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.2, page no-350"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Change in length due to heating\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "alfe=5.3*10**-6 # linear coefficient of thermal expansion or alumina\n",
+ "lo=0.1 # length of the alumina rod\n",
+ "delT=973.0 # difference in temperature\n",
+ "\n",
+ "#Calculation\n",
+ "delL=alfe*lo*delT\n",
+ "\n",
+ "#Result\n",
+ "print('The change in length produced by heating is %.3f mm'%(delL*10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The change in length produced by heating is 0.516 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.3, page no-351"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Steady state heat Transfer\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "k=371.0 # Thermal conductivity of copper in J/msk\n",
+ "delT=50.0 # change in temperature\n",
+ "delx=10*10**-3 # change in thickness of the copper's sheet \n",
+ "\n",
+ "#Calculation\n",
+ "ht=k*delT/delx\n",
+ "\n",
+ "#Result\n",
+ "print('The steady state heat transfer of 10 mm copper sheet is %.3f *10^6 J.m^-2.s^-1'%(ht*10**-6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The steady state heat transfer of 10 mm copper sheet is 1.855 *10^6 J.m^-2.s^-1\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.4, page no-351"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Compression Stress due to Heating\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "alfe=8.8*10**-6 # linear coefficient of thermal expansion for alumina\n",
+ "t1=1300.0 # Temperature 1\n",
+ "t2=327.0 # Temperature 2\n",
+ "E=370.0 # modulus of elasticity\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "delT=t1-t2\n",
+ "ep=alfe*delT\n",
+ "sig=ep*E\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe unconstrained thermal expansion produced by the heating is %.4f *10^-3'%(ep*10**3))\n",
+ "print('\\nthe compression stress produced by heating is %.3f GPa'%(math.ceil(sig*1000)/1000))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The unconstrained thermal expansion produced by the heating is 8.5624 *10^-3\n",
+ "\n",
+ "the compression stress produced by heating is 3.169 GPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "Example 12.5, page no-352"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Heat flux transmitted\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "K=120.0 # thermal conductivity of brass\n",
+ "t2=423.0 # Temperature 2\n",
+ "t1=323.0 # Temperature 1\n",
+ "delT=t2-t1 # temperature difference\n",
+ "delx=7.5*10**-3 # change in thickness of the brass's sheet\n",
+ "A=0.5 # Area of the sheet\n",
+ "\n",
+ "#Calculation\n",
+ "Q=K*A*(delT/delx)\n",
+ "hph=Q*3600\n",
+ "\n",
+ "#Result\n",
+ "print('The heat flux transmitted through a sheet per hour is %.2f *10^9 J.h^-1'%(hph*10**-9))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The heat flux transmitted through a sheet per hour is 2.88 *10^9 J.h^-1\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.6, page no-353"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Young's Modulus\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "alfe=17*10**-6 # linear coefficient of thermal expansion for copper\n",
+ "t2=293.0 # Temperature 2\n",
+ "t1=233.0 # Temperature 1\n",
+ "delT=t2-t1 # temperature difference\n",
+ "st=119.0 # Maximum thermally induced stress\n",
+ "\n",
+ "#Calculation\n",
+ "k=alfe*delT\n",
+ "E=(st*10**6)/k\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe strain produced in te rod is %.2f * 10^-3'%(k*10**3))\n",
+ "print('\\nThe Youngs Modulus of the rod is %.1f GPa'%(E*10**-9))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The strain produced in te rod is 1.02 * 10^-3\n",
+ "\n",
+ "The Youngs Modulus of the rod is 116.7 GPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.7, page no-353"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Temperature Change\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "lo=11.6 # length of the steel rod\n",
+ "delx=5.4*10**-3 # difference in length\n",
+ "alfL=12*10**-6 # Linear coefficient of thermal expansion for steel\n",
+ "\n",
+ "#Calculation\n",
+ "delT=delx/(lo*alfL)\n",
+ "\n",
+ "#Result\n",
+ "print('The maximum temperature cange can withstand without any thermal stress is %.2f K'%delT)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum temperature cange can withstand without any thermal stress is 38.79 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.8, page no-354"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#compressive Sress\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "lo=0.35 # length of the Al rod\n",
+ "alfe=23.6*10**-6 # Linear coefficient of thermal expansion for Al\n",
+ "t2=358.0 # temperature 2\n",
+ "t1=288.0 # temperature 1\n",
+ "delT=t2-t1 # temperature difference\n",
+ "ym=69.0 # Young's modulus\n",
+ "\n",
+ "#Calculation\n",
+ "k=alfe*delT\n",
+ "E=ym*k*10**9\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe strain produced in te rod is %.3f * 10^-3'%(k*10**3))\n",
+ "print('\\nThe compressive stress produced in Al rod is %.3f GPa'%(E*10**-9))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The strain produced in te rod is 1.652 * 10^-3\n",
+ "\n",
+ "The compressive stress produced in Al rod is 0.114 GPa\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.9, page no-355"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# limit to compression stress\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "alfe=20*10**-6 # Linear coefficient of thermal expansion for alumina\n",
+ "t1=293.0 # temperature \n",
+ "sig=172.0 # compressive stress\n",
+ "E=100.0 # modulus of elasticity\n",
+ "\n",
+ "#Calculation\n",
+ "delT=(sig*10**6)/(E*alfe*10**9)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nTf-Ti=%.0f'%delT)\n",
+ "print('\\n\\nThe maximum temperature at which the rod may be heated without\\nexceeding a compresssive stress of %.0f MPa is %.0f K'%(sig,delT+t1))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Tf-Ti=86\n",
+ "\n",
+ "\n",
+ "The maximum temperature at which the rod may be heated without\n",
+ "exceeding a compresssive stress of 172 MPa is 379 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.10, page no-356"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Heat energy Requirement\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "h_ir=444.0 # specific heat capacity of iron in J.kg^-1.K^-1\n",
+ "h_gr=711.0 # specific heat capacity of graphite in J.kg^-1.K^-1\n",
+ "h_pl=1880.0 # specific heat capacity of polypropylene in J.kg^-1.K^-1\n",
+ "t2=373.0 # Temperature 2\n",
+ "t1=300.0 # Temperature 1\n",
+ "delT=t2-t1 # difference in temperature\n",
+ "W=2.0 # weight\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "\n",
+ "#(a) For Iron\n",
+ "q=W*h_ir*delT\n",
+ "\n",
+ "#(b)for Graphite\n",
+ "q1=W*h_gr*delT\n",
+ "\n",
+ "#(b)for polypropylene\n",
+ "q2=W*h_pl*delT\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print('The heat energy required to raise temperature %.0f K from its temperature of \\niron, graphite and polypropylene is %.0f,%.0f,%.0f J respectively'%(delT,q,q1,q2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The heat energy required to raise temperature 73 K from its temperature of \n",
+ "iron, graphite and polypropylene is 64824,103806,274480 J respectively\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_14.ipynb b/Material_Science/material_science_ch_14.ipynb
new file mode 100755
index 00000000..a1ea592c
--- /dev/null
+++ b/Material_Science/material_science_ch_14.ipynb
@@ -0,0 +1,103 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14: Luminescence"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.1, page no-385"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Penetration depth of electron\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "eb=10000.0 # Energy of incident beam in eV\n",
+ "k=1.2*10**-4 # Constant depending on marerial \n",
+ "b=0.151 # Constant depending on marerial\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "\n",
+ "#Calculation\n",
+ "rc=k*(eb*e)**b\n",
+ "\n",
+ "#Result\n",
+ "print('The penetration depth of the electron is %.4f \u00b5m'%(rc*10**6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The penetration depth of the electron is 0.6998 \u00b5m\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.2, page no-386"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Luminescent lifetime\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "ed=0.4 # difference in energy level in eV\n",
+ "e=1.6*10**-19 # Charge of an electron\n",
+ "kT=0.025 # temperature equivalent \n",
+ "q=10**8 # constant\n",
+ "\n",
+ "#Calculation\n",
+ "r=q*math.e**(-(ed/kT))\n",
+ "\n",
+ "#Result\n",
+ "print('The escape rate per unit time = %.1f per sec\\nTherefore, the luminescent lifetime is nearly %.0f sec'%(math.floor(r*10)/10,r))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The escape rate per unit time = 11.2 per sec\n",
+ "Therefore, the luminescent lifetime is nearly 11 sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_15.ipynb b/Material_Science/material_science_ch_15.ipynb
new file mode 100755
index 00000000..19e8e51c
--- /dev/null
+++ b/Material_Science/material_science_ch_15.ipynb
@@ -0,0 +1,104 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15: Display Devices"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 15.1, page no-406"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# wavelength of light\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "e=1.609*10**-19 # Charge of electron\n",
+ "eg=1.8 # energy band gap\n",
+ "E=e*eg \n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "c=3*10**8 # speed of light\n",
+ "\n",
+ "#Calculation\n",
+ "lam=h*c/E\n",
+ "\n",
+ "#Result\n",
+ "print('The wavelenth of light emitted from given LED is %.4f \u00b5m'%(lam*10**6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelenth of light emitted from given LED is 0.6863 \u00b5m\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 15.2, page no-406"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Band Gap of GaAsP\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "e=1.6*10**-19 # Charge of electron\n",
+ "h=6.626*10**-34 # planck's constant\n",
+ "c=3*10**8 # speed of light in m/s\n",
+ "lam=6751*10**-10 # wavelength of green light from mercury lamp\n",
+ "\n",
+ "#Calculation\n",
+ "E=h*c/lam\n",
+ "E=E/e\n",
+ "\n",
+ "#Result\n",
+ "print('The band gap of the given GaAsP is %.1f eV'%E)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The band gap of the given GaAsP is 1.8 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_16.ipynb b/Material_Science/material_science_ch_16.ipynb
new file mode 100755
index 00000000..5a6ff652
--- /dev/null
+++ b/Material_Science/material_science_ch_16.ipynb
@@ -0,0 +1,108 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16: Photoconductivity "
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.1, page no-416"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Pairs generated per second\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "lam=0.4*10**-6 # wavelength of light\n",
+ "A=4*10**-6 # area of the crystal\n",
+ "in1=200.0 # intensity of light in W/m^2\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "c=3*10**8 # speed of light\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "N=in1*A*lam/(h*c)\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print('The number of pairs generated per second is %.3f * 10^14'%(N*10**-14))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of pairs generated per second is 16.098 * 10^14\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.2, page no-417"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Wavelength of emitted radiation\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "e=1.6*10**-19 # Charge of electron\n",
+ "eg=1.43 # band gap energy in eV\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "c=3*10**8 # speed of light in m/s\n",
+ "\n",
+ "\n",
+ "#Calculation\n",
+ "E=e*eg \n",
+ "lam=h*c/E\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print('The wavelength of emitted radiation is %.2f \u00b5m'%(lam*10**6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength of emitted radiation is 0.87 \u00b5m\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_18.ipynb b/Material_Science/material_science_ch_18.ipynb
new file mode 100755
index 00000000..2b2673b7
--- /dev/null
+++ b/Material_Science/material_science_ch_18.ipynb
@@ -0,0 +1,1115 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 18: Dielectric Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.1, page no-460"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Relative permitivity of KCl\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "atom=4 # number of atoms \n",
+ "kci=0.629*10**-9 # LAttice parameter of KCl \n",
+ "alfk=1.264*10**-40 # electronic polarisability for K+ ion\n",
+ "alfCl=3.408*10**-40 # electronic polarisability for Cl- ion\n",
+ "eps0=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "# Calculations\n",
+ "pol=alfk+alfCl\n",
+ "N=atom/kci**3\n",
+ "epsr=(N*pol/eps0)+1\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe electronic polarisability for KCL = %.3f *10^-40 F m^2\\n\"%(pol*10**40))\n",
+ "print(\"\\nThe no of Dipoles per m^3 = %.3f * 10^28 atoms m^-3\\n\"%(N/10**28))\n",
+ "print(\"\\nThe dielectric constant of KCL is %.3f\"%epsr)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The electronic polarisability for KCL = 4.672 *10^-40 F m^2\n",
+ "\n",
+ "\n",
+ "The no of Dipoles per m^3 = 1.607 * 10^28 atoms m^-3\n",
+ "\n",
+ "\n",
+ "The dielectric constant of KCL is 1.848\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.2, page no-460"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# electronic polarisability\n",
+ "\n",
+ "import math\n",
+ "#variable declarations\n",
+ "r=0.12*10**-9 # atomic radius of Se\n",
+ "eps=8.854*10**-12 # permitivity of free space \n",
+ "\n",
+ "# Calculations\n",
+ "alf=4*math.pi*eps*r**3\n",
+ "\n",
+ "# Result\n",
+ "print(\"The electronic polarisability of an isolated Se is %.4f * 10^-40 F m^2\"%(alf*10**40))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electronic polarisability of an isolated Se is 1.9226 * 10^-40 F m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.3, page no-461"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#electronic to ionic polarability ratio\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "n=2.69 # refraction index\n",
+ "er=4.94 # dielectric cnstant\n",
+ "\n",
+ "# calculations\n",
+ "alfi_by_alfe=(((n+2)*(er-1))/((er+2)*(n-1)))-1\n",
+ "\n",
+ "# Result\n",
+ "print(\"The ratio of the electronic to ionic polarability is %.4f\"%(1/alfi_by_alfe))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The ratio of the electronic to ionic polarability is 1.7376\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.4, page no-462"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# dielectric constant\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "N= 2.7*10**25 # number of atoms\n",
+ "alfe=0.35*10**-40 # electronic polarisability \n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "# calculations\n",
+ "epsr=(1+(2*N*alfe)/(3*eps))/(1-(N*alfe)/(3*eps))\n",
+ "\n",
+ "# Result\n",
+ "print(\"The dielectric constant of Ne gas is %.8f\"%epsr)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The dielectric constant of Ne gas is 1.00010674\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.5, page no-462"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# charge on the capacitor\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "eps=8.85*10**-12 # permitivity of free space\n",
+ "epsr=6 # relative permitivity of dielectric\n",
+ "A=5*10**-4 # Area of the capacitor plate \n",
+ "d=1.5*10**-3 # distance between the plates\n",
+ "v=100 # Applied voltage\n",
+ "\n",
+ "# calculations\n",
+ "Q=eps*epsr*A*v/d\n",
+ "\n",
+ "# Result\n",
+ "print(\"The charge on the capacitor is %.2f * 10^-9 C\"%(Q*10**9))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The charge on the capacitor is 1.77 * 10^-9 C\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.6, page no-463"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# dielectric constant\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "N=2.7*10**25 # Number of Ar atoms\n",
+ "d=0.384*10**-9 # diameter of Ar atom\n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "# calculations\n",
+ "alfe=4*math.pi*eps*d**3\n",
+ "alfe=alfe*10**-2 # correction\n",
+ "epsr=(1+((2*N*alfe)/(3*eps)))/(1-((N*alfe)/(3*eps)))\n",
+ "\n",
+ "# Result\n",
+ "print(\"The dielectric constant of Ar is %.8f\"%(epsr))\n",
+ "# correction is to match the answer in the book \n",
+ "# answer for alfe is given as 0.63 * 10^-40 but it is actually 0.63* 10^-38."
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The dielectric constant of Ar is 1.00019213\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.7, page no-464"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Energy stored\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "c=2*10**-6 # capacitance\n",
+ "epsr=80 # permitivity of the dielectric\n",
+ "v=1000 # Applied voltage\n",
+ "\n",
+ "#Calculations\n",
+ "E1=(c*v**2)/2\n",
+ "c0=c/epsr\n",
+ "E2=(c0*v**2)/2\n",
+ "E=E1-E2\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nThe Energy stored in capacitor =%.0f J\"%E1)\n",
+ "print(\"\\nThe energy stored in polarising the capacitor = %.4f J\"%E)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The Energy stored in capacitor =1 J\n",
+ "\n",
+ "The energy stored in polarising the capacitor = 0.9875 J\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.8, page no-464"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# nternal field to applied field ratio\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "N=5*10**28 # no of atoms present per m^3\n",
+ "alfe=2*10**-40 # Polarisability \n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "\n",
+ "# Calculations\n",
+ "P=N*alfe\n",
+ "E_ratio=1/(1-(P/(3*eps)))\n",
+ "\n",
+ "# Result\n",
+ "print(\"The ratio of the internal field to the applied field = %.4f\"%E_ratio)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The ratio of the internal field to the applied field = 1.6038\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.9, page no-465"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# relative permitivity\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "E=1000 # Applied electric field\n",
+ "P=4.3*10**-8 # Polarisation\n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "# calculations\n",
+ "epsr=1+P/(eps*E)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The relative permitivity of NaCl is %.2f\"%epsr)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The relative permitivity of NaCl is 5.86\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.10, page no-466"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#polarisability of argon atom\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "epsr=1.0024 # relative permitivity\n",
+ "N=2.7*10**25 # Number of atoms\n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "# calculations\n",
+ "alfe=eps*(epsr-1)/N\n",
+ "\n",
+ "#Result\n",
+ "print(\"The polarisability of argon atom is %.1f * 10^-40 F m^2\"%(alfe*10**40))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The polarisability of argon atom is 7.9 * 10^-40 F m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.11, page no-466"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# electronic polarisability\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "epsr=1.0000684 # Dielectric constant of the gas at NTP\n",
+ "N=2.7*10**25 # Number of He atoms\n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "#calculations\n",
+ "alfe=eps*(epsr-1)/N\n",
+ "\n",
+ "#Result\n",
+ "print(\"The electronic polarisability of He atom at NTP is %.3f * 10^-41 F m^2\"%(alfe*10**41))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electronic polarisability of He atom at NTP is 2.243 * 10^-41 F m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.12, page no-467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# electronic polarisability\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "epsr=12 # relative dielectric constant of material\n",
+ "N=5*10**28 # number of atoms in the element\n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "#Calculations\n",
+ "alfe=eps*(epsr-1)/N\n",
+ "\n",
+ "# result\n",
+ "print(\"The electronic polarisability of given element is %.3f * 10^-39 F m^2\"%(math.floor(alfe*10**39*1000)/1000))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electronic polarisability of given element is 1.947 * 10^-39 F m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.13, page no-467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# energy stored in dielectric\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "c=2*10**-6 # capacitance of plate condenser\n",
+ "v=1000 # applied voltage\n",
+ "epsr=100 # dielectric permitivity\n",
+ "\n",
+ "# calculations\n",
+ "E=(c*v**2)/2\n",
+ "c0=c/epsr\n",
+ "e2=(c0*v**2)/2\n",
+ "E1=E-e2\n",
+ "\n",
+ "# Result\n",
+ "print(\"The energy stored in dielectric is %.2f J\"%E1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy stored in dielectric is 0.99 J\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.14, page no-468"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# electronic polarisability\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "epsr=3.4 # dielectric constant of sulphur \n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "d=2.07*10**3 # density of sulphur \n",
+ "w=32.07 # Atomic weight\n",
+ "Avg=6.023*10**23 # avogadro's number\n",
+ "\n",
+ "# calculations\n",
+ "N=Avg*10**3*d/w\n",
+ "N= (math.ceil(N*10**-26))/10**-26\n",
+ "alfe=3*eps*(epsr-1)/(N*(epsr+2))\n",
+ "\n",
+ "#Result\n",
+ "print(\"The electronic polarisability of sulphur is %.3f * 10^-40 F.m^2\"%(alfe*10**40))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electronic polarisability of sulphur is 3.035 * 10^-40 F.m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 43
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.15, page no-469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# charge stored and polarisation produced in the plate\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "A=6.45*10**-4 # Area of the capacitor plate\n",
+ "d=2*10**-3 # distance between plates\n",
+ "epsr=6 # relative permitivity \n",
+ "v=10 # applied voltage \n",
+ "eps=8.854*10**-12 # permitivity in free space\n",
+ "\n",
+ "\n",
+ "# calculations\n",
+ "c=eps*epsr*A/d\n",
+ "q=c*v\n",
+ "E=v/d\n",
+ "p=eps*(epsr-1)*E\n",
+ "\n",
+ "# Result\n",
+ "print(\"Capacitance of Capacitor = %.2f pF\"%(c*10**12))\n",
+ "print(\"\\ncharge stored on the plate is %.2f *10^-11 C\"%(q*10**11))\n",
+ "print(\"\\nPolarisation produce in the plate is %.3f *10^-7 Cm^-2\"%(math.ceil(p*10**7*1000)/1000))\n",
+ "# answer forstored charge is wrong in the book"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Capacitance of Capacitor = 17.13 pF\n",
+ "\n",
+ "charge stored on the plate is 17.13 *10^-11 C\n",
+ "\n",
+ "Polarisation produce in the plate is 2.214 *10^-7 Cm^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 53
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.16, page no-470"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Polarisation produced in NaCl\\\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "E=600*10**3 # electric field strength\n",
+ "eps=8.854*10**-12 # permitivity in free space \n",
+ "epsr=6 # dielectric constant of sodium chloride\n",
+ "\n",
+ "# calculations\n",
+ "p=eps*(epsr-1)*E\n",
+ "\n",
+ "# Result\n",
+ "print(\"Polarisation produced in NaCl is %.3f *10^-5 C.m^-2\"%(p*10**5))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Polarisation produced in NaCl is 2.656 *10^-5 C.m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 54
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.17, page no-470"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Relative permitivity\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "E=1000 # applied electric field\n",
+ "p=4.3*10**-8 # Polarisation \n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "#Calculations\n",
+ "epsr=1+p/(eps*E)\n",
+ "\n",
+ "#Result\n",
+ "print(\"Relative permitivity of NaCl is %.2f\"%epsr)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Relative permitivity of NaCl is 5.86\n"
+ ]
+ }
+ ],
+ "prompt_number": 55
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.18, page no-471"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# voltage across capacitor and electric field strength\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "A=1000*10**-6 # Area of the capacitor plate\n",
+ "d=5*10**-3 # distance between the plate\n",
+ "epsr=4 # relative permitivity of the dielectric\n",
+ "Q=3*10**-10 #charge on the capacitor \n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "# Calculations\n",
+ "c=(eps*epsr*A)/d\n",
+ "v=Q/c\n",
+ "E=v/d\n",
+ "\n",
+ "# Result\n",
+ "print(\"The voltage across capacitor is %.2f V\\nThe electric field strength is %d V/m\"%(v,E))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The voltage across capacitor is 42.35 V\n",
+ "The electric field strength is 8470 V/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 57
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.19, page no-472"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# electronic polarisability\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "epsr=1.0000684 # dielectric constant of the gas at NTP\n",
+ "N=2.7*10**25 # Number of He atoms \n",
+ "eps=8.85*10**-12 # permitivuty of free space\n",
+ "\n",
+ "# calculations\n",
+ "alfe=eps*(epsr-1)/N\n",
+ "\n",
+ "# Result\n",
+ "print(\"The electronic polarisability of He atoms at NTP is %.3f *10^-41 F.m^2\"%(alfe*10**41))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electronic polarisability of He atoms at NTP is 2.242 *10^-41 F.m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 61
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.20, page no-472"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Capacitance and electric field strength\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "A=3*10**-3 # area of the capacitor plate\n",
+ "d=1*10**-3 # distance between the plate\n",
+ "epsr=3.5 # relative permitivity of the dielectric\n",
+ "Q=20*10**-9 # charge on the capacitor\n",
+ "eps=8.85*10**-12 # permitivity of free space\n",
+ "\n",
+ "# calculations\n",
+ "c=eps*epsr*A/d\n",
+ "E=Q/(c*d)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The capacitance of capacitor is %.2f pF\"%(math.ceil(c*10**14)/100))\n",
+ "print(\"The electric field strength is %.2f*10^3 V/m\"%(math.floor(E*10**-1)/100))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The capacitance of capacitor is 92.93 pF\n",
+ "The electric field strength is 215.22*10^3 V/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 71
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.21, page no-473"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# capacitance, stored charge, polarisation and dielectric displacement\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "A=7.45*10**-4 # Area of the capacitor plates\n",
+ "d=2.45*10**-3 # distance between the plates\n",
+ "epsr=6 # relative permitivity of the dielectric \n",
+ "v=10 # applied voltage \n",
+ "eps=8.85*10**-12 # permitivity of free space\n",
+ "\n",
+ "#Calculations\n",
+ "c=eps*epsr*A/d\n",
+ "Q=c*v\n",
+ "E=v/d\n",
+ "p=eps*(epsr-1)*E\n",
+ "D=eps*epsr*E\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\nThe capacitance of the capacitor is %.3f pF\"%(c*10**12))\n",
+ "print(\"\\nCharge stored on capacitor = %.3f *10^-11 C\\n\\nE=%.2f*10^3 V/m\"%(Q*10**11,E*10**-3))\n",
+ "print(\"\\nPolarisation=%.3f*10^-7 C.m^-2\\n\\ndielectric displacement = %.3f*10^-7 C.m^-2\"%(p*10**7,D*10**7))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The capacitance of the capacitor is 16.147 pF\n",
+ "\n",
+ "Charge stored on capacitor = 16.147 *10^-11 C\n",
+ "\n",
+ "E=4.08*10^3 V/m\n",
+ "\n",
+ "Polarisation=1.806*10^-7 C.m^-2\n",
+ "\n",
+ "dielectric displacement = 2.167*10^-7 C.m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 77
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.22, page no-475"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# polarisation produced\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "E=500 # electric field strength\n",
+ "epsr=6 # dielectric constant of sodium cloride\n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "# calculations\n",
+ "p=eps*(epsr-1)*E\n",
+ "\n",
+ "# Result\n",
+ "print(\"The polarisation produced in NaCl is %.3f * 10^-8 C.m^-2\"%(math.ceil(p*10**11)/1000))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The polarisation produced in NaCl is 2.214 * 10^-8 C.m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 91
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.23, page no-475"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# polarisation produced in NaCl\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "E=500 # electric field strength\n",
+ "epsr=15 # dielectric constant of sodium cloride \n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "#calculations\n",
+ "p=eps*(epsr-1)*E\n",
+ "\n",
+ "#Result\n",
+ "print(\"The polarisation produced in NaCl is %.3f * 10^-8 C.m^-2\"%(p*10**8))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The polarisation produced in NaCl is 6.198 * 10^-8 C.m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 92
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.24, page no-475"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Voltage across capacitor\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "A=650*10**-6 # Area of the capacitor plate \n",
+ "d=4 *10**-3 # distance between the plates\n",
+ "epsr=3.5 # relative permitivity of the dielectric\n",
+ "eps=8.85*10**-12 # permitivity of free space \n",
+ "q=2*10**-10 # charge on the capacitor\n",
+ "\n",
+ "# calculations\n",
+ "v=q*d/(eps*epsr*A)\n",
+ "\n",
+ "# Result\n",
+ "print(\"The voltage across capacitor is %.2f V\"%v)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The voltage across capacitor is 39.73 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 97
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.25, page no-476"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# charge on the capacitor\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "A=5*10**-4 # Area of the capacitor plates\n",
+ "d=1.5*10**-3 # Distance between the plates\n",
+ "epsr=6 # Relative permitivity of the dielectric\n",
+ "v=100 # Applied voltage\n",
+ "eps=8.854*10**-12 # permitivity of free space\n",
+ "\n",
+ "#calculation\n",
+ "q=eps*epsr*A*v/d\n",
+ "\n",
+ "#Result\n",
+ "print(\"The charge on the capacitor is %.2f *10^-9 C\"%(q*10**9))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The charge on the capacitor is 1.77 *10^-9 C\n"
+ ]
+ }
+ ],
+ "prompt_number": 98
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 18.26, page no-476"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#dielectric constant\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "d=2.08*10**3 # density of sulphur\n",
+ "wt=32 # atomic weight of sulphur\n",
+ "ep=3.28*10**-40 # electronic polarisability\n",
+ "eps=8.854*10**-15 # permeability of free space\n",
+ "\n",
+ "# Calculations\n",
+ "k=(3*10**28*7*10**-40)/(3*eps)\n",
+ "epsr=2.5812/(1-0.7906)\n",
+ "\n",
+ "# result\n",
+ "print(\"The dielectric constant of the given material is %.3f\"%epsr)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The dielectric constant of the given material is 12.327\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_19.ipynb b/Material_Science/material_science_ch_19.ipynb
new file mode 100755
index 00000000..dda00143
--- /dev/null
+++ b/Material_Science/material_science_ch_19.ipynb
@@ -0,0 +1,526 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Capter 19: Magnetic Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.1, page no-541"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Relative permiability and magnetic force\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "M=2300.0 # Magnetization\n",
+ "B=0.00314 # Flux density\n",
+ "\n",
+ "#Calculation\n",
+ "mu=4*math.pi*10**-7\n",
+ "H=(B/mu)-M\n",
+ "mur=(M/H)+1\n",
+ "\n",
+ "#Result\n",
+ "print('The magnetic force H is %.4f A/m and the relative permeability mu_r is %.5f'%(H,mur))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The magnetic force H is 198.7326 A/m and the relative permeability mu_r is 12.57334\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.2, page no-542"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# magnetisation and flux density\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "H=10**4 # Magnetic field intensity\n",
+ "sus=3.7*10**-3 # Susceptibility\n",
+ "mu=4*math.pi*10**-7 # permeability of free space\n",
+ "\n",
+ "#Calculation\n",
+ "M=sus*H\n",
+ "B=mu*(M+H)\n",
+ "\n",
+ "#Result\n",
+ "print('The magnetisation in the material is %.0f A/m and flux density in the material is %.2f * 10^-2 Wb.m^-2'%(M,B*10**2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The magnetisation in the material is 37 A/m and flux density in the material is 1.26 * 10^-2 Wb.m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.3, page no-542"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Flux density in a material\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "H=10**4 # Magnetic field intensity \n",
+ "sus=-0.8*10**-5 # susceptibility of copper\n",
+ "mu=4*math.pi*10**-7 # permeability of free space\n",
+ "\n",
+ "#Calculations\n",
+ "M=sus*H\n",
+ "B=mu*(M+H)\n",
+ "\n",
+ "#Result\n",
+ "print('The flux density in the material is %.2f * 10^-2 Wb.m^-2'%(B*10**2))\n",
+ "\n",
+ "# Magnetic field intensity: value given in the book is 10^6 but calculations are done with 10^4"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The flux density in the material is 1.26 * 10^-2 Wb.m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.4, page no-543"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Permeability \n",
+ "\n",
+ "import math\n",
+ "# Variable declarations\n",
+ "H=1800.0 # Magnetic field intensity\n",
+ "fi=3*10**-5 # Magnetic flux\n",
+ "A=0.2*10**-4 # Area of cross-section \n",
+ "\n",
+ "#Calculations\n",
+ "B=fi/A\n",
+ "mu=B/H\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe magnetic flux is %.1f Wb/m^2\\nThe permeability is %.3f*10^-4 H/m'%(B,mu*10**4))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The magnetic flux is 1.5 Wb/m^2\n",
+ "The permeability is 8.333*10^-4 H/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.5, page no-544"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Magnetic moment of Nickel\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "B=0.65 # Magnetic inductionof Nickel\n",
+ "r=8906 # Density of Nickel\n",
+ "M=58.7 # Atomic weight\n",
+ "avg=6.023*10**26 # Avogadro's Number\n",
+ "mu=4*math.pi*10**-7 # Permeability of free space\n",
+ "k=9.27*10**-24 # 1 Bohr Magnetron\n",
+ "\n",
+ "#Calculations\n",
+ "N=r*avg/M \n",
+ "mu_m=B/(N*mu)\n",
+ "mu_m=mu_m/k\n",
+ "\n",
+ "#Result\n",
+ "print(\"The magnetic moment of nickel atom is %.2f Bohr magneton\"%mu_m)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The magnetic moment of nickel atom is 0.61 Bohr magneton\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.6, page no-545"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Average magnetization contributed per atom\n",
+ "\n",
+ "import math\n",
+ "# Variable declaration\n",
+ "a=2.5*10**-10 # interatomic spacing\n",
+ "M=1.8*10**6 # MAgnetization\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "\n",
+ "#Calculations\n",
+ "n=2/a**3\n",
+ "m=9.1*10**-31\n",
+ "h=6.625*10**-34\n",
+ "ma=M/n\n",
+ "beta1=e*h/(4*math.pi*m)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The average magnetisation contributed per atom = %.3f Bohr Magneton\"%(ma/beta1))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average magnetisation contributed per atom = 1.517 Bohr Magneton\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.7, page no-545"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Tempoerature using classical statistics\n",
+ "\n",
+ "import math\n",
+ "#Variable declarations\n",
+ "mu=9.4*10**-24 # Permeability \n",
+ "H=2 # MAgnetic field intensity\n",
+ "k=1.38*10**-23 # Bolzmann's constant\n",
+ "\n",
+ "#Calculations\n",
+ "T=2*mu*H/(k*math.log(2))\n",
+ "\n",
+ "#Result\n",
+ "print(\"The temperature of the system T is %.1f K\"%T)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The temperature of the system T is 3.9 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.8, page no-547"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Saturation magnetic field of Gd atom\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "ba=7.1 # Bohr magnetron per atom\n",
+ "aw=1.8*10**6 # Atomic weight of Gd \n",
+ "d=7.8*10**3 # Density of Gd\n",
+ "avg=6.023*10**26 # Avogadro's Number\n",
+ "M=157.26 # Atomic number of Gd\n",
+ "k=9.27*10**-24 # 1 Bohr magnetron\n",
+ "mu=4*math.pi*10**-7 # permeability of free space\n",
+ "\n",
+ "\n",
+ "#Calculations\n",
+ "N=d*avg/M\n",
+ "mm=N*ba*k\n",
+ "B=N*mu*k*7.1\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe saturation magnetic field of Gd atom is %.2f Wb/m^2\"%B)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The saturation magnetic field of Gd atom is 2.47 Wb/m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 48
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.9, page no-547"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#saturation magnetisation\n",
+ "\n",
+ "import math\n",
+ "# variable ddeclaration\n",
+ "bet=9.27*10**-24 # 1 Bohr magnetron\n",
+ "V=0.839*10**-9 # unit cell edge length\n",
+ "\n",
+ "#Calculations\n",
+ "M=32*bet/V**3\n",
+ "\n",
+ "#Result\n",
+ "print(\"The saturation magnetisation is %.3f *10^5 A/m\"%(M*10**-5))\n",
+ "# Answer in the book is given as 5.023 x 10^-5"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The saturation magnetisation is 5.023 *10^5 A/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 55
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.10, page no-548"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Saturation flux density\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "d=8900 # Density of Ni\n",
+ "wt=58.71 # Atomic weight\n",
+ "avg=6.022*10**26 # Avogadro's Number\n",
+ "bet=9.27*10**-24 # 1 Bohr magnetron\n",
+ "mu=4*math.pi*10**-7 # permeability of free space\n",
+ "\n",
+ "#Calculations\n",
+ "mm=0.6*bet\n",
+ "N=d*avg/wt\n",
+ "ms=mm*N\n",
+ "bs=mu*ms\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe saturation magnetisation is %.3f *10^5 A/m\\nThe saturation flux density is %.3f Wb/m^2\"%(ms*10**-5,bs))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The saturation magnetisation is 5.077 *10^5 A/m\n",
+ "The saturation flux density is 0.638 Wb/m^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 57
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.11, page no-548"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Saturation magnetisation of gadolinium\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "awt=157.25 # Atomic weight\n",
+ "an=64 # Atomic number\n",
+ "d=7860 # density\n",
+ "k=9.27*10**-24 # 1 Bohr magnetron\n",
+ "avg=6.023*10**26 # avogadro's Number\n",
+ "\n",
+ "#Calculations\n",
+ "N=d*8*k*avg/awt\n",
+ "\n",
+ "# Result\n",
+ "print(\"The saturation magnetisation of gadolinium is %.2f*10^6 A/m\"%(N*10**-6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The saturation magnetisation of gadolinium is 2.23*10^6 A/m\n"
+ ]
+ }
+ ],
+ "prompt_number": 58
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 19.12, page no-549"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Magnetic flux density inside the material\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "H=1000 # Magnetic field strength\n",
+ "sus=-0.3*10**-5 # magnetic susceptibility\n",
+ "mu=4*math.pi*10**-7 # permeability of free space\n",
+ "\n",
+ "#calculation\n",
+ "M=sus*H\n",
+ "B=mu*(M+H)\n",
+ "B=math.floor(B*10**6)/10**6\n",
+ "\n",
+ "#Result\n",
+ "print(\"The magnetic flux density inside the material is %.3f T or Wb.m^-2\"%(B*10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The magnetic flux density inside the material is 1.256 T or Wb.m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 67
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_2.ipynb b/Material_Science/material_science_ch_2.ipynb
new file mode 100755
index 00000000..da9f1e90
--- /dev/null
+++ b/Material_Science/material_science_ch_2.ipynb
@@ -0,0 +1,1395 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2: Crystal Structure"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.2, page no-30"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Lattice spacing from Miller indices\n",
+ "\n",
+ "import math\n",
+ "# Intercepts are in the ratio 3a:4b along X,Y and parallel to Z axis\n",
+ "# x-intercept 3, y-intercept 4 and z-intercept infinity \n",
+ "\n",
+ "#variable declaration\n",
+ "a=2.0*10**-10 # 2 Angstrom\n",
+ "h=4.0 # Miller indices wrt X-axis\n",
+ "k=3.0 # Miller indices wrt Y-axis\n",
+ "l=0.0 # Miller indices wrt Z-axis\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#result\n",
+ "print('The lattice spacing for the plane (%d%d%d) is %.1f*10^-10 m'%(h,k,l,d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The lattice spacing for the plane (430) is 0.4*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.3, page no-31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lattice constant of Sodium\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "d=9.6*10**2 # Density of sodium in kg/m^3\n",
+ "awt=23 # Atomic weight of sodium\n",
+ "n=2 # No of sodium atoms present in one unit cell\n",
+ "avg=6.023*10**26 # Avogadro number\n",
+ "\n",
+ "\n",
+ "#calculation\n",
+ "m=n*awt/avg\n",
+ "a=(m/d)**(1.0/3.0)\n",
+ "\n",
+ "#Result\n",
+ "print('The lattice constant of sodium is %.1f A\u00b0'%(a*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The lattice constant of sodium is 4.3 A\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.4, page no-31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Avogadro Constant \n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "d=4.0*10**3 # Density of CsCl in kg/m^3\n",
+ "awtcs=132.9 # Atomic weigt of Cs \n",
+ "awtcl=35.5 # Atomic weigt of Cl\n",
+ "a=4.12*10**-10 # Lattice constant\n",
+ "\n",
+ "#Calculations\n",
+ "m=d*a**3\n",
+ "N=(awtcs+awtcl)/m\n",
+ "\n",
+ "#Result\n",
+ "print('The value of Avogadro Constant %.4f *10^26 per kg mole'%(N*10**-26))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The value of Avogadro Constant 6.0199 *10^26 per kg mole\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.5, page no-31"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Interatomic spacing\n",
+ "\n",
+ "import math \n",
+ "#variable declaration\n",
+ "lam=1.5418*10**-10 # Wavelength of X-rays\n",
+ "theta=30.0 # Angle of diffracted angle\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=1.0 # Miller indices wrt Y-axis\n",
+ "l=1.0 # Miller indices wrt Z-axis\n",
+ "\n",
+ "#Calculation\n",
+ "a=lam*math.sqrt(h**2+k**2+l**2)/(2*math.sin(theta*math.pi/180))\n",
+ "\n",
+ "#Result\n",
+ "print('The lattice constant is %.4f *10^-10 m'%(a*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The lattice constant is 2.6705 *10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.6, page no-33"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lattice spacing in a rock salt\n",
+ "\n",
+ "import math\n",
+ "#variable cdeclaration\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=0.0 # Miller indices wrt Y-axis\n",
+ "l=0.0 # Miller indices wrt Z-axis\n",
+ "a=2.814*10**-10 # interatomic spacing\n",
+ "\n",
+ "#calculations\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('The lattice spacing for the plane(%d%d%d) is %.3f*10^-10 m'%(h,k,l,d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The lattice spacing for the plane(100) is 2.814*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.7, page no-33"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lattice spacing from Miller indices\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h=3.0 # Miller indices wrt X-axis\n",
+ "k=2.0 # Miller indices wrt Y-axis\n",
+ "l=1.0 # Miller indices wrt Z-axis\n",
+ "a=4.12*10**-10 # interatomic spacing\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#result\n",
+ "print('The lattice spacing for the plane(%d%d%d) is %.4f*10^-10 m'%(h,k,l,d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The lattice spacing for the plane(321) is 1.1011*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.8, page no-34"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lattice spacing from Miller indices\n",
+ "\n",
+ "import math\n",
+ "#(i)\n",
+ "#variable declaration\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=0.0 # Miller indices wrt Y-axis\n",
+ "l=1.0 # Miller indices wrt Z-axis\n",
+ "a=4.2*10**-10 # lattice constant\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe lattice spacing for the plane(%d%d%d) is %.4f*10^-10 m'%(h,k,l,d*10**10))\n",
+ "\n",
+ "#(ii)\n",
+ "#variable declaration\n",
+ "h=2 # Miller indices wrt X-axis\n",
+ "k=2 # Miller indices wrt Y-axis\n",
+ "l=1 # Miller indices wrt Z-axis\n",
+ "a=4.12*10**-10 # Lattice constant \n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe lattice spacing for the plane(%d%d%d) is %.1f*10^-10 m'%(h,k,l,d*10**10))\n",
+ "\n",
+ "#Answer in the book for plane(101) is wrong"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The lattice spacing for the plane(101) is 2.9698*10^-10 m\n",
+ "\n",
+ "The lattice spacing for the plane(221) is 1.4*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.13, page no-37"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lattice spacing from Miller indices\n",
+ "\n",
+ "import math\n",
+ "\n",
+ "#(i)\n",
+ "#variable declaration\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=1.0 # Miller indices wrt Y-axis\n",
+ "l=1.0 # Miller indices wrt Z-axis\n",
+ "a=4.12*10**-10 # lattice Constant\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nFor (%d%d%d) plane\\nThe lattice spacing is %.4f*10^-10 m'%(h,k,l,d*10**10))\n",
+ "\n",
+ "#(ii)\n",
+ "\n",
+ "#variable declaration\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=1.0 # Miller indices wrt Y-axis\n",
+ "l=2.0 # Miller indices wrt Z-axis\n",
+ "a=4.12*10**-10 # Lattice Constant\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\n\\nFor (%d%d%d) plane\\nThe lattice spacing is %.4f*10^-10 m'%(h,k,l,d*10**10))\n",
+ "\n",
+ "\n",
+ "#(iii)\n",
+ "\n",
+ "#variable declaration\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=2.0 # Miller indices wrt Y-axis \n",
+ "l=3.0 # Miller indices wrt Z-axis\n",
+ "a=4.12*10**-10 # Lattice Constant\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\n\\nFor (%d%d%d) plane\\nThe lattice spacing is %.4f*10^-10 m'%(h,k,l,d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "For (111) plane\n",
+ "The lattice spacing is 2.3787*10^-10 m\n",
+ "\n",
+ "\n",
+ "For (112) plane\n",
+ "The lattice spacing is 1.6820*10^-10 m\n",
+ "\n",
+ "\n",
+ "For (123) plane\n",
+ "The lattice spacing is 1.1011*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.15, page no-38"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Lattice spacing from Miller indice\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h=2.0 # Miller indices wrt X-axis\n",
+ "k=2.0 # Miller indices wrt Y-axis \n",
+ "l=0.0 # Miller indices wrt Z-axis\n",
+ "a=4.938*10**-10 # Lattice Constant\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe lattice spacing for (%d%d%d) plane is %.4f*10^-10 m'%(h,k,l,d*10**10))\n",
+ "\n",
+ "#Note: Final answer in the book is as follow:\n",
+ "# The lattice spacing for the plane (110) is 2.968 x 10^-10 m "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The lattice spacing for (220) plane is 1.7458*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.16, page no-39"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Number of atoms in Al foil\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "a=0.405*10**-10 # lattice constant\n",
+ "t=0.005 # thickness of Al foil\n",
+ "A=25*10**-2 # side length of Al foil\n",
+ "\n",
+ "#calculation\n",
+ "n=t*A/a**3\n",
+ "\n",
+ "#Result\n",
+ "print('The number of atoms in the Al foil is %.2f * 10^28'%(n*10**-28))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of atoms in the Al foil is 1.88 * 10^28\n"
+ ]
+ }
+ ],
+ "prompt_number": 20
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.17, page no-39"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#no of unit cells in 1 kg metal\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "a=2.88*10**-10 # lattice constant\n",
+ "d=7200.0 # Density of metal in k/m^3\n",
+ "\n",
+ "#calculation\n",
+ "n=1/(d*a**3)\n",
+ "\n",
+ "#Result\n",
+ "print('The number of unit cells present in 1 kg metal is %.4f *10^24'%(n*10**-24))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of unit cells present in 1 kg metal is 5.8142 *10^24\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.18, page no-39"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#percentage volume change during structural changes\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "rbcc=0.1258*10**-9 # Atomic radius at bcc state\n",
+ "rfcc=0.1292*10**-9 # Atomic radius at fcc state\n",
+ "\n",
+ "#calculation\n",
+ "a=4*rbcc/math.sqrt(3)\n",
+ "vbcc=(a**3)/2\n",
+ "a1=4*rfcc/math.sqrt(2)\n",
+ "vfcc=(a1**3)/4\n",
+ "vp=(vbcc-vfcc)\n",
+ "vp=math.floor(vp*10**32)\n",
+ "vp=vp*10**-32/vbcc\n",
+ "\n",
+ "#Result\n",
+ "print('The volume change in %% duringg the structural change is %.4f'%(vp*100))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The volume change in % duringg the structural change is 0.4894\n"
+ ]
+ }
+ ],
+ "prompt_number": 22
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.19, page no-40"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Copper Density\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "awt=63.5*10**-3 # Atomic weight of copper\n",
+ "avg=6.023*10**26 # Avagadro No. \n",
+ "r=1.273*10**-10 # Atomic radius for fcc system\n",
+ "n=4.0 # No of atoms per unit cell for fcc\n",
+ "\n",
+ "#calculation\n",
+ "a=4*r/math.sqrt(2)\n",
+ "a= math.floor(a*10**11)/10**11\n",
+ "d=n*awt/(avg*a**3)\n",
+ "\n",
+ "#Result\n",
+ "print('The density of copper is %.5f gm/m^3'%d)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The density of copper is 9.03885 gm/m^3\n"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.20, page no-41"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Atomic Radius\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "d=7860.0 # Density of alfa-iron\n",
+ "m=55.85 # atomic weight of alfa-iron\n",
+ "n=2.0 # No of atoms per unit cell for Bcc\n",
+ "avg=6.023*10**26 # Avoigadro's Number\n",
+ "\n",
+ "#calculation\n",
+ "a=(n*m*10**-3/(avg*d))**(1.0/3.0)\n",
+ "r=a*math.sqrt(3)/4.0\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe lattice constant of alfa-iron is %.4f A\u00b0'%(a*10**10))\n",
+ "print('\\nThe atomic radius of alfa-iron is %.5f *10^-10 m'%(r*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The lattice constant of alfa-iron is 0.2868 A\u00b0\n",
+ "\n",
+ "The atomic radius of alfa-iron is 0.12420 *10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.21, page no-42"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lattice constant\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "d=8960.0 # Density of copper\n",
+ "m=63.54 # Atomic weight of copper\n",
+ "n=4.0 # No of atoms per unit cell for Fcc\n",
+ "avg=6.023*10**26 # Avogadro's number\n",
+ "\n",
+ "#calculation\n",
+ "a=(n*m*10**-3/(avg*d))**(1.0/3.0)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe lattice constant of copper is %.4f A\u00b0'%(a*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The lattice constant of copper is 0.3611 A\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.22, page no-42"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Glancing angle \n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "a=3.81*10**-10 # lattice spacing\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=3.0 # Miller indices wrt Y-axis\n",
+ "l=2.0 # Miller indices wrt Z-axis\n",
+ "lam=0.58*10**-10 # Wavelength of X-rays\n",
+ "n=2.0 # order of diffraction\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "theta=math.asin(n*lam/(2*d))\n",
+ "\n",
+ "#Result\n",
+ "print('The angle of glancing at which 2nd order diffraction pattern of NaCl occurs is %.2f\u00b0'%(theta*180/math.pi))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The angle of glancing at which 2nd order diffraction pattern of NaCl occurs is 34.72\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 40
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.23, page no-43"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Lattice constant\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h=3.0 # Miller indices wrt X-axis \n",
+ "k=0.0 # Miller indices wrt Y-axis \n",
+ "l=2.0 # Miller indices wrt Z-axis \n",
+ "theta=35 # glancing angle\n",
+ "lam=0.7*10**-10 # wavelength of X-rays \n",
+ "n=1.0 # order of diffraction\n",
+ "\n",
+ "#calculations\n",
+ "d=n*lam/(2*math.sin(theta*math.pi/180))\n",
+ "a=d*math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe interplanar distance for(302) plane is %.3f*10^-11 m'%(d*10**11))\n",
+ "print('\\nThe lattice constance is %.2f*10^-10 m'%(a*10**10))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The interplanar distance for(302) plane is 6.102*10^-11 m\n",
+ "\n",
+ "The lattice constance is 2.20*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 41
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.24, page no-44"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "For plane (0 0 1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Plane drawing 1\n",
+ "\n",
+ "from mpl_toolkits.mplot3d import Axes3D\n",
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "\n",
+ "point = np.array([0, 0, 1])\n",
+ "normal = np.array([0, 0, 1])\n",
+ "\n",
+ "# calculations\n",
+ "d = -point.dot(normal)\n",
+ "x, y = np.meshgrid(range(10), range(10)) # create x,y\n",
+ "z = (-normal[0] * x - normal[1] * y - d) * 1. / normal[2] # calculate corresponding z\n",
+ "\n",
+ "# Result\n",
+ "plt3d = plt.figure().gca(projection='3d')\n",
+ "plt3d.plot_surface(x, y, z, rstride=1, cstride=1)\n",
+ "plt.show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n3AAAAABJRU5ErkJggg==\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0xa2a3780>"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "For plane(1 0 1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Plane drawing 2\n",
+ "\n",
+ "from mpl_toolkits.mplot3d import Axes3D\n",
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "\n",
+ "point = np.array([1, 0, 1])\n",
+ "normal = np.array([1, 0, 1])\n",
+ "\n",
+ "# calculations\n",
+ "d = -point.dot(normal)\n",
+ "x, y = np.meshgrid(range(10), range(10)) # create x,y\n",
+ "z = (-normal[0] * x - normal[1] * y - d) * 1. / normal[2] # calculate corresponding z\n",
+ "\n",
+ "# Result\n",
+ "plt3d = plt.figure().gca(projection='3d')\n",
+ "plt3d.plot_surface(x, y, z, rstride=1, cstride=1)\n",
+ "plt.show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0xaf62438>"
+ ]
+ }
+ ],
+ "prompt_number": 32
+ },
+ {
+ "cell_type": "heading",
+ "level": 3,
+ "metadata": {},
+ "source": [
+ "For plane(1 1 1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Plane drawing 3\n",
+ "\n",
+ "from mpl_toolkits.mplot3d import Axes3D\n",
+ "import numpy as np\n",
+ "import matplotlib.pyplot as plt\n",
+ "\n",
+ "point = np.array([1, 1, 1])\n",
+ "normal = np.array([1, 1, 1])\n",
+ "\n",
+ "# calculations\n",
+ "d = -point.dot(normal)\n",
+ "x, y = np.meshgrid(range(10), range(10)) # create x,y\n",
+ "z = (-normal[0] * x - normal[1] * y - d) * 1. / normal[2] # calculate corresponding z\n",
+ "\n",
+ "# Result\n",
+ "plt3d = plt.figure().gca(projection='3d')\n",
+ "plt3d.plot_surface(x, y, z, rstride=1, cstride=1)\n",
+ "plt.show()"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "metadata": {},
+ "output_type": "display_data",
+ "png": "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\n",
+ "text": [
+ "<matplotlib.figure.Figure at 0xad8ab00>"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.25, page no-45"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# InterPlanar Spacing\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "theta=12 # glancing angle\n",
+ "lam=2.82*10**-10 # interplanar spacing\n",
+ "n=1.0 # order of diffraction\n",
+ "\n",
+ "#Calculation\n",
+ "d=n*lam/(2*math.sin(theta*math.pi/180))\n",
+ "\n",
+ "#Result\n",
+ "print('The interplanar spacing is %.3f *10^-10 m'%(d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The interplanar spacing is 6.782 *10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 42
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.26, page no-46"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Lattice spacing and deBroglie wavelength\n",
+ "\n",
+ "import math\n",
+ "#variable Declaration\n",
+ "theta=27.5/2 # glancing angle \n",
+ "a=0.563*10**-9 # lattice constant\n",
+ "n=1.0 # order of diffraction\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=1.0 # Miller indices wrt Y-axis\n",
+ "l=1.0 # Miller indices wrt Z-axis\n",
+ "\n",
+ "#calaculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "lam=2*d*math.sin(theta*math.pi/180)/n\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe lattice spacing for the plane (111) is %.2f * 10^-10 m'%(d*10**10))\n",
+ "print('\\nThe deBroglie wavelength of the neutrons is %.3f *10^-10 m'%(lam*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The lattice spacing for the plane (111) is 3.25 * 10^-10 m\n",
+ "\n",
+ "The deBroglie wavelength of the neutrons is 1.545 *10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 45
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.27, page no-46"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Lattice constant and atomic radius\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=1.0 # Miller indices wrt Y-axis\n",
+ "l=0.0 # Miller indices wrt Z-axis\n",
+ "d=2*10**-10 #interplanar spacing\n",
+ "\n",
+ "#Calculation\n",
+ "a=d*math.sqrt(h**2+k**2+l**2)\n",
+ "R=a/(2*math.sqrt(2))\n",
+ "\n",
+ "#Result\n",
+ "print('The lattice constant is %.3f*10^-10 m\\nThe atomic radius of the crystal is %.1f *10^-10 m'%(a*10**10,R*10**10))\n",
+ "\n",
+ "#Answer in the book for lattice constant is wrong"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The lattice constant is 2.828*10^-10 m\n",
+ "The atomic radius of the crystal is 1.0 *10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 46
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.28, page no-47"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#energy of the neutron\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "theta=22 # glancing angle\n",
+ "d=1.8*10**-10 # interplanar spacing\n",
+ "n=1.0 # order of diffraction\n",
+ "h=6.626*10**-34 # planck's constant\n",
+ "m=9.11*10**-31 # mass of an atom kg\n",
+ "e=1.609*10**-19 # Charge of an electron\n",
+ "\n",
+ "#calculations\n",
+ "lam=2*d*math.sin(theta*math.pi/180)/n\n",
+ "lam= math.ceil(lam*10**13)/10**13\n",
+ "E=(1/(2*m))*(h/lam)**(2)\n",
+ "\n",
+ "#result\n",
+ "print('\\nThe deBroglie wavelength of the neutron is %.3f *10^-10\\nthe energy of the neutron is %.3f eV'%(lam*10**10,E/e))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The deBroglie wavelength of the neutron is 1.349 *10^-10\n",
+ "the energy of the neutron is 82.295 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 53
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.29, page no-48"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# InterPlanar Spacing\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=1.0 # Miller indices wrt Y-axis\n",
+ "l=1.0 # Miller indices wrt Z-axis\n",
+ "a=3*10**-10 # lattice spacing\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe interplanar spacing for the plane(%d%d%d) is %.3f*10^-10 m'%(h,k,l,d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The interplanar spacing for the plane(111) is 1.732*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 54
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.30, page no-48"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Lattice spacing from Miller indices \n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h=3.0 # Miller indices wrt X-axis\n",
+ "k=2.0 # Miller indices wrt Y-axis\n",
+ "l=1.0 # Miller indices wrt Z-axis \n",
+ "rfcc=0.1278*10**-9 # Atomic radius at Fcc State\n",
+ "\n",
+ "#calculation\n",
+ "a=4*rfcc/math.sqrt(2)\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe lattice constant = %.3f *10^-10\\nThe interplanar spacing for the plane(%d%d%d) is %.2f*10^-11 m'%(a*10**10,h,k,l,d*10**11))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The lattice constant = 3.615 *10^-10\n",
+ "The interplanar spacing for the plane(321) is 9.66*10^-11 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 56
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.31, page no-49"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Number of atoms in Al foil\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "a=0.4049*10**-10 # lattice constant\n",
+ "t=0.005 # thickness of the coil\n",
+ "A=25*10**-2 # Area of the foil\n",
+ "\n",
+ "#calculation\n",
+ "n=t*A/a**3\n",
+ "\n",
+ "#Result\n",
+ "print('The number of atoms in the Al foil is %.2f * 10^28'%(n*10**-28))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of atoms in the Al foil is 1.88 * 10^28\n"
+ ]
+ }
+ ],
+ "prompt_number": 57
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.32, page no-49"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# energy of the neutron\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "theta=20 # glancing angle\n",
+ "d=2*10**-10 # interplanar spacing\n",
+ "n=1.0 # order of diffraction\n",
+ "h=6.626*10**-34 # planck's constant\n",
+ "m=1.67*10**-27 # mass of an atom\n",
+ "e=1.609*10**-19 # charge of an electron\n",
+ "\n",
+ "#Calculation\n",
+ "lam=2*d*math.sin(theta*math.pi/180)/n\n",
+ "E=(1/(2*m))*(h/lam)**(2)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe deBroglie wavelength of the neutron is %.3f *10^-10\\nthe energy of the neutron is %.5f eV'%(lam*10**10,E/e))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The deBroglie wavelength of the neutron is 1.368 *10^-10\n",
+ "the energy of the neutron is 0.04365 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 63
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.35, page no-51"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# deBroglie wavelength of electrons\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "e=1.602*10**-19 # charge of an electron\n",
+ "h=6.626*10**-34 # planck's constant\n",
+ "m=9.11*10**-31 # mass of an electron\n",
+ "ek=235.2*e # kinetic energy\n",
+ "n=1.0 # order of diffraction\n",
+ "theta=9.21 # glancing angle\n",
+ "\n",
+ "#Calculation\n",
+ "lam=h/math.sqrt(2*m*ek)\n",
+ "d=n*lam/(2*math.sin(theta*math.pi/180))\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe deBroglie wavelength of electron is %.3f *10^-11 m\\nThe interplanar spacing is %.3f *10^-10 m'%(lam*10**11,d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The deBroglie wavelength of electron is 7.997 *10^-11 m\n",
+ "The interplanar spacing is 2.498 *10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 64
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.36, page no-52"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Lattice spacing from Miller indices\n",
+ "\n",
+ "import math\n",
+ "# Intercepts are in the ratio 3a:4b along X,Y and parallel to Z axis\n",
+ "# x-intercept 3, y-intercept 4 and z-intercept infinity \n",
+ "\n",
+ "#variable declaration\n",
+ "a=2.0*10**-10 # 2 Angstrom\n",
+ "h=4.0 # Miller indices wrt X-axis\n",
+ "k=3.0 # Miller indices wrt Y-axis\n",
+ "l=0.0 # Miller indices wrt Z-axis\n",
+ "\n",
+ "#calculation\n",
+ "d=a/math.sqrt(h**2+k**2+l**2)\n",
+ "\n",
+ "#result\n",
+ "print('The lattice spacing for the plane (%d%d%d) is %.1f*10^-10 m'%(h,k,l,d*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The lattice spacing for the plane (430) is 0.4*10^-10 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 65
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.38, page no-53"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Plane Drawing\n",
+ "print('Same as example 2.24 of the same chapter')"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Same as example 2.24 of the same chapter\n"
+ ]
+ }
+ ],
+ "prompt_number": 35
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_20.ipynb b/Material_Science/material_science_ch_20.ipynb
new file mode 100755
index 00000000..e8399c64
--- /dev/null
+++ b/Material_Science/material_science_ch_20.ipynb
@@ -0,0 +1,141 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 20: Super Conducting Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20.2, page no-568"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Critical field\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h0=0.0306 # critical field\n",
+ "t1=2.0 # Temperature \n",
+ "t2=3.7 # Temperature corresponds to h0\n",
+ "\n",
+ "#calculation\n",
+ "he=h0*(1-((t1**2)/t2**2))\n",
+ "\n",
+ "#Result\n",
+ "print(\"The critical field at %d K is %.5f T\"%(t1,he))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The critical field at 2 K is 0.02166 T\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20.3, page no-569"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Critical current for a wire\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "t1=4.2 # Temperature \n",
+ "t2=7.18 # critical Temperature\n",
+ "h0=6.5*10**4 # critical magnetic field\n",
+ "\n",
+ "#calculations\n",
+ "he=h0*(1-((t1**2)/t2**2)) \n",
+ "r=0.5*10**-3\n",
+ "I=2*3.14*he*r\n",
+ "\n",
+ "#Result\n",
+ "print(\"The critical current through a wire of lead is %.2f A\"%I)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The critical current through a wire of lead is 134.26 A\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 20.4, page no-570"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#critical temperature\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "tc1=4.185 # Critical temperature of lead\n",
+ "m1=199.5 # isotopic mass 1\n",
+ "m2=203.4 # isotopic mass 2\n",
+ "\n",
+ "#calculation\n",
+ "tc2=tc1* math.sqrt(m1/m2)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The critical temperature for metal with isotopic mass of %.1f is %.3f K\"%(m2,tc2))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The critical temperature for metal with isotopic mass of 203.4 is 4.145 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_23.ipynb b/Material_Science/material_science_ch_23.ipynb
new file mode 100755
index 00000000..eaf63439
--- /dev/null
+++ b/Material_Science/material_science_ch_23.ipynb
@@ -0,0 +1,113 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 23: Polymer Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 23.1, page no-625"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Sulphur required for final rubber product\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "p_wt=500 # weight of final rubber product\n",
+ "w1= 32.0 # atomic weight of sulphur\n",
+ "w2= 54.0 # weight of monomer unit\n",
+ "\n",
+ "#Calculation\n",
+ "s_req=w1/(w1+w2)\n",
+ "s_req= math.floor(s_req*100)/100\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print('Therefore, sulphur required for %d *10^3 kg of final rubber product = %d * 10^-3 kg'%(p_wt,s_req*p_wt))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Therefore, sulphur required for 500 *10^3 kg of final rubber product = 185 * 10^-3 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 23.2, page no-625"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Photon energy to break C C bond\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "E=370*10**3 # energy of c-c bond j/mol\n",
+ "lam=3200*10**-10 # wavelength of UV light\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "c=3*10**8 # speed of light\n",
+ "\n",
+ "#Calculation\n",
+ "E1=h*c/lam\n",
+ "Ec=E/(6.02*10**23)\n",
+ "\n",
+ "#Result\n",
+ "print('\\nE=%.1f*10^-19 J'%(E1*10**19))\n",
+ "print('\\nThe Energy of c-c Bond = %.1f * 10^-19'%(Ec*10**19))\n",
+ "print('\\n\\nThe UV light photon energy is sufficient to break a C-C bond.\\nTherefore, the polymer deteriorates under the influence of UV light')"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "E=6.2*10^-19 J\n",
+ "\n",
+ "The Energy of c-c Bond = 6.1 * 10^-19\n",
+ "\n",
+ "\n",
+ "The UV light photon energy is sufficient to break a C-C bond.\n",
+ "Therefore, the polymer deteriorates under the influence of UV light\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_3.ipynb b/Material_Science/material_science_ch_3.ipynb
new file mode 100755
index 00000000..d35a7360
--- /dev/null
+++ b/Material_Science/material_science_ch_3.ipynb
@@ -0,0 +1,361 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 3: Characterisation of material"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.1, page no-89"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# wavelength and frequency of X-rays\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "c=3.0*10**8 # speed of light\n",
+ "v=10000.0 # Applied potential difference\n",
+ "\n",
+ "#Calculation\n",
+ "lam_min=(h*c)/(e*v)\n",
+ "V=c/lam_min\n",
+ "\n",
+ "#Result\n",
+ "print('\\n(i)\\nThe wavelength of X-rays emitted Lamda_min = %.2f A\u00b0\\n(ii)\\nThe frequency of X-ray beam emitted is %.1f*10^18 Hz'%(lam_min*10**10,V*10**-18))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "(i)\n",
+ "The wavelength of X-rays emitted Lamda_min = 1.24 A\u00b0\n",
+ "(ii)\n",
+ "The frequency of X-ray beam emitted is 2.4*10^18 Hz\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.2, page no-89"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# wavelength and velocity of electrons\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "\n",
+ "v=10000.0 # Applied potential difference\n",
+ "i=2*10**-3 # Current\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "t=1.0 # time in second\n",
+ "m=9.1*10**-31 # mass of an electrons\n",
+ "\n",
+ "#(i)\n",
+ "\n",
+ "#Calculation\n",
+ "n=i*t/e\n",
+ "\n",
+ "#Result\n",
+ "print('The no of electrons striking the target per second =%.2f *10^16'%(n*10**-16))\n",
+ "\n",
+ "#(ii)\n",
+ "\n",
+ "#Calculation\n",
+ "v1=math.sqrt(2*e*v/m)\n",
+ "\n",
+ "#(iii)\n",
+ "\n",
+ "#Calculation\n",
+ "lam=12400.0/v\n",
+ "\n",
+ "#Result\n",
+ "print('\\n(ii)\\nThe velocity of electron =%.2f*10^7 m/s\\n(iii)\\nWavelength of x-rays=%.2f A\u00b0'%(v1*10**-7,lam))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The no of electrons striking the target per second =1.25 *10^16\n",
+ "\n",
+ "(ii)\n",
+ "The velocity of electron =5.93*10^7 m/s\n",
+ "(iii)\n",
+ "Wavelength of x-rays=1.24 A\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.3, page no-90"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# wavelength and angle for 2nd order bragg reflection\n",
+ "\n",
+ "import math\n",
+ "#variable Declaration\n",
+ "d=5.6534*10**-10 # interplanar spacing\n",
+ "theta=13.6666 # glancing angle\n",
+ "n=1.0 # order of diffraction\n",
+ "\n",
+ "#(i)\n",
+ "#Calculation\n",
+ "lam=2*d*math.sin(theta*math.pi/180)/n\n",
+ "\n",
+ "#Result \n",
+ "print('\\n(i)\\nWavelength of the X-rays, Lambda =%.3f*10^-10 m'%(lam*10**10))\n",
+ "\n",
+ "#(ii)\n",
+ "#calculation\n",
+ "n=2.0\n",
+ "theta=math.asin(n*lam/(2*d))\n",
+ "theta=theta*180/math.pi\n",
+ "\n",
+ "#Result\n",
+ "print('\\n(ii)\\n2nd order Bragg reflection at angle Theta2 = %f\u00b0'%theta)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "(i)\n",
+ "Lambda =2.671*10^-10 m\n",
+ "\n",
+ "(ii)\n",
+ "2nd order Bragg reflection at angle Theta2 = 28.199528\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.4, page no-91"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Grating spacing and glancing angle\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "v=24800.0 # Applied potential difference\n",
+ "n=1.0 # order of diffraction\n",
+ "lam=1.54*10**-10 # wavelength of the X-ray beam\n",
+ "ga=15.8 # glancing angle\n",
+ "\n",
+ "#(i)\n",
+ "\n",
+ "#calculation\n",
+ "d=n*lam/(2*math.sin(ga*math.pi/180))\n",
+ "\n",
+ "#Result\n",
+ "print('\\n(i)\\nGrating spacing for NaCl crystal =%.3f *10^-10 m'%(d*10**10))\n",
+ "\n",
+ "#(ii)\n",
+ "\n",
+ "#calculation\n",
+ "lam_min=12400.0/v\n",
+ "lam_min=lam_min*10**-10\n",
+ "theta=math.asin(n*lam_min/(2*d))\n",
+ "theta=theta*180/math.pi\n",
+ "\n",
+ "#Result\n",
+ "print('\\n(ii)\\nGlancing angle for minimum wavelength = %.3f degrees'%theta)\n",
+ "# Glancing angle in the book is in the degree second format"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "(i)\n",
+ "Grating spacing for NaCl crystal =2.828 *10^-10 m\n",
+ "\n",
+ "(ii)\n",
+ "Glancing angle for minimum wavelength = 5.072 degrees\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.5, page no-92"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# wavelength of radiation\n",
+ "\n",
+ "import math\n",
+ "#variable Declaration\n",
+ "lam=0.7078 *10**-10 # wavelength of Ka line from molybdenum\n",
+ "wt=42.0 # Atomic number of molybdenum\n",
+ "wt1=48.0 # Atomic number of cadmium\n",
+ "\n",
+ "#calculation\n",
+ "lam1=(lam*(wt-1)**2)/(wt1-1)**2\n",
+ "\n",
+ "#Result\n",
+ "print('\\nWavelength of cadmium radiation is %.4f A\u00b0'%(lam1*10**10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Wavelength of cadmium radiation is 0.5386 A\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.6, page no-92"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Energy of thermal neutron\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "lam=10.0**-10 # Wavelength of neutron\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "m=1.675*10**-27 # mass of an electron\n",
+ "e1=1.602*10**-19 # charge of an electron\n",
+ "\n",
+ "#calculation\n",
+ "e=(h**2)/(2*m*lam**2)\n",
+ "e=e/e1\n",
+ "\n",
+ "#Result\n",
+ "print('\\nThe energy of thermal neutron with wavelength 1 A\u00b0 is %.2f eV'%e)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The energy of thermal neutron with wavelength 1A\u00b0 is 0.08 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.8, page no-94"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# effect of temperature on wavelength\n",
+ "\n",
+ "import math\n",
+ "#Variable Declaration\n",
+ "lam=0.1 # Wavelength of neutron in nm\n",
+ "\n",
+ "#calculation\n",
+ "T=(2.516**2)/(lam)**2\n",
+ "\n",
+ "#Result\n",
+ "print('Temperature of thermal neutron corresponding to 1 A\u00b0 is %.0f K'%T)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature of thermal neutron corresponding to 1 A\u00b0 is 633 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_4.ipynb b/Material_Science/material_science_ch_4.ipynb
new file mode 100755
index 00000000..779ecefd
--- /dev/null
+++ b/Material_Science/material_science_ch_4.ipynb
@@ -0,0 +1,61 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 4: Cohesion between atoms"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.1, page no-92"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Coulomb interatomic energy\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "R=2.81*10**-10 # distance between oppositely charged ion\n",
+ "e=1.6*10**-19 # Charge of an electron\n",
+ "eps=8.854*10**-12 # epsilon\n",
+ "\n",
+ "#calculation\n",
+ "U=-(e**2)/(4*math.pi*eps*R)\n",
+ "\n",
+ "#Result\n",
+ "print('The Coulomb interatomic energy is %.2f eV'%(U*10**19/1.6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Coulomb interatomic energy is -5.12 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_5.ipynb b/Material_Science/material_science_ch_5.ipynb
new file mode 100755
index 00000000..8213c119
--- /dev/null
+++ b/Material_Science/material_science_ch_5.ipynb
@@ -0,0 +1,106 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5: Crystal Imperfections"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.1, page no-130"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Average distance between dislocations\n",
+ "\n",
+ "import math \n",
+ "#variable Declarat\n",
+ "a=3.615*10**-10 # interatomic distance of copper\n",
+ "t_ang=0.75 # angle of tilting\n",
+ "h=1.0 # Miller indices wrt X-axis\n",
+ "k=1.0 # Miller indices wrt Y-axis\n",
+ "l=0.0 # Miller indices wrt Z-axis\n",
+ "\n",
+ "#calculation\n",
+ "d_110=a/math.sqrt(h**2+k**2+l**2)\n",
+ "D=d_110/math.tan(t_ang*math.pi/(180*2))\n",
+ "\n",
+ "#Result\n",
+ "print('The average distance between the dislocations is %.3f A\u00b0'%(D*10**6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The average distance between the dislocations is 0.039 A\u00b0\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.2, page no-130"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Schottky defects per unit cell\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "lp=4.0185*10**-10 # lattice parameter\n",
+ "dens=4285.0 # Density of CsCl in kg/m^3\n",
+ "avg=6.022*10**26 # Avogadro's number\n",
+ "wt_cs=132.9 # Molecular weight of Cs\n",
+ "wt_cl=35.5 # Molecular weight of Cl\n",
+ "\n",
+ "#calculations\n",
+ "N=(dens*avg*lp**3)/(wt_cs+wt_cl)\n",
+ "sd=(1-N)*100.0/1.0\n",
+ "\n",
+ "#Result\n",
+ "print('The number of Schottky defects per unit cell = %.3f%%'%sd)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of Schottky defects per unit cell = 0.565%\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_6.ipynb b/Material_Science/material_science_ch_6.ipynb
new file mode 100755
index 00000000..b628e403
--- /dev/null
+++ b/Material_Science/material_science_ch_6.ipynb
@@ -0,0 +1,105 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6: Classification of solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.1, page no-143"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Wavelength of light emitted from LED\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "e=1.609*10**-19 # charge of an electron\n",
+ "eg=1.8 # energy band gap\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "c=3*10**8 # speed of light\n",
+ "\n",
+ "\n",
+ "#calculation\n",
+ "E=e*eg\n",
+ "lamda=h*c/E\n",
+ "\n",
+ "#Result\n",
+ "print('The wavelength of light emitted from given LED is %.3f \u00b5m'%(lamda*10**7))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength of light emitted from given LED is 6.863 \u00b5m\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.2, page no-144"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Band gap of given GaAsP\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "lam=6715*10**-10 # wavelength of greenlight from mercury lamp\n",
+ "h=6.626*10**-34 # planck's constant\n",
+ "c=3*10**8 # speed of light\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "\n",
+ "#calculation\n",
+ "Eg=h*c/lam\n",
+ "Eg=Eg/e\n",
+ "\n",
+ "#Result\n",
+ "print('The band gap of the given GaAsP is %.1f eV'%(math.floor(Eg*10)/10))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The band gap of the given GaAsP is 1.8 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_7.ipynb b/Material_Science/material_science_ch_7.ipynb
new file mode 100755
index 00000000..9cb2cb86
--- /dev/null
+++ b/Material_Science/material_science_ch_7.ipynb
@@ -0,0 +1,573 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7: Elecron theory of Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.1, page no-160"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Mobility ofelectrons\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "rho=1.73*10**-8 # Resistivity of copper\n",
+ "z=63.5 # atomic weight of copper\n",
+ "d=8.92*10**3 # density of copper\n",
+ "avg=6.023*10**26 # Avogadro's number\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "m=9.11*10**-31 # mass of an electron\n",
+ "\n",
+ "#variable declaration\n",
+ "n=avg*d/z\n",
+ "sig=1/rho\n",
+ "tau=sig*m/(n*e**2)\n",
+ "mu=sig/(n*e)\n",
+ "\n",
+ "#Result\n",
+ "print(\"Mobility of electrons in copper is %.2f *10^-3 m^2/V-s\"%(mu*10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mobility of electrons in copper is 4.27 *10^-3 m^2/V-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.2, page no-161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Resistivity of copper\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "r=1.85*10**-10 # radius of the sodium atom\n",
+ "t=3*10**-14 # mean free time of sodium atom\n",
+ "m=9.11*10**-31 # mass of electron\n",
+ "e=1.6*10**-19 # charge of an atom\n",
+ "n= 2.0 # No of atoms per unit cell\n",
+ "\n",
+ "#calculations\n",
+ "a=r*(4.0/math.sqrt(3.0)) \n",
+ "a= math.floor(a*10**12)/10**12 \n",
+ "ne=n/a**3\n",
+ "ne= math.ceil(ne*10**-26)/10**-26\n",
+ "rho=m/(ne*t*e**2)\n",
+ "\n",
+ "#Result\n",
+ "print(\"Resistivity of copper is %.3f*10^-8 Ohm-m\"%(rho*10**8))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Resistivity of copper is 4.616*10^-8 Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 23
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.3, page no-161"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Electrical resistivity of sodium\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "t=3.1*10**14 # mean free time of electron\n",
+ "m=9.11*10**-31 # mass of an electron\n",
+ "e=1.6*10**-19 # charge of an electron \n",
+ "n=25.33*10**27 # no of electrons per unit volume\n",
+ "\n",
+ "#calculations\n",
+ "rho=m/(n*t*e**2)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The electric resistivity of sodium at 0\u00b0C is %.3f*10^-36 Ohm-m\"%(rho*10**36))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electric resistivity of sodium at 0\u00b0C is 4.532*10^-36 Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 25
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.4, page no-162"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility of the electron\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "t=3.4*10**-14 # relaxation time of conduction electrons\n",
+ "m=9.11*10**-31 # mass of electron\n",
+ "e=1.6*10**-19 # charge of electron\n",
+ "n=5.8*10**28 # no of force electrons per unit volume\n",
+ "\n",
+ "#calculations\n",
+ "rho=m/(n*t*e**2)\n",
+ "print(\"\\nThe electric resistivity of material is %.3f*10^-8 Ohm-m\"%(rho*10**8))\n",
+ "mu=e*t/m\n",
+ "print(\"\\nThe mobility of the electron in a metal is %.2f*10^-3 m^2/v-s\"%(mu*10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The electric resistivity of material is 1.805*10^-8 Ohm-m\n",
+ "\n",
+ "The mobility of the electron in a metal is 5.97*10^-3 m^2/v-s\n"
+ ]
+ }
+ ],
+ "prompt_number": 27
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.5, page no-163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# drift velocity\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "rho=1.54*10**-8 # resistivity of silver\n",
+ "E=100 # electric field along the wire\n",
+ "n=5.8*10**28 # carrier concentration of electron\n",
+ "e=1.6*10**-19 # charge on electron\n",
+ "\n",
+ "#calculation\n",
+ "mu=1/(rho*n*e)\n",
+ "vd=mu*E\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nMobility of electron in silvetr is %.4f*10^-3 m^2/v-s\\n\\nThe drift velocity of the electron in silver is %.5f m/s \"%(mu*10**3,vd))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Mobility of electron in silvetr is 6.9973*10^-3 m^2/v-s\n",
+ "\n",
+ "The drift velocity of the electron in silver is 0.69973 m/s \n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.6, page no-163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# mobility ofelectron\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "d=10.5*10**3 # density of silver\n",
+ "sig=6.8*10**7 # conductivity of silver\n",
+ "wt=107.9 # atomic weight of silver\n",
+ "e=1.609*10**-19 # charge of electron\n",
+ "avg=6.023*10**26 # avogadro's number\n",
+ "\n",
+ "#calculations\n",
+ "n=avg*d/wt\n",
+ "mu=sig/(n*e)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The mobility of electron is %.2f *10^-2 m^2.V/s\"%(mu*10**2))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mobility of electron is 0.72 *10^-2 m^2.V/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 32
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.7, page no-164"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lorentz number\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "sig=5.87*10**7 # electrical conductivity of copper\n",
+ "k=390.0 # thermal conductivity of copper\n",
+ "T=293.0 # temperature\n",
+ "\n",
+ "#calculation\n",
+ "L=k/(sig*T)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The Lorentz number is %.3f *10^-8 W.Ohm/K^2\"%(L*10**8))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Lorentz number is 2.268 *10^-8 W.Ohm/K^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 33
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.8, page no-164"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Lorentz number\n",
+ "import math\n",
+ "\n",
+ "#variable declaration\n",
+ "t=1*10**-14 # relaxation time\n",
+ "T=300 # temperature\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "e=1.6*10**-19 # charge of electron\n",
+ "n=6*10**28 # electron concentration\n",
+ "\n",
+ "#calculations\n",
+ "sig=(n*t*e**2)/m\n",
+ "k=1.38*10**-23\n",
+ "k1=n*math.pi**2*k**2*T*t/(3*m)\n",
+ "L=k1/(sig*T)\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe electrical conductivity is %.4f * 10^7/ohm-m\"%(sig*10**-7))\n",
+ "print(\"\\n\\nThermal conductivity is %.2f W/m-k\"%k1)\n",
+ "print(\"\\n\\nThe Lorentz number is %.4f *10^-8 W.Ohm/k^2\"%(L*10**8))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The electrical conductivity is 1.6879 * 10^7/ohm-m\n",
+ "\n",
+ "\n",
+ "Thermal conductivity is 123.93 W/m-k\n",
+ "\n",
+ "\n",
+ "The Lorentz number is 2.4474 *10^-8 W.Ohm/k^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.9, page no-165"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Electrical conductivity\n",
+ "\n",
+ "import math\n",
+ "\n",
+ "#variable declaration\n",
+ "d=8900 # Density of copper\n",
+ "cu=63.5 # Atomic weight of Cu\n",
+ "t=10**-14 # Relaxation time\n",
+ "avg=6.022*10**23 # Avogadro's number\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "e=1.6*10**-19 # charge of electron\n",
+ "\n",
+ "#Calculations\n",
+ "n=avg*d*1000/cu\n",
+ "sig=(n*t*e**2)/m\n",
+ "print(\"The electrical conductivity is %.3f *10^7 /Ohm-m\"%(sig*10**-7))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electrical conductivity is 2.374 *10^7 /Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 38
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.10, page no-166"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Drift velocity of electrons\n",
+ "import math\n",
+ "\n",
+ "#variable declaration\n",
+ "rho=1.6*10**-8 # resistivity of the silver piece\n",
+ "e=1.603*10**-19 # charge of an electron\n",
+ "fe=5.5*e # energy of the silver\n",
+ "avg=6.023*10**23 # avogadro's number\n",
+ "d=1.05*10**4 # density of silver\n",
+ "wt=107.9*10**-3 # atomic weight of silver\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "c=3*10**8 # speed of light\n",
+ "\n",
+ "#calculations\n",
+ "sig=1/rho\n",
+ "n=avg*d/wt\n",
+ "t=sig*m/(n*e**2)\n",
+ "lam=c*t\n",
+ "vd=sig*100/(n*e)\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe conductivity of silver piece is %.2f*10^7 per Ohm-m\\n\\nThe relaxation time is %.2f*10^-14 s\"%(sig*10**-7,t*10**14))\n",
+ "print(\"\\nThe drift velocity of electrons in the silver piece is %.2f m/s\"%(math.floor(vd*100)/100))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The conductivity of silver piece is 6.25*10^7 per Ohm-m\n",
+ "\n",
+ "The relaxation time is 3.78*10^-14 s\n",
+ "\n",
+ "The drift velocity of electrons in the silver piece is 0.66 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 51
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.11, page no-167"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# resistivityy of the copper\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "r1=1.7*10**-8 # resistivity of copper at T1\n",
+ "t2=300.0 # temperature(T1)\n",
+ "t1=700.0+273 # temperature(T2)\n",
+ "\n",
+ "#calculation\n",
+ "r2=r1*math.sqrt((t1/t2))\n",
+ "print(\"The resistivityy of the copper wire is %.4f*10^-8 Ohm-m\"%(r2*10**8))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The resistivityy of the copper wire is 3.0616*10^-8 Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 52
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.12, page no-168"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Relaxation time, Drift velocity, Fermi velocity, mean free path\n",
+ "\n",
+ "import math\n",
+ "#variable declarations\n",
+ "rho=1.54*10**-8 # Resistivity \n",
+ "e=1.6*10**-19 # charge of electron\n",
+ "ef=5.5*e # Fermi energy\n",
+ "n=5.8*10**28 # concentration of electrons\n",
+ "m=9.1*10**-31 # mass of electron \n",
+ "\n",
+ "#(i)\n",
+ "t=m/(rho*n*e**2)\n",
+ "mu=e*t/m\n",
+ "print(\"\\n(i)\\nThe relaxation time is %.2f*10^-14 s\\nThe mobility of the electrons is %.4f *10^-3 m^2/V-s\"%(t*10**14,mu*10**3))\n",
+ "\n",
+ "#(ii)\n",
+ "vd=e*t*100/m\n",
+ "print(\"\\n\\n(ii)\\nthe drift velocity of elctron is %.5f m/s\"%vd)\n",
+ "\n",
+ "#(iii)\n",
+ "vf=math.sqrt(2*ef/m)\n",
+ "print(\"\\n\\n(iii)\\nFermi velocity is %.2f*10^6 m/s\"%(vf*10**-6))\n",
+ "\n",
+ "#(iv)\n",
+ "lam=vf*t\n",
+ "print(\"\\n\\n(iv)\\nThe mean free path is %.3f*10^-8 m\"%(lam*10**8))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "(i)\n",
+ "The relaxation time is 3.98*10^-14 s\n",
+ "The mobility of the electrons is 6.9973 *10^-3 m^2/V-s\n",
+ "\n",
+ "\n",
+ "(ii)\n",
+ "the drift velocity of elctron is 0.69973 m/s\n",
+ "\n",
+ "\n",
+ "(iii)\n",
+ "Fermi velocity is 1.39*10^6 m/s\n",
+ "\n",
+ "\n",
+ "(iv)\n",
+ "The mean free path is 5.535*10^-8 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 55
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/material_science_ch_8.ipynb b/Material_Science/material_science_ch_8.ipynb
new file mode 100755
index 00000000..400defda
--- /dev/null
+++ b/Material_Science/material_science_ch_8.ipynb
@@ -0,0 +1,853 @@
+{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8.: Statics and Band theory of Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.1, page no-208"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi Energy of metals\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "d_cu=8.96*10**3 # density of cu\n",
+ "a_cu=63.55 # Atomic weight of cu\n",
+ "d_z=7.14*10**3 # density of Zn \n",
+ "a_z=65.38 # Atomic weight of Zn\n",
+ "d_al=2700 # density of Al\n",
+ "a_al=27 # Atomic weight of Al \n",
+ "avg=6.022*10**26 # Avogadro's number \n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "m=9.1*10**-31 # mass of an electrons\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "\n",
+ "\n",
+ "\n",
+ "#(i)\n",
+ "\n",
+ "# Calculations\n",
+ "n_cu=d_cu*avg/a_cu\n",
+ "e_cu=(h**2/(8*m))*(3*n_cu/math.pi)**(2.0/3.0)\n",
+ "e_cu=e_cu/e\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\n(i)For Cu\\nThe electron concentration in Cu is %.4f*10^28 per m^3\\nFermi energy at 0 k =%.4f eV \"%(n_cu*10**-28,e_cu))\n",
+ "\n",
+ "#(ii)\n",
+ "\n",
+ "# calculations\n",
+ "n_z=d_z*avg*2/a_z\n",
+ "e_z=(h**2/(8*m))*(3*n_z/math.pi)**(2.0/3.0)\n",
+ "e_z=e_z/e\n",
+ "\n",
+ "# Result\n",
+ "print(\"\\n(ii)For Zn\\nThe electron concentration in Zn is %.5f*10^28 per m^3\\nFermi energy at 0 k =%.2f eV \"%(n_z*10**-28,e_z))\n",
+ "\n",
+ "#(iii)\n",
+ "\n",
+ "# Calculations\n",
+ "n_al=d_al*avg*3/a_al\n",
+ "e_al=(h**2/(8*m))*(3*n_al/math.pi)**(2.0/3.0)\n",
+ "e_al=e_al/e\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\n(iii)For Al\\nThe electron concentration in Al is %.3f*10^28 per m^3\\nFermi energy at 0 k =%.2f eV \"%(n_al*10**-28,e_al))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "(i)For Cu\n",
+ "The electron concentration in Cu is 8.4905*10^28 per m^3\n",
+ "Fermi energy at 0 k =7.0608 eV \n",
+ "\n",
+ "(ii)For Zn\n",
+ "The electron concentration in Zn is 13.15298*10^28 per m^3\n",
+ "Fermi energy at 0 k =9.45 eV \n",
+ "\n",
+ "(iii)For Al\n",
+ "The electron concentration in Al is 18.066*10^28 per m^3\n",
+ "Fermi energy at 0 k =11.68 eV \n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.2, page no-210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Density of states for Cu\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "avg=6.023*10**26 # avogadro's number\n",
+ "h=6.626*10**-34 # Planck's constant \n",
+ "m=9.1*10**-31 # mass of an electron\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "n=8.4905*10**28 # sphere of radius\n",
+ "gam=6.82*10**27 # gamma\n",
+ "\n",
+ "# Calculations\n",
+ "ef=(h**2/(8*m))*(3*n/math.pi)**(2.0/3.0)\n",
+ "ef=ef/e\n",
+ "x=(gam*math.sqrt(ef))/2\n",
+ "\n",
+ "#Result\n",
+ "print(\"The density of states for Cu at the Fermi level for T = 0 K is %.0f*10^27 m^-3\"%(x*10**-27))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The density of states for Cu at the Fermi level for T = 0 K is 9*10^27 m^-3\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.3, page no-210"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Nordheims coeeficient\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "rni=63 # Resistivity of Ni\n",
+ "rcr=129 # Resistivity of Cr\n",
+ "k=1120 # Resistivity of 80% Ni + 20% Cr\n",
+ "\n",
+ "#Calculations\n",
+ "c=(k*10**-9)/(0.8*(1-0.8))\n",
+ "\n",
+ "#Result\n",
+ "print(\"The Nordheims coeeficient is %.0f *10^-6 Ohm-m\"%(c*10**6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Nordheims coeeficient is 7 *10^-6 Ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.4, page no-211"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Conductivity of Al\n",
+ "\n",
+ "import math\n",
+ "#Variable declaaration\n",
+ "d=2700 # Density of Al\n",
+ "awt=27 # Atomic weight\n",
+ "t=10**-14 # Relaxation time\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "m=9.1*10**-31 # mass of an electron\n",
+ "avg=6.022*10**26 # Avogadros number\n",
+ "\n",
+ "# calculation\n",
+ "n=avg*d*3/awt\n",
+ "sig=(n*t*e**2)/m\n",
+ "\n",
+ "#Result\n",
+ "print(\"The conductivity of Al is %.4f*10^7 ohm-m.\"%(sig*10**-7))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The conductivity of Al is 5.0823*10^7 ohm-m.\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.5, page no-211"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Fermi distribution function\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "e1=0.01 # difference between energy level to fermi level in eV\n",
+ "e=1.6*10**-19 # charge of an electron\n",
+ "ed=e*e1 # difference between energy level to fermi level in J\n",
+ "T=200 # Temperature\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "# Calculations\n",
+ "E=1/(1+math.e**(ed/(T*k)))\n",
+ "print(\"The Fermi distribution function for energy E is %.4f\"%E)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi distribution function for energy E is 0.3590\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.6, page no-212"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi energy and fermi temperature\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "v=0.86*10**6 # velocity of electron\n",
+ "m=9.11*10**-31 # mass of electron\n",
+ "e=1.6*10**-19 # electronic charge \n",
+ "k=1.38*10**-23 # Boltzmann's constant \n",
+ "\n",
+ "#calculations\n",
+ "E=(m*v**2)/2\n",
+ "E= math.floor(E*10**22)/10**22\n",
+ "T=E/k\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe fermi energy is %.3f*10^-19 J\\nThe Fermi Temperature Tf is %.2f*10^4 K\"%(E*10**19,T*10**-4))\n",
+ "# answer in the book for Temperature id 2.43 x 10^4"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The fermi energy is 3.368*10^-19 J\n",
+ "The Fermi Temperature Tf is 2.44*10^4 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 25
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.7, page no-212"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# No of states lying between energy levels\n",
+ "\n",
+ "import math\n",
+ "# variable declaration\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "dE=0.01 # energy interval\n",
+ "h=6.63*10**-34 # planck's constant\n",
+ "eF=3.0 # Fermi energy\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#Calculations\n",
+ "E1=eF*e\n",
+ "E2=E1+e*dE\n",
+ "n=(4*math.pi*(2*m)**(1.5))/h**3\n",
+ "k=((2*0.3523/3)*((E2**(1.5)-(E1**(1.5)))))\n",
+ "n=n*k\n",
+ "\n",
+ "#Result\n",
+ "print(\"The number of states lying between the energy level is %.2f*10^25\"%(n*10**-25))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of states lying between the energy level is 4.14*10^25\n"
+ ]
+ }
+ ],
+ "prompt_number": 27
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.8, page no-214"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Fermi Velocity\n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "Tf=24600 # Fermi temperature of the metal\n",
+ "m=9.11*10**-31 # mass of electron\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "#Calculations\n",
+ "vf=math.sqrt(2*k*Tf/m)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The Fermi Velocity is %.4f *10^6 m/s\"%(vf*10**-6))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi Velocity is 0.8633 *10^6 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 29
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.9, page no-214"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Fermi energy\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "n=18.1*10**28 # elecron density of electron\n",
+ "h=6.62*10**-34 # Planck's constant\n",
+ "m=9.1*10**-31 # mass of an electron\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#calculations\n",
+ "ef=((3*n/(8*math.pi))**(2.0/3.0))*((h**2)/(2*m))\n",
+ "ef=ef/e\n",
+ "ef=math.ceil(ef*100)/100\n",
+ "\n",
+ "#Result\n",
+ "print(\"The Fermi energy at 0 K is %.2f eV \"%(ef))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi energy at 0 K is 11.68 eV \n"
+ ]
+ }
+ ],
+ "prompt_number": 40
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.10, page no-215"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Fermi energy \n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "n=18.1*10**28 # elecron density of electron\n",
+ "h=6.62*10**-34 # Planck's constant\n",
+ "m=9.1*10**-31 # mass of an electron\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#calculations\n",
+ "ef=((3*n/(8*math.pi))**(2.0/3.0))*((h**2)/(2*m))\n",
+ "ef=ef/e\n",
+ "ef=math.ceil(ef*100)/100\n",
+ "\n",
+ "#result\n",
+ "print(\"The Fermi energy at 0 K is %.2f eV \"%ef)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi energy at 0 K is 11.68 eV \n"
+ ]
+ }
+ ],
+ "prompt_number": 45
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.11, page no-215"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Temperature calculation\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "Ed=0.5*e # difference between energy level to fermi level\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "x=0.01 # probability\n",
+ "\n",
+ "#Calculaations\n",
+ "T=Ed/(k*math.log((1/x)-1))\n",
+ "\n",
+ "#Result\n",
+ "print(\"Temperature at which there is 1%% probability that a state with 0.5 eV energy occupied above the Fermi energy level is %.1f K\"%T)\n",
+ "#answer is not matching with the answer given in the book"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Temperature at which there is 1% probability that a state with 0.5 eV energy occupied above the Fermi energy level is 1261.6 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 49
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.14, page no-218"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#energies for the occupying of electrons\n",
+ "import math\n",
+ "\n",
+ "#variable declaration\n",
+ "ef=2.1 # Fermi energy\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "T=300 # Temperature\n",
+ "e=1.6*10**-19 # Electronic charge\n",
+ "\n",
+ "#calculations\n",
+ "\n",
+ "#(i)\n",
+ "p1=0.99 # probability\n",
+ "E1=ef+(k*T*math.log(-1+1/p1))/e\n",
+ "\n",
+ "#(ii)\n",
+ "p2=0.01 # probability\n",
+ "E2=ef+(k*T*math.log(-1+1/p2))/e\n",
+ "\n",
+ "#(iii)\n",
+ "p3=0.5 # probability\n",
+ "E3=ef+(k*T*math.log(-1+1/p3))/e\n",
+ "\n",
+ "#Result\n",
+ "\n",
+ "print(\"\\nThe energies for the occupying of electrons at %d K for the probability of %.2f are %.2f eV\"%(T,p1,E1))\n",
+ "\n",
+ "print(\"\\nThe energies for the occupying of electrons at %d K for the probability of %.2f are %.2f eV\"%(T,p2,E2))\n",
+ "\n",
+ "print(\"\\nThe energies for the occupying of electrons at %d K for the probability of %.2f are %.2f eV\"%(T,p3,E3))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The energies for the occupying of electrons at 300 K for the probability of 0.99 are 1.98 eV\n",
+ "\n",
+ "The energies for the occupying of electrons at 300 K for the probability of 0.01 are 2.22 eV\n",
+ "\n",
+ "The energies for the occupying of electrons at 300 K for the probability of 0.50 are 2.10 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 53
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.15, page no-219"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi distribution function\n",
+ "\n",
+ "import math\n",
+ "# Variable declarations\n",
+ "e=1.6*10**-19 # Electronic charge\n",
+ "ed=0.02*e # difference between energy level to fermi level\n",
+ "T1=200 # Temperature 1\n",
+ "T2=400 # Temperature 2\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "#Calculations\n",
+ "fe1=1/(1+math.e**(ed/(k*T1)))\n",
+ "fe2=1/(1+math.e**(ed/(k*T2)))\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe Fermi distribution function for the given energy at %d K is %.5f\"%(T1,fe1))\n",
+ "print(\"\\nThe Fermi distribution function for the given energy at %d K is %.4f\"%(T2,fe2))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The Fermi distribution function for the given energy at 200 K is 0.23877\n",
+ "\n",
+ "The Fermi distribution function for the given energy at 400 K is 0.3590\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.16, page no-220"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi energy for given metal\n",
+ "\n",
+ "import math\n",
+ "#Variaable declaration\n",
+ "d=10500 # Density of the metal\n",
+ "avg=6.022*10**26 # Avogadro's number\n",
+ "awt=107.9 # Atomic weight of metal\n",
+ "h=6.62*10**-34 # Planck's constant\n",
+ "m=9.1*10**-31 # mass of an electron\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "\n",
+ "#Calculattions\n",
+ "n=d*avg/awt\n",
+ "ef=((3*n/(8*math.pi))**(2.0/3.0))*((h**2)/(2*m))\n",
+ "ef=ef/e\n",
+ "\n",
+ "#Result\n",
+ "print(\"The Fermi energy for given metal is %.1f eV \"%ef)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi energy for given metal is 5.5 eV \n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.17, page no-221"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Fermi distribution function \n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "e=1.6*10**-19 # electronic charge\n",
+ "ed=0.2*e # difference between energy level to Fermi level\n",
+ "T1=300 # Temperature 1\n",
+ "T2=1000 # Temperature 2\n",
+ "k=1.38*10**-23 # Boltzmann's constant\n",
+ "\n",
+ "#Calculations\n",
+ "fe1=1/(1+math.e**(ed/(k*T1)))\n",
+ "fe2=1/(1+math.e**(ed/(k*T2)))\n",
+ "\n",
+ "#Result\n",
+ "print(\"\\nThe Fermi distribution function for the given energy at %d K is %.7f\"%(T1,fe1))\n",
+ "print(\"\\nThe Fermi distribution function for the given energy at %d K is %.4f\"%(T2,fe2))\n",
+ "# Answer for 300 K is wrong in the book"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The Fermi distribution function for the given energy at 300 K is 0.0004395\n",
+ "\n",
+ "The Fermi distribution function for the given energy at 1000 K is 0.0896\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.18, page no-221"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Free electrons concentration\n",
+ "\n",
+ "import math\n",
+ "#Variable declarations\n",
+ "h=6.62*10**-34 # Planck's constant\n",
+ "m=9.1*10**-31 # Mass of electron\n",
+ "e=1.6*10**-19 # Charge of an electron\n",
+ "ef=3*e # Fermi Energy\n",
+ "\n",
+ "#Calculations\n",
+ "k=((3/(8*math.pi))**(2.0/3.0))*((h**2)/(2*m))\n",
+ "k=ef/k\n",
+ "n=k**(1.5)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The number of free electrons concentration in metal is %.2f *10^28 per cubic meter \"%(n*10**-28))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of free electrons concentration in metal is 2.36 *10^28 per cubic meter \n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.19, page no-221"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Free electrons concentration in metal \n",
+ "\n",
+ "import math\n",
+ "#Variable declaration\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "m=9.1*10**-31 # Mass of electron\n",
+ "e=1.6*10**-19 # Charge of electron\n",
+ "ef=5.5*e # Fermi energy\n",
+ "\n",
+ "# Calculation\n",
+ "k=((3/(8*math.pi))**(2.0/3.0))*((h**2)/(2*m))\n",
+ "k=ef/k\n",
+ "n=k**(1.5)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The number of free electrons concentration in metal is %.3f * 10^28 per cubic meter \"%(n*10**-28))\n",
+ "#Answer is matching with the answer given in the book"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of free electrons concentration in metal is 5.837 * 10^28 per cubic meter \n"
+ ]
+ }
+ ],
+ "prompt_number": 31
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.20, page no-221"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# electrons concentration and termal velocity of electrons\n",
+ "\n",
+ "import math\n",
+ "#variable declaration\n",
+ "h=6.626*10**-34 # Planck's constant\n",
+ "m=9.1*10**-31 # mass of electron\n",
+ "e=1.6*10**-19 # charge of electron\n",
+ "ef=7*e # Fermi energy\n",
+ "\n",
+ "#calculations\n",
+ "k=((3/(8*math.pi))**(2.0/3.0))*((h**2)/(2*m))\n",
+ "k=ef/k\n",
+ "n=k**(1.5)\n",
+ "vth=math.sqrt(2*ef/m)\n",
+ "\n",
+ "#Result\n",
+ "print(\"The number of free electrons concentration in metal is %.2f *10^28 per cubic meter \"%(math.ceil(n*10**-28*10**2)/10**2))\n",
+ "print(\"\\nThe termal velocity of electrons in copper is %.3f *10^6 m/s\"%(math.floor(vth*10**-6*10**3)/10**3))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of free electrons concentration in metal is 8.39 *10^28 per cubic meter \n",
+ "\n",
+ "The termal velocity of electrons in copper is 1.568 *10^6 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 41
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Material_Science/screenshots/pl.png b/Material_Science/screenshots/pl.png
new file mode 100755
index 00000000..d762198f
--- /dev/null
+++ b/Material_Science/screenshots/pl.png
Binary files differ
diff --git a/Material_Science/screenshots/plane.png b/Material_Science/screenshots/plane.png
new file mode 100755
index 00000000..3ae05c93
--- /dev/null
+++ b/Material_Science/screenshots/plane.png
Binary files differ
diff --git a/Material_Science/screenshots/pln.png b/Material_Science/screenshots/pln.png
new file mode 100755
index 00000000..01fcaaa4
--- /dev/null
+++ b/Material_Science/screenshots/pln.png
Binary files differ