{
 "metadata": {
  "name": ""
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": [
      "Chapter 10 : Field Effect Transistor"
     ]
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.1a, Page No 337"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "#initialisation of variables\n",
      "VGG = -2.5     #v\n",
      "Id = 3.0         #mA\n",
      "Vds = 10.0     #v\n",
      "\n",
      "\n",
      "#Calculations\n",
      "Rd=Vds/Id\n",
      "\n",
      "\n",
      "#Results\n",
      "print(\"The value of Rd is  = %.2f kOhm \" %Rd)\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The value of Rd is  = 3.33 kOhm \n"
       ]
      }
     ],
     "prompt_number": 1
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.1b, Page No 337"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "#initialisation of variables\n",
      "VGG = -2.5     #v\n",
      "VDD = 20.0\n",
      "Id = 2.0         #mA drain current\n",
      "Vds = 2.5     #v\n",
      "\n",
      "\n",
      "#Calculations\n",
      "Rd=(VDD-Vds)/Id\n",
      "\n",
      "\n",
      "#Results\n",
      "print(\"The value of Rd is  = %.2f kOhm \" %Rd)\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The value of Rd is  = 8.75 kOhm \n"
       ]
      }
     ],
     "prompt_number": 2
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.2a, Page No 338"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "#initialisation of variables\n",
      "\n",
      "a=3*(10**-4)           #in cm\n",
      "Nd=10**15              #in electrons/cm^3\n",
      "q=1.6*(10**-19)       #in C\n",
      "eo=8.85*(10**-12)     #Permittivity of free space\n",
      "e=12*eo               #Relative Permittivity\n",
      "\n",
      "#Calculations\n",
      "Vp=(q*Nd*a*a*10**6*10**-4)/(2*e)      #in V\n",
      "#a is in cm so 10^-4 is multiplied and Nd is in electrons/cm^3 so 10^6 is multiplied\n",
      "\n",
      "#Results\n",
      "print(\"Pinch off Voltage = %.2f v \" %Vp)\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Pinch off Voltage = 6.78 v \n"
       ]
      }
     ],
     "prompt_number": 3
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.2b, Page No 338"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "\n",
      "#initialisation of variables\n",
      "#Given Values\n",
      "a=3.0*(10**-4)         #in m\n",
      "Nd=10.0**15            #in electrons/m**3\n",
      "q=1.6*(10**-19)        #in C\n",
      "eo=8.85*(10**-12)      #Permittivity of free space\n",
      "e=12*eo                #Relative Permittivity\n",
      "\n",
      "#Calculations\n",
      "Vp=(q*Nd*a*a*10**6*10**-4)/(2*e)#in V\n",
      "#a is in cm so 10**-4 is multiplied and Nd is in electrons/cm**3 so 10**6 is multiplied\n",
      "Vgs= Vp/2\n",
      "b=a*(1-((Vgs/Vp)**(0.5)))#in cm\n",
      "\n",
      "#Results\n",
      "print(\"Channel Half Width = %.2f cm  x 10^-4\" %(b*10**4))\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Channel Half Width = 0.88 cm  x 10^-4\n"
       ]
      }
     ],
     "prompt_number": 4
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.3a Page No 348"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "\n",
      "#initialisation of variables\n",
      "VG=0.5     #v\n",
      "Rd=1.0      #Kohm\n",
      "Vdd =3.3   #v\n",
      "\n",
      "#Calculations\n",
      "# If VG=0.5vv hen Vgs-Vt = 0.5-1=-.05 which is less than zero and therfore the transistor will be off then\n",
      "#ID=0\n",
      "Id=0\n",
      "Vd=Vdd\n",
      "\n",
      "#Results\n",
      "print(\"The drain current  = %.2f mA\" %(Id))\n",
      "print(\"The drain Voltage  = %.2f V\" %(Vd))\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The drain current  = 0.00 mA\n",
        "The drain Voltage  = 3.30 V\n"
       ]
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.3b Page No 348"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "\n",
      "#initialisation of variables\n",
      "Vg=2.0        #v\n",
      "Rd=1.0      #Kohm\n",
      "Vdd =3.3   #v\n",
      "Vt=1.0\n",
      "\n",
      "#Calculations\n",
      "# If VG=2v hen Vgs-Vt = 2-1=-2 which is more than zero and therfore the transistor will be on then\n",
      "Id=(1.0/2)*(Vg-Vt**2)\n",
      "Vd=Vdd-(Rd*Id)\n",
      "\n",
      "#Results\n",
      "print(\"The drain current  = %.2f mA\" %(Id))\n",
      "print(\"The drain Voltage  = %.2f V\" %(Vd))\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "The drain current  = 0.50 mA\n",
        "The drain Voltage  = 2.80 V\n"
       ]
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.4a Page No 363"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "\n",
      "#initialisation of variables\n",
      "Vp=-2#in V\n",
      "Idss=1.65#in mA\n",
      "#it is desired to bias the circut at Id=0.8mA\n",
      "Ids=0.8#in mA\n",
      "Vdd=24#in V\n",
      "#Assumption: rd>Rd\n",
      "\n",
      "#Calculations\n",
      "Vgs=Vp*(1-(Ids/Idss)**0.5)#in V\n",
      "\n",
      "#Results\n",
      "print(\"Vgs= %.2f v \" %Vgs)\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Vgs= -0.61 v \n"
       ]
      }
     ],
     "prompt_number": 7
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.4b, Page No 363"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "#initialisation of variables\n",
      "Vp=-2#in V\n",
      "Idss=1.65#in mA\n",
      "#it is desired to bias the circut at Id=0.8mA\n",
      "Ids=0.8#in mA\n",
      "Vdd=24#in V\n",
      "#Assumption: rd>Rd\n",
      "\n",
      "#Calculations\n",
      "Vgs=Vp*(1-(Ids/Idss)**0.5)#in V\n",
      "\n",
      "gmo=-(2*Idss/Vp)\n",
      "\n",
      "#Results\n",
      "print(\"gmo= %.2f mA/V \" %gmo)\n",
      "gm=gmo*(1-(Vgs/Vp))\n",
      "print(\"gm= %.2f mA/V \" %gm)\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "gmo= 1.65 mA/V \n",
        "gm= 1.15 mA/V \n"
       ]
      }
     ],
     "prompt_number": 8
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.4c Page No 363"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "#initialisation of variables\n",
      "Vp=-2#in V\n",
      "Idss=1.65#in mA\n",
      "#it is desired to bias the circut at Id=0.8mA\n",
      "Ids=0.8#in mA\n",
      "Vdd=24#in V\n",
      "#Assumption: rd>Rd\n",
      "\n",
      "#Calculations\n",
      "Vgs=Vp*(1-(Ids/Idss)**0.5)#in V\n",
      "\n",
      "gmo=-(2*Idss/Vp)\n",
      "gm=gmo*(1-(Vgs/Vp))\n",
      "\n",
      "Rs=-(Vgs/Ids)#in ohm\n",
      "\n",
      "#Results\n",
      "print(\"Rs= %.2f K \" %Rs)\n"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "Rs= 0.76 K \n"
       ]
      }
     ],
     "prompt_number": 9
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": [
      "Example 10.4d Page No 363"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "import math\n",
      "\n",
      "#initialisation of variables\n",
      "Vp=-2#in V\n",
      "Idss=1.65#in mA\n",
      "#it is desired to bias the circut at Id=0.8mA\n",
      "Ids=0.8#in mA\n",
      "Vdd=24#in V\n",
      "#Assumption: rd>Rd\n",
      "\n",
      "#Calculations\n",
      "Vgs=Vp*(1-(Ids/Idss)**0.5)#in V\n",
      "gmo=-(2*Idss/Vp)\n",
      "gm=gmo*(1-(Vgs/Vp))\n",
      "Rs=-(Vgs/Ids)#in ohm\n",
      "print('20dB corresponds to voltage gain of i0')\n",
      "Av=10\n",
      "Rd=Av/gm#in ohm\n",
      "\n",
      "#Results\n",
      "print(\"Rd= %.2f ohm\" %Rd)"
     ],
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "20dB corresponds to voltage gain of i0\n",
        "Rd= 8.70 ohm\n"
       ]
      }
     ],
     "prompt_number": 10
    }
   ],
   "metadata": {}
  }
 ]
}