{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Chapter -23 : AMPLIFIERS WITH COMPOUND CONFIGURATION"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.1 Pg 644"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Av=26.12\n",
      "vo=522.35 mV\n",
      "Zi=RG=10.00 Mohm\n",
      "Z0=RD=2.20 kohm\n",
      "VL=428.15 V\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "ID=4*10**-3#\n",
    "IDSS=2*ID#\n",
    "RS=390#\n",
    "VGSQ=-ID*RS#\n",
    "VP=-4.5#\n",
    "RD=2.2*10**3#\n",
    "gm0=(2*IDSS)/(-VP)#\n",
    "gm=gm0*(1-(VGSQ/VP))#\n",
    "Av1=-gm*RD#\n",
    "Av2=-gm*RD#\n",
    "Av=Av1*Av2#\n",
    "print \"Av=%0.2f\"%Av\n",
    "vi=20*10**-3#\n",
    "vo=Av*vi#\n",
    "print 'vo=%0.2f mV'%(vo*10**3)\n",
    "Zi=10*10**6#\n",
    "RG=10*10**6#\n",
    "print \"Zi=RG=%0.2f Mohm\"%(Zi*10**-6)\n",
    "Z0=2.2*10**3#\n",
    "RD=2.2*10**3#\n",
    "print \"Z0=RD=%0.2f\"%(Z0*10**-3),'kohm'\n",
    "RL=10*10**3#\n",
    "VL=(RL/(Z0+RL))*vo#\n",
    "print 'VL=%0.2f V'%(VL*10**3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.3 Pg 645"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "VB1=10.33 V\n",
      "VB2=3.99 V\n",
      "AV=189.73\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VCC=18#\n",
    "R1=7.5*10**3#\n",
    "R2=6.2*10**3#\n",
    "R3=3.9*10**3#\n",
    "RC=1.5*10**3#\n",
    "B1=200#\n",
    "B2=200#\n",
    "RE=1*10**3#\n",
    "CE=100*10**-6#\n",
    "VB1=VCC*(R2+R3)/(R1+R2+R3)#\n",
    "print 'VB1=%0.2f V'%VB1\n",
    "VB2=VCC*(R3)/(R1+R2+R3)#\n",
    "print 'VB2=%0.2f V'%VB2\n",
    "IE2=(VB2-0.7)/RE#\n",
    "IC2=IE2#\n",
    "IE1=IC2#\n",
    "IE=IE1#\n",
    "re1=26*10**-3/IE#\n",
    "AV1=-re1/re1#\n",
    "AV2=-RC/re1#\n",
    "AV=AV1*AV2#\n",
    "print \"AV=%0.2f\"%AV ##ans given in book has -ve sign which is wrong"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.4 Pg 646"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "BD=25600.00\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "B1=160#\n",
    "B2=160#\n",
    "BD=B1*B2#\n",
    "print \"BD=%0.2f\"%(BD)#"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.5 Pg 647"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "B=77.46\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "from math import sqrt\n",
    "BD=6000#\n",
    "B1=BD#\n",
    "B2=B1#\n",
    "B=sqrt(BD)#\n",
    "print \"B=%0.2f\"%(B)#"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.6 Pg 647"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "IB=2.45 microA\n",
      "IE=14.73 mA\n",
      "VE2=7.51 V\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "Vcc=15#\n",
    "RB=2.4*10**6#\n",
    "BD=6000#\n",
    "RE=510#\n",
    "Vi=120*10**-3#\n",
    "VBE=1.6#\n",
    "IB=(Vcc-VBE)/(RB+BD*RE)#\n",
    "print 'IB=%0.2f microA'%(IB*10**6)\n",
    "IE=BD*IB#\n",
    "print 'IE=%0.2f mA'%(IE*10**3)\n",
    "IE2=IE\n",
    "VE2=IE2*RE#\n",
    "print 'VE2=%0.2f V'%VE2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.7 Pg 648"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Ri=10.00 Mohm\n",
      "Ro=0.10 ohm\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "hfe=100#\n",
    "B=100#\n",
    "BD=100**2#\n",
    "RE=1*10**3#\n",
    "hie=1*10**3#\n",
    "ri=10**3#\n",
    "Ri=ri+BD*RE#\n",
    "print 'Ri=%0.2f Mohm'%(Ri*10**-6)\n",
    "Ro=ri/BD#\n",
    "print 'Ro=%0.2f ohm'%Ro"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.8 Pg 649"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Vidc=4.83 V\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VCC=16#\n",
    "B1=160#\n",
    "B2=200#\n",
    "RB=1.5*10**6#\n",
    "Vi=120*10**-3#\n",
    "VEB1=0.7#\n",
    "RC=100#\n",
    "IB1=(VCC-VEB1)/(RB+B1*B2*RC)#\n",
    "IB2=B1*IB1#\n",
    "IC2=B2*IB2#\n",
    "IE1=IB2#\n",
    "IC=IE1+IC2#\n",
    "Vodc=VCC-IC*RC#\n",
    "VBE=0.7#\n",
    "Vidc=Vodc-VBE#\n",
    "print 'Vidc=%0.2f V'%Vidc"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.9 Pg 650"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ID=6.00 mA\n",
      "Vo=6.00 V\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VDD=18#\n",
    "RD=2*10**3#\n",
    "IDSS=6*10**-3#\n",
    "VP=-3#\n",
    "ID=IDSS#\n",
    "print 'ID=%0.2f mA'%(ID*10**3)\n",
    "Vo=VDD-ID*RD#\n",
    "print 'Vo=%0.2f V'%Vo"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.10 Pg 650"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "IE=4.61 mA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VEE=-18#\n",
    "R1=4.3*10**3#\n",
    "R2=4.3*10**3#\n",
    "RE=1.8*10**3#\n",
    "B=100#\n",
    "VB=-(-VEE*R2)/(R1+R2)#\n",
    "VE=VB-0.7\n",
    "IE=(VE-(VEE))/RE#\n",
    "print 'IE=%0.2f mA'%(IE*10**3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.11 Pg 651"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "I=3.67 mA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VZ=5.1#\n",
    "VBE=0.7#\n",
    "RE=1.2*10**3#\n",
    "B=200#\n",
    "I=(VZ-VBE)/RE#\n",
    "print 'I=%0.2f mA'%(I*10**3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.12 Pg 652"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "I=8.65 mA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VCC=18#\n",
    "Rx=2*10**3#\n",
    "VBE=0.7#\n",
    "Ix=(VCC-VBE)/Rx#\n",
    "I=Ix#\n",
    "print 'I=%0.2f mA'%(I*10**3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.13 Pg 653"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "I=2.30 mA\n",
      "I=4.60 mA\n",
      "I=1.15 mA\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VC=5#\n",
    "Re=2*10**3#\n",
    "VCC=6#\n",
    "R=2.2*10**3#\n",
    "VBE=0.7#\n",
    "B=100#\n",
    "I=(VCC-2*VBE)/Re#\n",
    "print 'I=%0.2f mA'%(I*10**3)\n",
    "Re=1*10**3#\n",
    "I=(VCC-2*VBE)/Re#\n",
    "print 'I=%0.2f mA'%(I*10**3)\n",
    "Re=4*10**3#\n",
    "I=(VCC-2*VBE)/Re#\n",
    "print 'I=%0.2f mA'%(I*10**3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.14 Pg 654"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "IE=3.67 mA\n",
      "IC=1.83 mA\n",
      "VC=6.38 V\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VCC=15#\n",
    "VEE=15#\n",
    "RE=3.9*10**3#\n",
    "RC=4.7*10**3#\n",
    "IE=(VEE-0.7)/RE#\n",
    "print 'IE=%0.2f mA'%(IE*10**3)\n",
    "IC=IE/2#\n",
    "print 'IC=%0.2f mA'%(IC*10**3)\n",
    "VC=VCC-IC*RC#\n",
    "print 'VC=%0.2f V'%VC"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.15 Pg 655"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "IE=0.34 mA\n",
      "IC=0.17 mA\n",
      "VC=5.84 V\n",
      "Av=246.55\n",
      "vo1=0.49 V\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "VCC=12#\n",
    "VEE=12#\n",
    "RE=33*10**3#\n",
    "RC1=36*10**3#\n",
    "RC2=36*10**3#\n",
    "B1=150#\n",
    "B2=150#\n",
    "vi1=2*10**-3#\n",
    "IE=(VEE-0.7)/RE#\n",
    "print 'IE=%0.2f mA'%(IE*10**3)\n",
    "IC=IE/2#\n",
    "print 'IC=%0.2f mA'%(IC*10**3)\n",
    "RC=36*10**3#\n",
    "VC=VCC-IC*RC#\n",
    "print 'VC=%0.2f V'%VC\n",
    "re1=25*10**-3/IE#\n",
    "Av=RC/(2*re1)#\n",
    "print \"Av=%0.2f\"%Av\n",
    "vo1=Av*vi1#\n",
    "print 'vo1=%0.2f V'%vo1"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Ex 23.16 Pg 656"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Ac=0.50\n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "\n",
    "B=200#\n",
    "ri=20*10**3#\n",
    "RC=47*10**3#\n",
    "RE=43*10**3#\n",
    "Ac=(B*RE)/(ri+2*(B+1)*RE)#\n",
    "print \"Ac=%0.2f\"%Ac"
   ]
  }
 ],
 "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
}
