summaryrefslogtreecommitdiff
path: root/sample_notebooks/MayurSabban/Chapter6.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'sample_notebooks/MayurSabban/Chapter6.ipynb')
-rwxr-xr-xsample_notebooks/MayurSabban/Chapter6.ipynb248
1 files changed, 248 insertions, 0 deletions
diff --git a/sample_notebooks/MayurSabban/Chapter6.ipynb b/sample_notebooks/MayurSabban/Chapter6.ipynb
new file mode 100755
index 00000000..ffc62fd3
--- /dev/null
+++ b/sample_notebooks/MayurSabban/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 Imperfection"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.1, Page No 148"
+ ]
+ },
+ {
+ "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 149"
+ ]
+ },
+ {
+ "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 149"
+ ]
+ },
+ {
+ "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 150"
+ ]
+ },
+ {
+ "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 151"
+ ]
+ },
+ {
+ "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