summaryrefslogtreecommitdiff
path: root/Modern_Physics_for_Scientists_and_Engineers
diff options
context:
space:
mode:
authorhardythe12015-05-05 14:21:39 +0530
committerhardythe12015-05-05 14:21:39 +0530
commitfba055ce5aa0955e22bac2413c33493b10ae6532 (patch)
treebe70ef4fccd07c9c88de778014219201b4ea971f /Modern_Physics_for_Scientists_and_Engineers
parent67068710030ddd6b6c809518c34af2e04e0bf7ca (diff)
downloadPython-Textbook-Companions-fba055ce5aa0955e22bac2413c33493b10ae6532.tar.gz
Python-Textbook-Companions-fba055ce5aa0955e22bac2413c33493b10ae6532.tar.bz2
Python-Textbook-Companions-fba055ce5aa0955e22bac2413c33493b10ae6532.zip
add books
Diffstat (limited to 'Modern_Physics_for_Scientists_and_Engineers')
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch10.ipynb321
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch11.ipynb238
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch12.ipynb712
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch13.ipynb432
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch14.ipynb190
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch15.ipynb156
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch16.ipynb336
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch2.ipynb505
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch3.ipynb553
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch4.ipynb368
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch5.ipynb447
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch6.ipynb315
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch7.ipynb378
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch8.ipynb158
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/ch9.ipynb285
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/screenshots/neutprotdecay.pngbin0 -> 81529 bytes
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/screenshots/nonrelativistic.pngbin0 -> 56174 bytes
-rwxr-xr-xModern_Physics_for_Scientists_and_Engineers/screenshots/probability_part.pngbin0 -> 78649 bytes
18 files changed, 5394 insertions, 0 deletions
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch10.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch10.ipynb
new file mode 100755
index 00000000..3a48029f
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch10.ipynb
@@ -0,0 +1,321 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:0de7fdc3a9080098412999030f35bc2fb5913b94ca2786fe525f30a16f00b7a8"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10: Molecules, Lasers and Solids"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.1, Page 342"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "m = 2.33e-026; # Mass of a nitrogen atom, kg\n",
+ "R = 1.1e-010; # Interatomic separation between two nitrogen atoms, m\n",
+ "h = 6.626e-034; # Planck's constant, Js\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "\n",
+ "#Calculations\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "I = m*R**2/2; # Momemt of rotational inertia of nitrogen gas molecule, kg-Sq.m\n",
+ "l = 1; # Rotational angular momentum quantum number\n",
+ "E_rot = h_bar**2*l*(l+1)/(2*I); # The energy for lowest rotational state of the nitrogen molecule, J\n",
+ "\n",
+ "#Result\n",
+ "print \"The energy for lowest rotational state of the nitrogen molecule = %4.2e eV\"%(E_rot/e)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy for lowest rotational state of the nitrogen molecule = 4.93e-04 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.2, Page 343"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.626e-034; # Planck's constant, Js\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "u = 1.67e-027; # Mass equivalent of 1 amu, kg\n",
+ "\n",
+ "#Calculations\n",
+ "m1 = 34.97*u; # Atomic mass of chlorine atom, kg\n",
+ "m2 = 1.008*u; # Atomic mass of hydrogen atom, kg\n",
+ "mu = m1*m2/(m1 + m2); # Reduced mass of the HCl system, kg\n",
+ "delta_E = 0.36; # Spacing between vibrational energy levels of the HCl molecule, eV\n",
+ "omega = delta_E*e/h_bar; # Angular frequency of vibration, rad/s\n",
+ "kapa = mu*omega**2; # Effective force constant for HCl molecule, N/m\n",
+ "T = delta_E*e/k; # Classical temperature associated with the rotational energy spacing, K\n",
+ "\n",
+ "#Results\n",
+ "print \"The effective force constant for HCl molecule = %3d N/m\"%(math.ceil(kapa))\n",
+ "print \"The classical temperature associated with the rotational energy spacing = %4d K\"%(math.ceil(T))\n",
+ "#answers differ due to rounding errors"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The effective force constant for HCl molecule = 489 N/m\n",
+ "The classical temperature associated with the rotational energy spacing = 4174 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.4, Page 358"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "e = 1.602e-019; # Charge on an electron, C\n",
+ "N_A = 6.023e+023; # Avogadro's number\n",
+ "alpha = 1.7476; # Madelung constant\n",
+ "E = -764.4e+003; # Dissociation energy of NaCl molecule, J/mol\n",
+ "V = E/N_A; # Repulsive potential energy, J\n",
+ "k = 8.988e+009; # Coulomb's constant, N-Sq.m/C^2\n",
+ "r0 = 0.282e-009; # Equilibrium separation for nearest neighbour in NaCl, m\n",
+ "\n",
+ "#Calculations\n",
+ "rho = r0*(1+r0*V/(k*alpha*e**2)); # Range parameter for NaCl, nm\n",
+ "\n",
+ "#Result\n",
+ "print \"The range parameter for NaCl = %6.4f nm\"%(rho/1e-009)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The range parameter for NaCl = 0.0316 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.5, Page 365"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "e = 1.602e-019; # Charge on an electron, C\n",
+ "r = 5.29e-011; # Orbital radius of electron equal to Bohr radius, m\n",
+ "B = 2.0; # Applied magnetic field, T\n",
+ "m = 9.11e-031; # Mass of an electron, kg\n",
+ "\n",
+ "#Calculations\n",
+ "delta_mu = e**2*r**2*B/(4*m); # Induced diamagnetic moment in the atom, J/T\n",
+ "\n",
+ "#Result\n",
+ "print \"The induced diamagnetic moment in the atom = %3.1e J/T\"%delta_mu"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The induced diamagnetic moment in the atom = 3.9e-29 J/T\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.6, Page 366"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "mu_B = 9.27e-024; # Bohr's magneton, J/T\n",
+ "B = 0.50; # Applied magnetic field, T\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "\n",
+ "#Calculations&Results\n",
+ "T = 10*mu_B*B/k; # Temperature at which mu*B = 0.1k*T, K\n",
+ "b_muB = mu_B*B/(k*T);\n",
+ "ratio = b_muB/math.tanh(b_muB); # Ratio of b_muB and tanh(b_muB)\n",
+ "if (ratio - 1) < 0.01:\n",
+ " print \"The value of T = %4.2f K is suitable as a classical temperature.\"%T\n",
+ "else:\n",
+ " print \"The value of T = %4.2f K is not suitable as a classical temperature.\"%T\n",
+ "\n",
+ "# For higher temperature\n",
+ "T = 100; # Given temperature\n",
+ "b_muB = mu_B*B/(k*T);\n",
+ "ratio = b_muB/math.tanh(b_muB); # Ratio of b_muB and tanh(b_muB)\n",
+ "if (ratio - 1) < 0.001:\n",
+ " print \"At the value of T = %4.2f K, the approximation is an excellent one.\"%T\n",
+ "else:\n",
+ " print \"At the value of T = %4.2f K, the approximation is not an excellent.\"%T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The value of T = 3.36 K is suitable as a classical temperature.\n",
+ "At the value of T = 100.00 K, the approximation is an excellent one.\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.7, Page 374"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "T_c = 9.25; # Critical temperature for niobium, K\n",
+ "\n",
+ "#Calculations\n",
+ "E_g = 3.54*k*T_c; # Energy gap for niobium from BCS theory, J\n",
+ "lamda = h*c/E_g; # Minimum photon wavelength needed to break the Cooper pair, m\n",
+ "\n",
+ "#Results\n",
+ "print \"The energy gap for niobium = %4.2f meV\"%(E_g/(e*1e-003))\n",
+ "print \"The minimum photon wavelength needed to break the Cooper pair = %4.2e m\"%lamda"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy gap for niobium = 2.82 meV\n",
+ "The minimum photon wavelength needed to break the Cooper pair = 4.39e-04 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 10.8, Page 382"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "r = 1e-002; # Radius of the loop, m\n",
+ "phi0 = 2.068e-015; # Magnetic flux penetrating to the loop, T-Sq.m\n",
+ "\n",
+ "#Calculations\n",
+ "A = math.pi*r**2; # Area of the loop, Sq.m\n",
+ "B = phi0/A; # Magnetic field perpendicular to the loop, T\n",
+ "\n",
+ "#Result\n",
+ "print \"The magnetic field perpendicular to the loop = %4.2e T\"%B"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The magnetic field perpendicular to the loop = 6.58e-12 T\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch11.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch11.ipynb
new file mode 100755
index 00000000..5100297e
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch11.ipynb
@@ -0,0 +1,238 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:dd227268a9d19f5e7b124ff2e3d8219b9fcc3bf4655f5f8e908de4958335cce5"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11: Semiconductor Theory and Devices"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.1, Page 400"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import numpy\n",
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "T = 293; # Room temperature, K\n",
+ "\n",
+ "#Calculations&Results\n",
+ "dE = [0.10, 1.0, 10.0]; # Energies above the valence band, eV\n",
+ "F_FD = numpy.zeros(3);\n",
+ "for i in range(0,3):\n",
+ " F_FD[i] = 1/(math.exp(dE[i]*e/(k*T)) + 1);\n",
+ " print \"For E - E_F = %4.2f eV, F_FD = %4.2e\"%(dE[i], F_FD[i])\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For E - E_F = 0.10 eV, F_FD = 1.88e-02\n",
+ "For E - E_F = 1.00 eV, F_FD = 6.53e-18\n",
+ "For E - E_F = 10.00 eV, F_FD = 1.40e-172\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.3, Page 402"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "rho = 5.92e-008; # Resistivity of the zinc at room temperature, ohm-m\n",
+ "B = 0.25; # Magnetic field applied perpendicular to the strip, T\n",
+ "x = 10.0e-002; # Length of the zinc strip, m\n",
+ "y = 2.0e-002; # Width of the zinc strip, m\n",
+ "V = 20e-003; # Potential difference applied across the strip, V\n",
+ "I = 0.400; # Current through the strip, A\n",
+ "V_H = 0.56e-006; # Hall voltage that appeared across the strip, V\n",
+ "\n",
+ "#Calculations\n",
+ "z = rho*x*I/(y*V); # Thickness of the strip, m\n",
+ "n = I*B/(e*V_H*z); # Number density of the charge carriers, per metre cube\n",
+ "\n",
+ "#Results\n",
+ "print \"The thickness of the zinc strip = %4.2e m\"%z\n",
+ "print \"The number density of the charge carriers = %4.2e per metre cube\"%n\n",
+ "print \"The charge carries in zinc are positive.\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The thickness of the zinc strip = 5.92e-06 m\n",
+ "The number density of the charge carriers = 1.89e+29 per metre cube\n",
+ "The charge carries in zinc are positive.\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.4, Page 408"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "T = 293; # Room temperature, K\n",
+ "V_f = 0.200; # Forward voltage, V\n",
+ "I_f = 50e-003; # Forward current, A\n",
+ "V_r = -0.200; # Reverse voltage, V\n",
+ "\n",
+ "#Calculations\n",
+ "I_r = I_f*(math.exp(e*V_r/(k*T))-1)/(math.exp(e*V_f/(k*T)) - 1); # Reverse current from diode equation, A\n",
+ "\n",
+ "#Result\n",
+ "print \"The reverse current through pn-junction diode = %2d micro-ampere\"%(I_r/1e-006)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The reverse current through pn-junction diode = -18 micro-ampere\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.5, Page 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "A = 100*100; # Area of solar cell, Sq.m\n",
+ "t = 12*60*60; # Time for which the solar cell operates, s\n",
+ "phi = 680; # Solar flux received by the solar cell, W/Sq.m\n",
+ "eta = 0.30 # Efficiency of the solar array\n",
+ "\n",
+ "#Calculations&Results\n",
+ "E_array = eta*phi*A*t; # Energy produced by solar cell in one 12-hour day, J\n",
+ "print \"The energy produced by solar cell in one 12-hour day : %3.1e J\"%E_array\n",
+ "P = 100e+006; # Power output of power plant, W\n",
+ "t = 24*60*60; # Time for which power plant operates, s\n",
+ "E_plant = P*t; # Energy produced by power plant, J\n",
+ "print \"The energy produced by power plant in one day : %3.1e J which is about %d times more than that produced by solar cell array..!\"%(E_plant, math.ceil(E_plant/E_array))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy produced by solar cell in one 12-hour day : 8.8e+10 J\n",
+ "The energy produced by power plant in one day : 8.6e+12 J which is about 99 times more than that produced by solar cell array..!\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 11.6, Page 418"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "r1 = 2.30e-002; # Radius of inner edge of storing region of CD-ROM, m\n",
+ "r2 =5.80e-002; # Radius of outer edge of storing region of CD-ROM, m\n",
+ "A = math.pi*(r2**2 - r1**2); # Area of the usable region of CD-ROM, Sq.m\n",
+ "N = 700e+006*8; # Total number of bits in CD-ROM\n",
+ "\n",
+ "#Calculations\n",
+ "APB = A/N; # Area per bit of CD-ROM, Sq.m/bit\n",
+ "t = 1.6e-006; # Track width of CD_ROM, m\n",
+ "l = APB/t; # Bit length, m\n",
+ "\n",
+ "#Results\n",
+ "print \"The surface area of CD-ROM allowed for each data bit = %3.1e Sq.m/bit\"%APB\n",
+ "print \"The approx. dimensions of each bit along the track = %1.0f micro-metre\"%(l/1e-006)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The surface area of CD-ROM allowed for each data bit = 1.6e-12 Sq.m/bit\n",
+ "The approx. dimensions of each bit along the track = 1 micro-metre\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch12.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch12.ipynb
new file mode 100755
index 00000000..6fa33209
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch12.ipynb
@@ -0,0 +1,712 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:6270762d6231ec0577735987cb74ce2b57535e026b96bfac7596018acfb359e4"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12: The Atomic Nuleus"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.1, Page 432"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "m = 1.67e-027; # Rest mass of proton, kg\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "delta_x = 8.0e-015; # Size of the nucleus, m\n",
+ "\n",
+ "#Calculations\n",
+ "delta_p = h_bar/(2*delta_x*e); # Uncertainty in momentum of proton from Heisenberg Uncertainty Principle, eV-s/m\n",
+ "p_min = delta_p; # Minimum momentum of the proton inside the nucleus, eV-s/m\n",
+ "K = (p_min*c)**2*e/(2*m*c**2*1e+006); # The minimum kinetic energy of the proton in a medium sized nucleus, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The minimum kinetic energy of the proton in a medium sized nucleus = %4.2f MeV\"%K"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The minimum kinetic energy of the proton in a medium sized nucleus = 0.08 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.2, Page 436"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "m_e = 0.511; # Rest mass energy of electron, MeV\n",
+ "m_p = 938.3; # Rest mass energy of proton, MeV\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "A = 40; # Mass number of Ca-40\n",
+ "r0 = 1.2; # Nuclear radius constant, fm\n",
+ "\n",
+ "#Calculations&Results\n",
+ "R = r0*A**(1./3); # Radius of Ca-40 nucleus, fm\n",
+ "print \"The radius of Ca-40 nucleus = %3.1f fm\"%R\n",
+ "lamda = 2.0; # de-Broglie wavelength to distinguish a distance at least half the radius, fm\n",
+ "# Electron energy\n",
+ "E = math.ceil(math.sqrt(m_e**2+(h*c/(lamda*e*1e+006*1e-015))**2)); # Total energy of the probing electron, MeV\n",
+ "K = E - m_e; # Kinetic energy of probing electron, MeV\n",
+ "print \"The kinetic energy of probing electron = %3d MeV\"%math.ceil(K)\n",
+ "# Proton energy\n",
+ "E = math.ceil(math.sqrt(m_p**2+(h*c/(lamda*e*1e+006*1e-015))**2)); # Total energy of the probing electron, MeV\n",
+ "K = E - m_p; # Kinetic energy of probing electron, MeV\n",
+ "print \"The kinetic energy of probing proton = %3d MeV\"%math.ceil(K)\n",
+ "\n",
+ "#answers differ due to rounding errors"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The radius of Ca-40 nucleus = 4.1 fm\n",
+ "The kinetic energy of probing electron = 620 MeV\n",
+ "The kinetic energy of probing proton = 187 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.3, Page 437"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "A_U238 = 238; # Mass number of U-238\n",
+ "A_He4 = 4; # Mass number of He-4\n",
+ "r0 = 1.2; # Nuclear radius constant, nm\n",
+ "\n",
+ "#Calculations&Results\n",
+ "R_U238 = r0*A_U238**(1./3); # Radius of U-238 nucleus, fm\n",
+ "R_He4 = r0*A_He4**(1./3); # Radius of He-4 nucleus, fm\n",
+ "print \"The radii of U-238 and He-4 nuclei are %3.1f fm and %3.1f fm repectively\"%(R_U238, R_He4)\n",
+ "ratio = R_U238/R_He4; # Ratio of the two radii\n",
+ "print \"The ratio of radius to U-238 to that of He-4 = %3.1f\"%ratio"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The radii of U-238 and He-4 nuclei are 7.4 fm and 1.9 fm repectively\n",
+ "The ratio of radius to U-238 to that of He-4 = 3.9\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.4, Page 438"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "B = 2.0; # Applied magnetic field, T\n",
+ "mu_N = 3.15e-008; # Nucleon magnetic moment, eV/T\n",
+ "\n",
+ "#Calculations\n",
+ "mu_p = 2.79*mu_N; # Proton magnetic moment, eV/T\n",
+ "delta_E = 2*mu_p*B; # Energy difference between the up and down proton states, eV\n",
+ "f = delta_E*e/h; # Frequency of electromagnetic radiation that flips the proton spins, Hz\n",
+ "lamda = c/f; # Wavelength of electromagnetic radiation that flips the proton spins, m\n",
+ "\n",
+ "#Results\n",
+ "print \"The energy difference between the up and down proton states = %3.1e eV\"%delta_E\n",
+ "print \"The frequency of electromagnetic radiation that flips the proton spins = %2d MHz\"%(f/1e+006)\n",
+ "print \"The wavelength of electromagnetic radiation that flips the proton spins = %3.1f m\"%lamda"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy difference between the up and down proton states = 3.5e-07 eV\n",
+ "The frequency of electromagnetic radiation that flips the proton spins = 85 MHz\n",
+ "The wavelength of electromagnetic radiation that flips the proton spins = 3.5 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.5, Page 443"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "m_n = 1.008665; # Mass of a neutron, u\n",
+ "M_H = 1.007825; # Mass of a proton, u\n",
+ "M_He = 4.002603; # Mass of helium nucleus\n",
+ "M_Be = 8.005305; # Mass of Be-8, u\n",
+ "\n",
+ "#Calculations&Results\n",
+ "B_Be = (4*m_n+4*M_H - M_Be)*u;\n",
+ "B_Be_2alpha = (2*M_He - M_Be)*u;\n",
+ "print \"The binding energy of Be-8 = %4.1f MeV and is positive\"%B_Be\n",
+ "if (B_Be_2alpha > 0):\n",
+ " print \"The Be-4 is stable w.r.t. decay into two alpha particles.\";\n",
+ "else:\n",
+ " print \"The Be-4 is unstable w.r.t. decay into two alpha particles since the decay has binding energy of %5.3f MeV\"%B_Be_2alpha \n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The binding energy of Be-8 = 56.5 MeV and is positive\n",
+ "The Be-4 is unstable w.r.t. decay into two alpha particles since the decay has binding energy of -0.092 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.6, Page 444"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "Z = 92; # Atomic number of U-238\n",
+ "A = 238; # Mass number of U-238\n",
+ "\n",
+ "#Calculations\n",
+ "E_Coul = 0.72*Z*(Z-1)*A**(-1./3); # Total Coulomb energy of U-238, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The total Coulomb energy of U-238 = %3d MeV\"%E_Coul"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The total Coulomb energy of U-238 = 972 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.8, Page 447"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "m_p = 1.007825; # Mass of proton, amu\n",
+ "m_n = 1.008665; # Mass of neutron, amu\n",
+ "M_Ne = 19.992440; # Mass of Ne-20 nucleus, amu\n",
+ "M_Fe = 55.934942; # Mass of Fe-56 nucleus, amu\n",
+ "M_U = 238.050783; # Mass of U-238 nucleus, amu\n",
+ "A_Ne = 20; # Mass number of Ne-20 nucleus\n",
+ "A_Fe = 56; # Mass number of Fe-56 nucleus\n",
+ "A_U = 238; # Mass number of U-238 nucleus\n",
+ "\n",
+ "#Calculations\n",
+ "BE_Ne = (10*m_p+10*m_n-M_Ne)*u; # Binding energy of Ne-20 nucleus, MeV\n",
+ "BE_Fe = (26*m_p+30*m_n-M_Fe)*u; # Binding energy of Fe-56 nucleus, MeV\n",
+ "BE_U = (92*m_p+146*m_n-M_U)*u; # Binding energy of U-238 nucleus, MeV\n",
+ "\n",
+ "#Results\n",
+ "print \"The binding energy per nucleon for Ne-20 : %4.2f MeV/nucleon\"%(BE_Ne/A_Ne)\n",
+ "print \"The binding energy per nucleon for Fe-56 : %4.2f MeV/nucleon\"%(BE_Fe/A_Fe)\n",
+ "print \"The binding energy per nucleon for U-238 : %4.2f MeV/nucleon\"%(BE_U/A_U)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The binding energy per nucleon for Ne-20 : 8.03 MeV/nucleon\n",
+ "The binding energy per nucleon for Fe-56 : 8.79 MeV/nucleon\n",
+ "The binding energy per nucleon for U-238 : 7.57 MeV/nucleon\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.10, Page 451"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "N_A = 6.023e+023; # Avogadro's number\n",
+ "T = 138*24*3600; # Half life of Po-210, s\n",
+ "R = 2000; # Activity of Po-210, disintegrations/s\n",
+ "M = 0.210; # Gram molecular mass of Po-210, kg\n",
+ "\n",
+ "#Calculations\n",
+ "f = 1/3.7e+010; # Conversion factor to convert from decays/s to Ci\n",
+ "A = R*f/1e-006; # Activity of Po-210, micro-Ci\n",
+ "N = R*T/math.log(2); # Number of radioactive nuclei of Po-210, nuclei\n",
+ "m = N*M/N_A; # Mass of Po-210 sample, kg\n",
+ "\n",
+ "#Results\n",
+ "print \"The activity of Po-210 = %5.3f micro-Ci\"%A\n",
+ "print \"The mass of Po-210 sample = %3.1e kg\"%m"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The activity of Po-210 = 0.054 micro-Ci\n",
+ "The mass of Po-210 sample = 1.2e-14 kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.11, Page 452"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "T = 110; # Half life of F-18, min\n",
+ "f_remain = 0.01; # Fraction of the F-18 sample remained\n",
+ "\n",
+ "#Calculations\n",
+ "t = -math.log(0.01)/(math.log(2)*60)*T; # Time taken by the F-18 sample to decay to 1 percent of its initial value, h\n",
+ "\n",
+ "#Result\n",
+ "print \"The time taken for 99 percent of the F-18 sample to decay = %4.1f h\"%t"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The time taken for 99 percent of the F-18 sample to decay = 12.2 h\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.12, Page 452"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "N_A = 6.023e+023; # Avogadro's number\n",
+ "M = 10e+03; # Mass of the U-235, g\n",
+ "M_U235 = 235; # Molecular mass of U-235, g\n",
+ "t_half = 7.04e+008; # Half life of U-235, y\n",
+ "\n",
+ "#Calculations\n",
+ "N = M*N_A/M_U235; # Number of U-235 atoms in 10 kg sample\n",
+ "R = math.log(2)*N/t_half; # The alpha activity of 10 kg sample of U-235, decays/y\n",
+ "\n",
+ "#Result\n",
+ "print \"The alpha activity of 10 kg sample of U-235 = %3.1e Bq\"%(R/(365.25*24*60*60))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The alpha activity of 10 kg sample of U-235 = 8.0e+08 Bq\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.13, Page 453"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 u, MeV\n",
+ "M_U230 = 230.033927; # Atomic mass of U-230, u\n",
+ "m_n = 1.008665; # Mass of a neutron, u\n",
+ "M_H = 1.007825; # Mass of hydrogen, u\n",
+ "M_U229 = 229.033496; # Gram atomic mass of U-230\n",
+ "\n",
+ "#Calculations&Results\n",
+ "Q = (M_U230 - M_U229 - m_n)*u; # Q-value of the reaction emitting a neutron\n",
+ "if (Q < 0):\n",
+ " print \"The neutron decay in this reaction is not possible.\"\n",
+ "else:\n",
+ " print \"The neutron decay in this reaction is possible.\"\n",
+ "\n",
+ "Q = (M_U230 - M_U229 - M_H)*u; # Q-value of the reaction emitting a proton\n",
+ "if (Q < 0):\n",
+ " print \"The proton decay in this reaction is not possible.\"\n",
+ "else:\n",
+ " print \"The proton decay in this reaction is possible.\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The neutron decay in this reaction is not possible.\n",
+ "The proton decay in this reaction is not possible.\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.15, Page 461"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 u, MeV\n",
+ "M_Fe55 = 54.938298; # Atomic mass of Fe-55, u\n",
+ "M_Mn55 = 54.938050; # Atomic mass of Mn-55, u\n",
+ "m_e = 0.000549; # Mass of the electron, u\n",
+ "\n",
+ "#Calculations&Results\n",
+ "Q = (M_Fe55 - M_Mn55 - 2*m_e)*u; # Q-value of the reaction undergoing beta+ decay, MeV\n",
+ "if (Q < 0):\n",
+ " print \"The beta+ decay is not allowed for Fe-55\"\n",
+ "else:\n",
+ " print \"The beta+ decay is allowed for Fe-55\"\n",
+ "\n",
+ "Q = (M_Fe55 - M_Mn55)*u; # Q-value of the reaction undergoing electron capture, MeV\n",
+ "if (Q < 0):\n",
+ " print \"Fe-55 may not undergo electron capture\"\n",
+ "else:\n",
+ " print \"Fe-55 may undergo electron capture\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The beta+ decay is not allowed for Fe-55\n",
+ "Fe-55 may undergo electron capture\n"
+ ]
+ }
+ ],
+ "prompt_number": 13
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.16, Page 462"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "def check_allowance(Q, decay_type):\n",
+ " if (Q < 0):\n",
+ "\tprint \"The %s is not allowed for Ac-226\"%decay_type\n",
+ " else:\n",
+ "\tprint \"The %s is allowed for Ac-226\"%decay_type\n",
+ "\n",
+ "\n",
+ "u = 931.5; # Energy equivalent of 1 u, MeV\n",
+ "M_Ac226 = 226.026090; # Atomic mass of Ac-226, u\n",
+ "M_Fr222 = 222.017544; # Atomic mass of Fr-222, u\n",
+ "M_He4 = 4.002603; # Atomic mass of He-4, u\n",
+ "M_Th226 = 226.024891; # Atomic mass of M_Th226, u\n",
+ "M_Ra226 = 226.025403; # Atomic mass of M_Ra226, u\n",
+ "m_e = 0.000549; # Mass of the electron, u\n",
+ "\n",
+ "#Calculations\n",
+ "# Alpha Decay\n",
+ "Q = (M_Ac226 - M_Fr222 - M_He4)*u; # Q-value of the reaction undergoing alpha decay, MeV\n",
+ "check_allowance(Q, \"alpha decay\");\n",
+ "# Beta- Decay\n",
+ "Q = (M_Ac226 - M_Th226)*u; # Q-value of the reaction undergoing beta- decay, MeV\n",
+ "check_allowance(Q, \"beta- decay\");\n",
+ "# Beta+ Decay\n",
+ "Q = (M_Ac226 - M_Ra226 - 2*m_e)*u; # Q-value of the reaction undergoing beta+ decay, MeV\n",
+ "check_allowance(Q, \"beta+ decay\");\n",
+ "# Electron Capture\n",
+ "Q = (M_Ac226 - M_Ra226)*u; # Q-value of the reaction undergoing electron capture, MeV\n",
+ "check_allowance(Q, \"electron capture\");\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The alpha decay is allowed for Ac-226\n",
+ "The beta- decay is allowed for Ac-226\n",
+ "The beta+ decay is not allowed for Ac-226\n",
+ "The electron capture is allowed for Ac-226\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.17, Page 463"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 u, MeV\n",
+ "E_ex = 0.072; # Energy of the excited state, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "M = 226*u*1e+0; # Energy equivalent of atomic mass of Th-226, MeV\n",
+ "x = E_ex/(2*M); # The error introduced in the gamma ray energy by approximation\n",
+ "\n",
+ "#Result\n",
+ "print \"The error introduced in the gamma ray energy by approximation = %3.1e\"%x"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The error introduced in the gamma ray energy by approximation = 1.7e-07\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.18, Page 467"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "t_half = 4.47e+009; # The half life of uranium ore, years\n",
+ "R_prime = 0.60; # The ratio of Pb206 abundance to that of U238\n",
+ "\n",
+ "#Calculations\n",
+ "t = t_half/math.log(2)*math.log(R_prime + 1); # Age of the uranuim ore, years\n",
+ "\n",
+ "#Result\n",
+ "print \"The age of U-238 ore = %3.1e years\"%t"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The age of U-238 ore = 3.0e+09 years\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 12.19, Page 469"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "t_half = 5730; # The half life of uranium ore, years\n",
+ "R0 = 1.2e-012; # The initial ratio of C14 to C12 at the time of death\n",
+ "R = 1.10e-012; # The final ratio of C14 to C12 t years after death\n",
+ "\n",
+ "#Calculations\n",
+ "# As R = R0*math.exp(-lambda*t), solving for t\n",
+ "t = -math.log(R/R0)*t_half/math.log(2); # Age of the bone, years\n",
+ "\n",
+ "#Result\n",
+ "print \"The %3d years age of bone does not date from the Roman Empire.\"%math.ceil(t)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The 720 years age of bone does not date from the Roman Empire.\n"
+ ]
+ }
+ ],
+ "prompt_number": 18
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch13.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch13.ipynb
new file mode 100755
index 00000000..07e5a520
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch13.ipynb
@@ -0,0 +1,432 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ca0579d99dcaeb6306ba4006be3368ec17d38cc09b7c654030323e81a030169b"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13: Nuclear Interactiions and Applications"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.1, Page 479"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "N_A = 6.02e+023; # Avogadro's number\n",
+ "e = 1.6e-019; # Charge on an electron, C\n",
+ "q = 2*e; # Charge on the alpha particle, C\n",
+ "rho = 1.9; # Density of carbon target, atoms/cc\n",
+ "N_M = 1; # Number of atoms per molecule\n",
+ "M_g = 12; # Gram atomic mass of C12 isotope, g/mol\n",
+ "sigma = 25e-031; # Total cross section for the reaction, Sq.m\n",
+ "t = 1e-006; # Thickness of carbon target, m\n",
+ "I_beam = 1e-006; # Beam current of akpha particle, ampere\n",
+ "time = 3600; # Time for which the alpha particle beam is incident on the target, s\n",
+ "\n",
+ "#Calculations\n",
+ "n = rho*N_A*N_M/M_g; # Number of nuclei per unit volume, per cc\n",
+ "P = n*t*sigma*1e+006; # Probability of scattering of alpha particles\n",
+ "N_I = I_beam*time/q; # Number of incident alpha particles\n",
+ "N_n = N_I*P; # Number of neutrons produced in the reaction\n",
+ "\n",
+ "#Result\n",
+ "print \"The number of neutrons produced in the reaction = %3.1e neutrons\"%N_n\n",
+ "#answer differs due to rounding errors"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of neutrons produced in the reaction = 2.7e+09 neutrons\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.2, Page 480"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "sigma_n = 3; # Differential cross setion of production of the neutron, mb/sr\n",
+ "sigma_p = 0.2; # Differential cross setion of production of the proton, mb/sr\n",
+ "\n",
+ "#Calculations\n",
+ "# As P_n = sigma_n and P_p = sigma_p, so\n",
+ "P_ratio = sigma_n/sigma_p; # The likelihood of a neutron production than a proton\n",
+ "\n",
+ "#Result\n",
+ "print \"The likelihood of the neutron production than the proton = %2d\"%P_ratio"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The likelihood of the neutron production than the proton = 15\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.3, Page 481"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "M_He = 4.002603; # Mass of He-4 nucleus, u\n",
+ "M_N = 14.003074; # Mass of N-14 nucleus, u\n",
+ "M_H = 1.007825; # Mass of hydrogen nucleus, u\n",
+ "M_O = 16.999132; # Mass of O-16 nucleus, u\n",
+ "K_alpha = 7.7; # The kinetic energy of alpha particle, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "Q = (M_He + M_N - M_H - M_O)*u; # The ground state Q-value of the nuclear reaction, MeV\n",
+ "# As Q = K_p + K_O - K_alpha, solving for K_p + K_O\n",
+ "K = Q + K_alpha; # The sum of kinetic energy of the products, MeV\n",
+ "\n",
+ "#Results\n",
+ "print \"The ground state Q-value of the endoergic nuclear reaction = %5.3f MeV\"%Q\n",
+ "print \"The sum of kinetic energy of the products = %3.1f MeV\"%K"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The ground state Q-value of the endoergic nuclear reaction = -1.192 MeV\n",
+ "The sum of kinetic energy of the products = 6.5 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.4, Page 485"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "K_lab = 14.6; # Kinetic energy of incident aplha particle, MeV\n",
+ "Mx = 4; # Mass number of projectile nucleus\n",
+ "MX = 12; # Mass number of target nucleus\n",
+ "M_He = 4.002603; # Mass of He nucleus, u\n",
+ "M_C = 12.0 # Mass of carbon nucleus, u\n",
+ "M_O = 15.994915; # Mass of oxygen nucleus, u\n",
+ "\n",
+ "#Calculations\n",
+ "K_cm = MX/(Mx + MX)*K_lab; # Kinetic energy available in the centre of mass, MeV\n",
+ "E_O = (M_He + M_C - M_O)*u; # The ground state excitation energy of O-16, MeV\n",
+ "E_final_O = K_cm + E_O; # The final excitation energy of O-16, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The final excitation energy of O-16 = %4.2f MeV\"%E_final_O"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The final excitation energy of O-16 = 7.16 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.5, Page 487"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "M_U235 = 235.0439; # Mass of U-235 nucleus, u\n",
+ "m_n = 1.0087; # Mass of a neutron, u\n",
+ "M_Zr99 = 98.9165; # Mass of Zr-99 nucleus, u\n",
+ "M_Te134 = 133.9115; # Mass of Te-134 nucleus, u\n",
+ "\n",
+ "#Calculations\n",
+ "Q = (M_U235 + m_n - M_Zr99 - M_Te134 - 3*m_n)*u; # Q-value of the reaction, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The ground state Q-value of the induced fission reaction = %3d MeV\"%math.ceil(Q)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The ground state Q-value of the induced fission reaction = 185 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.6, Page 488"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "m_n = 1.0087; # Mass of a neutron, u\n",
+ "M_U235 = 235.0439; # Mass of U-235 nucleus, u\n",
+ "M_U236 = 236.0456; # Mass of U-236 nucleus, u\n",
+ "M_U238 = 238.0508; # Mass of U-238 nucleus, u\n",
+ "M_U239 = 239.0543; # Mass of U-239 nucleus, u\n",
+ "\n",
+ "#Calculations\n",
+ "E_U236 = (m_n + M_U235 - M_U236)*u; # Excitation energy of U-236 nucleus, MeV\n",
+ "E_U239 = (m_n + M_U238 - M_U239)*u; # Excitation energy of U-239 nucleus, MeV\n",
+ "\n",
+ "#Results\n",
+ "print \"The excitation energy of U-236 nucleus = %3.1f MeV\"%E_U236\n",
+ "print \"The excitation energy of U-239 nucleus = %3.1f MeV\"%E_U239"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The excitation energy of U-236 nucleus = 6.5 MeV\n",
+ "The excitation energy of U-239 nucleus = 4.8 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.7, Page 490"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "t = 30e-003; # Time during which the number of fissions is to be calculated, s\n",
+ "E = 185; # Energy produced for each fission, MeV\n",
+ "delta_t = 5e-006; # Average time during which a neutron is captured, s\n",
+ "\n",
+ "#Calculations\n",
+ "fs = t/delta_t; # Number of fission cycles within 30 ms\n",
+ "N = (1.01)**fs; # Number of fissions that occur in 30 ms\n",
+ "E_total = N*E; # Total energy produced in 30 ms, MeV\n",
+ "\n",
+ "#Results\n",
+ "print \"The total number of fissions that occur in %d ms = %3.1e\"%(t/1e-003, N)\n",
+ "print \"The total energy produced = %3.1e MeV\"%E_total\n",
+ "\n",
+ "#Incorrect solution in textbook"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The total number of fissions that occur in 30 ms = 8.5e+25\n",
+ "The total energy produced = 1.6e+28 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.8, Page 500"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "M_He = 4.002603; # Mass of He nucleus, u\n",
+ "M_C = 12.0 # Mass of carbon nucleus, u\n",
+ "M_O = 15.994915; # Mass of oxygen nucleus, u\n",
+ "\n",
+ "#Calculations\n",
+ "Q = (M_He + M_C - M_O)*u; # Q-value of the reaction, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The energy expended in the fusion reaction inside supergiant star = %3.1f MeV\"%Q"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy expended in the fusion reaction inside supergiant star = 7.2 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.9, Page 502"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "r = 3e-015; # Distance at which the nuclear force becomes effective, m\n",
+ "e = 1.6e-019; # Charge on an electron, C\n",
+ "K = 9e+009; # Coulomb's constant, N-Sq.m/C^2\n",
+ "\n",
+ "#Calculations\n",
+ "V = K*e**2/r; # Coulomb potential energy, J\n",
+ "# As V = 3/2*k*T, solving for T\n",
+ "T = 2./3*V/k; # The ignition temperature needed for the fusion reaction between deuterium and a tritium, K\n",
+ "\n",
+ "#Result\n",
+ "print \"The ignition temperature needed for the fusion reaction between a deuterium and a tritium = %3.1e K\"%T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The ignition temperature needed for the fusion reaction between a deuterium and a tritium = 3.7e+09 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 13.10, Page 509"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "h = 6.62e-034; # Planck's oconstant, Js\n",
+ "m = 1.67e-027; # Mass of the neutron, kg\n",
+ "lamda = 0.060e-009; # Wavelength of the neutron beam, m\n",
+ "\n",
+ "#Calculations\n",
+ "p = h/lamda; # Momentum of the neutron from de-Broglie relation, kg-m/s\n",
+ "K = p**2/(2*m*e); # Kinetic energy of the neutron needed to study atomic structure, eV\n",
+ "# As K = 3/2*k*T, solving for T\n",
+ "T = 2./3*K*e/k; # The temperature of the neutron needed to study atomic structure, K\n",
+ "\n",
+ "#Result\n",
+ "print \"The energy and temperature of the neutron needed to study the atomic structure of solids = %4.2f eV and %4d K respectively\"%(K, T)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy and temperature of the neutron needed to study the atomic structure of solids = 0.23 eV and 1760 K respectively\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch14.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch14.ipynb
new file mode 100755
index 00000000..504e2ae2
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch14.ipynb
@@ -0,0 +1,190 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ced2862e28b6da072a8a3e26efc3e44712d4ce0118ffb609847f53a2c9c6d14f"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14: Particle Physics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.1, Page 522"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light in vacuum, m/s\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "R_N = 1e-015; # Range of nuclear force, m\n",
+ "\n",
+ "#Calculations\n",
+ "# As delta_E*delta_t = h_bar/2 and delta_E = m_pion*c^2, solving for m_pion\n",
+ "m_pion = h_bar*c/(2*R_N*e*1e+006); # Mass of the meson, MeV/c^2\n",
+ "\n",
+ "#Result\n",
+ "print \"The estimated mass of meson from Heisenberg uncertainty principle = %.2f MeV/c^2\"%(m_pion)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The estimated mass of meson from Heisenberg uncertainty principle = 98.78 MeV/c^2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.2, Page 526"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "c = 3.00e+008; # For simplicity assume speed of light to be unity\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "m_W = 80.4; # Energy equivalent of mass of W- particle, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "R_W = h_bar*c/(2*m_W*e*1e+009); # Range of W- particle, m\n",
+ "delta_t = h_bar/(2*m_W*e*1e+009); # Time during which the energy conservation is violated, s\n",
+ "\n",
+ "#Results\n",
+ "print \"The range of W- particle = %3.1e m\"%R_W\n",
+ "print \"The time during which the energy conservation is violated = %1.0e s\"%delta_t"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The range of W- particle = 1.2e-18 m\n",
+ "The time during which the energy conservation is violated = 4e-27 s\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.10, Page 548"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "m_p = 0.938; # Rest mass energy of the proton, GeV\n",
+ "K = 6.4; # Kinetic energy of the proton projectile, GeV\n",
+ "\n",
+ "#Calculations\n",
+ "E_cm = math.sqrt(2*m_p**2+2*m_p*K); # Centre of mass energy of proton collsion with the fixed proton target, GeV\n",
+ "Q = 2*m_p - 4*m_p; # Q value of the reaction, GeV\n",
+ "K_th = -3*Q; # Threshold kinetic energy required to produce the antiprotons, GeV\n",
+ "K = 1000; # Kinetic energy of the protons in Tevatron, GeV\n",
+ "E_cm_T = math.sqrt(2*m_p**2+2*m_p*K); # Centre-of-mass energy available for the reaction for the Tevatron, GeV\n",
+ "\n",
+ "#Results\n",
+ "print \"The available energy in the center on mass = %4.2f GeV\"%E_cm\n",
+ "print \"The threshold kinetic energy required to produce the antiprotons = %3.1f GeV\"%K_th\n",
+ "print \"The centre-of-mass energy available for the reaction for the Tevatron = %d GeV\"%E_cm_T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The available energy in the center on mass = 3.71 GeV\n",
+ "The threshold kinetic energy required to produce the antiprotons = 5.6 GeV\n",
+ "The centre-of-mass energy available for the reaction for the Tevatron = 43 GeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 14.11, Page 550"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "m_p = 0.938; # Rest mass energy of the proton, GeV\n",
+ "E_cm = 14000; # Centre of mass energy of colliding proton beams at LHC, GeV\n",
+ "\n",
+ "#Calculations\n",
+ "# As E_cm = math.sqrt(2*m_p**2+2*m_p*K), solving for K\n",
+ "K = E_cm**2*1e+009/(2*m_p); # Approx. kinetic energy of the protons needed for fixed-target experiment, eV \n",
+ "\n",
+ "#Result\n",
+ "print \"The kinetic energy of the protons needed for fixed-target experiment = %3.1e eV\"%K"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The kinetic energy of the protons needed for fixed-target experiment = 1.0e+17 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch15.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch15.ipynb
new file mode 100755
index 00000000..7ea7cb3b
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch15.ipynb
@@ -0,0 +1,156 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:c4aa0414ffd05acf8e49e96b92516d863d2c0354ef81a7502c4540359e267fb8"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15: General Relativity"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 15.1, Page 562"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "g = 9.8; # Acceleration due to gravity, m/sec^2\n",
+ "H = 10000; # Altitude of the aeroplane above the surface of earth, m\n",
+ "c = 3.00e+008; # Speed of light in free space, m/s\n",
+ "T = 45*3600; # Time taken by the airplane to from eastward to westward trip, s\n",
+ "\n",
+ "#Calculations\n",
+ "delta_T_G = g*H*T/(c**2*1e-009); # Time difference in the two clocks due to gravitational redshift, ns\n",
+ "C = 4e+007; # Circumference of the earth, m \n",
+ "v = 300; # Speed of the jet airplane, m/s\n",
+ "T0 = C/v; # Time of flight of jet airplane very near the surface of the earth, s\n",
+ "bita = v/c; # Boost parameter\n",
+ "# As from special relativity time dilation relation, T = T0*sqrt(1-bita^2), solving for T0 - T = delta_T_R, we have\n",
+ "delta_T_R = T0*(1-math.sqrt(1-bita**2))/1e-009; # Time difference in the two clocks due to special relativity, ns\n",
+ "\n",
+ "#Result\n",
+ "print \"The gravitational time dilation effect of %d ns is larger than the approximate %4.1f ns of that of special relativity.\"%(math.ceil(delta_T_G), delta_T_R)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The gravitational time dilation effect of 177 ns is larger than the approximate 66.7 ns of that of special relativity.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 15.2, Page 567"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 3.00e+008; # Speed of light in free space, m/s\n",
+ "G = 6.67e-011; # Newton's gravitational constant, N-Sq.m/per kg square\n",
+ "M_S = 2.0e+030; # Mass of the sun, kg\n",
+ "M_E = 6.0e+024; # Mass of the earth, kg\n",
+ "\n",
+ "#Calculations\n",
+ "r_S = 2*G*M_S/(c**2*1e+003); # Schwarzschild radius for sun, km\n",
+ "r_E = 2*G*M_E/(c**2*1e-003); # Schwarzschild radius for earth, mm\n",
+ "\n",
+ "#Results\n",
+ "print \"The Schwarzschild radius for sun = %d km\"%math.ceil(r_S)\n",
+ "print \"The Schwarzschild radius for earth = %d mm\"%math.ceil(r_E)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Schwarzschild radius for sun = 3 km\n",
+ "The Schwarzschild radius for earth = 9 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 15.3, Page 568"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "import scipy\n",
+ "from scipy.integrate import quad\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 3.00e+008; # Speed of light in free space, m/s\n",
+ "G = 6.67e-011; # Newton's gravitational constant, N-Sq.m/per kg square\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "\n",
+ "#Calculations\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "sigma = 5.67e-008; # Stefan-Boltzmann constant, W per Sq.m per K^4\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "M0 = 1.99e+030; # Mass of the sun, kg\n",
+ "alpha = 2*sigma*h_bar**4*c**6/((8*math.pi)**3*k**4*G**2); # A constant, kg^3/s\n",
+ "T = lambda M: 1/alpha*M**2\n",
+ "t,err = scipy.integrate.quad(T,0, 3*M0)\n",
+ "\n",
+ "#Result\n",
+ "print \"The time required for the 3-solar-mass black hole to evaporate = %3.1e y\"%(t/(365.25*24*60*60))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The time required for the 3-solar-mass black hole to evaporate = 5.7e+68 y\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch16.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch16.ipynb
new file mode 100755
index 00000000..c2417efa
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch16.ipynb
@@ -0,0 +1,336 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:3790a3d51914dcd136e5ca3ce886512d33fbd8ae15c97de507356c2c79104f21"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 16: Cosmology and Modern Astrophysics - The Beginning and the End"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.1, Page 581"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "H0 = 22; # Value of Hubble constant, km/s per million ly\n",
+ "parsec = 3.26; # The value of 1 parsec, light years\n",
+ "\n",
+ "#Calculations&Result\n",
+ "print \"The value of Hubble constant = %d km/s per Mpc\"%math.ceil(H0*parsec)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The value of Hubble constant = 72 km/s per Mpc\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.2, Page 583"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "M = 1; # Let the current mass of the universe be unity\n",
+ "m_u = 1; # Mass equivalent of 1 amu, u\n",
+ "N_n = 2; # Number of neutrons in helium\n",
+ "N_p = 2; # Number of protons in helium\n",
+ "\n",
+ "#Calculations\n",
+ "M_p = 0.75*M*m_u; # Total mass of protons\n",
+ "M_He = 0.25*M*m_u; # Total mass of helium\n",
+ "N_fp = M_p/M_He*(N_n + N_p); # Total number of free protons for every He-4\n",
+ "N_P = N_fp + N_p; # Total number of protons per He-4\n",
+ "ratio = N_P/N_n; # Current ratio of protons to the neutrons in the universe\n",
+ "\n",
+ "#Result\n",
+ "print \"The current ratio of protons to the neutrons in the universe = %d\"%ratio"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The current ratio of protons to the neutrons in the universe = 7\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.3, Page 607"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "m_n = 939.566; # Rest mass of the neutron, MeV/c^2\n",
+ "m_p = 938.272; # Rest mass of the proton, MeV/c^2\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "c = 1; # For simplicity assume speed of light of light to be unity\n",
+ "T = 1e+010; # Temperature of the universe, K\n",
+ "\n",
+ "#Calculations\n",
+ "delta_m = m_n - m_p; # Mass difference between a proton and a neutron, MeV/c^2\n",
+ "k = 1.38e-023; # Boltzmann constant, J/k\n",
+ "# As from Maxwell-Boltzmann distribution from thermodynamics, N = exp(-m*c^2/(k*T)), so\n",
+ "ratio = math.exp(delta_m*c**2*1e+006*e/(k*T)); # Ratio of protons to neutrons in the universe at 10 billion kelvin\n",
+ "\n",
+ "#Result\n",
+ "print \"The ratio of protons to neutrons in the universe at 10 billion kelvin = %3.1f\"%ratio"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The ratio of protons to neutrons in the universe at 10 billion kelvin = 4.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.4, Page 589"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "M = 1.99e+030; # Mass of the sun, kg\n",
+ "G = 6.67e-011; # Universal gravitational constant, N-Sq.m/kg^2\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "R = 6.96e+008; # Radius of the sun, m\n",
+ "m = 1.67e-027; # Rest mass of the proton, kg\n",
+ "\n",
+ "#Calculations\n",
+ "PE = 3./5*(G*M**2/R); # Self potential energy of the sun, J\n",
+ "# As KE = 1./3*(M/m_p)*m_p*v**2, solving for v\n",
+ "v = math.sqrt(2*PE/M); # Velocity of a proton inside the sun, m/s\n",
+ "# From kinetic theory of gases, v = sqrt(3*k*T/m), solving for T\n",
+ "T = m*v**2/(3*k); # The mean temperature of the sun, K\n",
+ "\n",
+ "#Result\n",
+ "print \"The mean temperature of the sun = %1.0e K\"%T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mean temperature of the sun = 9e+06 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.5, Page 590"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "M_sun = 1.99e+030; # Mass of the sun, kg\n",
+ "m_n = 1.675e-027; # Rest mass of the neutron, kg\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "\n",
+ "#Calculations\n",
+ "h_bar = h/(2*math.pi); # Planck's constant, Js\n",
+ "G = 6.67e-011; # Universal gravitational constant, N-Sq.m/kg^2\n",
+ "N = 2*M_sun/m_n; # Number of neutrons in the neutron star\n",
+ "V = (6.5*h_bar**2/(N**(1./3)*m_n**3*G))**3; # Volume of the neutron star, metre cube\n",
+ "R = (3./(4*math.pi)*V)**(1./3); # The radius of neutron star, m\n",
+ "\n",
+ "#Result\n",
+ "print \"The radius of the neutron star of 2 solar masses = %d km\"%math.ceil(R/1e+003)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The radius of the neutron star of 2 solar masses = 11 km\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.7, Page 598"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "c = 1; # For simplicity assume speed of light to be unity, m/s\n",
+ "d = 1.6e+005; # Distance of the supernova 1987A from the earth, ly\n",
+ "m = 16; # Mass of heavier neutrino, eV/c^2;\n",
+ "E = 20e+006; # Energy of the neutrino, eV\n",
+ "\n",
+ "#Calculations\n",
+ "delta_t = d/(2*c)*(m/E)**2; # Difference between the travel times of the lighter and the massive neutrinos, y\n",
+ "\n",
+ "#Result\n",
+ "print \"The difference between the travel times of the lighter and the massive neutrinos = %3.1f s\"%(delta_t*(365.25*24*60*60))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The difference between the travel times of the lighter and the massive neutrinos = 1.6 s\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.8, Page 602"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "H = 22; # Hubble constant, km/s per million ly\n",
+ "G = 6.67e-011; # Universal gravitational constant, N-Sq.m/kg^2\n",
+ "\n",
+ "#Calculations\n",
+ "rho_c = 3/(8*math.pi)*H**2/G*1e+003/(c*365.25*24*60*60*1e+006)**2; # The critical density of the universe, g/cc\n",
+ "\n",
+ "#Result\n",
+ "print \"The critical density of the universe = %3.1e g/cc\"%rho_c"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The critical density of the universe = 9.7e-30 g/cc\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 16.9, Page 604"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "H0 = 71; # Hubble constant, km/s per Mpc\n",
+ "\n",
+ "#Calculations\n",
+ "tau = 1./H0*1e+006*3.26*9.46e+012/3.16e+007; # The upper limit of the age of the universe, y\n",
+ "\n",
+ "#Result\n",
+ "print \"The upper limit of the age of the universe = %4.2e y\"%tau"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The upper limit of the age of the universe = 1.37e+10 y\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch2.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch2.ipynb
new file mode 100755
index 00000000..e79c5ef9
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch2.ipynb
@@ -0,0 +1,505 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d53ace7eee908f1b365cd69f5f5bf3b12191ff7d43291af068a8947558149234"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2: Special Theory of Relativity"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.2, Page 34"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "ly = 9.46e+015; # Distance travelled by light in an year, m\n",
+ "c = 3e+008; # Speed of light, m/s\n",
+ "L = 4.30*ly; # Distance of Alpha Centauri from earth, m\n",
+ "T0 = 16*365.25*24*60*60; # Proper time in system K_prime, s\n",
+ "\n",
+ "#Calculations\n",
+ "# As time measured on earth, T = 2*L/v = T0_prime/sqrt(1-(v/c)^2), solving for v\n",
+ "v = math.sqrt(4*L**2/(T0**2+4*L**2/c**2)); # Speed of the aircraft, m/s\n",
+ "gama = 1/math.sqrt(1-(v/c)**2); # Relativistic factor\n",
+ "T = gama*T0/(365.25*24*60*60); # Time interval as measured on Earth, y\n",
+ "\n",
+ "#Results\n",
+ "print \"The speed of the aircraft = %4.2e m/s\" %v\n",
+ "print \"The time interval as measured on earth = %4.1f y\"%T\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The speed of the aircraft = 1.42e+08 m/s\n",
+ "The time interval as measured on earth = 18.2 y\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.3, Page 38"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "L0 = 4.30; # Distance of Alpha Centauri from earth, ly\n",
+ "c = 3e+008; # Speed of light, m/s\n",
+ "T = 8; # Proper time in system K_prime, y\n",
+ "\n",
+ "#Calculations\n",
+ "# As v/c = L0*sqrt(1-(v/c)^2)/(c*T) or bita = L0*sqrt(1-bita^2)/(c*T), solving for bita\n",
+ "bita = math.sqrt(L0**2/(T**2 + L0**2)); # Boost parameter\n",
+ "v = L0*math.sqrt(1-bita**2)/T; # Speed of the aircraft, c units\n",
+ "\n",
+ "#Results\n",
+ "print \"The boost parameter = %5.3f\"%bita\n",
+ "print \"The speed of the aircraft = %5.3fc units\"%v"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The boost parameter = 0.473\n",
+ "The speed of the aircraft = 0.473c units\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.4, Page 40"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 1; # For simplicity assume speed of light to be unity, m/s\n",
+ "bita = 0.600; # Boost parameter\n",
+ "gama = 1/math.sqrt(1-bita**2); # Relativistic factor\n",
+ "u_x_prime = 0; # Speed of the protons in spaceship frame along x-axis, m/s\n",
+ "u_y_prime = 0.99*c; # Speed of the protons in spaceship frame along y-axis, m/s\n",
+ "u_z_prime = 0; # Speed of the protons in spaceship frame along z-axis, m/s\n",
+ "v = 0.60*c; # Speed of the spaceship w.r.t. space station, m/s\n",
+ "\n",
+ "#Calculations\n",
+ "u_x = (u_x_prime + v)/(1 + v/c**2*u_x_prime); # Speed of protons in space station frame along x-axis, m/s\n",
+ "u_y = u_y_prime/(gama*(1 + v/c**2*u_x_prime)); # Speed of protons in space station frame along y-axis, m/s\n",
+ "u_z = u_z_prime/(gama*(1 + v/c**2*u_x_prime)); # Speed of protons in space station frame along y-axis, m/s\n",
+ "u = math.sqrt(u_x**2 + u_y**2 + u_z**2); # The speed of the protons measured by an observer in the space station, m/s\n",
+ "\n",
+ "#Result\n",
+ "print \"The speed of the protons measured by an observer in the space station = %5.3fc units\"%u"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The speed of the protons measured by an observer in the space station = 0.994c units\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.5, Page 45"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "c = 2.998e+008; # Speed of light in free space, m/s\n",
+ "v = 7712; # Speed of the space shuttle, m/s\n",
+ "bita = v/c; # Boost parameter\n",
+ "T_loss = 295.02; # Total measured loss in time, ps/sec\n",
+ "Add_T_loss = 35.0; # Additional time loss for moving clock from general relativity prediction, ps/s\n",
+ "\n",
+ "#Calculations\n",
+ "# From time dilation relation, T0_prime = T*sqrt(1 - bita^2), solving for (T - T0_prime)/T\n",
+ "Calc_T_loss = bita**2/2*1e+012; # Expected time lost per sec by the moving clock, ps/sec\n",
+ "Measured_T_loss = T_loss + Add_T_loss; # Total measured loss in time per sec as per special relativity, ps/s\n",
+ "percent_T_loss = (Calc_T_loss - Measured_T_loss)/Calc_T_loss*100; # Percentage deviation of measured and the calculated time loss per sec\n",
+ "T = 6.05e+05; # Total time of the seven-day mission, s\n",
+ "delta_T = Calc_T_loss*1e-012*T; # The total time difference between the moving and stationary clocks during the entire shuttle flight, s\n",
+ "\n",
+ "#Results\n",
+ "print \"The expected time lost per second for the moving clock = %6.2f ps\"%Calc_T_loss\n",
+ "print \"The percentage deviation of measured and the calculated time loss per sec for moving clock = %3.1f percent\"%percent_T_loss #answer differs due to rounding errors\n",
+ "print \"The total time difference between the moving and stationary clocks during the entire shuttle flight = %3.1f ms\"%(delta_T/1e-003)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The expected time lost per second for the moving clock = 330.86 ps\n",
+ "The percentage deviation of measured and the calculated time loss per sec for moving clock = 0.3 percent\n",
+ "The total time difference between the moving and stationary clocks during the entire shuttle flight = 0.2 ms\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.8, Page 57"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "f0 = 1; # For simplicity assume frequency of the signals sent by Frank, Hz\n",
+ "# Outbound trip\n",
+ "bita = -0.8; # Boost parameter for receding frames\n",
+ "\n",
+ "#Calculations&Results\n",
+ "f = math.sqrt(1+bita)/math.sqrt(1-bita)*f0; # The frequency of the signals received by Mary in outbound trip, Hz\n",
+ "print \"The frequency of the signals received by Mary in outbound trip = f0/%d\", math.ceil(f*9)\n",
+ "# Return trip\n",
+ "bita = +0.8; # Boost parameter for approaching frames\n",
+ "f = math.sqrt(1+bita)/math.sqrt(1-bita)*f0; # The frequency of the signals received by Mary in return trip, Hz\n",
+ "print \"The frequency of the signals received by Mary in return trip = %df0\"%f"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The frequency of the signals received by Mary in outbound trip = f0/%d 3.0\n",
+ "The frequency of the signals received by Mary in return trip = 3f0\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.11, Page 64"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "q = 1.6e-019; # Charge on an electron, C\n",
+ "V = 25e+003; # Accelerating potential, volt\n",
+ "K = q*V; # Kinetic energy of electrons, J\n",
+ "m = 9.11e-031; # Rest mass of an electron, kg\n",
+ "c = 3.00e+08; # Speed of light, m/s\n",
+ "\n",
+ "#Calculations\n",
+ "# From relativistic kinetic energy formula, K = (gama - 1)*m*C^2, solving for gama\n",
+ "gama = 1 + K/(m*c**2); # Relativistic factor\n",
+ "bita = math.sqrt((gama**2-1)/gama**2); # Boost parameter\n",
+ "u = bita*c; # Speed of the electrons, m/s\n",
+ "# From non-relativistic expression, K = 1/2*m*u^2, solving for u\n",
+ "u_classical = math.sqrt(2*K/m); # Non-relativistic speed of the electrons, m/s\n",
+ "u_error = (u_classical - u)/u_classical*100; # Percentage error in speed of electrons, m/s\n",
+ "\n",
+ "#Results\n",
+ "print \"The relativistic speed of the accelerated electrons = %4.2e m/s\"%u\n",
+ "print \"The classical speed is about %d percent greater than the relativistic speed\"%math.ceil(u_error)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The relativistic speed of the accelerated electrons = 9.04e+07 m/s\n",
+ "The classical speed is about 4 percent greater than the relativistic speed\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.13, Page 69"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 1; # For simplicity assume peed of light to be unity, m/s\n",
+ "K = 2.00; # Kinetic energy of protons, GeV\n",
+ "E0 = 0.938; # Rest mass of a proton, GeV\n",
+ "E = K + E0; # Total energy of the proton, GeV\n",
+ "\n",
+ "#Calculations\n",
+ "# From relativistic mass energy relation, E^2 = (p*c)^2+E0^2, solving for p\n",
+ "p = math.sqrt(E**2 - E0**2)/c; # Momentum of the protons, GeV/c\n",
+ "# As E = gama*E0, solving for gama\n",
+ "gama = E/E0; # Relativistic factor\n",
+ "bita = math.sqrt((gama**2-1)/gama**2); # Boost parameter\n",
+ "v = bita*3.00e+08; # Speed of 2 GeV proton, m/s\n",
+ "\n",
+ "#Results\n",
+ "print \"The energy of each initial proton = %5.3f GeV\"%E\n",
+ "print \"The momentum of each initial proton = %4.2f GeV/c\"%p\n",
+ "print \"The speed of each initial proton = %3.1e m/s\"%v\n",
+ "print \"The relativistic factor, gama = %4.2f\"%gama\n",
+ "print \"The boost parameter, beta = %5.3f\"%bita"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy of each initial proton = 2.938 GeV\n",
+ "The momentum of each initial proton = 2.78 GeV/c\n",
+ "The speed of each initial proton = 2.8e+08 m/s\n",
+ "The relativistic factor, gama = 3.13\n",
+ "The boost parameter, beta = 0.948\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.15, Page 71"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "E_d = 1875.6; # Rest mass energy of the deuterium, MeV\n",
+ "E_pi = 139.6; # Rest mass energy of the pion, MeV\n",
+ "E_p = 938.3; # Rest mass energy of the proton, MeV\n",
+ "\n",
+ "#Calculation\n",
+ "K = 1./2*(E_d + E_pi - 2*E_p); # Minimum kinetic energy of the protons, MeV \n",
+ "\n",
+ "#Result\n",
+ "print \"The minimum kinetic energy of the protons = %2d MeV\"%K"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The minimum kinetic energy of the protons = 69 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.16, Page 72"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV\n",
+ "c = 1; # Speed of light in vacuum, m/s\n",
+ "\n",
+ "#Calculations\n",
+ "m_e = 0.000549*u; # Rest mass of an electron, MeV/c^2\n",
+ "m_p = 1.007276*u; # Rest mass of a proton, MeV/c^2\n",
+ "m_n = 1.008665*u; # Rest mass of a neutron, MeV/c^2\n",
+ "m_He = 4.002603*u; # Rest mass of a helium, MeV/c^2\n",
+ "M_He = m_He - 2*m_e; # Mass of He nucleus, MeV/c^2\n",
+ "E_B_He = (2*m_p + 2*m_n - M_He)*c**2; # Binding energy of the He nucleus, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The binding energy of the He nucleus = %4.1f MeV\"%E_B_He"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The binding energy of the He nucleus = 28.3 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.17, Page 72"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "u = 931.5; # Energy equivalent of 1 amu, MeV/u\n",
+ "c = 1; # For simplicity assume speed of light in vacuum to be unity, m/s\n",
+ "E_B = 4.24; # The dissociationenergy of the NaCl molecule, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "M = 58.44*u; # Energy corresponding to molecular mass of NaCl, MeV\n",
+ "f_r = E_B/M; # The fractional mass increase of the Na and Cl atoms\n",
+ "\n",
+ "#Result\n",
+ "print \"The fractional mass increase of the Na and Cl atoms when they are not bound together in NaCl = %4.1e\"%(f_r/1e+006)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The fractional mass increase of the Na and Cl atoms when they are not bound together in NaCl = 7.8e-11\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 2.18, Page 72"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 1; # For simplicity assume speed of light in vacuum to be unity, m/s\n",
+ "E0_n = 940; # Rest energy of a neutron, MeV\n",
+ "E0_pi = 140; # Rest energy of a pion, MeV\n",
+ "p_n = 4702; # Momentum of the neutron, MeV/c\n",
+ "p_pi = 169; # Momentum of the pion, MeV/c\n",
+ "\n",
+ "#Calculations\n",
+ "E_n = math.sqrt((p_n*c)**2+E0_n**2); # Total energy of the neutron, MeV\n",
+ "E_pi = math.sqrt((p_pi*c)**2+E0_pi**2); # Total energy of the pion, MeV\n",
+ "E = E_n + E_pi; # Total energy of the reaction, MeV\n",
+ "p_sigma = p_n + p_pi; # Momentum of the sigma particle, MeV/c\n",
+ "E0_sigma = math.sqrt(E**2 - (p_sigma*c)**2); # Rest mass energy of the sigma particle, MeV\n",
+ "m_sigma = E0_sigma/c**2; # Rest mass of sigma particle, MeV/c^2;\n",
+ "K = E - E0_sigma; # Kinetic energy of sigma particle, MeV\n",
+ "\n",
+ "#Results\n",
+ "print \"The rest mass of sigma particle = %4d MeV/c^2\"%math.ceil(m_sigma)\n",
+ "print \"The kinetic energy of sigma particle = %4d MeV\"%math.ceil(K)\n",
+ "\n",
+ "#Answers differ due to rounding errors"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The rest mass of sigma particle = 1192 MeV/c^2\n",
+ "The kinetic energy of sigma particle = 3824 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch3.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch3.ipynb
new file mode 100755
index 00000000..c0e5a7b6
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch3.ipynb
@@ -0,0 +1,553 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:5b9d1e914dbb4b0e0e0650025bfed9ebb154ac3184f6c3eb08f9fb1b53400e59"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 3: The Experimental Basis of Quantum Physics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.1, Page 87"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "E = 1.2e+004; # Electric field, V/m\n",
+ "B = 8.8e-004; # Magnetic field, T\n",
+ "l = 0.05; # Length of the deflection plates, m\n",
+ "v0 = E/B; # Initial velocity of the electron, m/s\n",
+ "theta = 30; # Angular deflection of the electron, degrees\n",
+ "\n",
+ "#Calculations\n",
+ "q_ratio_m = E*math.tan(theta*math.pi/180)/(B**2*l); # Specific charge of the electron, C/kg\n",
+ "\n",
+ "#Results\n",
+ "print \"The initial velocity of the electron = %3.1e m/s\"%v0\n",
+ "print \"The specific charge of the electron = %3.1e C/kg\"%q_ratio_m"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The initial velocity of the electron = 1.4e+07 m/s\n",
+ "The specific charge of the electron = 1.8e+11 C/kg\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.3, Page 94"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import numpy\n",
+ "\n",
+ "def check_visible(l):\n",
+ " if l >= 400 and l < 700:\n",
+ " return 1\n",
+ " else:\n",
+ " return 0\n",
+ " \n",
+ "R_H = 1.0968e+007; # Rydberg constanr, per metre\n",
+ "f = numpy.zeros(7)\n",
+ "# Lyman series\n",
+ "print \"\\nFor Lyman series, the wavelengths are:\\n\"\n",
+ "n = 1.; # The lowest level of Lyman series\n",
+ "for k in range(2,4):\n",
+ " l = 1./(R_H*(1./n**2-1./k**2))/1.e-009;\n",
+ " print \"k = %d, %5.1f nm\"%(k, l);\n",
+ " f[k-1] = check_visible(l); \n",
+ " if f[k-1] == 1:\n",
+ " print(\" (Visible) \\n\");\n",
+ " else:\n",
+ " print(\" (Ultraviolet)\\n\");\n",
+ " \n",
+ " \n",
+ "if f[0] == 1 or f[1] == 1 or f[2] == 1:\n",
+ " print(\"Some wavelengths of Lyman series fall in the visible region.\\n\")\n",
+ "else:\n",
+ " print(\"All the wavelengths of Lyman series fall in the UV-region.\\n\")\n",
+ " \n",
+ "\n",
+ "# Balmer series\n",
+ "print(\"\\nFor Balmer series, the wavelengths are:\\n\")\n",
+ "n = 2; # The lowest level of Balmer series\n",
+ "for k in range(3,8):\n",
+ " l = 1./(R_H*(1./n**2.-1./k**2))/1.e-009;\n",
+ " print \"k = %d, %5.1f nm\"%(k, l);\n",
+ " f[k-1] = check_visible(l);\n",
+ " if f[k-1] == 1:\n",
+ " print(\" (Visible) \\n\");\n",
+ " else:\n",
+ " print(\" (Ultraviolet)\\n\");\n",
+ " \n",
+ "# Paschen series\n",
+ "print(\"\\nFor Paschen series, the wavelengths are:\\n\")\n",
+ "n = 3.; # The lowest level of Lyman series\n",
+ "for k in range(4,6):\n",
+ " l = 1./(R_H*(1./n**2-1./k**2))/1e-009;\n",
+ " print \"k = %d, %5.1f nm\"%( k, l);\n",
+ " f[k-1] = check_visible(l); \n",
+ " if f[k-1] == 1:\n",
+ " print(\" (Visible) \\n\");\n",
+ " else:\n",
+ " print(\" (Infrared)\\n\");\n",
+ " \n",
+ "# For limiting member\n",
+ "k = numpy.inf;\n",
+ "l = 1/(R_H*(1/n**2-1/k**2))/1e-009;\n",
+ "print \"k = %f, %5.1f nm\"%(numpy.inf, l);\n",
+ "f[5] = check_visible(l);\n",
+ "if f[5] == 1:\n",
+ " print(\" (Visible) \\n\");\n",
+ "else:\n",
+ " print(\" (Infrared)\\n\");\n",
+ " \n",
+ "if f[3] == 1 or f[4] == 1 or f[5] == 1:\n",
+ " print(\"Some wavelengths of Paschen series fall in the visible region.\")\n",
+ "else:\n",
+ " print(\"All the wavelengths of Paschen series fall in the IR-region.\")\n",
+ " \n",
+ " "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "For Lyman series, the wavelengths are:\n",
+ "\n",
+ "k = 2, 121.6 nm\n",
+ " (Ultraviolet)\n",
+ "\n",
+ "k = 3, 102.6 nm\n",
+ " (Ultraviolet)\n",
+ "\n",
+ "All the wavelengths of Lyman series fall in the UV-region.\n",
+ "\n",
+ "\n",
+ "For Balmer series, the wavelengths are:\n",
+ "\n",
+ "k = 3, 656.5 nm\n",
+ " (Visible) \n",
+ "\n",
+ "k = 4, 486.3 nm\n",
+ " (Visible) \n",
+ "\n",
+ "k = 5, 434.2 nm\n",
+ " (Visible) \n",
+ "\n",
+ "k = 6, 410.3 nm\n",
+ " (Visible) \n",
+ "\n",
+ "k = 7, 397.1 nm\n",
+ " (Ultraviolet)\n",
+ "\n",
+ "\n",
+ "For Paschen series, the wavelengths are:\n",
+ "\n",
+ "k = 4, 1875.6 nm\n",
+ " (Infrared)\n",
+ "\n",
+ "k = 5, 1282.1 nm\n",
+ " (Infrared)\n",
+ "\n",
+ "k = inf, 820.6 nm\n",
+ " (Infrared)\n",
+ "\n",
+ "All the wavelengths of Paschen series fall in the IR-region.\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.4, Page 98"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "T = 1600 + 273; # Temperature of the furnace, K\n",
+ "b = 2.898e-003; # Wein's constant, m-K\n",
+ "\n",
+ "#Calculation\n",
+ "lamda_max = math.ceil(b/(T*1e-009)); # Maximum wavelength from Wein's Displacement Law, nm\n",
+ "\n",
+ "#Results\n",
+ "print \"The maximum wavelength emitted from the heated furnace = %4d nm\"%lamda_max\n",
+ "print \"This wavelength falls in the IR-region.\"\n",
+ "\n",
+ "#answers differ due to rounding errors"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum wavelength emitted from the heated furnace = 1548 nm\n",
+ "This wavelength falls in the IR-region.\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.5, Page 98"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "lambda_max = 500e-009; # Maximum intensity wavelength emitted by the sun, m\n",
+ "b = 2.898e-003; # Wein's constant, m-K\n",
+ "sigma = 5.67e-008; # Stefan's constant, W/Sq.m-K^4\n",
+ "r = 6.96e+008; # Radius of the sun, m\n",
+ "r_E = 6.37e+006; # Radius of the earth, m\n",
+ "R_E = 1.49e+011; # Mean-earth sun distance, m\n",
+ "\n",
+ "#Calculations\n",
+ "S = 4*math.pi*r**2; # Surface area of the sun, Sq.m\n",
+ "T_sun = b/lambda_max; # The temperature of the sun's surface, K\n",
+ "R_T = sigma*T_sun**4; # Power per unit area radiated by the sun, W/Sq.m\n",
+ "P_sun = R_T*S; # The total power radiated from the sun's surface, W\n",
+ "F = r_E**2/(4*R_E**2); # Fraction of sun's radiation received by Earth\n",
+ "P_Earth_received = P_sun*F; # The radiation received by the Earth from the sun, W\n",
+ "U_Earth = P_Earth_received*60*60*24; # The radiation received by the Earth from the sun in one day, J\n",
+ "R_Earth = P_Earth_received/(math.pi*r_E**2); # Power received by the Earth per unit of exposed area, W/Sq.m\n",
+ "\n",
+ "#Results\n",
+ "print \"The surface temperature of the sun = %4d K\"%math.ceil(T_sun)\n",
+ "print \"The power per unit area emitted from the surface of the sun = %4.2e W/Sq.m\"%R_T\n",
+ "print \"The energy received by the Earth each day from the radiation of sun = %4.2e J\"%U_Earth\n",
+ "print \"The power received by the Earth per unit of exposed area = %4d W/Sq.m\"%math.ceil(R_Earth)\n",
+ "\n",
+ "#Answers differ due to rounding errors"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The surface temperature of the sun = 5796 K\n",
+ "The power per unit area emitted from the surface of the sun = 6.40e+07 W/Sq.m\n",
+ "The energy received by the Earth each day from the radiation of sun = 1.54e+22 J\n",
+ "The power received by the Earth per unit of exposed area = 1397 W/Sq.m\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.10, Page 106"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "phi = 2.36; # Work function of sodium, eV\n",
+ "N_A = 6.02e+023; # Avogadro's number\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "I = 1e-008; # Intensity of incident radiation, W/Sq.m\n",
+ "K = 1.00; # Kinetic energy of the ejected photoelectron, eV\n",
+ "rho = 0.97; # Density of Na atoms, g/cc\n",
+ "M = 23; # Gram atomic mass of Na, g/mol\n",
+ "\n",
+ "#Calculations\n",
+ "n = N_A*1e+006/M*rho; # Number of Na atoms per unit volume, atoms/metre-cube\n",
+ "# Assume a cubic structure, then 1/d^3 = n, solving for d\n",
+ "d = (1./n)**(1./3); # Thickness of one layer of sodium atoms, m\n",
+ "N = n*d; # Number of exposed atoms per Sq.m\n",
+ "R = I/(N*e); # Rate of energy received by each atom, eV/s\n",
+ "t = (phi+K)/R; # Time needed to absorb 3.36 eV energy\n",
+ "\n",
+ "#Result\n",
+ "print \"The exposure time of light to produce the photoelectron of %4.2f kinetic energy = %4.1f years\"%(K, t/(60*60*24*365.25))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The exposure time of light to produce the photoelectron of 1.00 kinetic energy = 14.7 years\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.11, Page 109"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "phi = 2.93; # Work function of lithium, eV\n",
+ "lamda = 400e-009; # Wavelength of incident light, m\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "c = 2.998e+008; # Speed of light in vacuum, m/s\n",
+ "h = 6.626e-034; # Planck's constant, Js\n",
+ "\n",
+ "#Calculations\n",
+ "E = h*c/(lamda*e); # Energy of incident light, eV\n",
+ "V0 = E - phi; # Stopping potential, V\n",
+ "\n",
+ "#Results\n",
+ "print \"The energy of incident photons = %4.2f eV\"%E\n",
+ "print \"The stopping potential = %4.2f V\"%V0"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy of incident photons = 3.10 eV\n",
+ "The stopping potential = 0.17 V\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.12, Page 109"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "phi = 2.93; # Work function of lithium, eV\n",
+ "c = 2.998e+008; # Speed of light in vacuum, m/s\n",
+ "K = 3.00; # Kinetic energy of photoelectron, eV\n",
+ "E = phi + K; # Total energy of the incident light, eV\n",
+ "h = 6.626e-034; # Planck's constant, Js\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "\n",
+ "#Calculations\n",
+ "f = E*e/h; # Frequency of incident light, Hz\n",
+ "lamda = c/f; # Wavelength of the incident light, m\n",
+ "\n",
+ "#Results\n",
+ "print \"The frequency of incident light = %4.2e Hz\"%f\n",
+ "print \"The wavelength of the incident light = %4.2f nm\"%(lamda/1e-009)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The frequency of incident light = 1.43e+15 Hz\n",
+ "The wavelength of the incident light = 209.37 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.13, Page 110"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "lamda = 350; # Wavelength of incident light, nm\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "E = 1.250e+003/lamda; # Total energy of the incident light, eV\n",
+ "I = 1e-008; # Intensity of incident light, W/Sq.m\n",
+ "\n",
+ "#Calculations\n",
+ "# As Intensity, I = N*E, solving for N\n",
+ "N = I/(E*e); # The number of photons in the light beam\n",
+ "\n",
+ "#Results\n",
+ "print \"The number of photons in the light beam = %3.1e photons/Sq.m/s\"%N"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The number of photons in the light beam = 1.8e+10 photons/Sq.m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.15, Page 113"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "c = 2.998e+008; # Speed of light in vacuum, m/s\n",
+ "h = 6.626e-034; # Planck's constant, Js\n",
+ "V0 = 35e+003; # Electron acceleration voltage, V\n",
+ "\n",
+ "#Calculations\n",
+ "lambda_min = h*c/(e*V0); # Duane-Hunt rule for wavelength, m\n",
+ "\n",
+ "#Result\n",
+ "print \"The minimum wavelength of X-rays = %4.2e m\"%lambda_min"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The minimum wavelength of X-rays = 3.55e-11 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 3.16, Page 116"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 2.998e+008; # Speed of light in vacuum, m/s\n",
+ "h = 6.626e-034; # Planck's constant, Js\n",
+ "m_e = 9.11e-031; # Rest mass of an electron, kg\n",
+ "lamda = 0.050; # Wavelength of the X-ray, nm\n",
+ "theta = 180; # The angle at which the recoil electron Ke becomes the largest, degree\n",
+ "\n",
+ "#Calculations\n",
+ "E_x_ray = 1.240e+003/lamda; # Energy of the X-ray, eV\n",
+ "lambda_prime = lamda + (1-math.cos(theta*math.pi/180))*h/(m_e*c*1e-009); # The largest wavelength of the scattered photon, nm\n",
+ "E_prime_x_ray = 1.240e+003/lambda_prime; # Energy of the scattered photon, eV\n",
+ "K = (E_x_ray - E_prime_x_ray)/1e+003; # Kinetic energy of the most energetic recoil electron, keV\n",
+ "if (E_prime_x_ray < E_x_ray):\n",
+ " print \"The X-ray is Compton-scattered by the electron.\"\n",
+ "else:\n",
+ " print \"The X-ray is not Compton-scattered by the electron.\"\n",
+ "\n",
+ "#Results\n",
+ "print \"The largest wavelength of the scattered photon = %5.3f nm\"%lambda_prime\n",
+ "print \"The kinetic energy of the most energetic recoil electron = %3.1f keV\"%K\n",
+ "print \"The angle at which the recoil electron energy is the largest = %d degrees\"%theta"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The X-ray is Compton-scattered by the electron.\n",
+ "The largest wavelength of the scattered photon = 0.055 nm\n",
+ "The kinetic energy of the most energetic recoil electron = 2.2 keV\n",
+ "The angle at which the recoil electron energy is the largest = 180 degrees\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch4.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch4.ipynb
new file mode 100755
index 00000000..dd98ce36
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch4.ipynb
@@ -0,0 +1,368 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f42166d612e07dd5c211bc7a51c893df5fb381dff9d6c4c0494c5987d5a5f81d"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 4: Structure of the Atom"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.1, Page 129"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "m_e = 0.000549; # Rest mass of an electron, u\n",
+ "m_He = 4.002603; # Rest mass of a helium, u\n",
+ "\n",
+ "#Calculations\n",
+ "M_alpha = m_He - 2*m_e; # Mass of alpha particle, u\n",
+ "theta_max = 2*m_e/M_alpha; # Maximum scttering angle for aplha particle, rad\n",
+ "\n",
+ "#Result\n",
+ "print \"The maximum scattering angle for alpha particle = %5.3f degrees\"%(theta_max*180/math.pi)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum scattering angle for alpha particle = 0.016 degrees\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.2, Page 137"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "rho = 19.3; # Density of gold, g/cc\n",
+ "N_A = 6.02e+023; # Avogadro's number\n",
+ "N_M = 1; # Number of atoms per molecule\n",
+ "M_g = 197; # Gram atomic mass of gold, g/mol\n",
+ "n = rho*N_A*N_M/(M_g*1e-006); # Number density of gold atoms, atoms/metre-cube\n",
+ "Z1 = 79; # Atomic number of gold\n",
+ "Z2 = 2; # Atomic number of He nucleus\n",
+ "t = 1e-006; # Thickness of the gold foil, m\n",
+ "e = 1.602e-019; # Charge on an electron, C\n",
+ "k = 9e+009; # Coulomb constant, N-Sq.m/C^2\n",
+ "theta = 90.; # Angle of deflection of alpha particle, degrees\n",
+ "K = 7.7; # Kinetic energy of alpha particles, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "f = math.pi*n*t*(Z1*Z2*e**2*k/(2*1.6e-013*K))**2*(1./math.tan(theta*math.pi/180/2))**2; # The fraction of alpha particles deflected\n",
+ "\n",
+ "#Result\n",
+ "print \"The fraction of alpha particles deflected = %1.0e\"%f"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The fraction of alpha particles deflected = 4e-05\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.3, Page 138"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "rho = 19.3; # Density of gold, g/cc\n",
+ "N_A = 6.02e+023; # Avogadro's number\n",
+ "N_M = 1; # Number of atoms per molecule\n",
+ "M_g = 197; # Gram atomic mass of gold, g/mol\n",
+ "Z1 = 79; # Atomic number of gold\n",
+ "Z2 = 2; # Atomic number of He nucleus\n",
+ "t = 2.1e-007; # Thickness of the gold foil, m\n",
+ "e = 1.602e-019; # Charge on an electron, C\n",
+ "k = 9e+009; # Coulomb constant, N-Sq.m/C^2\n",
+ "r = 1e-002; # Distance of the alpha particles from the target, m\n",
+ "theta = 45; # Angle of deflection of alpha particle, degrees\n",
+ "K = 7.7; # Kinetic energy of alpha particles, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "n = rho*N_A*N_M/(M_g*1e-006); # Number density of gold atoms, atoms/metre-cube\n",
+ "f = n*t*(Z1*Z2*e**2*k)**2/((r*1.6e-013*K)**2*math.sin(theta*math.pi/180/2)**4*16); # The fraction of alpha particles deflected\n",
+ "\n",
+ "#Result\n",
+ "print \"The fraction of alpha particles deflected at %d degrees = %3.1e per mm square\"%(theta, f/1e+006)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The fraction of alpha particles deflected at 45 degrees = 3.2e-07 per mm square\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.5, Page 139"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "Z1 = 2; # Atomic number of He nucleus\n",
+ "Z2 = 13; # Atomic number of aluminium\n",
+ "e = 1.602e-019; # Charge on an electron, C\n",
+ "k = 9e+009; # Coulomb constant, N-Sq.m/C^2\n",
+ "K = 7.7; # Kinetic energy of alpha particles, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "r_min = Z1*Z2*e**2*k/(K*1.6e-013); # Size of the aluminium nucleus, m\n",
+ "\n",
+ "#Result\n",
+ "print \"The size of the aluminium nucleus = %3.1e m\"%r_min"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The size of the aluminium nucleus = 4.9e-15 m\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.6, Page 140"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "r = 0.5e-010; # Radius of the atom, m\n",
+ "e = 1.6e-019; # Charge on an electron, C\n",
+ "m_e = 9.11e-031; # Mass of the electron, kg\n",
+ "k = 9e+009; # Coulomb constant, N-Sq.m/C^2\n",
+ "\n",
+ "#Calculations\n",
+ "v = e*k**(1./2)/(m_e*r)**(1./2); # Speed of the electron, m/s\n",
+ "\n",
+ "#Result\n",
+ "if v < 0.01*c:\n",
+ " print \"The nonrelativistic treatment for calculating speed of the electron = %3.1e m/s is justified\"%v\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The nonrelativistic treatment for calculating speed of the electron = 2.2e+06 m/s is justified\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.7, Page 146"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import numpy \n",
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "def check_region(lamda):\n",
+ " if lamda >= 400. and lamda < 700.:\n",
+ " return \"visible\";\n",
+ " else:\n",
+ " return \"infrared\";\n",
+ " \n",
+ "\n",
+ "n_l = 3.; # Lower electron orbit in Paschen series\n",
+ "n_u = [4, numpy.inf]; # First and limiting upper orbits in Paschen series\n",
+ "R_inf = 1.0974e+007; # Rydberg constant, per metre\n",
+ "\n",
+ "#Calculations&Results\n",
+ "lambda_max = 1./(R_inf*(1./n_l**2-1./n_u[0]**2)*1e-009); # The longest wavelength in Paschen series, nm\n",
+ "region = check_region(lambda_max); # Check for the region\n",
+ "print \"The maximum wavelength is %d nm and is in the %s region\"%(math.ceil(lambda_max), region)\n",
+ "lambda_min = 1./(R_inf*(1./n_l**2-1./n_u[1]**2)*1e-009); # The shortest wavelength in Paschen series, nm\n",
+ "region = check_region(lambda_min); # Check for the region\n",
+ "print \"The minimum wavelength is %d nm and is also in the %s region\"%(lambda_min, region)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The maximum wavelength is 1875 nm and is in the infrared region\n",
+ "The minimum wavelength is 820 nm and is also in the infrared region\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.8, Page 149"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "m_e = 0.0005486; # Mass of an electron u\n",
+ "m_p = 1.007276; # Mass of a proton, u\n",
+ "m_d = 2.013553; # Mass of a deutron, u\n",
+ "m_t = 3.015500; # Mass of a triton, u\n",
+ "R_inf = 1.0974e+007; # Rydberg constant, per metre\n",
+ "\n",
+ "#Calculations\n",
+ "R_H = 1./(1+m_e/m_p)*R_inf; # Rydberg constant for hydrogen\n",
+ "R_D = 1./(1+m_e/m_d)*R_inf; # Rydberg constant for deuterium\n",
+ "R_T = 1./(1+m_e/m_t)*R_inf; # Rydberg constant for tritium\n",
+ "lambda_H = 1./(R_H*(1./2**2-1./3**2)*1e-009); # Wavelength of H_alpha line for hydrogen, nm\n",
+ "lambda_D = 1./(R_D*(1./2**2-1./3**2)*1e-009); # Wavelength of H_alpha line for deuterium, nm\n",
+ "lambda_T = 1./(R_T*(1./2**2-1./3**2)*1e-009); # Wavelength of H_alpha line for tritium, nm\n",
+ "\n",
+ "#Results\n",
+ "print \"The wavelength of H_alpha line for hydrogen = %6.2f nm\"%lambda_H\n",
+ "print \"The wavelength of H_alpha line for deutruim = %6.2f nm\"%lambda_D\n",
+ "print \"The wavelength of H_alpha line for tritium = %6.2f nm\"%lambda_T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength of H_alpha line for hydrogen = 656.45 nm\n",
+ "The wavelength of H_alpha line for deutruim = 656.27 nm\n",
+ "The wavelength of H_alpha line for tritium = 656.22 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.9, Page 150"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import numpy\n",
+ "\n",
+ "#Variable declaration\n",
+ "R = 1.0974e+007; # Rydberg constant, per metre\n",
+ "Z = 3; # Atomic number of Li\n",
+ "n_l = 1; # Lower orbit of Li++ ion\n",
+ "n_u = numpy.inf; # Limiting orbit of Li++ ion\n",
+ "\n",
+ "#Calculations\n",
+ "lamda = 1./(Z**2*R*(1/n_l**2-1/n_u**2)*1e-009); # The shortest wavelength emitted by Li++ ion, nm\n",
+ "\n",
+ "#Result\n",
+ "print \"The shortest wavelength emitted by Li++ ion = %4.1f nm\"%lamda"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The shortest wavelength emitted by Li++ ion = 10.1 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch5.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch5.ipynb
new file mode 100755
index 00000000..8e1b14c0
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch5.ipynb
@@ -0,0 +1,447 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:7517050ba0696175203050b56e4b3028360e141a8084f59fc65a505aa1a45787"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5: Wave Properties of Matter and Quantum Mechanics I"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.1, Page 167"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "N_A = 6.022e+23; # Avogdaro's No., per mole\n",
+ "n = 1; # Order of diffraction\n",
+ "M = 58.5; # Molecular mass of NaCl, g/mol\n",
+ "rho = 2.16; # Density of rock salt, g/cc\n",
+ "two_theta = 20; # Scattering angle, degree \n",
+ "theta = two_theta/2; # Diffraction angle, degree\n",
+ "\n",
+ "#Calculations\n",
+ "N = N_A*rho*2/(M*1e-006); # Number of atoms per unit volume, per metre cube \n",
+ "d = (1/N)**(1./3); # Interplanar spacing of NaCl crystal, m \n",
+ "lamda = 2*d*math.sin(theta*math.pi/180)/n ; # Wavelength of X-rays using Bragg's law, m\n",
+ "\n",
+ "#Result\n",
+ "print \"The wavelength of the incident X rays = %5.3f nm\"%(lamda/1e-009)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength of the incident X rays = 0.098 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.2, Page 168"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.63e-034; # Planck's constant, Js\n",
+ "c = 3e+008; # Speed of light, m/s\n",
+ "\n",
+ "#Calculations&Results\n",
+ "# For a moving ball\n",
+ "m = 0.057; # Mass of the ball, kg\n",
+ "v = 25; # Velocity of ball, m/s\n",
+ "p = m*v; # Momentum of the ball, kgm/s\n",
+ "lamda = h/p; # Lambda is the wavelength of ball, nm\n",
+ "print \"The wavelength of ball = %3.1e m\"%lamda\n",
+ "\n",
+ "# For a moving electron\n",
+ "m = 0.511e+006; # Rest mass of an electron, eV\n",
+ "K = 50; # Kinetic energy of the electron, eV\n",
+ "p = math.sqrt(2*m*K); # Momentum of the electron, kgm/s\n",
+ "lamda = h*c/(1.602e-019*p*1e-009); # Wavelength of the electron, nm\n",
+ "print \"The wavelength of the electron = %4.2f nm\"%lamda\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength of ball = 4.7e-34 m\n",
+ "The wavelength of the electron = 0.17 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.3, Page 173"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "m = 9.1e-31; # Mass of the electron, kg\n",
+ "h = 6.63e-34; # Planck's constant, Js\n",
+ "c = 3e+008; # Speed of light, m/s\n",
+ "e = 1.6e-19; # Energy equivalent of 1 eV, J/eV\n",
+ "V0 = 54; # Potential difference between electrodes, V\n",
+ "\n",
+ "#Calculations\n",
+ "lamda = h*c/(math.sqrt(2*m*c**2/e*V0)*e*1e-009); # de Broglie wavelength of the electron, nm\n",
+ "\n",
+ "#Result\n",
+ "print \"The de Broglie wavelength of the electron used by Davisson and Germer = %5.3f nm\"%lamda"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The de Broglie wavelength of the electron used by Davisson and Germer = 0.167 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.4, Page 174"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.63e-34; # Planck's constant, Js\n",
+ "c = 3e+008; # Speed of light, m/s\n",
+ "e = 1.6e-19; # Energy equivalent of 1 eV, J/eV\n",
+ "m = 1.67e-27; # Mass of a neutron, kg\n",
+ "k = 1.38e-23; # Boltzmann constant, J/mol/K\n",
+ "T = [300, 77]; # Temperatures, K\n",
+ "\n",
+ "#Calculations&Results\n",
+ "lamda = h*c/(math.sqrt(3*m*c**2/e*k/e*T[0])*e); # The wavelength of the neutron at 300 K, nm\n",
+ "print \"The wavelength of the neutron at %d K = %5.3f nm\"%(T[0], lamda/1e-09)\n",
+ "lamda = h*c/(math.sqrt(3*m*c**2/e*k/e*T[1])*e); # The wavelength of the neutron at 77 K, nm\n",
+ "print \"The wavelength of the neutron at %d K = %5.3f nm\"%(T[1], lamda/1e-09)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength of the neutron at 300 K = 0.146 nm\n",
+ "The wavelength of the neutron at 77 K = 0.287 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.7, Page 184"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.626e-34; # Planck's constant, Js\n",
+ "c = 3e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J/ev\n",
+ "d = 2000; # Distance between slit centres, nm\n",
+ "K = 50e+003; # Kinetic energy of electrons, eV\n",
+ "l = 350e+006; # Distance of screen from the slits, nm\n",
+ "\n",
+ "#Calculations\n",
+ "lamda = 1.226/math.sqrt(K); # Non-relativistic value of de Broglie wavelength of the electrons, nm\n",
+ "E0 = 0.511e+006; # Rest energy of the electron, J\n",
+ "E = K + E0; # Total energy of the electron, J\n",
+ "p_c = math.sqrt(E**2 - E0**2); # Relativistic mass energy relation, eV\n",
+ "lambda_r = h*c/(p_c*e*1e-009); # Relativistic value of de Broglie wavelength, nm\n",
+ "percent_d = (lamda - lambda_r)/lamda*100; # Percentage decrease in relativistic value relative to non-relavistic value\n",
+ "sin_theta = lambda_r/d; # Bragg's law\n",
+ "y = l*sin_theta; # The distance of first maximum from the screen, nm\n",
+ "\n",
+ "#Results\n",
+ "print \"The percentage decrease in relativistic value relative to non-relativistic value = %1.0f percent\"%percent_d\n",
+ "print \"The distance between first two maxima = %3.0f nm\"%y"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The percentage decrease in relativistic value relative to non-relativistic value = 2 percent\n",
+ "The distance between first two maxima = 938 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.8, Page 187"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "dx = 17.5; # The uncertainty in position, m\n",
+ "h = 1.05e-034; # Reduced Planck's constant, Js\n",
+ "\n",
+ "#Calculations&Results\n",
+ "dp_x = h/(2*dx); # The uncertainty in momentum, kgm/s\n",
+ "print \"The uncertainty in momentum of the ball = %1.0e kg-m/s\"%dp_x\n",
+ "dx = 0.529e-010; # The uncertainty in position, m\n",
+ "dp_x = h/(2*dx); # The uncertainty in momentum, kgm/s\n",
+ "print \"The uncertainty in momentum of the electron = %1.0e kg-m/s\"%dp_x"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The uncertainty in momentum of the ball = 3e-36 kg-m/s\n",
+ "The uncertainty in momentum of the electron = 1e-24 kg-m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.9, Page 188"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "a_0 = 5.29e-11; # Radius of H-atom, m\n",
+ "l = 2*a_0; # Length, m\n",
+ "h = 6.63e-34; # Planck's constant, Js\n",
+ "m = 9.1e-31; # Mass of electron, kg\n",
+ "\n",
+ "#Calculations\n",
+ "K_min = h**2/(8*(math.pi)**2*m*l**2); # Minimum kinetic energy possesed, J\n",
+ "\n",
+ "#Result\n",
+ "print \"The minimum kinetic energy of the electron = %3.1f eV\"%(K_min/1.6e-19)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The minimum kinetic energy of the electron = 3.4 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.10, Page 190"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "dx = 6e-015; # The uncertainty in position of the electron, m\n",
+ "h_bar = 1.054e-034; # PReduced Planck's constant, Js\n",
+ "e = 1.602e-019; # Energy equivalnet of 1 eV, J/eV\n",
+ "c = 3e+008; # Speed of light, m/s\n",
+ "E0 = 0.511e+006; # Rest mass energy of the electron, J\n",
+ "\n",
+ "#Calculations\n",
+ "dp = h_bar*c/(2*dx*e); # Minimum electron momentum, eV/c\n",
+ "p = dp; # Momentum of the electron at least equal to the uncertainty in momentum, eV/c\n",
+ "E = math.sqrt(p**2+E0**2)/1e+006; # Relativistic energy of the electron, MeV \n",
+ "K = E - E0/1e+006; # Minimum kinetic energy of the electron, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The minimum kinetic energy of the electron = %4.1f MeV\"%K"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The minimum kinetic energy of the electron = 15.9 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.12, Page 191"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "c = 3e+8; # Speed of light, m/s\n",
+ "dt = 1e-08; # Relaxation time of atom, s\n",
+ "h = 6.6e-34; # Planck's constant, Js\n",
+ "dE = h/(4*math.pi*dt); # Energy width of excited state of atom, J\n",
+ "lamda = 300e-009; # Wavelegth of emitted photon, m\n",
+ "\n",
+ "#Calculations&Results\n",
+ "f = c/lamda; # Frequency of emitted photon, per sec\n",
+ "print \"The energy width of excited state of the atom = %3.1e eV\"%(dE/1.6e-019)\n",
+ "df = dE/h; # Uncertainty in frequency, per sec\n",
+ "print \"The uncertainty ratio of the frequency = %1.0e\"%(df/f)\n",
+ "\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The energy width of excited state of the atom = 3.3e-08 eV\n",
+ "The uncertainty ratio of the frequency = 8e-09\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 5.13, Page 195"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J/eV\n",
+ "c = 3e008; # Speed of light, m/s\n",
+ "h = 6.63e-034; # Planck's constant, Js\n",
+ "m = 9.1e-031; # Mass of the proton, kg\n",
+ "l = 0.1; # Length of one-dimensional box, nm\n",
+ "\n",
+ "#Calculations&Results\n",
+ "for n in range(1,4):\n",
+ " E_n = n**2*(h*c/(e*1e-009))**2/(8*m*c**2/e*l**2); # Energy of nth level, eV\n",
+ " print \"The first three energy levels are %3.0f eV\"%(E_n)\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The first three energy levels are 38 eV\n",
+ "The first three energy levels are 151 eV\n",
+ "The first three energy levels are 340 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch6.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch6.ipynb
new file mode 100755
index 00000000..f5252b26
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch6.ipynb
@@ -0,0 +1,315 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:a935d76914a9e4ae6d3e19bff37ec8b5eb26eace520b4d5bf46176dc57b307c5"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6: Quantum Mechanics II"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.4, Page 205"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "import scipy\n",
+ "import math\n",
+ "from scipy.integrate import quad\n",
+ "\n",
+ "#Variable declaration\n",
+ "alpha = 1; # For simplicity assume alpha to be unity\n",
+ "\n",
+ "#Calculations&Results\n",
+ "p = lambda x: math.sqrt(alpha)*math.exp(-2*alpha*x) # Probability that the particle lies between 0 and 1/alpha\n",
+ "integ, err = scipy.integrate.quad(p,0,1/alpha)\n",
+ "print \"The probability that the particle lies between 0 and 1/alpha = %5.3f\"%integ\n",
+ "p = lambda x: math.sqrt(alpha)*math.exp(-2*alpha*x)\n",
+ "integ, err = scipy.integrate.quad(p,1/alpha,2/alpha) # Probability that the particle lies between 1/alpha and 2/alpha\n",
+ "print \"The probability that the particle lies between 1/alpha and 2/alpha = %5.3f\"%integ\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The probability that the particle lies between 0 and 1/alpha = 0.432\n",
+ "The probability that the particle lies between 1/alpha and 2/alpha = 0.059\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.9, Page 215"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "m = 938.3e+006; # Energy equivalent of proton mass, eV\n",
+ "L = 1e-005; # Diameter of the nucleus, nm\n",
+ "\n",
+ "#Calculations\n",
+ "E1 = math.pi**2*(h_bar*c/(e*1e-009))**2/(2*L**2*m*1e+006); # Energy of the ground state of proton, MeV\n",
+ "E2 = 4*E1; # Energy of first excited state of proton, MeV\n",
+ "delta_E = E2 -E1; # Transition energy of the proton inside the nucleus, MeV\n",
+ "\n",
+ "#Result\n",
+ "print \"The transition energy of the proton inside the nucleus = %1d MeV\"%delta_E"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The transition energy of the proton inside the nucleus = 6 MeV\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.14, Page 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "m = 0.511e+006; # Energy equivalent of electron rest mass, eV\n",
+ "V0 = 10; # Height of potential barrier, eV\n",
+ "E = 5; # Energy of the incident electrons, eV\n",
+ "L = 0.8e-009; # Width of the potential barrier, m\n",
+ "\n",
+ "#Calculations\n",
+ "k = math.sqrt(2*m*(V0 - E))*e/(h_bar*c); # Schrodinger's constant, per m\n",
+ "T = (1 + V0**2*math.sinh(k*L)**2/(4*E*(V0 - E)))**(-1); # Transmission electron probability\n",
+ "\n",
+ "#Result\n",
+ "print \"The fraction of electrons tunnelled through the barrier = %3.1e\"%T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The fraction of electrons tunnelled through the barrier = 4.4e-08\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.15, Page 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "m = 0.511e+006; # Energy equivalent of electron rest mass, eV\n",
+ "V0 = 10; # Height of potential barrier, eV\n",
+ "\n",
+ "#Calculations\n",
+ "Sum_M = 0;\n",
+ "i = 1;\n",
+ "for E in range(1,5): # Range of energies of the incident electrons, eV\n",
+ " M = 16*E/V0*(1-E/V0); # All the factors multiplying the exponential term\n",
+ " Sum_M = Sum_M + M; # Accumulator\n",
+ " i = i + 1;\n",
+ "\n",
+ "E = 5; # Given energy of the incident electrons, eV\n",
+ "M = int(Sum_M/i); # Average value of M\n",
+ "L = 0.8e-009; # Width of the potential barrier, m\n",
+ "k = math.sqrt(2*m*(V0 - E))*e/(h_bar*c); # Schrodinger's constant, per m\n",
+ "T = M*math.exp(-2*k*L); # Transmission electron probability\n",
+ "\n",
+ "#Result\n",
+ "print \"The fraction of electrons tunnelled through the barrier = %3.1e\"%T"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The fraction of electrons tunnelled through the barrier = 2.2e-08\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.16, Page 230"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "m = 0.511e+006; # Energy equivalent of electron rest mass, eV\n",
+ "V0 = 10; # Height of potential barrier, eV\n",
+ "E = 5; # Given energy of the incident electrons, eV\n",
+ "\n",
+ "#Calculations\n",
+ "l = h_bar*c/(2*math.sqrt(2*m*(V0 - E))*1e-009*e); # Penetration distance into the barrier when the probability of the particle penetration drops to 1/e, nm\n",
+ "\n",
+ "#Result\n",
+ "print \"The penetration distance for a %d eV electron approaching a step barrier of %d eV = %5.3f nm\"%(E, V0, l)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The penetration distance for a 5 eV electron approaching a step barrier of 10 eV = 0.044 nm\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 6.17, Page 234"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "c = 3.00e+008; # Speed of light, m/s\n",
+ "e = 1.602e-019; # Charge on an electron, C\n",
+ "k = 9e+009; # Coulomb constant, N-Sq.m./C^2\n",
+ "m = 3727; # Energy equivalent of alpha particle rest mass, MeV\n",
+ "E = 5; # Given energy of the incident electrons, eV\n",
+ "Z1 = 2; # Atomic number of an alpha particle\n",
+ "Z2 = 92; # Atomic number of the U-238 nucleus\n",
+ "r_N = 7e-015; # Nuclear radius, m\n",
+ "K = 4.2; # Kinetic energy of alpha particle, MeV\n",
+ "\n",
+ "#Calculations\n",
+ "V_C = Z1*Z2*e**2*k/(r_N*e*1e+006); # Coulomb Potential, MeV\n",
+ "r_prime = V_C*r_N/(K*1e-015); # Distance through which the alpha particle must tunnel, fm\n",
+ "kapa = math.sqrt(2*m*(V_C-E))*e/(h_bar*c*1e-006); # Schronginger's Constant, per m\n",
+ "L = r_prime - r_N/1e-015; # Barrier width, fm\n",
+ "T = 16*(K/V_C)*(1-K/V_C)*math.exp(-2*kapa*L*1e-015); # Tunnelling probability of alpha particle\n",
+ "V_C_new = V_C/2; # Potential equal to half the Coulomb potential, MeV\n",
+ "L = L/2; # Width equal to half the barrier width, fm\n",
+ "kapa = math.sqrt(2*m*(V_C_new-E))*e/(h_bar*c*1e-006); # Schronginger's Constant, per m\n",
+ "T_a = 16*(K/V_C_new)*(1-K/V_C_new)*math.exp(-2*kapa*L*1e-015); # Approximated tunnelling probability of alpha particle\n",
+ "v = math.sqrt(2*K/m)*c; # Speed of the alpha particle, m/s\n",
+ "t = r_N/v; # Time taken by alpha particle to cross the U-238 nucleus, s\n",
+ "\n",
+ "#Results\n",
+ "print \"The barrier height = %2d MeV\"%(math.ceil(V_C))\n",
+ "print \"The distance that alpha particle must tunnel = %2d fm\"%r_prime\n",
+ "print \"The tunnelling potential assuming square-top potential = %1.0e\"%T\n",
+ "print \"The approximated tunnelling potential = %3.1e\"%T_a\n",
+ "print \"The speed of the alpha particle = %3.1e m/s\"%v\n",
+ "print \"The time taken by alpha particle to cross the U-238 nucleus = %1.0e s\"%t\n",
+ "\n",
+ "# Some answers are given wrong in the textbook for this problem"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The barrier height = 38 MeV\n",
+ "The distance that alpha particle must tunnel = 63 fm\n",
+ "The tunnelling potential assuming square-top potential = 6e-123\n",
+ "The approximated tunnelling potential = 3.8e-40\n",
+ "The speed of the alpha particle = 1.4e+07 m/s\n",
+ "The time taken by alpha particle to cross the U-238 nucleus = 5e-22 s\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch7.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch7.ipynb
new file mode 100755
index 00000000..05b43549
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch7.ipynb
@@ -0,0 +1,378 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:ac0a66c98f2095bc3ebf2778dcd991b562e3ba004b2f051bfaa777d8205d2aed"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7: The Hydrogen Atom"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.2, Page 248"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import scipy\n",
+ "import math\n",
+ "from scipy.integrate import quad\n",
+ "\n",
+ "#Variable declaration\n",
+ "a0 = 1; # For simplicity assume Bohr radius to be unity, m\n",
+ "\n",
+ "#Calculations&Results\n",
+ "x = lambda r:r**4*math.exp(-r/a0)\n",
+ "int1,err = scipy.integrate.quad(x,0,15)\n",
+ "y = lambda t:math.sin(t)**3\n",
+ "int2,err = scipy.integrate.quad(y,0,math.pi)\n",
+ "z = lambda p:p**0\n",
+ "int3,err = scipy.integrate.quad(z,0,2*math.pi)\n",
+ "NE = 1./(64*math.pi*a0**5)*int1*int2*int3;\n",
+ "print \"NE = %.f\"%NE\n",
+ "if round(NE) == 1:\n",
+ " print \"The hydrogen wave function is normalized\"\n",
+ "else:\n",
+ " print \"The hydrogen wave function is not normalized\"\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "NE = 1\n",
+ "The hydrogen wave function is normalized\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.4, Page 252"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "n = 3; # Principal quantum number\n",
+ "\n",
+ "#Calculations&Results\n",
+ "Total = 0;\n",
+ "print (\"\\nn l m_l 2(l + 1)\");\n",
+ "print (\"\\n------------------------------------\");\n",
+ "for l in range(0,n):\n",
+ " print (\"\\n%d\"% n),\n",
+ " print (\" %d \"% l),\n",
+ " if l > 0:\n",
+ " count = 0;\n",
+ " for m_l in range(-l,l+1):\n",
+ " print (\"%2d \"% m_l),\n",
+ " count = count + 1;\n",
+ "\n",
+ " if l == 1:\n",
+ " print(\" \"),\n",
+ " else:\n",
+ " print(\"\"),\n",
+ "\n",
+ " else :\n",
+ " m_l = 0;\n",
+ " count = 0;\n",
+ " print(\"%2d \"% m_l),\n",
+ " count = count + 1;\n",
+ "\n",
+ " print(\" %d\"% count),\n",
+ " Total = Total + count;\n",
+ "\n",
+ "print(\"\\n Total = %d\"% Total);\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "n l m_l 2(l + 1)\n",
+ "\n",
+ "------------------------------------\n",
+ "\n",
+ "3 0 0 1 \n",
+ "3 1 -1 0 1 3 \n",
+ "3 2 -2 -1 0 1 2 5 \n",
+ " Total = 9\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.7, Page 256"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 1.602e-019; # Charge on an electron, C\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "m = 9.11e-031; # Electron mass, kg\n",
+ "B = 2.00; # External magnetic field, T\n",
+ "m_l1 = 0; # Lower orbital magnetic quantum number\n",
+ "m_l2 = 1; # Upper orbital magnetic quantum number\n",
+ "\n",
+ "#Calculations\n",
+ "delta_m_l = m_l2 - m_l1; # Change in m_l\n",
+ "mu_B = e*h_bar/(2*m); # Bohr's magneton, J/T\n",
+ "delta_E = mu_B*B*delta_m_l/e; # Energy difference between components of p states of atomic hydrogen placed in the external field, eV\n",
+ "\n",
+ "#Results\n",
+ "print \"The value of Bohr magneton = %4.2e J/T\"%mu_B\n",
+ "print \"The energy difference between components of p states of atomic hydrogen placed in the external field = %4.2e eV\"%delta_E"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The value of Bohr magneton = 9.26e-24 J/T\n",
+ "The energy difference between components of p states of atomic hydrogen placed in the external field = 1.16e-04 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.8, Page 257"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "m = 1.67e-027; # Mass of the proton, kg\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "T = 663; # Temperature of the discharge tube, K\n",
+ "\n",
+ "#Calculations\n",
+ "v_x = math.sqrt(3*k*T/m); # Average speed of the hydrogen atom\n",
+ "mu_z = 9.27e-024; # Bohr's magneton, J/T\n",
+ "B_grad = 1240; # Magnetic field gradient, T/m\n",
+ "delta_x = 0.03; # Length of the homogeneous magnetic field, m\n",
+ "d = 1/(2*m)*(mu_z*B_grad)*(delta_x/v_x)**2; # Separation of the atomic beam, m\n",
+ "\n",
+ "#Result\n",
+ "print \"The separation of the atomic beam = %4.2f mm\"%(d/1e-003)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The separation of the atomic beam = 0.19 mm\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.9, Page 259"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "n = 4; # Principal quantum number\n",
+ "l = 2; # For 4d-state\n",
+ "\n",
+ "#Calculations&Results\n",
+ "print \"\\nn l m_l m_s\"\n",
+ "print \"\\n------------------------------------------\"\n",
+ "count = 0;\n",
+ "for m_l in range(-l,3):\n",
+ " if (m_l == 0):\n",
+ " print \"%d\\t\"%n,\n",
+ " print \" %d\"%l,\n",
+ " print \" %d \"%m_l,\n",
+ " print \" +1./2, -1./2\"\n",
+ " else: \n",
+ " print \" %2d\"%m_l,\n",
+ " print \" +1./2, -1./2\"\n",
+ " count = count + 2;\n",
+ " \n",
+ "print \"Total No. of different states for 4d level of atomic hydrogen = %d\"%count\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "n l m_l m_s\n",
+ "\n",
+ "------------------------------------------\n",
+ " -2 +1./2, -1./2\n",
+ " -1 +1./2, -1./2\n",
+ "4\t 2 0 +1./2, -1./2\n",
+ " 1 +1./2, -1./2\n",
+ " 2 +1./2, -1./2\n",
+ "Total No. of different states for 4d level of atomic hydrogen = 10\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.10, Page 263"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "\n",
+ "\n",
+ "def check_allowance(dn, dl, dml, dms):\n",
+ " if (dl == -1 or dl == 1 or dml == -1 or dml == 0 or dml == 1 or dms == -1 or dms == 0 or dms == 1) and dl != 0:\n",
+ " return 1;\n",
+ " else:\n",
+ " return 0;\n",
+ "\n",
+ "\n",
+ "state = [[2, 0, 0, 1./2],[ 3, 1, 1, 1./2],[ 2, 0, 0, 1./2],[ 3, 0, 0, 1./2],[ 4, 2, -1, -1./2],[ 2, 1, 0, 1./2]];\n",
+ "for i in range(0,5,2):\n",
+ " flag = 0; \n",
+ " d_n = state[i][0] - state[i+1][0];\n",
+ " d_l = state[i][1] - state[i+1][1];\n",
+ " d_m_l = state[i][2] - state[i+1][2];\n",
+ " d_m_s = state[i][3] - state[i+1][3];\n",
+ " flag = check_allowance(d_n, d_l, d_m_l, d_m_s);\n",
+ " if flag == 1:\n",
+ " print(\"\\n\\nThe transition (%d,%d,%d,1/%d) --> (%d,%d,%d,1/%d) is allowed\"%( state[i][0], state[i][1], state[i][2], state[i][3]*4, state[i+1][0], state[i+1][1], state[i+1][2], state[i+1][3]*4))\n",
+ " delta_E = -13.6*(1./state[i+1][0]**2-1./state[i][0]**2);\n",
+ " print(\"The energy of this transition is %4.2f eV\"% delta_E);\n",
+ " else:\n",
+ " print(\"\\n\\nThe transition (%d,%d,%d, %d)--> (%d,%d,%d,%d) is not allowed\"%(state[i][0], state[i][1], state[i][2], state[i][3], state[i+1][0], state[i+1][1], state[i+1][2], state[i+1][3]))\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "\n",
+ "The transition (2,0,0,1/2) --> (3,1,1,1/2) is allowed\n",
+ "The energy of this transition is 1.89 eV\n",
+ "\n",
+ "\n",
+ "The transition (2,0,0, 0)--> (3,0,0,0) is not allowed\n",
+ "\n",
+ "\n",
+ "The transition (4,2,-1,1/-2) --> (2,1,0,1/2) is allowed\n",
+ "The energy of this transition is -2.55 eV\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 7.13, Page 266"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import scipy\n",
+ "from scipy.integrate import quad\n",
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "a0 = 1; # For simplicity assume bohr radius to be unity\n",
+ "\n",
+ "#Calculations\n",
+ "p = lambda r: 4/a0**3*math.exp(-2*r/a0)*r**2\n",
+ "P,err = scipy.integrate.quad(p, a0, 10);\n",
+ "\n",
+ "#Result\n",
+ "print \"The probability of the electron in the 1s state of the hydrogen atom = %4.2f\"%P"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The probability of the electron in the 1s state of the hydrogen atom = 0.68\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch8.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch8.ipynb
new file mode 100755
index 00000000..877b7876
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch8.ipynb
@@ -0,0 +1,158 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:cbd11433a31785853e9886e91140f1df1e44a2e02ec46a10cd5dc4781d714654"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8: Atomic Physics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.3, Page 285"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "delta_E = 0.0021; # Energy difference for the 3p subshell of sodium, eV\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "m = 9.11e-031; # Rest of an an electron, kg\n",
+ "g_s = 2; # Gyromagnetic ratio due to spin splitting\n",
+ "\n",
+ "#Calculations\n",
+ "# As delta_E = g_s*e*h_bar/(2*m)*B, solving for B\n",
+ "B = m*delta_E/h_bar; # Internal magnetic field causing the LS splitting, T\n",
+ "\n",
+ "#Result\n",
+ "print \"The internal magnetic field causing the LS splitting = %2d T\"%B"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The internal magnetic field causing the LS splitting = 18 T\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.5, Page 289"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import numpy\n",
+ "\n",
+ "l1 = 1; # Orbital angular momentum quantum number for first electron\n",
+ "l2 = 2; # Orbital angular momentum quantum number for second electron\n",
+ "s1 = 1./2; # Spin angular momentum quantum number for first electron\n",
+ "s2 = 1./2; # Spin angular momentum quantum number for second electron\n",
+ "temp_j = numpy.zeros(15);\n",
+ "cnt = 0;\n",
+ "print (\"\\nThe all possibe values of the total angular momentum quantum number of J are:\");\n",
+ "for L in range(int(abs(l1 - l2)),int(abs(l1 + l2))+1):\n",
+ " for S in range(int(abs(s1 - s2)),int(abs(s1 + s2))+1):\n",
+ " for j in range(abs(L - S),abs(L + S)+1):\n",
+ " temp_j[cnt] = j;\n",
+ " cnt = cnt + 1;\n",
+ "\n",
+ "\n",
+ "J = -1;\n",
+ "temp_J = sorted(temp_j)\n",
+ "for i in range(len(temp_J)):\n",
+ " if temp_J[i] > J:\n",
+ " J = temp_J[i];\n",
+ " print \"%d \"%temp_J[i],;\n",
+ "\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "The all possibe values of the total angular momentum quantum number of J are:\n",
+ "0 1 2 3 4 \n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 8.8, Page 291"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "delta_E = 0.0021; # Energy difference for the 3p subshell of sodium, eV\n",
+ "h = 6.62e-034; # Planck's constant, Js\n",
+ "h_bar = h/(2*math.pi); # Reduced Planck's constant, Js\n",
+ "e = 1.602e-019; # Energy equivalent of 1 eV, J\n",
+ "m = 9.11e-031; # Rest of an an electron, kg\n",
+ "g_s = 2; # Gyromagnetic ratio due to spin splitting\n",
+ "\n",
+ "#Calculations\n",
+ "# As delta_E = g_s*e*h_bar/(2*m)*B, solving for B\n",
+ "B = m*delta_E/h_bar; # Internal magnetic field causing the LS splitting, T\n",
+ "\n",
+ "#Result\n",
+ "print \"The internal magnetic field causing the LS splitting = %2d T\"%B"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The internal magnetic field causing the LS splitting = 18 T\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/ch9.ipynb b/Modern_Physics_for_Scientists_and_Engineers/ch9.ipynb
new file mode 100755
index 00000000..3a0e39ed
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/ch9.ipynb
@@ -0,0 +1,285 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:99c63cd5d461a992de3be34298ef557332677985056a4e6a31ae5dace5faabc1"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9: Statistical Physics"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4, Page 303"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "N_A = 6.023e+023; # Avogadro's number\n",
+ "T = 293; # Room temperature, K\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "\n",
+ "#Calculations\n",
+ "# For a single molecule\n",
+ "K_bar_single = 3./2*k*T/e; # Mean translational kinetic energy of a single gas molecule, J\n",
+ "# For a 1 mole of molecules\n",
+ "K_bar_mole = K_bar_single*N_A*e; # Mean translational kinetic energy of 1 mole of gas molecules, J\n",
+ "\n",
+ "#Results\n",
+ "print \"The mean translational kinetic energy of the single idela gas molecule = %5.3f eV\"%K_bar_single\n",
+ "print \"The mean translational kinetic energy of the one mole of ideal gas molecules = %4d J\"%(math.ceil(K_bar_mole))\n",
+ "\n",
+ "#Answer differs due to rounding error"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mean translational kinetic energy of the single idela gas molecule = 0.038 eV\n",
+ "The mean translational kinetic energy of the one mole of ideal gas molecules = 3654 J\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.3, Page 310"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "u = 1.67e-027; # Mass equivalent of one atomic mass unit, kg\n",
+ "T = 293; # Room temperature, K\n",
+ "m_H = 1.008*u; # Gram atomic mass of hydrogen, kg\n",
+ "\n",
+ "#Calculations&Results\n",
+ "m = 2*m_H; # Gram molecular mass of hydrogen molecule, kg\n",
+ "v_bar = 4/math.sqrt(2*math.pi)*math.sqrt(k*T/m); # Mean molecular speed in the light gas hydrogen, m/s\n",
+ "print \"The mean molecular speed in the light gas hydrogen = %4d m/s\"%(math.ceil(v_bar))\n",
+ "m = 222*u; # Gram atomic mass of Radon, kg\n",
+ "v_bar = 4/math.sqrt(2*math.pi)*math.sqrt(k*T/m); # Mean molecular speed in the heavy radon gas, m/s\n",
+ "print \"The mean molecular speed in the heavy radon gas = %3d m/s\"%(math.ceil(v_bar))"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The mean molecular speed in the light gas hydrogen = 1749 m/s\n",
+ "The mean molecular speed in the heavy radon gas = 167 m/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.4, Page 310"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "import scipy\n",
+ "from scipy.integrate import quad\n",
+ "\n",
+ "#Variable declaration\n",
+ "m = 1; # For simplicity assume mass of gas molecule to be unity, kg\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "T = 293; # Room temperature, K\n",
+ "\n",
+ "#Calculations\n",
+ "bita = k*T; # Energy associated with three degrees of freedom, J\n",
+ "v_mps = math.sqrt(2/(bita*m)); # For simplcity assume most probable speed to be unity, m/s\n",
+ "C = (bita*m/(2*math.pi))**(3./2); # Constant in the distribution function\n",
+ "p = lambda v: 4*math.pi*C*math.exp(-1./2*bita*m*v**2)*v**2\n",
+ "P,err = scipy.integrate.quad(p,0.99*v_mps, 1.01*v_mps)\n",
+ "\n",
+ "#Result\n",
+ "print \"The fraction of molecules in an ideal gas in equilibrium which have speeds within 1 percent above and below the most probable speed = %5.3f\"%P"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The fraction of molecules in an ideal gas in equilibrium which have speeds within 1 percent above and below the most probable speed = 0.017\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.6, Page 315"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import numpy\n",
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "T = [293, 5000, 1e+006]; # Room temperature, temperature at the surface of the star and temperature at the star interior respectively, K\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "g_E1 = 2; # Possible configuration of the electrons in ground state of H-atom\n",
+ "g_E2 = 8; # Possible configuration of the electrons in the first excited state of H-atom\n",
+ "E1 = -13.6; # Energy of the ground state, eV\n",
+ "E2 = -3.4; # Energy of the first excited state state, eV\n",
+ "\n",
+ "#Calculations&Results\n",
+ "n_ratio = numpy.zeros(3);\n",
+ "for i in range(0,3):\n",
+ " n_ratio[i] = g_E2/g_E1*math.exp(1./(k*T[i])*(E1 - E2)*e);\n",
+ " print \"For T = %4.2e K, n_E2/n_E1 = %4.2e\"%(T[i], n_ratio[i])\n",
+ "\n",
+ "#Incorrect answer given in textbook for the first part"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "For T = 2.93e+02 K, n_E2/n_E1 = 2.05e-175\n",
+ "For T = 5.00e+03 K, n_E2/n_E1 = 2.14e-10\n",
+ "For T = 1.00e+06 K, n_E2/n_E1 = 3.55e+00\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.7, Page 320"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "e = 1.6e-019; # Energy equivalent of 1 eV, J\n",
+ "n = 8.47e+028; # Number density of conduction electrons in copper, per metre cube\n",
+ "k = 1.38e-023; # Boltzmann constant, J/K\n",
+ "h = 6.626e-034; # Planck's constant, Js\n",
+ "m = 9.11e-031; # Mass of an electron, kg\n",
+ "\n",
+ "#Calculations\n",
+ "E_F = h**2/(8*m*e)*(3*n/math.pi)**(2./3); # Fermi energy for copper, eV\n",
+ "T_F = E_F*e/k; # Fermi temperature for copper, K\n",
+ "\n",
+ "#Results\n",
+ "print \"The Fermi energy for copper = %4.2f eV\"%E_F\n",
+ "print \"The Fermi temperature for copper = %4.2e K\"%T_F"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The Fermi energy for copper = 7.04 eV\n",
+ "The Fermi temperature for copper = 8.16e+04 K\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 9.8, Page 323"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "R = 1; # For simplicity assume the molar gas constant to be unity, J/mol/K\n",
+ "T = 293; # Room temperature, K\n",
+ "T_F = 8.16e+004; # The Fermi temperature for copper\n",
+ "\n",
+ "#Calculations&Results\n",
+ "C_V = math.pi**2*T/(2*T_F)*R; # Electronic contribution to the molar heat capacity for copper, J/mol/K\n",
+ "print \"The electronic contribution to the molar heat capacity for copper = %6.4fR\"%C_V\n",
+ "T_F = 6.38e+004; # The Fermi temperature for silver\n",
+ "C_V = math.pi**2*T/(2*T_F)*R; # Electronic contribution to the molar heat capacity for silver, J/mol/K\n",
+ "print \"The electronic contribution to the molar heat capacity for silver = %6.4fR\"%C_V"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The electronic contribution to the molar heat capacity for copper = 0.0177R\n",
+ "The electronic contribution to the molar heat capacity for silver = 0.0227R\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Modern_Physics_for_Scientists_and_Engineers/screenshots/neutprotdecay.png b/Modern_Physics_for_Scientists_and_Engineers/screenshots/neutprotdecay.png
new file mode 100755
index 00000000..deb5d109
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/screenshots/neutprotdecay.png
Binary files differ
diff --git a/Modern_Physics_for_Scientists_and_Engineers/screenshots/nonrelativistic.png b/Modern_Physics_for_Scientists_and_Engineers/screenshots/nonrelativistic.png
new file mode 100755
index 00000000..d0215182
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/screenshots/nonrelativistic.png
Binary files differ
diff --git a/Modern_Physics_for_Scientists_and_Engineers/screenshots/probability_part.png b/Modern_Physics_for_Scientists_and_Engineers/screenshots/probability_part.png
new file mode 100755
index 00000000..f5a467ee
--- /dev/null
+++ b/Modern_Physics_for_Scientists_and_Engineers/screenshots/probability_part.png
Binary files differ