diff options
author | hardythe1 | 2015-06-03 15:27:17 +0530 |
---|---|---|
committer | hardythe1 | 2015-06-03 15:27:17 +0530 |
commit | 47d7279a724246ef7aa0f5359cf417992ed04449 (patch) | |
tree | c613e5e4813d846d24d67f46507a6a69d1a42d87 /Materials_Science_and_Engineering | |
parent | 435840cef00c596d9e608f9eb2d96f522ea8505a (diff) | |
download | Python-Textbook-Companions-47d7279a724246ef7aa0f5359cf417992ed04449.tar.gz Python-Textbook-Companions-47d7279a724246ef7aa0f5359cf417992ed04449.tar.bz2 Python-Textbook-Companions-47d7279a724246ef7aa0f5359cf417992ed04449.zip |
add books
Diffstat (limited to 'Materials_Science_and_Engineering')
20 files changed, 2652 insertions, 0 deletions
diff --git a/Materials_Science_and_Engineering/Chapter10.ipynb b/Materials_Science_and_Engineering/Chapter10.ipynb new file mode 100755 index 00000000..8e36c2f2 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter10.ipynb @@ -0,0 +1,144 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10 : Elastic. Anelastic and Viscoelastic Behaviour"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.1, Page No 241"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "n = 1.0\n",
+ "m = 9.0\n",
+ "A = 7.68e-29 # Constant having unit J m \n",
+ "r_0 = 2.5e-10 # bonding distance in m\n",
+ "\n",
+ "#Calculations\n",
+ "B = A*r_0**8.0/9\n",
+ "Y = (90*B/(r_0)**11-2*A/(r_0)**3)/r_0\n",
+ "\n",
+ "#Results\n",
+ "print(\"Young\u2019s modulus of material is %d GN m^-2\" %(Y/1e9))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Young\u2019s modulus of material is 157 GN m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.2, Page No 245"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "Y_f = 440.0\n",
+ "Y_m = 71.0 \n",
+ "sigma_total= 100.0 # total load\n",
+ "\n",
+ "#Calculations\n",
+ "r = Y_f/Y_m\n",
+ "sigma_f = r*(sigma_total/0.7)/(1+r*3/7)\n",
+ "\n",
+ "#Results\n",
+ "print(\" Part A:\")\n",
+ "print(\" When load is applied parallel to fiber then, stress in fiber is %d MN m^-2\" %sigma_f)\n",
+ "\n",
+ "print(\" Part B:\")\n",
+ "print(\" When load is applied perpendicular to fiber then, stress in fiber and matrix is same i.e. %d MN m^-2\" %sigma_total)\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Part A:\n",
+ " When load is applied parallel to fiber then, stress in fiber is 242 MN m^-2\n",
+ " Part B:\n",
+ " When load is applied perpendicular to fiber then, stress in fiber and matrix is same i.e. 100 MN m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.3, Page No 251"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "t_r = 100.0 # relaxation time in s\n",
+ "d = 2.5 # distance in angstrom\n",
+ "\n",
+ "#Calculations\n",
+ "f = 1.0/t_r # jump frequency\n",
+ "D = (d*1e-10)**2*f\n",
+ "\n",
+ "#Results\n",
+ "print(\"Diffusion coefficient is %.2e m^2 s^-1\" %D)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Diffusion coefficient is 6.25e-22 m^2 s^-1\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter11.ipynb b/Materials_Science_and_Engineering/Chapter11.ipynb new file mode 100755 index 00000000..c7f0e650 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter11.ipynb @@ -0,0 +1,209 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11 : Plastic Deformation and Creep in Crystalline Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.2, Page No 272"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "b = 2.0 \t\t# burger vector in angstrom\n",
+ "v = 20*b**3 \t# activation volume \n",
+ "tau_pn = 1000.0 # P-N stress of crystal in MNm**-2\n",
+ "k = 1.38e-23 \t# physical constant\n",
+ "t1 = 0 \t\t\t# temperature in K\n",
+ "t2 = 100.0\t\t# temperature in K \n",
+ "t3 = 300.0\t\t# temperature in K\n",
+ "t4 = 500.0\t\t# temperature in K\n",
+ "T = t1\t\n",
+ "\n",
+ "#Calculations\n",
+ "tau_app = tau_pn - 40.0*k*T/(v*1e-30)\n",
+ "print(\"The stress required to move the dislocation at temperature %dK is %d MNm**-2\" %(T,tau_app))\n",
+ "print(\"Part B:\")\n",
+ "T = t2\n",
+ "tau_app = tau_pn - 40*k*T/(v*1e-30*1e6)\n",
+ "print(\"The stress required to move the dislocation at temperature %dK is %d MNm**-2\" %(T,tau_app))\n",
+ "print(\"Part C:\")\n",
+ "T = t3\n",
+ "tau_app = tau_pn - 40*k*T/(v*1e-30*1e6)\n",
+ "if tau_app<0 :\n",
+ " print(\" Stress to be applied is zero\")\n",
+ " print(\"The stress required to move the dislocation at temperature %dK entirely overcome by thermal fluctuations\" %T)\n",
+ "\n",
+ "print(\"Part D:\")\n",
+ "T = t4\n",
+ "tau_app = tau_pn - 40*k*T/(v*1e-30*1e6)\n",
+ "\n",
+ "#Results\n",
+ "if tau_app<0 :\n",
+ " print(\"Stress to be applied is zero\")\n",
+ " print(\"The stress required to move the dislocation at temperature %dK entirely overcome by thermal fluctuations\" %T)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The stress required to move the dislocation at temperature 0K is 1000 MNm**-2\n",
+ "Part B:\n",
+ "The stress required to move the dislocation at temperature 100K is 655 MNm**-2\n",
+ "Part C:\n",
+ " Stress to be applied is zero\n",
+ "The stress required to move the dislocation at temperature 300K entirely overcome by thermal fluctuations\n",
+ "Part D:\n",
+ "Stress to be applied is zero\n",
+ "The stress required to move the dislocation at temperature 500K entirely overcome by thermal fluctuations\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.3, Page No 278"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "mu = 44.0 # shear modulus of copper in GN m^-2\n",
+ "b = 2.55 # burgers vector in angstrom\n",
+ "tau = 35.0 # shear stress in MN m^-2\n",
+ "\n",
+ "#Calculations\n",
+ "l = mu*1e9*b*1e-10/(tau*1e6)\n",
+ "rho = 1/l**2\n",
+ "\n",
+ "#Results\n",
+ "print(\"Dislocation density in copper is %.1e m^-2\" %rho)\n",
+ "# Answer in book is 1e12 m^-2\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Dislocation density in copper is 9.7e+12 m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.4, Page No 280"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "sigma1 = 120.0 # initial yield strength of material in MNm**-2\n",
+ "sigma2 = 220.0 # Final yield strength of material in MN m**-2\n",
+ "d1 = 0.04 # initial diameter in mm\n",
+ "d2 = 0.01 # final diameter in mm\n",
+ "n = 9.0 # astm number\n",
+ "\n",
+ "#Calculations\n",
+ "print(\"Example 11.4\")\n",
+ "k = (sigma2-sigma1)*1e6/(1/math.sqrt(d2*1e-3)-1/math.sqrt(d1*1e-3))\n",
+ "sigma_i = sigma1*1e6 -k/math.sqrt((d1*1e-3))\n",
+ "d = 1/math.sqrt(2**(n-1)*1e4/645)\n",
+ "sigma_y = sigma_i+k*(d*1e-3)**(-0.5)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Yield stress for a grain size of ASTM 9 is %d MN m**-2\" %math.ceil(sigma_y/1e6))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Example 11.4\n",
+ "Yield stress for a grain size of ASTM 9 is 179 MN m**-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.5 Page No 283"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "n1 = 1e6 # initial number of particles\n",
+ "n2 = 1e3 # final number of particle\n",
+ "\n",
+ "#Calculations\n",
+ "k = (n1/n2)**(1.0/3)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Yield strength would have decreased to %d percent of its initial value.\" %(100.0/k))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Yield strength would have decreased to 10 of its initial value.\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter12.ipynb b/Materials_Science_and_Engineering/Chapter12.ipynb new file mode 100755 index 00000000..a9e44765 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter12.ipynb @@ -0,0 +1,152 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12 : Fracture"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.1, Page No 302"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "c = 2.0 \t# crack of half length in micro meter\n",
+ "Y = 70.0 \t# young\u2019s modulus in GN m^-2\n",
+ "Gamma = 1.0\t # specific surface energy \n",
+ "\n",
+ "#Calculations\n",
+ "sigma_f = math.sqrt(2*Gamma*Y*1e9/(math.pi*c*1e-6))/1e6\n",
+ "r = Y*1e3/sigma_f\n",
+ "\n",
+ "#Results\n",
+ "print(\" Fracture strength of %d MN m^-2 is 1/%d th of young\u2019s modulus. \"%(math.ceil(sigma_f),math.ceil(r/100.0)*100.0))\n",
+ "print(\" Thus Griffiths criterion bridges the gap between the observed and ideal strengths of brittle material\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Fracture strength of 150 MN m^-2 is 1/500 th of young\u2019s modulus. \n",
+ " Thus Griffiths criterion bridges the gap between the observed and ideal strengths of brittle material\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.2, Page No 304"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "Gamma = 1.5\t\t# specific surface energy in J/m^2\n",
+ "Y = 200.0\t \t# Young\u2019s modulus in GN/m^2\n",
+ "c = 2.0\t\t # half length of crack\n",
+ "\n",
+ "#Calculations\n",
+ "sigma_f = math.sqrt(2*Gamma*Y*1e9/(math.pi*c*1e-6))\n",
+ "\n",
+ "#Results\n",
+ "print(\" Brittle fracture strength at low temperatures is %d MNm^-2 \" %(sigma_f/1e6))# answer in book is 310MNm^-2\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Brittle fracture strength at low temperatures is 309 MNm^-2 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.3, Page No 306"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "Gamma = 2.0\t\t # specific surface energy in J/m**2\n",
+ "Y = 350.0\t\t # Young\u2019s modulus in GN/m**2\n",
+ "c = 2.0\t\t\t # half length of crack\n",
+ "de_dt1 = 1e-2 \t\t# strain rate\n",
+ "de_dt2 = 1e-5 \t# strain rate\n",
+ "\n",
+ "#Calculations\n",
+ "print(\" Part A:\")\n",
+ "sigma_f = math.sqrt(2*Gamma*Y*1e9/(math.pi*c*1e-6))\n",
+ "sigma_y = sigma_f/1e6\n",
+ "T = 173600/(sigma_y-20.6-61.3*math.log(de_dt1,10))\t# temperature calculation\n",
+ "\n",
+ "print(\" Transition temperature for strain rate %.0e s**-1 is %d K\" %(de_dt1,T)) # answer in book is 300 K\n",
+ "print(\" Part B:\")\n",
+ "\n",
+ "T = 173600/(sigma_y-20.6-61.3*math.log(de_dt2,10))\t# temperature calculation\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print(\" Transition temperature for strain rate %.0e s**-1 is %d K\" %(de_dt2,T)) # answer in book is 230 K\n",
+ "# Solution in book for two parts is divided into three parts\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Part A:\n",
+ " Transition temperature for strain rate 1e-02 s**-1 is 302 K\n",
+ " Part B:\n",
+ " Transition temperature for strain rate 1e-05 s**-1 is 229 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter13.ipynb b/Materials_Science_and_Engineering/Chapter13.ipynb new file mode 100755 index 00000000..2198985c --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter13.ipynb @@ -0,0 +1,61 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13 : Oxidation and Corrosion"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.1, Page No 317"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "j = 15.0\t \t# current density in mA m^-2\n",
+ "m = 0.0243 \t\t# molar mass of magnesium\n",
+ "F = 96490 \t\t# farad charge\n",
+ "n = 2.0 # charge on ion\n",
+ "t = 10.0\t # time in years\n",
+ "\n",
+ "#Calculations\n",
+ "a = m*j*1e-3*(t*365*24*3600)/(n*F)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Amount of magnesium required is %0.1f kg m^-2\" %a)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Amount of magnesium required is 0.6 kg m^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter14.ipynb b/Materials_Science_and_Engineering/Chapter14.ipynb new file mode 100755 index 00000000..19b9f860 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter14.ipynb @@ -0,0 +1,141 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 : Conductors and Resistors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.1, Page No 336"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "n_x1 = 1.0 # atomic level\n",
+ "n_y1 = 1.0 # atomic level\n",
+ "n_z1 = 1.0 # atomic level\n",
+ "n_x2 = 2.0 # atomic level\n",
+ "L = 10.0 # lattice parameter in mm\n",
+ "h = 6.626e-34 # plank constant\n",
+ "m_e = 9.109e-31 # mass of electron in kg\n",
+ "\n",
+ "#Calculations\n",
+ "E1 = h**2*(n_x1**2+n_y1**2+n_z1**2)/(8*m_e*(L*1e-3)**2)\n",
+ "E2 = h**2*(n_x2**2+n_y1**2+n_z1**2)/(8*m_e*(L*1e-3)**2)\n",
+ "E = E2-E1 # energy difference \n",
+ "\n",
+ "#Results\n",
+ "print(\"Energy difference is %.2e J \" %E)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Energy difference is 1.81e-33 J \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.2, Page No 340"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "tau = 2e-14 # collision time of electron in s\n",
+ "e = 1.602e-19 # charge on electron\n",
+ "m_e = 9.1e-31 # mass of electron in kg\n",
+ "\n",
+ "#Calculations\n",
+ "n = 6.023e23*8960/0.06354\n",
+ "sigma= n*e**2*tau/m_e\n",
+ "\n",
+ "#Results\n",
+ "print(\"Conductivity of copper at 300 K is %.1e ohm^-1 m^-1 \" %sigma)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Conductivity of copper at 300 K is 4.8e+07 ohm^-1 m^-1 \n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.3, Page No 341"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "r_cu = 1.8e-8 \t\t# resistivity of pure copper in ohm-m\n",
+ "r_Ni_cu = 7e-8 \t\t#resistivity of copper 4% Ni in ohm-m\n",
+ "per1 = 4.0\t\t\t#impurity in percent\n",
+ "per2 = 1.0\t\t\t # impurity in percent\n",
+ "\n",
+ "#Calculations\n",
+ "r = (r_Ni_cu-r_cu)*per2/per1 \t# resistivity of copper 1% Ni in ohm-m\n",
+ "\n",
+ "#Results\n",
+ "print(\"Resistivity due to impurity scattering of 1 %% of Nickel in copper lattice is %.1e ohm-m\" %r)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Resistivity due to impurity scattering of 1 % of Nickel in copper lattice is 1.3e-08 ohm-m\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter15.ipynb b/Materials_Science_and_Engineering/Chapter15.ipynb new file mode 100755 index 00000000..f4be7ab8 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter15.ipynb @@ -0,0 +1,61 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15 : Semiconductors"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 15.1, Page No 364"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "rho = 3000.0 # resistivity in ohm m\n",
+ "mu_e = 0.14\n",
+ "mu_h = 0.05 \n",
+ "e = 1.602e-19 # charge on electron\n",
+ "\n",
+ "#Calculations\n",
+ "sigma = 1.0/rho\n",
+ "n = sigma/((mu_e+mu_h)*e)\n",
+ "\n",
+ "#Results\n",
+ "print(\" Intrinsic carrier density is %.3e m^-3\" %n)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Intrinsic carrier density is 1.095e+16 m^-3\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter16.ipynb b/Materials_Science_and_Engineering/Chapter16.ipynb new file mode 100755 index 00000000..d253752e --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter16.ipynb @@ -0,0 +1,189 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16 : Magnetic Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.1, Page No 396"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "a = 2.87 # lattice parameter in angstrom\n",
+ "n = 2 # number of atoms per unit cell\n",
+ "m = 1750 # Saturation magnetization in kAm^-1\n",
+ "mu = 9.273e-24 # bohr magneton \n",
+ "\n",
+ "#Calculations\n",
+ "m_atom = m*1e3*(a*1e-10)**3/n\n",
+ "mu_b = m_atom/mu\n",
+ "\n",
+ "#Results\n",
+ "print(\" Net magnetic moment per iron atom in crystal is %.3e Am^2\" %m_atom)\n",
+ "print(\" In unit of mu_b, Net magnetic moment per iron atom in crystal is %.1f \" %mu_b)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Net magnetic moment per iron atom in crystal is 2.068e-23 Am^2\n",
+ " In unit of mu_b, Net magnetic moment per iron atom in crystal is 2.2 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.2, Page No 398"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "t1 = 0 \t\t\t# temperature in kelvin\n",
+ "t2 = 300.0 \t\t# temperature in kelvin\n",
+ "m_net_Gd = 7.0 \t# net magnetic moment of gadolinium\n",
+ "m_net_Co = 1.7 \t# net magnetic moment of cobalt\n",
+ "t_c_Gd = 289.0 # curie temperature for Gd\n",
+ "\n",
+ "#Calculations\n",
+ "print(\" Part A:\")\n",
+ "if m_net_Gd> m_net_Co :\n",
+ "\tprint(\" At %d K, Net magnetic moment of gadolinium i.e. %d is greater than net magnetic moment of cobalt i.e. %.1f \" %(t1,m_net_Gd,m_net_Co))\n",
+ "\tprint(\" So, Gd will have higher saturation magnetization\")\n",
+ "\n",
+ "print(\" Part B:\")\n",
+ "if t_c_Gd<t2 :\n",
+ " print(\" At temperature %d K, Gd is above its curie temperature of %dK\" %(t2,t_c_Gd))\n",
+ " print(\" Gd will be paramagnetic at %d K and will have negligible magnetization as compared to Co, which has higher curie temperature\" %t2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Part A:\n",
+ " At 0 K, Net magnetic moment of gadolinium i.e. 7 is greater than net magnetic moment of cobalt i.e. 1.7 \n",
+ " So, Gd will have higher saturation magnetization\n",
+ " Part B:\n",
+ " At temperature 300 K, Gd is above its curie temperature of 289K\n",
+ " Gd will be paramagnetic at 300 K and will have negligible magnetization as compared to Co, which has higher curie temperature\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.4, Page No 402"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "v = 0.01 # volume in m^3\n",
+ "x = 1e-4 # axis intercept\n",
+ "y = 1e2 # axis intercept\n",
+ "a = 60000.0 # Hysteresis loop area\n",
+ "f = 50.0 # frequency in Hz\n",
+ "\n",
+ "#Calculations\n",
+ "e = x*y*a # Energy loss in one loop\n",
+ "E = e*v # energy loss in core in one cycle\n",
+ "P = E*f # Power loss\n",
+ "\n",
+ "#Results\n",
+ "print(\" Power loss due to hysteresis is %d W\" %P)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Power loss due to hysteresis is 300 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.5 Page No 405"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "Total1 = 2300.0 \t# total iron loss in W at 440 V and 50 Hz\n",
+ "Total2 = 750.0 \t# total iron loss in W at 220 V and 25 Hz\n",
+ "\n",
+ "#Calculations\n",
+ "W_e = 1.0/2*(Total1-2*Total2)\n",
+ "\n",
+ "#Results\n",
+ "print(\" Eddy current loss at normal voltage and frequency is %d W\" %(4*W_e))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Eddy current loss at normal voltage and frequency is 1600 W\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter17.ipynb b/Materials_Science_and_Engineering/Chapter17.ipynb new file mode 100755 index 00000000..5d5a0518 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter17.ipynb @@ -0,0 +1,110 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 17 : Dielectirc Materials"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 17.1, Page No 414"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "l= 10.0 # length of capacitor in mm\n",
+ "b = 10.0 # width of capacitor in mm\n",
+ "d = 2.0\t\t # distance of separation in mm\n",
+ "c = 1e-9 \t# capacitance in farad\n",
+ "epsilon_0 = 8.85e-12 # permittivity of free space\n",
+ "\n",
+ "#Calculations\n",
+ "epsilon_r = c*d*1e-3/(epsilon_0*l*1e-3*b*1e-3)\n",
+ "\n",
+ "#Calculations\n",
+ "print(\" Relative dielectric constant is %d\" %epsilon_r)\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Relative dielectric constant is 2259\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 17.2, Page No 421"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "Ti_shift= 0.06 \t\t# shift of TI ion in angstrom\n",
+ "O_shift = 0.06 \t\t# shift of oxygen ion of side face in angstrom\n",
+ "o_shift = 0.08 \t\t#shift of oxygen ion of top and bottom faces in angstrom\n",
+ "O_charge = 2.0 \t# unit charge on oxygen ion of side face\n",
+ "o_charge = 2.0\t\t # unit charge on oxygen ion of top and bottom faces\n",
+ "Ti_charge = 4.0\t # unit charge on titanium ion \n",
+ "n_O = 2.0\t\t\t # number of oxygen ion of side face\n",
+ "n_o = 1.0\t\t\t # number of oxygen ion of top and bottom face\n",
+ "n_Ti = 1.0\t\t\t # number of titanium ion \n",
+ "e = 1.6e-19 \t\t# amount of one unit charge in coulomb\n",
+ "\n",
+ "#Calculations\n",
+ "p_Ti = n_Ti*Ti_charge *e*Ti_shift*1e-10\n",
+ "p_O = n_O*O_charge*e*O_shift*1e-10\n",
+ "p_o = n_o*o_charge*e*o_shift*1e-10\n",
+ "Total = p_Ti+p_O+p_o\n",
+ "P = Total/(4.03*3.98**2*1e-30)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Polarization of BaTiO3 crystal is %.2f Cm^-2 \" %P)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Polarization of BaTiO3 crystal is 0.16 Cm^-2 \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter2.ipynb b/Materials_Science_and_Engineering/Chapter2.ipynb new file mode 100755 index 00000000..ccf7b8e7 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter2.ipynb @@ -0,0 +1,108 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 02 : Equilibrium and Kinetics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.1, Page No 13"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "del_h = 6.02 #Heat added in kJ/mol\n",
+ "t_m = 273.15 #mean temperature in kelvin\n",
+ "\n",
+ "#Calculations\n",
+ "del_s = del_h*1e3/t_m\n",
+ "\n",
+ "#Results\n",
+ "print(\"Increase in entropy is %.2f J mol^-1 K^-1\" %del_s)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Increase in entropy is 22.04 J mol^-1 K^-1\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.2, Page No 16"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "E = 1.0 # energy in electron volt\n",
+ "e = 1.6e-19 # charge on electron\n",
+ "k = 1.38e-23 # constant\n",
+ "t1 = 300.0 # temperature in K\n",
+ "t2 = 1500.0 # temperature in K\n",
+ "\n",
+ "#Calculations\n",
+ "print(\"Part A:\")\n",
+ "n_N = math.exp(-(e/(k*t1)))\n",
+ "print(\"Fraction of atoms with energy equal to or greater than 1eV at temperature %.2f K \" %t1) #numerical value of answer in book is 2e-17\n",
+ "print(\" is %.2e \" %n_N)\n",
+ "print(\"Part B:\")\n",
+ "n_N = math.exp(-(e/(k*t2)))\n",
+ "\n",
+ "#Results\n",
+ "print(\"Fraction of atoms with energy equal to or greater than 1eV at temperature %.2f K \" %t2) #numerical value of answer in book is 4.3e4\n",
+ "print(\" is %.2e \" %n_N)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Part A:\n",
+ "Fraction of atoms with energy equal to or greater than 1eV at temperature 300.00 K \n",
+ " is 1.64e-17 \n",
+ "Part B:\n",
+ "Fraction of atoms with energy equal to or greater than 1eV at temperature 1500.00 K \n",
+ " is 4.40e-04 \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter3.ipynb b/Materials_Science_and_Engineering/Chapter3.ipynb new file mode 100755 index 00000000..6aa9a60d --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter3.ipynb @@ -0,0 +1,218 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 03 : Crystalgeometry and Structure Determination"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.2, Page No 25"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "sc_n = 1.0/8 \t\t# sharing of one lattice point in a unit cell\n",
+ "sc_N = 8.0\t\t \t# Number of lattice points in Simple cubic \n",
+ "bcc_n_e = 1.0/4\t\t# sharing of one edge lattice point in a BCC \n",
+ "bcc_N_e = 4.0\t\t# Number of edge lattice point in a BCC \n",
+ "bcc_n_c = 1.0\t\t# sharing of one body center lattice point in a BCC \n",
+ "bcc_N_c = 1.0\t\t# Number of body center lattice point in a BCC \n",
+ "fcc_n_e = 1.0/8 \t# sharing of one corner lattice point in a FCC \n",
+ "fcc_N_e = 8.0\t\t# Number of corner lattice point in a FCC \n",
+ "fcc_n_f = 1.0/2 \t# sharing of one face center lattice point in a FCC \n",
+ "fcc_N_f = 6.0\t\t# Number of face center lattice point in a FCC \n",
+ "\n",
+ "#Calculations\n",
+ "sc_net = sc_n*sc_N\n",
+ "bcc_net = bcc_n_e*bcc_N_e+bcc_n_c*bcc_N_c\n",
+ "fcc_net = fcc_n_e*fcc_N_e+fcc_n_f*fcc_N_f\n",
+ "\n",
+ "#Results\n",
+ "\n",
+ "print(\"Effective number of lattice points are as:\")\n",
+ "print(\"Space lattice \\t Abbreviation \\t Effective number of lattice point in unit cell \\n\")\n",
+ "print(\"Simple cubic \\t\\tSC \\t\\t %.2f \" %sc_net)\n",
+ "print(\"Body center cubic\\tBCC \\t\\t %.2f \" %bcc_net)\n",
+ "print(\"Face centered cubic\\tFCC \\t\\t %.2f \" %fcc_net)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Effective number of lattice points are as:\n",
+ "Space lattice \t Abbreviation \t Effective number of lattice point in unit cell \n",
+ "\n",
+ "Simple cubic \t\tSC \t\t 1.00 \n",
+ "Body center cubic\tBCC \t\t 2.00 \n",
+ "Face centered cubic\tFCC \t\t 4.00 \n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.7, Page No 40"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "a = 3.16 #lattice parameter in angstrom\n",
+ "l1 = 1.0 # line number\n",
+ "l2 = 2.0 # line number\n",
+ "l3 = 3.0 # line number\n",
+ "l4 = 4.0 # line number\n",
+ "theta1 = 20.3 # angle for line 1\n",
+ "theta2 = 29.2 # angle for line 2\n",
+ "theta3 = 36.7 # angle for line 3\n",
+ "theta4 = 43.6 # angle for line 4\n",
+ "n = 1 # order \n",
+ "lambda1 = 1.54 # wavelength in angstrom\n",
+ "\n",
+ "#Calculations\n",
+ "d1 = lambda1/(2*math.sin(theta1*math.pi/180))\n",
+ "d2 = lambda1/(2*math.sin(theta2*math.pi/180))\n",
+ "d3 = lambda1/(2*math.sin(theta3*math.pi/180))\n",
+ "d4 = lambda1/(2*math.sin(theta4*math.pi/180))\n",
+ "x1 = a**2/d1**2 \n",
+ "x2 = a**2/d2**2 \n",
+ "x3 = a**2/d3**2 \n",
+ "x4 = a**2/d4**2 \t\t# where x is function of h,k and l\n",
+ "\n",
+ "#Results\n",
+ "print(\"Interplanar spacing is %.3f angstrom \" %x1) # answer in book is 2.220 angstrom\n",
+ "if math.floor(x1) == 2 :\n",
+ " print(\"For a^2/d^2 = %.2f \\t Reflection plane is 110\" %math.floor(x1))\n",
+ "\n",
+ "if math.floor(x2) == 4 :\n",
+ "\tprint(\"For a^2/d^2 = %.2f \\t Reflection plane is 200\" %math.floor(x2))\n",
+ "\n",
+ "if math.floor(x3) == 6 :\n",
+ " print(\"For a^2/d^2 = %.2f \\t Reflection plane is 211\" %math.floor(x3))\n",
+ "\n",
+ "if math.floor(x4) == 8 :\n",
+ "\tprint(\"For a^2/d^2 = %.2f \\t Reflection plane is 220\" %math.floor(x4))\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Interplanar spacing is 2.027 angstrom \n",
+ "For a^2/d^2 = 2.00 \t Reflection plane is 110\n",
+ "For a^2/d^2 = 4.00 \t Reflection plane is 200\n",
+ "For a^2/d^2 = 6.00 \t Reflection plane is 211\n",
+ "For a^2/d^2 = 8.00 \t Reflection plane is 220\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.8, Page No 45"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "d = 114.6 # diameter of power camera in angstrom\n",
+ "lambda1 = 1.54 # wavelength in angstrom\n",
+ "s1 = 86.0\n",
+ "s2 = 100.0\n",
+ "s3 = 148.0\n",
+ "s4 = 180.0\n",
+ "s5 = 188.0\n",
+ "s6 = 232.0 \n",
+ "s7 = 272.0\n",
+ "\n",
+ "#Calculations\n",
+ "R = d/2 # Radius \n",
+ "if R==57.3 :\n",
+ " k = 1.0/4 \t\t\t# Bragg angle factor\n",
+ "a1 = (math.sin(s1*k*math.pi/180))**2\n",
+ "a2 = (math.sin(s2*k*math.pi/180))**2\n",
+ "a3 = (math.sin(s3*k*math.pi/180))**2\n",
+ "a4 = (math.sin(s4*k*math.pi/180))**2\n",
+ "a5 = (math.sin(s5*k*math.pi/180))**2\n",
+ "a6 = (math.sin(s6*k*math.pi/180))**2\n",
+ "a7 = (math.sin(s7*k*math.pi/180))**2\n",
+ "\n",
+ "c = 22 # constant to convert into integral number\n",
+ "\n",
+ "#Results\n",
+ "print(\"Within experimental error, values are as in integral ratio are as:\")\n",
+ "print(\"%.2f \" %math.ceil(c*a1))\n",
+ "print(\"%.2f \" %math.ceil(c*a2))\n",
+ "print(\"%.2f \" %math.ceil(c*a3))\n",
+ "print(\"%.2f \" %math.ceil(c*a4))\n",
+ "print(\"%.2f \" %math.ceil(c*a5))\n",
+ "print(\"%.2f \" %math.ceil(c*a6))\n",
+ "print(\"%.2f \" %math.ceil(c*a7))\n",
+ "\n",
+ "print(\"\\n So, this structure is FCC and material is copper with 3.62 angstrom lattice parameter\")\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Within experimental error, values are as in integral ratio are as:\n",
+ "3.00 \n",
+ "4.00 \n",
+ "8.00 \n",
+ "11.00 \n",
+ "12.00 \n",
+ "16.00 \n",
+ "19.00 \n",
+ "\n",
+ " So, this structure is FCC and material is copper with 3.62 angstrom lattice parameter\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter4.ipynb b/Materials_Science_and_Engineering/Chapter4.ipynb new file mode 100755 index 00000000..f3981a02 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter4.ipynb @@ -0,0 +1,146 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 04 : Atomic Structure and Chemical Bonding"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.1, Page No 56"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "\n",
+ "E = 1.64e-18 # energy difference between two states in J\n",
+ "h= 6.626e-34 # planks constant\n",
+ "c = 2.998e8 # speed of light in m/s\n",
+ "\n",
+ "#Calculations\n",
+ "nu = E/h\n",
+ "lambda1 = c/nu\n",
+ "\n",
+ "#Results\n",
+ "print(\"Frequency of emitted radiation is %.2e Hz\" %nu)\n",
+ "print(\"Wavelength of emitted radiation is %.2e m\" %lambda1) # answer in book is 1210 angstrom\n",
+ "print(\" %d angstrom \" %(lambda1*1e10))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Frequency of emitted radiation is 2.48e+15 Hz\n",
+ "Wavelength of emitted radiation is 1.21e-07 m\n",
+ " 1211 angstrom \n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.3, Page No 70"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "e_a = 713.0 # enthalpy of atomization in kJ/mol\n",
+ "e_b = 347.0 # bond energy in kJ/mol\n",
+ "a = 4.0 # total number of atoms in single crystal structure\n",
+ "b = 2 # number of atoms in a bond\n",
+ "\n",
+ "#Calculations\n",
+ "k = a/b \t\t# effective number of bond per atom\n",
+ "e = k*e_b\n",
+ "\n",
+ "#Results\n",
+ "print(\"%d kJ should be the enthalpy of atomization of diamond\" %e)\n",
+ "print(\"However, %d kJ is very close to \" %e)\n",
+ "print(\"%d kJ\" %e_a)\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "694 kJ should be the enthalpy of atomization of diamond\n",
+ "However, 694 kJ is very close to \n",
+ "713 kJ\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4, Page No 73"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "del_h = 6.02 # enthalpy of fusion in kJ/mol\n",
+ "n = 2.0 # number of hydrogen atom in 1 water atom\n",
+ "del_b = 20.5 # hydrogen bond energy in kJ/mol\n",
+ "\n",
+ "#Calculations\n",
+ "f = del_h/(n*del_b)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Fraction of hydrogen bonds which broken is %.2f\" %f)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Fraction of hydrogen bonds which broken is 0.15\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter5.ipynb b/Materials_Science_and_Engineering/Chapter5.ipynb new file mode 100755 index 00000000..446f509f --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter5.ipynb @@ -0,0 +1,227 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 05 : The structure of Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.1, Page No 86"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "\n",
+ "n_c = 1.0/8 \t# sharing of corner atom in a unit cell\n",
+ "N_c = 8.0 \t\t# Number of corner atoms in unit cell\n",
+ "n_b = 1.0 \t\t# sharing of body centered atom in a unit cell\n",
+ "N_b = 4.0 \t\t# Number of body centered atoms in unit cell\n",
+ "n_f = 0.5\t\t# sharing of face centered atom in a unit cell\n",
+ "N_f = 6.0\t\t# Number of face centered atoms in unit cell\n",
+ "a = 1.0\t\t\t # let lattice parameter\n",
+ "m = 12.0 \t\t# mass of carbon\n",
+ "\n",
+ "#Calculations\n",
+ "N = n_c*N_c+n_b*N_b+n_f*N_f # effective number of atoms\n",
+ "r = a*math.sqrt(3.0)/8\n",
+ "p_e = N*4/3*math.pi*r**3/a**3 \t\t# packing efficiency\n",
+ "print(\"Packing efficiency of diamond is %.2f\" %p_e)\n",
+ "a = 3.57 # lattice parameter in angstrom\n",
+ "d = m*1.66e-27*N/(a*1e-10)**3\n",
+ "\n",
+ "#Results\n",
+ "print(\"Density of diamond is %d Kg/m^3\" %d)\t\t\t# numerical answer in book is 3500\n",
+ "print(\"Density of diamond is %.1f g/cm^3\" %(d/1000))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Packing efficiency of diamond is 0.34\n",
+ "Density of diamond is 3502 Kg/m^3\n",
+ "Density of diamond is 3.5 g/cm^3\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.3, Page No 92"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "a = 1.0 # let\n",
+ "PR = a\n",
+ "\n",
+ "#Calculations\n",
+ "RT = a/math.sqrt(3)\n",
+ "PT = math.sqrt(PR**2-RT**2)\n",
+ "c_a = 2*PT/PR\n",
+ "\n",
+ "#Results\n",
+ "# Calculations are made on the crystal structure drawn in book\n",
+ "print(\"c/a ratio for an ideally close packed HCP crystal is %0.3f \" %c_a)\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "c/a ratio for an ideally close packed HCP crystal is 1.633 \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.4, Page No 94"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "r = 1.0 \t\t# let\n",
+ "a = 3.0/4.0\n",
+ "\n",
+ "#Calculations\n",
+ "pt = 2*math.sqrt(2/3)*r\n",
+ "s = a*pt-r \t\t\t# size of sphere\n",
+ "\n",
+ "#Results\n",
+ "print(\"Size of largest sphere that can fit into a tetrahedral void is %.3f r\" %s)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Size of largest sphere that can fit into a tetrahedral void is -1.000 r\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.5 Page No 99"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "theta = 60.0\t # angle in degree\n",
+ "\n",
+ "#Calculations\n",
+ "r_c_a = (2.0/3*2*math.sin(theta*math.pi/180))-1 # ratio calculation\n",
+ "\n",
+ "#Results\n",
+ "print(\"Critical radius ratio for triangular coordination is %0.3f \" %r_c_a)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Critical radius ratio for triangular coordination is 0.155 \n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.6, Page No 101"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "r_mg = 0.78 \t# radius of magnesium cation in angstrom\n",
+ "r_o = 1.32 \t\t# radius of oxygen anion in angstrom\n",
+ "n = 4.0 \t # effective number of unit cell\n",
+ "m_o = 16.0\t # mass of oxygen\n",
+ "m_mg = 24.3 \t# mass of magnesium\n",
+ "\n",
+ "#Calculations\n",
+ "a = 2*(r_mg+r_o)\t\t\t\t\t\t\t# lattice parameter\n",
+ "d = (m_o+m_mg)*1.66e-27*n/(a*1e-10)**3\t\t# density \n",
+ "\n",
+ "#Results\n",
+ "print(\"Density of MgO is %d Kg/m^3\" %d) \t# answer is 3610 kg/m^3\n",
+ "print(\"Density of MgO is %0.2f g/cm^3\" %(d/1000))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Density of MgO is 3611 Kg/m^3\n",
+ "Density of MgO is 3.61 g/cm^3\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter6.ipynb b/Materials_Science_and_Engineering/Chapter6.ipynb new file mode 100755 index 00000000..67f169f9 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter6.ipynb @@ -0,0 +1,248 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 06 : Crystal Interfections"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.1, Page No 125"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "t1 = 0 #temperature in kelvin\n",
+ "t2 = 300.0 #temperature in kelvin\n",
+ "t3 = 900.0 #temperature in kelvin\n",
+ "R = 8.314 #universal gas constant\n",
+ "del_hf_al = 68.0 #Enthalpy of formation of aluminium crystal in KJ\n",
+ "del_hf_ni = 168.0 #Enthalpy of formation of nickel crystal in KJ\n",
+ "print(\" Example 6.1\")\n",
+ "\n",
+ "#Calculations\n",
+ "print(\"Equilibrium concentration of vacancies of aluminium at %.2f K is 0\" %t1)\n",
+ "n_N = math.exp(-del_hf_al*1e3/(R*t2))\n",
+ "print(\" Equilibrium concentration of vacancies of aluminium at %.2f K \" %t2) # answer in book is 1.45e-12\n",
+ "print(\"is %.2e\" %(n_N))\n",
+ "n_N = math.exp(-del_hf_al*1e3/(R*t3))\n",
+ "print(\" Equilibrium concentration of vacancies of aluminium at %.2f K \" %t3) # answer in book is 1.12e-4\n",
+ "print(\"is %.2e \" %(n_N))\n",
+ "\n",
+ "#Results\n",
+ "print(\"Equilibrium concentration of vacancies of Nickel at %.2f K is 0\" %t1)\n",
+ "n_N = math.exp(-del_hf_ni*1e3/(R*t2))\n",
+ "print(\" Equilibrium concentration of vacancies of Nickel at %.2fK \" %t2) # answer in book is 1.45e-12\n",
+ "print(\"is %.2e\" %(n_N))\n",
+ "n_N = math.exp(-del_hf_ni*1e3/(R*t3))\n",
+ "print(\" Equilibrium concentration of vacancies of Nickel at %.2f K \" %t3) # answer in book is 1.78e-10\n",
+ "print(\"is %.2e \" %(n_N))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Example 6.1\n",
+ "Equilibrium concentration of vacancies of aluminium at 0.00 K is 0\n",
+ " Equilibrium concentration of vacancies of aluminium at 300.00 K \n",
+ "is 1.44e-12\n",
+ " Equilibrium concentration of vacancies of aluminium at 900.00 K \n",
+ "is 1.13e-04 \n",
+ "Equilibrium concentration of vacancies of Nickel at 0.00 K is 0\n",
+ " Equilibrium concentration of vacancies of Nickel at 300.00K \n",
+ "is 5.59e-30\n",
+ " Equilibrium concentration of vacancies of Nickel at 900.00 K \n",
+ "is 1.77e-10 \n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.2, Page No 132"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "a = 2.87 #lattice parameter in angstrom\n",
+ "b= 2.49 #magnitude of burgers vector in angstrom\n",
+ "G = 80.2 #shear modulus in GN\n",
+ "\n",
+ "#Calculations\n",
+ "E = G*1e9*(b*1e-10)**2*1.0/2 \n",
+ "\n",
+ "#Results\n",
+ "print(\"Line energy of dislocation is %.2e J m^-1\" %E)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Line energy of dislocation is 2.49e-09 J m^-1\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.4, Page No 136"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "a = 1.0e10 # total number of edge dislocation \n",
+ "N = 6.023e23 \t# Avogadro number\n",
+ "R = 8.314 \t# Universal gas constant\n",
+ "t1 = 0 \t# initial temperature in K\n",
+ "t2 = 1000.0\t # Final temperature in K\n",
+ "del_hf = 100.0 \t # Enthalpy of vacancy formation in KJ\n",
+ "d = 2.0 # length of one step in angstrom\n",
+ "\n",
+ "#Calculations\n",
+ "v = 5.5/10**6 # volume of one mole crystal\n",
+ "n = N*math.exp(-(del_hf*1e03)/(R*(t2-t1)))/v\n",
+ "k = 1.0/(d*1e-10 ) # atoms required for 1 m climb\n",
+ "b = n/(k*a)# average amount of climb\n",
+ "c = b*d*1e-10 \n",
+ "\n",
+ "#Results\n",
+ "print(\"Average down climb of crystal is %.2e m\" %c)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average down climb of crystal is 2.62e-06 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.5 Page No 137"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "\n",
+ "E = 56.4 #bond energy in KJ\n",
+ "N_a = 6.023e23 #Avogadro\u2019s number\n",
+ "n = 12.0 #number of bonds\n",
+ "m = 3.0 #number of broken bonds \n",
+ "N = 1.77e19 #number of atoms in copper crystal of type {111} per m^2\n",
+ "\n",
+ "#Calculations\n",
+ "b_e = 1.0/2*E*1e3*n/N_a #bond energy per atom\n",
+ "e_b = b_e*m/n #energy of broken bond at surface\n",
+ "s_e = e_b*N #surface enthalpy of copper\n",
+ "\n",
+ "#Results\n",
+ "print(\"Surface enthalpy of copper is %0.2f J m^-2\" %s_e)\n",
+ "print(\"Surface enthalpy of copper is %0.2f erg cm^-2\" %(s_e*1e3))\n",
+ "# Answer in book is 2490 erg cm^-2\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Surface enthalpy of copper is 2.49 J m^-2\n",
+ "Surface enthalpy of copper is 2486.17 erg cm^-2\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.6, Page No 141"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "Gamma_gb = 1.0 #let, energy of grain boundary\n",
+ "\n",
+ "#Calculations\n",
+ "Gamma_s = 3.0*Gamma_gb #energy of free surface\n",
+ "theta = 2*math.degrees(math.acos(1.0/2*Gamma_gb/Gamma_s))\n",
+ "\n",
+ "#Results\n",
+ "print(\"Angle at the bottom of groove of a boundary is %0.2f degrees.\" %math.ceil(theta))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Angle at the bottom of groove of a boundary is 161.00 degrees.\n"
+ ]
+ }
+ ],
+ "prompt_number": 28
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter7.ipynb b/Materials_Science_and_Engineering/Chapter7.ipynb new file mode 100755 index 00000000..f6cbd6b8 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter7.ipynb @@ -0,0 +1,178 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 07 : Phase Diagrams"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.1, Page No 149"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "c = 2.0 # number of components\n",
+ "\n",
+ "#Calculations\n",
+ "for n in range(1,5):\n",
+ " p = (c-1) +2 # Total variables\n",
+ " f = c-n+2 # degree of freedom\n",
+ " print(\"Degree of freedom for two components when number of phases is %d is %d\" %(n, f))\n",
+ " \n",
+ "#Results\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Degree of freedom for two components when number of phases is 1 is 3\n",
+ "Degree of freedom for two components when number of phases is 2 is 2\n",
+ "Degree of freedom for two components when number of phases is 3 is 1\n",
+ "Degree of freedom for two components when number of phases is 4 is 0\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.2, Page No 152"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "p = 4.0\t\t# number of phases of system\n",
+ "f = 0 # number of degree of system\n",
+ "\n",
+ "#Calculations\n",
+ "C = f+p-1 # components number\n",
+ "\n",
+ "#Results\n",
+ "print(\"Minimum number of components in system is %d\" %C)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Minimum number of components in system is 3\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.3, Page No 160"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "L = 23.3 \t\t# % composition of L\n",
+ "a = 3.5 # concentration of Nacl in sea water\n",
+ "ice = 0 # % composition of ice\n",
+ "\n",
+ "#Calculations\n",
+ "f_ice = (L-a)/(L-ice)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Fractional amount of pure water that can be extracted from sea water is %0.2f\" %f_ice)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Fractional amount of pure water that can be extracted from sea water is 0.85\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.5 Page No 167"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "a = 0 \t\t# limiting value\n",
+ "b = 0.8 # limiting value\n",
+ "c = 0.6 # percentage composition of carbon\n",
+ "f = 0.88 # fraction of ferrite in a eutectoid steel\n",
+ "\n",
+ "#Calculations\n",
+ "f_pro_alpha = (b-c)/(b-a)\n",
+ "f_perlite = 1 - f_pro_alpha\n",
+ "f_eut = f*f_perlite\n",
+ "\n",
+ "#Results\n",
+ "print(\"Composition of proeutectoid ferrite is %0.2f\" %f_pro_alpha)\n",
+ "print(\"Composition of eutectoid ferrite is %0.2f\" %f_eut)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Composition of proeutectoid ferrite is 0.25\n",
+ "Composition of eutectoid ferrite is 0.66\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter8.ipynb b/Materials_Science_and_Engineering/Chapter8.ipynb new file mode 100755 index 00000000..3048ed1f --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter8.ipynb @@ -0,0 +1,245 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 08 : Diffusion in Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.1, Page No 180"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "t = 5.0 # thickness in mm\n",
+ "c = 10.0 # concentration\n",
+ "D = 1e-9 # diffusion coefficient\n",
+ "\n",
+ "#Calculations\n",
+ "j = D*c/(t*1e-3)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Outward flux is %.0e kg m^-2 s^-1\" %j)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Outward flux is 2e-06 kg m^-2 s^-1\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.2, Page No 186"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "D_0 = 0.24e-4 \t# diffusion coefficient\n",
+ "Q = 121e3\n",
+ "R = 8.314\t# Universal gas constant\n",
+ "T = 550 \t# temperature in Celsius\n",
+ "k = 0.2 \t# thickness of pure Al sheet in mm\n",
+ "d = 0.1 \t# penetration depth in mm\n",
+ "c_x = 0.4 \t# concentration in percentage\n",
+ "A = 2.0 \t# Constant in percentage\n",
+ "B = 2.0\t\t# Constant in percentage\n",
+ "\n",
+ "#Calculations\n",
+ "x = d-k\n",
+ "D_cu_al = D_0*math.exp(-Q/(R*(T+273))) \n",
+ "k = (A-c_x)/B\n",
+ "if k ==0.8 :\n",
+ " z = 0.9 # from table\n",
+ "\n",
+ "t = (x*1e-3)**2/(z**2*4*D_cu_al)\t# time in sec\n",
+ "\n",
+ "#Results\n",
+ "print(\"Material can be kept at %d degree Celsius for nearly %d minute\" %(T,(t/60)))\t# answer in book is 100 min\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Material can be kept at 550 degree Celsius for nearly 102 minute\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.3, Page No 188"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "D_0 = 0.7e-4 \t # diffusion coefficient\n",
+ "Q = 157.0\t\t # Energy in kJ mol^-1, considered from table 8.2\n",
+ "R = 8.314\t\t # Universal gas constant\n",
+ "T = 950.0\t\t # temperature in Celsius\n",
+ "c2 = 0.8 \t\t # concentration in percentage\n",
+ "cs = 0 \t\t\t # concentration in percentage\n",
+ "c_x = 0.6 # concentration in percentage\n",
+ "t = 4.0 # time in hours\n",
+ "a = 1.0 #let\n",
+ "\n",
+ "#Calculations\n",
+ "A = cs\n",
+ "B = c2-cs \n",
+ "D = D_0*math.exp(-Q*1e3/(R*(T+273)))\n",
+ "k = math.erf(((A-c_x)/B))*-1\n",
+ "if k >0.7 :\n",
+ " if k<0.712 :\n",
+ " z = 0.81 # from table\n",
+ "\n",
+ "x = z*2*math.sqrt(D*t*3600.0)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Depth up to which machining is required is nearly %.2f mm\" %(x*1e3))\n",
+ "\n",
+ "# numerical value of answer in book is 0.75\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Depth up to which machining is required is nearly 0.72 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.4 Page No 189"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "D = 4e-17 \t\t# diffusion coefficient\n",
+ "c1 = 0\n",
+ "cs = 3e26\n",
+ "c_x = 1e23 \t\t# number of atoms\n",
+ "x = 2e-6 \t\t# depth in m\n",
+ "\n",
+ "#Calculations\n",
+ "A = cs\n",
+ "B = cs - c1\n",
+ "k = (A-c_x)/B\n",
+ "if k >0.99966 :\n",
+ " if k< 0.9997 :\n",
+ " z = 2.55 # from table\n",
+ "\n",
+ "t = x**2/(z**2*4*D) # time in sec\n",
+ "\n",
+ "#Results\n",
+ "print(\"Time required to get required boron concentration is %d sec\" %t) # answer in book is 3845 sec\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Time required to get required boron concentration is 3844 sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.5, Page No 194"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "r = 10.0 # radius in mm\n",
+ "t = 4.0 # thickness in angstrom\n",
+ "\n",
+ "#Calculations\n",
+ "r = 2*math.pi*r*1e-3*t*1e-10/(math.pi*(r*1e-3)**2)\n",
+ "\n",
+ "#Results\n",
+ "print(\"Ratio of cross sectional areas is %.0e \" %r)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Ratio of cross sectional areas is 8e-08 \n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/Chapter9.ipynb b/Materials_Science_and_Engineering/Chapter9.ipynb new file mode 100755 index 00000000..3c213c69 --- /dev/null +++ b/Materials_Science_and_Engineering/Chapter9.ipynb @@ -0,0 +1,205 @@ +{
+ "metadata": {
+ "name": ""
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 09 : Phase Transformations"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.1, Page No 206"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "del_t1 = 0\t\t# temperature difference in degree Celsius\n",
+ "del_t2 = -5 # temperature difference in degree Celsius\n",
+ "del_t3 = -40 # temperature difference in degree Celsius\n",
+ "del_h = 6.02 # enthalpy of fusion in kJ/mol\n",
+ "T_m = 273.0 # mean temperature\n",
+ "Gamma = 0.076 # energy of ice water interface in J /m^2\n",
+ "v = 19.0 # molar volume of ice\n",
+ "\n",
+ "#Calculations\n",
+ "print(\" Part A\")\n",
+ "print(\" At del_t = %d, there is no supercooling. So there is no critical radius\" %del_t1)\n",
+ "print(\" Part B\")\n",
+ "del_f = 16.0/3*math.pi*(Gamma)**3*T_m**2/((del_h*1e3*1e6/v)**2*del_t2**2)\n",
+ "r = 2*T_m*Gamma/(-del_h*1e3*1e6/v*del_t2)\n",
+ "print(\" Critical free energy of nucleation is %.1eJ\" %del_f)\n",
+ "print(\" Critical radius is %d angstrom\" %math.ceil(r*1e10))\n",
+ "print(\" Part C\")\n",
+ "temp_r = del_t3/del_t2\n",
+ "del_f_ = del_f/temp_r**2\n",
+ "r_ = r/temp_r\n",
+ "\n",
+ "#Results\n",
+ "print(\" Critical free energy of nucleation is %.1eJ\" %del_f_)\n",
+ "print(\" Critical radius is %d angstrom.\" %math.ceil(r_*1e10))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " Part A\n",
+ " At del_t = 0, there is no supercooling. So there is no critical radius\n",
+ " Part B\n",
+ " Critical free energy of nucleation is 2.2e-16J\n",
+ " Critical radius is 262 angstrom\n",
+ " Part C\n",
+ " Critical free energy of nucleation is 3.4e-18J\n",
+ " Critical radius is 33 angstrom.\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.2, Page No 208"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "T= 300.0 # temperature in kelvin\n",
+ "R = 8.314 # universal gas constant\n",
+ "k = 2.303 # conversion factor\n",
+ "a1 = 1e42\n",
+ "a2 = 1e6 \t # nucleation rate\n",
+ "a3 = 1e10 # nucleation rate\n",
+ "\n",
+ "#Calculations\n",
+ "I1 = (math.log(a1,10)-math.log(a2,10))*k*R*T #exponent factor\n",
+ "I2 = (math.log(a1)-math.log(a3))*k*R*T # exponent factor\n",
+ "del_f = I1-I2 # difference \n",
+ "a = 10**(math.log(a3,10)-math.log(a2,10))\n",
+ "\n",
+ "#Results\n",
+ "print(\"A change of %d KJ mol^-1 energy is required to increase nucleation factor from \\n %.0e m^-3 s^-1 to %.0e m^-3 s^-1 \" %(math.ceil(del_f/1e3),a,a3))\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "A change of -216 KJ mol^-1 energy is required to increase nucleation factor from \n",
+ " 1e+04 m^-3 s^-1 to 1e+10 m^-3 s^-1 \n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4, Page No 211"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "Gamma_alpha_del = 0.5 # in J m^-2\n",
+ "Gamma_alpha_beta = 0.5 # in J m^-2\n",
+ "Gamma_beta_del = 0.01 # in J m^-2\n",
+ "\n",
+ "#Calculations\n",
+ "theta = math.acos((Gamma_alpha_del -Gamma_beta_del)/Gamma_alpha_beta)\n",
+ "del_f_ratio = 1.0/4*(2-3*math.cos(theta)+(math.cos(theta))**3)\n",
+ "\n",
+ "#Results\n",
+ "print(\"del_f_het is %0.4f th fraction of del_f_homo.\" %del_f_ratio)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "del_f_het is 0.0003 th fraction of del_f_homo.\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.6 Page No 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "#initialisation of variables\n",
+ "mu = 45.5e9\n",
+ "b = 2.55e-10\n",
+ "n1 = 1e9 \t\t# initial dislocation density\n",
+ "n2 = 1e13 # final dislocation density\n",
+ "\n",
+ "#Calculations\n",
+ "\n",
+ "E = 1.0/2*mu*b**2*n2\n",
+ "del_g = E # as difference between initial and final dislocation energy is four order magnitude\n",
+ "\n",
+ "#Results\n",
+ "print(\"Free energy change during recrystallization is %d J m^-3\" %-del_g)\n",
+ "\n",
+ "#Numerical value of answer in book is 14800\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Free energy change during recrystallization is -14793 J m^-3\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/README.txt b/Materials_Science_and_Engineering/README.txt new file mode 100755 index 00000000..c08a7118 --- /dev/null +++ b/Materials_Science_and_Engineering/README.txt @@ -0,0 +1,10 @@ +Contributed By: Mayur Sabban +Course: be +College/Institute/Organization: Vishwakarma Institute of Technology Pune +Department/Designation: Computer Engg +Book Title: Materials Science and Engineering +Author: Raghavan.V. +Publisher: Prentice Hall of India. +Year of publication: 2004 +Isbn: 9788120324558 +Edition: 5
\ No newline at end of file diff --git a/Materials_Science_and_Engineering/screenshots/Chapter2.png b/Materials_Science_and_Engineering/screenshots/Chapter2.png Binary files differnew file mode 100755 index 00000000..79cadae6 --- /dev/null +++ b/Materials_Science_and_Engineering/screenshots/Chapter2.png diff --git a/Materials_Science_and_Engineering/screenshots/Chapter3.png b/Materials_Science_and_Engineering/screenshots/Chapter3.png Binary files differnew file mode 100755 index 00000000..c4dbe6b1 --- /dev/null +++ b/Materials_Science_and_Engineering/screenshots/Chapter3.png diff --git a/Materials_Science_and_Engineering/screenshots/Chapter4.png b/Materials_Science_and_Engineering/screenshots/Chapter4.png Binary files differnew file mode 100755 index 00000000..8222f086 --- /dev/null +++ b/Materials_Science_and_Engineering/screenshots/Chapter4.png |