{
 "metadata": {
  "name": "",
  "signature": "sha256:29243b650c743da1a480be05cc52b4de20f23c7c5b490c9e7425f7139654d6d7"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "10: Semiconductor Devices"
     ]
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.1, Page number 335"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "rho=1.7*10**-6;    #specific resistance of Cu(ohm cm)\n",
      "w=63.54;    #atomic weight of Cu\n",
      "d=8.96;    #density of Cu(g/cm**3)\n",
      "A=6.025*10**23;   #avagadro number\n",
      "q=1.6*10**-19;   #charge on electron(C)\n",
      "\n",
      "#Calculation\n",
      "x=A*d/w;     #number of free electrons in unit volume(per cm**3)\n",
      "sigma=1/rho;    #conductivity\n",
      "mewn=sigma/(x*q);    #mobility of electron(cm**2/Vs)\n",
      "\n",
      "#Result\n",
      "print \"mobility of electron is\",round(mewn,2),\"cm**2/Vs\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "mobility of electron is 43.27 cm**2/Vs\n"
       ]
      }
     ],
     "prompt_number": 8
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.2, Page number 336"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "q=1.6*10**-19;   #charge on electron(C)\n",
      "ni=1.6*10**10;   #number of charge carriers\n",
      "mewn=1500;    #mobility of negative charge carriers(cm**2/Vs)\n",
      "mewp=500;    #mobility of positive charge carriers(cm**2/Vs)\n",
      "\n",
      "#Calculation\n",
      "sigma=q*ni*(mewn+mewp);    #conductivity of silicon(per ohm cm)\n",
      "\n",
      "#Result\n",
      "print \"conductivity of silicon is\",sigma,\"per ohm cm\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "conductivity of silicon is 5.12e-06 per ohm cm\n"
       ]
      }
     ],
     "prompt_number": 9
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.3, Page number 348"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "w=350*10**-9;    #width(m)\n",
      "E=5*10**5;    #electric field intensity(V/m)\n",
      "\n",
      "#Calculation\n",
      "V=E*w;    #potential difference(V)\n",
      "\n",
      "#Result\n",
      "print \"potential difference is\",V,\"V\"\n",
      "print \"minimum energy required is\",V,\"eV\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "potential difference is 0.175 V\n",
        "minimum energy required is 0.175 eV\n"
       ]
      }
     ],
     "prompt_number": 10
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.4, Page number 348"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "I0=1.8*10**-6;    #current(A)\n",
      "V=0.25;    #potential difference(V)\n",
      "e=1.6*10**-19;   #charge on electron(C)\n",
      "eta=1;\n",
      "k=1.38*10**-23;    #boltzmann constant\n",
      "T=293;     #temperature(K)\n",
      "\n",
      "#Calculation\n",
      "a=round(e*V/(eta*k*T));\n",
      "I=I0*(math.exp(a)-1);    #current through the diode(A)\n",
      "\n",
      "#Result\n",
      "print \"current through the diode is\",round(I*10**3),\"mA\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "current through the diode is 40.0 mA\n"
       ]
      }
     ],
     "prompt_number": 16
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.5, Page number 357"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "Vac=230;    #voltage(V)\n",
      "RL=2*10**3;    #load resistance(ohm)\n",
      "\n",
      "#Calculation\n",
      "Vm=math.sqrt(2)*Vac;\n",
      "Vdc=Vm/math.pi;   #DC voltage(V)\n",
      "Idc=Vdc/RL;    #DC current(A)\n",
      "Irms=round(Vm/(2*RL),4);   #rms value of current(A)\n",
      "gama=math.sqrt(((Irms/Idc)**2)-1);    #ripple factor\n",
      "Pdc=(Idc**2)*RL;   #DC power(W)\n",
      "Pac=(Irms**2)*RL;   #DC power(W)\n",
      "eta=Pdc*100/Pac;      #efficiency(%)\n",
      "\n",
      "#Result\n",
      "print \"DC voltage is\",round(Vdc,1),\"V\"\n",
      "print \"DC current is\",round(Idc*10**3,1),\"mA\"\n",
      "print \"ripple factor is\",round(gama,2)\n",
      "print \"answer for ripple factor varies due to rounding off errors\"\n",
      "print \"efficiency is\",round(eta),\"%\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "DC voltage is 103.5 V\n",
        "DC current is 51.8 mA\n",
        "ripple factor is 1.21\n",
        "answer for ripple factor varies due to rounding off errors\n",
        "efficiency is 41.0 %\n"
       ]
      }
     ],
     "prompt_number": 27
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.6, Page number 361"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "Vm=30;    #AC voltage(V)\n",
      "Rf=10;   #resistance(ohm)\n",
      "RL=1500;   #load resistance(ohm)\n",
      "\n",
      "#Calculation\n",
      "Im=Vm/(Rf+RL);    #maximum current(A)\n",
      "Im=Im*10**3;    #maximum current(mA)\n",
      "Idc=2*Im/math.pi;   #DC current(mA)\n",
      "Irms=Im/math.sqrt(2);   #rms current(mA)\n",
      "Pdc=(Idc**2)*RL/10**-3;   #DC power(mW)\n",
      "Pac=(Irms**2)*(Rf+RL)/10**-3;   #AC power(mW)\n",
      "eta=Pdc*100/Pac;   #efficiency(%)\n",
      "\n",
      "#Result\n",
      "print \"DC current is\",round(Idc,2),\"mA\"\n",
      "print \"answer for DC current varies due to rounding off errors\"\n",
      "print \"rms current is\",round(Irms,2),\"mA\"\n",
      "print \"efficiency is\",round(eta,1),\"%\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "DC current is 12.65 mA\n",
        "answer for DC current varies due to rounding off errors\n",
        "rms current is 14.05 mA\n",
        "efficiency is 80.5 %\n"
       ]
      }
     ],
     "prompt_number": 33
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.7, Page number 377"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "alpha=0.99;   #amplification factor\n",
      "\n",
      "#Calculation\n",
      "beta=alpha/(1-alpha);   #value of beta\n",
      "\n",
      "#Result\n",
      "print \"value of beta is\",beta"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "value of beta is 99.0\n"
       ]
      }
     ],
     "prompt_number": 34
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.8, Page number 377"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "alpha=0.9;   #amplification factor\n",
      "IE=4*10**-3;   #emitter current(A)\n",
      "ICO=12*10**-6;   #current(A)\n",
      "\n",
      "#Calculation\n",
      "IC=(alpha*IE)+ICO;    #collector current(A)\n",
      "IC=round(IC*10**3,2);   #collector current(mA)\n",
      "IB=IE-(IC*10**-3);    #base current(A)\n",
      "\n",
      "#Result\n",
      "print \"collector current is\",IC,\"mA\"\n",
      "print \"base current is\",IB*10**6,\"micro A\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "collector current is 3.61 mA\n",
        "base current is 390.0 micro A\n"
       ]
      }
     ],
     "prompt_number": 42
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.9, Page number 394"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "A=-120;    #gain\n",
      "beta=-0.1;   #feedback factor\n",
      "V=5*10**-3;   #input voltage(V)\n",
      "\n",
      "#Calculation\n",
      "a=A*beta;\n",
      "Af=round(A/(1+a),1);    \n",
      "ff=20*math.log10(A/Af);     #feedback factor(dB)\n",
      "phis=(1+a)*V;    #input voltage(V)\n",
      "phio=Af*phis;    #output voltage(V)\n",
      "\n",
      "#Result\n",
      "print \"feedback factor is\",round(ff,1),\"dB\"\n",
      "print \"answer for feedback factor varies due to rounding off errors\"\n",
      "print \"input voltage is\",phis*10**3,\"mV\"\n",
      "print \"output voltage is\",phio*10**3,\"mV\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "feedback factor is 22.3 dB\n",
        "answer for feedback factor varies due to rounding off errors\n",
        "input voltage is 65.0 mV\n",
        "output voltage is -598.0 mV\n"
       ]
      }
     ],
     "prompt_number": 50
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.10, Page number 395"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "A1=4000;    #gain\n",
      "A2=8000;    #increased gain\n",
      "beta=0.04;   #feedback factor\n",
      "\n",
      "#Calculation\n",
      "Af1=A1/(1+(A1*beta));     \n",
      "Af2=A2/(1+(A2*beta));   \n",
      "Af=1/beta;    #value of Af\n",
      "\n",
      "#Result\n",
      "print \"values of Af are\",round(Af1,2),\"and\",round(Af2,2)\n",
      "print \"hence the changes are very small. value of Af is\",Af"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "values of Af are 24.84 and 24.92\n",
        "hence the changes are very small. value of Af is 25.0\n"
       ]
      }
     ],
     "prompt_number": 52
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example number 10.11, Page number 395"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "#importing modules\n",
      "import math\n",
      "from __future__ import division\n",
      "\n",
      "#Variable declaration\n",
      "A=40;    #gain\n",
      "Af=10;   #decreased gain\n",
      "\n",
      "#Calculation\n",
      "beta=((A/Af)-1)*100/A;     #percentage of feedback(%)\n",
      "\n",
      "#Result\n",
      "print \"percentage of feedback is\",beta,\"%\""
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "percentage of feedback is 7.5 %\n"
       ]
      }
     ],
     "prompt_number": 53
    }
   ],
   "metadata": {}
  }
 ]
}