{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Ch-9 : Optical Detectors"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.1 Pg: 374"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The responsivity =0.72 Amp/Watt\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "e_c=550## number of electron collected\n",
    "p=800## number of photon incident\n",
    "n=e_c/p## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=1.3*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "print \"The responsivity =%0.2f Amp/Watt\"%( R)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.2 Pg: 374"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The quantum efficiency =40.00 %\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.85*10**-6# wavelength in m\n",
    "R=0.274## responsivity in A/W\n",
    "n=(R*h*c)/(e*y)## quantum efficiency\n",
    "n1=n*100## % of quantum efficiency\n",
    "print \"The quantum efficiency =%0.2f %%\"%( n1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.3 Pg: 374"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The quantum efficiency =33.33 %\n",
      "\n",
      " band gap energy =24.85*10**-20 J\n",
      "\n",
      " The output photo current =21.49 nA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "e_c=1## number of electron collected\n",
    "p=3## number of photon incident\n",
    "n=e_c/p## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.8*10**-6# wavelength in m\n",
    "Eg=(h*c)/y## band gap energy in J\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Po=10**-7## in W\n",
    "Ip=R*Po## output photo current\n",
    "print \"The quantum efficiency =%0.2f %%\"%( n*100)#\n",
    "print \"\\n band gap energy =%0.2f*10**-20 J\"%( Eg*10**20)#\n",
    "print \"\\n The output photo current =%0.2f nA\"%( Ip*10**9)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.4 Pg: 375"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The responsivity =0.34 A/W\n",
      "\n",
      " The received optical power =2.92 uW\n",
      "\n",
      " The number of received photons =1.25*10**13 photons/sec\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.50## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.85*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Ip=10**-6## mean photo current\n",
    "Po=Ip/R## received optical power in W\n",
    "f=c/y#\n",
    "re=(n*Po)/(h*f)#\n",
    "rp=re/n## number of received photons\n",
    "print \"The responsivity =%0.2f A/W\"%( R)#\n",
    "print \"\\n The received optical power =%0.2f uW\"%( Po*10**6)#\n",
    "print \"\\n The number of received photons =%0.2f*10**13 photons/sec\"%( rp/10**13)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.5 Pg: 375"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The cut off wavelength =0.87 um\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "Eg=1.43## in eV\n",
    "Eg1=Eg*1.602*10**-19## in J\n",
    "y=(h*c)/Eg1## cut off wavelength in m\n",
    "print \"The cut off wavelength =%0.2f um\"%( y*10**6)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.6 Pg: 376"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The max response time =7.54 ns\n"
     ]
    }
   ],
   "source": [
    "from math import pi\n",
    "from __future__ import division\n",
    "vd=2.5*10**4## carrier velocity in m/s\n",
    "w=30*10**-6## width in m\n",
    "Bm=vd/(2*pi*w)#\n",
    "Tm=1/Bm## max response time in sec\n",
    "Tm1=Tm*10**9## max response time in ns\n",
    "print \"The max response time =%0.2f ns\"%( Tm1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.7 Pg: 376"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The multiplication factor =58\n"
     ]
    }
   ],
   "source": [
    "from math import ceil,pi\n",
    "from __future__ import division\n",
    "n=0.65## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.85*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Po=0.35*10**-6## in W\n",
    "Ip=R*Po## output photo current\n",
    "I=9*10**-6## output current in A\n",
    "M=I/Ip## multiplication factor\n",
    "M1=ceil(M)#\n",
    "print \"The multiplication factor =%d\"%( M1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.8 Pg: 377"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The cut off wavelength =1.33 um\n",
      "\n",
      " The responsivity =0.53 A/W \n",
      "\n",
      " The incident optical power =5.06 uW\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.50## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "Eg=1.5*10**-19## in J\n",
    "y=(h*c)/Eg## cut off wavelength in m\n",
    "f=c/y#\n",
    "R=(n*e)/(h*f)## responsivity in A/W\n",
    "Ip=2.7*10**-6## photo current in A\n",
    "Po=Ip/R## incident optical power in W\n",
    "Po1=Po*10**6## incident optical power in uW\n",
    "print \"The cut off wavelength =%0.2f um\"%( y*10**6)#\n",
    "print \"\\n The responsivity =%0.2f A/W \"%( R)#\n",
    "print \"\\n The incident optical power =%0.2f uW\"%( Po1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.9 Pg: 377"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The responsivity =0.10 A/W \n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.15## quantum efficiency\n",
    "e=1.6*10**-19## charge\n",
    "h=6.63*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.85*10**-6## cut off wavelength in m\n",
    "f=c/y## frequency in Hz\n",
    "R=(n*e)/(h*f)## responsivity in A/W\n",
    "print \"The responsivity =%0.2f A/W \"%( R)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.10 Pg: 377"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The responsivity =0.10 A/W \n",
      "\n",
      " The external quantum efficiency =14.59% \n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "Iph=75*10**-6## output photocurrent in A\n",
    "y=0.85## operating wavelength in um\n",
    "Pi=750*10**-6## incident optical power in uW\n",
    "R=Iph/Pi## responsivity in A/W\n",
    "n=1.24*R/y## external quantum efficiency\n",
    "n1=n*100## percentage of external quantum efficiency\n",
    "print \"The responsivity =%0.2f A/W \"%( R)#\n",
    "print \"\\n The external quantum efficiency =%0.2f%% \"%( n1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.11 Pg: 378"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The transit time =70.00 ps\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "Vs=10**5## saturation in m/s\n",
    "W=7*10**-6## depletion layer width in m\n",
    "tr=W/Vs## transit time in sec\n",
    "print \"The transit time =%0.2f ps\"%( tr*10**12)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.12 Pg: 378"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The max 3 dB bandwidth =420 MHz\n",
      "\n",
      " The answer is wrong in the textbook\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "Vs=3*10**4## saturation in m/s\n",
    "W=25*10**-6## depletion layer width in m\n",
    "tr=W/Vs## transit time in sec\n",
    "f=0.35/tr## max 3 dB bandwidth Hz\n",
    "f1=f/10**6## max 3 dB bandwidth Hz\n",
    "print \"The max 3 dB bandwidth =%d MHz\"%( f1)#\n",
    "print \"\\n The answer is wrong in the textbook\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.13 Pg: 378"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The transit time =0.83 ns\n",
      "\n",
      " The junction capacitance =1.05 pF\n",
      "\n",
      " The time constant =15.75 us\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "Vs=3*10**4## saturation in m/s\n",
    "W=25*10**-6## depletion layer width in m\n",
    "E=10.5*10**-11## in F/m\n",
    "RL=15*10**6## load resister in ohm\n",
    "A=0.25*10**-6## area in m**2\n",
    "tr=W/Vs## transit time in sec\n",
    "Cj=E*A/W## junction capacitance in F\n",
    "t=RL*Cj## time constant in sec\n",
    "print \"The transit time =%0.2f ns\"%( tr*10**9)#\n",
    "print \"\\n The junction capacitance =%0.2f pF\"%( Cj*10**12)#\n",
    "print \"\\n The time constant =%0.2f us\"%( t*10**6)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.14 Pg: 379"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The cut off wavelength for Si  =1.11 um\n",
      "\n",
      " The cut off wavelength for Ge =1.86 um\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "Eg1=1.12## band gap for Si in eV\n",
    "Eg2=0.667## band gap for Ge in eV\n",
    "y_si=1.24/Eg1## cut off wavelength for Si in um\n",
    "y_he=1.24/Eg2## cut off wavelength for Ge in um\n",
    "print \"The cut off wavelength for Si  =%0.2f um\"%( y_si)#\n",
    "print \"\\n The cut off wavelength for Ge =%0.2f um\"%( y_he)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.15 Pg: 379"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The responsivity =0.36 A/W\n",
      "\n",
      " The received optical power =2.76 uW\n",
      "\n",
      " The number of received photons =1.25*10**13 photons/sec\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.50## quantum efficiency\n",
    "e=1.6*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.9*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Ip=10**-6## mean photo current\n",
    "Po=Ip/R## received optical power in W\n",
    "f=c/y#\n",
    "re=(n*Po)/(h*f)#\n",
    "rp=re/n## number of received photons\n",
    "print \"The responsivity =%0.2f A/W\"%( R)#\n",
    "print \"\\n The received optical power =%0.2f uW\"%( Po*10**6)#\n",
    "print \"\\n The number of received photons =%0.2f*10**13 photons/sec\"%( rp/10**13)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.16 Pg: 379"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The photon current =80 uA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "R=0.40## Responsivity in A/W\n",
    "m=100*10**-6## incident flux in W/m-m\n",
    "A=2## area in m-m\n",
    "Po=m*A## incident power in W\n",
    "Ip=R*Po## photon current in A\n",
    "print \"The photon current =%d uA\"%( Ip*10**6)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.17 Pg: 380"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The cut off wavelength =1.33 um\n",
      "\n",
      " The responsivity =0.69 A/W \n",
      "\n",
      " The incident optical power =3.60 uW\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.65## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "Eg=1.5*10**-19## in J\n",
    "y=(h*c)/Eg## cut off wavelength in m\n",
    "f=c/y#\n",
    "R=(n*e)/(h*f)## responsivity in A/W\n",
    "Ip=2.5*10**-6## photo current in A\n",
    "Po=Ip/R## incident optical power in W\n",
    "Po1=Po*10**6## incident optical power in uW\n",
    "print \"The cut off wavelength =%0.2f um\"%( y*10**6)#\n",
    "print \"\\n The responsivity =%0.2f A/W \"%( R)#\n",
    "print \"\\n The incident optical power =%0.2f uW\"%( Po1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.18 Pg: 380"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The cut off wavelength =0.87 um\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "Eg=1.43## in eV\n",
    "Eg1=Eg*1.602*10**-19## in J\n",
    "y=(h*c)/Eg1## cut off wavelength in m\n",
    "print \"The cut off wavelength =%0.2f um\"%( y*10**6)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.19 Pg: 381"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The optical gain =0.17\n",
      "\n",
      " The common emitter gain =0.38\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.45## quantum efficiency\n",
    "h=6.62*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=1.2*10**-6## cut off wavelength in m\n",
    "Ic=20*10**-6## collector current in A\n",
    "Po=120*10**-6## incident optical power in W\n",
    "e=1.602*10**-19## charge\n",
    "Go=(h*c*Ic)/(y*Po*e)## optical gain\n",
    "h_e=Go/n## common emitter gain\n",
    "print \"The optical gain =%0.2f\"%( Go)#\n",
    "print \"\\n The common emitter gain =%0.2f\"%( h_e)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.20 Pg: 381"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The multiplication factor =38\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.5## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=1.3*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Po=0.4*10**-6## in W\n",
    "Ip=R*Po## output photo current\n",
    "I=8*10**-6## output current in A\n",
    "M=I/Ip## multiplication factor\n",
    "print \"The multiplication factor =%d\"%( M)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.21 Pg: 382"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The multiplication factor =27\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.85## quantum efficiency\n",
    "e=1.6*10**-19## charge\n",
    "h=6.625*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.9*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Po=0.6*10**-6## in W\n",
    "Ip=R*Po## output photo current\n",
    "I=10*10**-6## output current in A\n",
    "M=I/Ip## multiplication factor\n",
    "print \"The multiplication factor =%d\"%( M)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.22 Pg: 382"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The quantum efficiency =60 %\n",
      "\n",
      " The wavelength =1.33 um\n",
      "\n",
      " The responsivity =0.64 Amp/Watt\n",
      "\n",
      " The incident optical power =4.06 uW\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "e_c=1.2*10**11## number of electron collected\n",
    "p=2*10**11## number of photon incident\n",
    "n=e_c/p## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "E=1.5*10**-19## energy in J\n",
    "y=(h*c)/E# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Ip=2.6*10**-6## photocurrent in A\n",
    "Po=Ip/R## incident optical power in W\n",
    "print \"The quantum efficiency =%d %%\"%( n*100)#\n",
    "print \"\\n The wavelength =%0.2f um\"%( y*10**6)#\n",
    "print \"\\n The responsivity =%0.2f Amp/Watt\"%( R)#\n",
    "print \"\\n The incident optical power =%0.2f uW\"%( Po*10**6)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.23 Pg: 383"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The multiplication factor =56\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.40## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=1.35*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Po=0.2*10**-6## in W\n",
    "Ip=R*Po## output photo current\n",
    "I=4.9*10**-6## output current in A\n",
    "M=I/Ip## multiplication factor\n",
    "print \"The multiplication factor =%d\"%( M)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.24 Pg: 383"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The responsivity =0.38 A/W\n",
      "\n",
      " The received optical power =5.31 uW\n",
      "\n",
      " The number of received photons =1.25*10**13 photons/sec\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "n=0.55## quantum efficiency\n",
    "e=1.6*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.85*10**-6# wavelength in m\n",
    "R=(n*e*y)/(h*c)## responsivity in A/W\n",
    "Ip=2*10**-6## mean photo current\n",
    "Po=Ip/R## received optical power in W\n",
    "re=(n*Po*y)/(h*c)## number of received photons\n",
    "print \"The responsivity =%0.2f A/W\"%( R)#\n",
    "print \"\\n The received optical power =%0.2f uW\"%( Po*10**6)#\n",
    "print \"\\n The number of received photons =%0.2f*10**13 photons/sec\"%( re/10**13)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.25 Pg: 384"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The wavelength =1.53 um\n",
      "\n",
      " The output power =1.30 uW\n",
      "\n",
      " The photocurrent =28.84 uA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "h=6.625*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "n=1## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "E=1.3*10**-19## energy in J\n",
    "y=(h*c)/E## wavelength in m\n",
    "M=18## multiplication factor\n",
    "rp=10**13## no. of photon per sec\n",
    "Po=rp*E## output power in w\n",
    "Ip=(n*Po*e)/E## output photocurrent in A\n",
    "I=M*Ip## photocurrent in A\n",
    "print \"The wavelength =%0.2f um\"%( y*10**6)#\n",
    "print \"\\n The output power =%0.2f uW\"%( Po*10**6)#\n",
    "print \"\\n The photocurrent =%0.2f uA\"%( I*10**6)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex:9.26 Pg: 384"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The quantum efficiency =40 %\n",
      "\n",
      " The bandgap energy =2.34*10**-19 J\n",
      "\n",
      " The bandgap energy =1.46 eV\n",
      "\n",
      " The mean output photocurrent =2.74 uA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "e_c=2*10**10## number of electron collected\n",
    "p=5*10**10## number of photon incident\n",
    "n=e_c/p## quantum efficiency\n",
    "e=1.602*10**-19## charge\n",
    "h=6.626*10**-34## plank constant\n",
    "c=3*10**8## speed of light in m/s\n",
    "y=0.85*10**-6## wavelength in m\n",
    "y1=0.85## wavelength in um\n",
    "Eg=(h*c)/y##  bandgap energy in J\n",
    "Eg1=1.24/y1## bandgap energy in terms of eV\n",
    "Po=10*10**-6## incident power in W\n",
    "Ip=(n*e*Po)/Eg## mean output photocurrent in A\n",
    "print \"The quantum efficiency =%d %%\"%( n*100)#\n",
    "print \"\\n The bandgap energy =%0.2f*10**-19 J\"%( Eg*10**19)#\n",
    "print \"\\n The bandgap energy =%0.2f eV\"%( Eg1)#\n",
    "print \"\\n The mean output photocurrent =%0.2f uA\"%( Ip*10**6)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}