diff options
author | hardythe1 | 2015-06-17 11:14:34 +0530 |
---|---|---|
committer | hardythe1 | 2015-06-17 11:14:34 +0530 |
commit | 37d315828bbfc0f5cabee669d2b9dd8cd17b5154 (patch) | |
tree | 18b9d2929b329e112462bca900e9ae25c4c03006 /Electronic_Devices_and_Circuits_By_I.JNagrath/chapter4.ipynb | |
parent | 79c59acc7af08ede23167b8455de4b716f77601f (diff) | |
download | Python-Textbook-Companions-37d315828bbfc0f5cabee669d2b9dd8cd17b5154.tar.gz Python-Textbook-Companions-37d315828bbfc0f5cabee669d2b9dd8cd17b5154.tar.bz2 Python-Textbook-Companions-37d315828bbfc0f5cabee669d2b9dd8cd17b5154.zip |
add books
Diffstat (limited to 'Electronic_Devices_and_Circuits_By_I.JNagrath/chapter4.ipynb')
-rwxr-xr-x | Electronic_Devices_and_Circuits_By_I.JNagrath/chapter4.ipynb | 1219 |
1 files changed, 1219 insertions, 0 deletions
diff --git a/Electronic_Devices_and_Circuits_By_I.JNagrath/chapter4.ipynb b/Electronic_Devices_and_Circuits_By_I.JNagrath/chapter4.ipynb new file mode 100755 index 00000000..76bf3d3e --- /dev/null +++ b/Electronic_Devices_and_Circuits_By_I.JNagrath/chapter4.ipynb @@ -0,0 +1,1219 @@ +{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:98255b9e78b8f50e90c1882e76d0bc683ec6745297ae8a737ed2e62008872388"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ " Chapter 4: SMALL SIGNAL AMPLIFIERS-FREQUENCY RESPONSE"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.1,Page number 217"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "Vs=1. #source voltage(V)\n",
+ "C=100*10**-6 #value of capacitance(uF) \n",
+ "r1=1 #resistance 1(k ohms)\n",
+ "r2=4 #resistance 2(k ohms)\n",
+ "R=5 #total resistance,R=r1+r2\n",
+ "\n",
+ "#Calculations\n",
+ "Imax=Vs/(r1+r2)*10**3 #maximum current(uA)\n",
+ "fc=1/(2*(math.pi)*C*R) #critical frequency(Hz) \n",
+ " #As w*C*R=1 and w=2*pi*f\n",
+ "f=10*fc #lowest frequency(Hz)\n",
+ "\n",
+ "#Results\n",
+ "print\"maximum current\",Imax,\"uA\"\n",
+ "print\"critical frequency\",round((fc/1E+3),3),\"Hz\"\n",
+ "print\"lowest frequency\",round((f/1E+3),2),\"Hz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "maximum current 200.0 uA\n",
+ "critical frequency 0.318 Hz\n",
+ "lowest frequency 3.18 Hz\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.2,Page number 218"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "C=100*10**-6 #capacitance(uF)\n",
+ "Rg=1. #galvanometer resistance(k oms)\n",
+ "Rl=4. #load resistance(k ohms)\n",
+ "\n",
+ "#Calculations\n",
+ "Rth=(Rg*Rl)/(Rg+Rl) #thevinine's equivalent resistance\n",
+ "fc=1/(2*(math.pi)*C*Rth) #critical frequency(Hz)\n",
+ "f=fc*C #lowest frequency(Hz)\n",
+ "\n",
+ "#Results\n",
+ "print\"lowest frequency at which the point A gets grounded is\",round((f/1E-2),1),\"Hz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "lowest frequency at which the point A gets grounded is 19.9 Hz\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.3,Page number 220"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "rpi=600 #dynamic junction resistance(ohms)\n",
+ "beta=100 #common emitter current gain\n",
+ "Vs=5. #source voltage(V)\n",
+ "Rs=400 #source resistance(ohms)\n",
+ "R=10 #resistance(k ohms)\n",
+ "\n",
+ "#Calculations\n",
+ "Ib=Vs/(Rs+rpi) #base current(uA) \n",
+ "Vo=R*beeta*Ib #output voltage(V)\n",
+ "Rin=rpi #input resistance(ohms)\n",
+ "Rout=R #output ewsistance(k ohms)\n",
+ "\n",
+ "#Results\n",
+ "print\"output voltage is\",Vo,\"V\"\n",
+ "print\"input resistance\",Rin,\"ohms\"\n",
+ "print\"output resistance\",Rout,\"k ohms\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "output voltage is 5.0 V\n",
+ "input resistance 600 ohms\n",
+ "output resistance 10 k ohms\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.4,Page number 220"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "gm=1. #transconductance(mS)\n",
+ "rd=40 #dynamic drain resistance(k ohms) \n",
+ "Rd1=40 #JFET 1 drain resistance(k ohms) \n",
+ "Rd2=10 #JFET 2 drain resistance(k ohms) \n",
+ "\n",
+ "#Calculations\n",
+ "Avo=(-gm*((rd*Rd1)/(rd+Rd1)))*(-gm*((rd*Rd2)/(rd+Rd2))) #voltage gain\n",
+ "\n",
+ "#Results\n",
+ "print\"Avo is\",Avo"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Avo is 160.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.5,Page number 222"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "beta=125 #common emitter current gain\n",
+ "rpi=2.5 #dynamic junction resistance(k ohms)\n",
+ "rd=40 #dynamic drain resistance(k ohms) \n",
+ "gm=2 #transconductance(mS) \n",
+ "Vs=1 #assume,source voltage(V)\n",
+ "Rs=10 #source resistance(k ohms)\n",
+ "Rc=1 #collector resistance(k ohms)\n",
+ "rb=2 #resistance(k ohms)\n",
+ "Vgs=1 #gate to source voltage(V)\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "R=(rd*Rs)/(rd+Rs) #equivalent resistance(k ohms)\n",
+ "Ib=gm*Vgs*(R/(rpi+R)) #base current(mA)\n",
+ "Vo=beeta*Ib*Rc #output voltage(V) \n",
+ "Avo=Vo #voltage gain\n",
+ "\n",
+ "#Part b\n",
+ "Ib1=Vs/(rb+rpi) #base current(mA) after interchanging stages of JFET and BJT \n",
+ "Vgs1=beeta*Ib1*Rc #gate to source voltage(V) after interchanging stages of JFET and BJT\n",
+ "Vo1=gm*Vgs1*R #output voltage(V) after interchanging stages of JFET and BJT\n",
+ "Avo1=Vo1 #voltage gain after interchanging stages of JFET and BJT\n",
+ "\n",
+ "#Results\n",
+ "print\"Avo is\",round(Avo,1)\n",
+ "print\"Avo1 when BJT and FET stages are reversed is\",round(Avo1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Avo is 190.5\n",
+ "Avo1 when BJT and FET stages are reversed is 444.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 24
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.6,Page number 226"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "Cc1=1*10**-6 #coupling capacitor 1(uF)\n",
+ "Cc2=1*10**-6 #coupling capacitor 2 (uF) \n",
+ "Rs=10**3 #source resistance(k ohms)\n",
+ "rpi=2*10**3 #dynamic junction resistance(k ohms)\n",
+ "Rc=4500 #collector resistance(ohms)\n",
+ "Rl=9*10**3 #load resistance(k ohms)\n",
+ "w=100 #corner frequency(rad/s)\n",
+ "\n",
+ "#Calculations\n",
+ "w11=1/(Cc1*(Rs+rpi)) #corner frequency input circuit (rad/s)\n",
+ "w12=1/(Cc2*(Rc+Rl)) #corner frequency output circuit(rad/s)\n",
+ "f=w11/(2*(math.pi)) #lower cutoff frequency(Hz)\n",
+ "Zin=complex((Rs+rpi),-(1/(w*Cc1))) #input impedance(k ohms) \n",
+ "Zout=complex(Rc,-(1/(w*Cc2))) #output impedance(k ohms) \n",
+ "\n",
+ "#Results\n",
+ "print\"lower cut-off freq is\",round(f),\"Hz\"\n",
+ "print\"Zin\",Zin,\"ohms\"\n",
+ "print\"Zout\",Zout,\"ohms\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "lower cut-off freq is 53.0 Hz\n",
+ "Zin (3000-10000j) ohms\n",
+ "Zout (4500-10000j) ohms\n"
+ ]
+ }
+ ],
+ "prompt_number": 37
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.7,Page number 229"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "Re=Rc=1.5*10**3 #collector resistance(ohms)\n",
+ "Rs=600 #source resistance(ohms)\n",
+ "Rl=2*10**3 #load resistance(ohms) \n",
+ "beeta=100 #common emitter current gain \n",
+ "rpi=1*10**3 #dynamic junction resistance(ohms)\n",
+ "f=50 #frequency(Hz)\n",
+ "\n",
+ "#Calculations\n",
+ "w=2*f*(math.pi) #corner frequency(rad/s)\n",
+ "CE=1/(w*(Rs+rpi)) #capacitance(uF)\n",
+ "Ce=CE*(beeta+1) #capacitance(uF)\n",
+ "w11=w/10 #corner frequency input circuit (rad/s)\n",
+ "w12=w11/20 #corner frequency output circuit(rad/s)\n",
+ "Cc1=1/(w11*(Rs+rpi)) #coupling capacitor 1(uF) \n",
+ "Cc2=1/(w12*(Rc+Rl)) #coupling capacitor 2 (uF) \n",
+ "\n",
+ "#Results\n",
+ "print\"Ce is\",round(Ce/1E-6),\"uF\"\n",
+ "print\"Cc1 is\",round(Cc1/1e-6,1),\"uF\"\n",
+ "print\"Cc2 is\",round((Cc2/1E-5),2),\"uF\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Ce is 201.0 uF\n",
+ "Cc1 is 19.9 uF\n",
+ "Cc2 is 18.19 uF\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.8,Page number 235"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "gm=2.5*10**-3 #transconductance(mS) \n",
+ "Rd=6*10**3 #drain resistance(ohms)\n",
+ "rd=200*10**3 #dynamic drain resistance(ohms) \n",
+ "Cc1=Cc2=0.12*10**-6 #coupling capacitors(uF)\n",
+ "Rs=1*10**3 #source resistance(ohms)\n",
+ "Rg=0.1*10**6 #R1||R2 \n",
+ "Cgs=12*10**-9 #gate to source capacitor(pF) \n",
+ "Cgd=2*10**-9 #gate to drain capacitor(pF) \n",
+ "Co1=10 # as Co1=Cl+Cw=10\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Ro=(rd*Rd)/(rd+Rd) #equivalent resistance of rd and Rd(ohms)\n",
+ "Vo=-gm*((rd*Rd)/(rd+Rd)) #as Vgs=Vs\n",
+ "Avo=Vo #Avo=Vo/Vs=(-gm*Vs*((rd*Rd)/(rd+Rd)))/Vs=Vo \n",
+ " \n",
+ "#Part b\n",
+ "f11=1/(2*(math.pi)*Cc1*(Rs+Rg))\n",
+ "\n",
+ "#Part c\n",
+ "Ceq=Cgs+(Cgd*(1+gm*Ro)) #on application of miller theorem\n",
+ "Co=Co1+Cgd*(1+(1/(gm*Ro))) #output capacitance(pF)\n",
+ "f21=1/(2*(math.pi)*Ceq*((Rs*Rg)/(Rs+Rg))) #input circuit cutoff frequency(MHz)\n",
+ "f22=1/(2*(math.pi)*Co*Ro)*10**3 #output circuit cutoff frequency(MHz)\n",
+ "fH=f22 #cutoff frequency of high frequency band(MHz)\n",
+ "\n",
+ "#Results\n",
+ "print\"a)mid freq gain is\",round(Avo,1)\n",
+ "print\"b)input circuit cut-off is\",round(f11,1),\"Hz\"\n",
+ "print\"c)high freq input cutoff is\",round((f21/1E+3),2),\"and output cutoff is\",round((f22/1E-3),2),\"MHz\"\n",
+ "print\"high freq cut-off is\",round((fH/1E-3),2),\"MHz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)mid freq gain is -14.6\n",
+ "b)input circuit cut-off is 13.1 Hz\n",
+ "c)high freq input cutoff is 3.73 and output cutoff is 2.73 MHz\n",
+ "high freq cut-off is 2.73 MHz\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.9,Page number 238"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "beta=50. #common emitter current gain \n",
+ "R1=11.5 #resistance(k ohms)\n",
+ "R2=41.4 #resistance(k ohms) \n",
+ "Vcc=10. #supply voltage to collector(V)\n",
+ "Rc=5. #collector resistance(k ohms)\n",
+ "Re=1. #emitter resistance(k ohms)\n",
+ "Rs=1. #source resistance(k ohms)\n",
+ "Vbe=0.7 #base emitter voltage(V)\n",
+ "Rl=10. #load resistance(k ohms)\n",
+ "Cc1=Cc2=20*10**-6. #coupling capacitors(uF)\n",
+ "Ce=150*10**-6. #emitter capacitor(uF) \n",
+ "Cpi=100 \n",
+ "Cu=5.\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Rb=(R1*R2)/(R1+R2) #R1||R2(k ohms)\n",
+ "Vbb=Vcc*(R1/(R1+R2)) #suply voltage to base(V)\n",
+ "Ib=(Vbb-Vbe)/(Rb+(Rs*(1+beta))) #base current(mA)\n",
+ "Ic=beta*Ib #collector current(mA) \n",
+ "Vce=Vcc-(Ic*Rc)-(Ic+Ib)*Re #collector to emitter voltage(V) \n",
+ "rpi=(25*beta)*10**-3/Ic #dynamic junction resistance(K ohms) \n",
+ " \n",
+ "#Part b\n",
+ "rpi=1 #dynamic junction resistance(K ohms) \n",
+ "R=(rpi*Rb)/(rpi+Rb) #equivalent resistance(rpi||Rb) \n",
+ "Vbe=(R*Rs)/(R+Rs) #base to emitter voltage(V)\n",
+ "Ib1=Vbe/rpi #base current(mA)\n",
+ "Ro=(Rc*Rl)/(Rc+Rl) #Rc||Rl(k ohms) \n",
+ "Vo=-(beta*Ib1*Ro) #output voltage(V)\n",
+ "Avo=Vo #voltage gain\n",
+ "\n",
+ "#Part c\n",
+ "r1=(Rs*Rb)/(Rs+Rb) #Rs||Rb(k ohms) \n",
+ "w11=1/(Cc1*(Rs+R)) #low freq cutoff(rad/s)\n",
+ "w12=1/(Cc2*(Rc+Rl)) #high freq cutoff(rad/s) \n",
+ "w1p=1/((Ce/(beta+1))*(r1+rpi)) #low cutoff freq(rad/s)\n",
+ "\n",
+ "#Part d\n",
+ "Co1=5 #as Co1=Cw+Cl\n",
+ "gm=beta/rpi #transconductance(mS) \n",
+ "Ceq=Cpi+(Cu*(1+(gm*Ro))) #equivalent capacitance(pF)\n",
+ "Rs1=(Rb*Rs)/(Rb+Rs) #Rb||Rs(k ohms)\n",
+ "r2=(Rs1*rpi)/(Rs1+rpi) #Rs1||rpi(k ohms)\n",
+ "w21=10**12/(Ceq*r2*10**3) #low freq cutoff(MHz) \n",
+ "\n",
+ "#Results\n",
+ "print\"a)dc bias values are Vbb:\",round(Vbb,2),\"V, Ib:\",round(Ib,4),\"mA, Ic:\",round(Ic,2),\"mA, Vce:\",round(Vce,3),\"V, rpi:\",rpi,\"k ohms\"\n",
+ "print\"mid freq gain is\",round(Avo,2)\n",
+ "print\"low freq cut-off is\",round(w1p/1E+3),\"rad/s\"\n",
+ "print\"high cut-off freq is\",round((w21/1E+6),2),\"*10**6 rad/s\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)dc bias values are Vbb: 2.17 V, Ib: 0.0246 mA, Ic: 1.23 mA, Vce: 2.606 V, rpi: 1 k ohms\n",
+ "mid freq gain is -78.95\n",
+ "low freq cut-off is 179.0 rad/s\n",
+ "high cut-off freq is 2.25 *10**6 rad/s\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.10,Page number 243"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "Qcoil=75. #coil inductance\n",
+ "f=200. #frequency(Hz) \n",
+ "BW=4. #bandwidth(kHz)\n",
+ "C=470*10**-9. #capacitance(pF) \n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Qcircuit=f/BW #circuit inductance\n",
+ "L=1/(((2*(math.pi)*f)**2)*C) #inductance(mH) \n",
+ "\n",
+ "#Part b\n",
+ "R=Qcircuit*2*(math.pi)*f*L #resistance(k ohms)\n",
+ "\n",
+ "#Part c\n",
+ "r=(2*(math.pi)*f*L)/Qcoil #internal resistance(ohms)\n",
+ "req=(Qcoil**2)*r #equivalent resistance(k ohms)\n",
+ "ro=(R*req)/(req-R) #output resistance(k ohms)\n",
+ "\n",
+ "#Part d\n",
+ "BW=5 #bandwidth(kHz)\n",
+ "Qcircuit=f/BW #circuit inductance \n",
+ "Req=Qcircuit*2*(math.pi)*f*L #equivalent resistance(k ohms) \n",
+ "Rl=(Req*R)/(R-Req) #load resistance(k ohms)\n",
+ "\n",
+ "#Results\n",
+ "print\"a)coil inductance is\",round(L,2),\"mH\"\n",
+ "print\"b)circuit output impedance atresonant freq is\",round((R/1E+3),2),\"K ohms\"\n",
+ "print\"c)internal resistance ro is\",round((ro/1E+3),2),\"k ohms\"\n",
+ "print\"d)value of load resistance is\",round((Rl/1E+3),2),\"k ohms\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)coil inductance is 1.35 mH\n",
+ "b)circuit output impedance atresonant freq is 84.66 K ohms\n",
+ "c)internal resistance ro is 253.97 k ohms\n",
+ "d)value of load resistance is 338.63 k ohms\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.11,Page number 246"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "fo=50 #output frequency(KHz)\n",
+ "L=10**-3 #inductance(H) \n",
+ "ro=100 #output resistance(k ohms)\n",
+ "Q=80 #coil inductance\n",
+ "Ri=10 #input resistance(k ohms)\n",
+ "beta=125 #common emitter current gain \n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "C =1/(((2*(math.pi)*fo)**2)*L) #tunning capacitance(nF)\n",
+ "r=(2*(math.pi)*fo*L)/Q #internal resistance(k ohms)\n",
+ "req=(Q**2)*r #equivalent resistance(k ohms) \n",
+ "R=(ro*req)/(ro+req) #ro||req(k ohms)\n",
+ "Avo=-(beta*R)/Ri #voltage gain\n",
+ "\n",
+ "#Part b\n",
+ "Qcircuit=R/(2*(math.pi)*fo*L) #circuit inductance\n",
+ "BW=fo/Qcircuit #bandwidth\n",
+ "\n",
+ "#Results\n",
+ "print\"a)value of capacitance is\",round(C/1E-3),\"nF\"\n",
+ "print\" gain is\",round(Avo,1)\n",
+ "print\"b)bandwidth is\",round(BW/1E-3),\"Hz\",\"(value used for beta in texbook is wrong in the solution)\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)value of capacitance is 10.0 nF\n",
+ " gain is -251.1\n",
+ "b)bandwidth is 782.0 Hz (value used for beta in texbook is wrong in the solution)\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.12,Page number 248"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "\n",
+ "f=1*10**6 #radio frequency(Hz)\n",
+ "beta=50 #common emitter current gain \n",
+ "fT=5*10**6 #short circuit current gain bandwidth product(Hz)\n",
+ "\n",
+ "#Calculations\n",
+ "betaf=fT/f #measurement of short circuit current gain\n",
+ "fbeta=fT/beta #frequency at beta(Hz)\n",
+ "\n",
+ "#Results\n",
+ "print\"frequency is\",fbeta,\"Hz\"\n",
+ "if fbeta<1*10**6:\n",
+ " print\"transistor is not suitable for 1Mhz amplifier as fbeta is less than 1Mhz\"\n",
+ "else:\n",
+ " print\"transistor is suitable for 1Mhz amplifier\"\n",
+ " "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "frequency is 100000 Hz\n",
+ "transistor is not suitable for 1Mhz amplifier as fbeta is less than 1Mhz\n"
+ ]
+ }
+ ],
+ "prompt_number": 15
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.13,Page number 249"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "rpi=2 #dynamic junction resistance(K ohms) \n",
+ "beta=50. #common emitter current gain \n",
+ "f=1 #frequency(MHz)\n",
+ "beta1=2.5 #common emitter current gain \n",
+ "f1=20*10**6 #frequency(Hz)\n",
+ "\n",
+ "#Calculations\n",
+ "fT=beta1*f1 #short circuit current gain bandwidth product(Hz)\n",
+ "fbeta=fT/beta #frequency at beta(Hz)\n",
+ "Cpi=1/(2*(math.pi)*fbeta*rpi) #dynamic capacitance(pF)\n",
+ "\n",
+ "#Results\n",
+ "print\"fT is\",round(fT/1e+6),\"MHz\"\n",
+ "print\"fB is\",round(fbeta/1e+6),\"MHz\"\n",
+ "print\"Cpi is\",round(Cpi/1e-9),\"pF\" "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "fT is 50.0 MHz\n",
+ "fB is 1.0 MHz\n",
+ "Cpi is 80.0 pF\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.14,Page number 256"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "R1=60 #resistance(k ohms)\n",
+ "R2=140 #resistance(k ohms)\n",
+ "Rs=4 #source resistance(k ohms)\n",
+ "Re=3 #emitter resistance(k ohms)\n",
+ "Rc=4 #collector resistance(k ohms)\n",
+ "Vcc=10 #supply voltage to collector(V)\n",
+ "Vbe=0.7 #base to emitter voltage(V)\n",
+ "beta=100 #common emitter current gain \n",
+ "Avo=-30 #voltage gain \n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Rb=(R1*R2)/(R1+R2) #R1||R2(k ohms)\n",
+ "Vth=(Vcc*R1)/(R1+R2) #thevinine's voltage(V)\n",
+ "Ib=(Vth-Vbe)/(Rb+(beta+1)*Re) #base current(uA)\n",
+ "Ic=Ib*beta #collector current(mA) \n",
+ "Vce=Vcc-(Rc*Ic)-((beta+1)*Ib*Re) #collector to emitter voltage(V)\n",
+ "\n",
+ "#Part b\n",
+ "rpi=((25*beta)/Ic)*10**-3 #dynamic junction resistance(k ohms)\n",
+ "r=(Rb*rpi)/(Rb+rpi) #resistance across Vs\n",
+ "Ib1=r/((Rs+r)*rpi) #base current(mA)\n",
+ "Rl=(-Rc*Avo)/(Avo+(beta*Ib1*Rc)) #load resistance(k ohms)\n",
+ "\n",
+ "#Results\n",
+ "print\"value of Ic and Vce are\",round(Ic,3),\"mA and\",round(Vce,2),\"V\"\n",
+ "print\"Rl is\",round(Rl,2),\"k ohms\" "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "value of Ic and Vce are 0.667 mA and 5.31 V\n",
+ "Rl is 6.21 k ohms\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.15,Page number 257"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "R1=25. #resistances(k ohms)\n",
+ "R2=100. #resistances(k ohms)\n",
+ "Re=2. #emitter resistance(k ohms) \n",
+ "Vcc=10. #supply voltage to collector\n",
+ "Vbe=0.7 #base to emitter voltage(V)\n",
+ "beta=100. #common emitter current gain\n",
+ "Avo=160 #voltage gain\n",
+ "Rs=1 #source resistance(k ohms)\n",
+ "Vs=1 #source voltage(V) \n",
+ "Rl=12.5 #load resistance(k ohms)\n",
+ "Rc1=20. #collector resistance(k ohms)\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Rb=(R1*R2)/(R1+R2) #R1||R2\n",
+ "Vth=(Vcc*R1)/(R1+R2) #thevinines voltage(V)\n",
+ "Ib=(Vth-Vbe)/(Rb+(beta+1)*Re) #base current(uA)\n",
+ "Ic=Ib*beta #collector current(mA)\n",
+ "rpi=(25*beta)*10**-3/Ic #dynamic junction resistance(k ohms)\n",
+ "\n",
+ "#Part b\n",
+ "Ib1=1/rpi #small signal analysis \n",
+ "Rc=-Avo/(-beta*Ib1) #collector resistance() \n",
+ "\n",
+ "#Part c\n",
+ "r=(Rc1*rpi)/(Rc1+rpi) #Rc1||rpi1(k ohms) \n",
+ "Ib2=(Vs*r)/((1+r)*rpi) #base curret(mA)\n",
+ "Rc2=6.84 #collector resistance(k ohms) \n",
+ "Avo=-(beta*Ib2)*((Rl*Rc2)/(Rl+Rc2)) #voltage gain\n",
+ "\n",
+ "#Results\n",
+ "print\"value of Ic\",round(Ic,3),\"mA and rpi is\",round(rpi,2),\"k ohms\" \n",
+ "print\"Rc is\",round(Rc,2),\"k ohms\"\n",
+ "print\"Avo is\",round(Avo,1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "value of Ic 0.586 mA and rpi is 4.27 k ohms\n",
+ "Rc is 6.83 k ohms\n",
+ "Avo is -80.6\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.16,Page number 258"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "R1=12. #resistance(k ohms)\n",
+ "R2=100. #resistance(k ohms)\n",
+ "Rc=2 #collector resistance(k ohms)\n",
+ "Ic=1.2 #collector current(mA)\n",
+ "beta=60 #common emitter current gain\n",
+ "Ib1=1 #(say)\n",
+ "Rs=1 #source resistance(k ohms)\n",
+ "Vs=1 #source vcoltage(say)\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "rpi=((25*beta)/Ic)*10**-3 #dynamic junction resistance(k ohms)\n",
+ "Rb=(R1*R2)/(R1+R2) #R1||R2(k ohms)\n",
+ "r=(Rb*rpi)/(Rb+rpi) #Rb||rpi(k ohms)\n",
+ "Ro1=(Rc*rpi)/(Rc+rpi) #Rc||rpi(k ohms)\n",
+ "Vo1=Vbe2=-(beta*Ib1*Ro1) #base to emitter voltage(V)\n",
+ "Ib2=Vo1/rpi #base current(mA)\n",
+ "Ai=Ib2/Ib1 #current gain \n",
+ "\n",
+ "#Part b\n",
+ "Ib11=(Rs*r)/((Rs+r)*rpi) #base currents(mA)\n",
+ "Ib21=Ib11*Ai #base current(mA)\n",
+ "Avo1=Vo1=Ib21*rpi #voltage gain\n",
+ "\n",
+ "#Results\n",
+ "print\"current gain is\",round(Ai,2)\n",
+ "print\"overall voltage gain is\",round(Avo1,2),\"(solution in the textbook is incorrect)\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "current gain is -36.92\n",
+ "overall voltage gain is -19.5 (solution in the textbook is incorrect)\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.17,Page number 259"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Variable declaration\n",
+ "beeta=50. #common emitter current gain\n",
+ "R1=25. #resistance(k ohms)\n",
+ "R2=75. #resistance(k ohms)\n",
+ "Ic=1.25 #collector current(mA)\n",
+ "Vcc=10 #supply voltage to collector(V)\n",
+ "s=10*10**-3 #signal strength(V)\n",
+ "Rs=0.5 #output impedance(k ohms)\n",
+ "Vo=1 #output voltage(V)\n",
+ "Vs=1. #source voltage(V) \n",
+ "Vl=12 #load at output terminal(Vl)\n",
+ "Vbe=0.7 #base to emitter voltage(V)\n",
+ "Rl=12\n",
+ "\n",
+ "#Calculations\n",
+ "rpi=((25*beeta)/Ic) #dynamic junction resistance(k ohms)\n",
+ "Rb=(R1*R2)/(R1+R2) #R1||R2(k ohms)\n",
+ "r=(Rb*rpi*10**-3)/(Rb+rpi*10**-3) #Rb||rpi(k ohms)\n",
+ "Avo=((Vo*rpi)/Vcc) #voltage gain\n",
+ "Ib=(r*Vs)/(Rs+r)*Vs #base current(mA)\n",
+ "Rc=(Rl*Avo)/(beeta*Ib*Rl-Avo) #collector resistance(k ohms)\n",
+ "Vth=(Vcc*R1)/(R1+R2) #thevinine's voltage(V)\n",
+ "Ib1=Ic/beeta #base current(mA)\n",
+ "Re=(Vth-Vbe-(Rb*Ib1))/((beeta+1)*Ib1) #emitter resistance(k ohms) \n",
+ "\n",
+ "#Results\n",
+ "print\"value of Rc is\",round(Rc,2),\"and Re is\",round(Re,2),\"k ohms (Vth value is wrong substituted in the book)\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "value of Rc is 4.1 and Re is 1.04 k ohms (Vth value is wrong substituted in the book)\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.18,Page number 260"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "Cpi=20*10**-9 #opening capacitor(F)\n",
+ "Cu=5*10**-9 \n",
+ "C=50*10**-9 #here C=Cl+Cw\n",
+ "rpi=3.75*10**3 #dynamic drain resistance(ohms)\n",
+ "r1=4*10**3 #resistance(ohms)\n",
+ "r2=42*10**3 #resistance(ohms)\n",
+ "r3=303*10**3 #resistance(ohms)\n",
+ "f=20 #frequency(Hz)\n",
+ "beeta=100 #common emitter current gain\n",
+ "Rl=10*10**3 #load resistance(ohms)\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Req=(((r1*r2)/(r1+r2)+rpi)*r3)/(((r1*r2)/(r1+r2)+rpi)+r3) #equivalent resistance(ohms)\n",
+ "Ce=(beeta+1)/(2*(math.pi)*f*Req) #emitter capacitance(uF)\n",
+ "\n",
+ "#Part b\n",
+ "gm=beeta/rpi #transconductance\n",
+ "Ro=(Rl*r1)/(r1+Rl) #output resistance(k ohms)\n",
+ "Ceq=Cpi+(Cu*(1+gm*Ro)) #equivalent capacitance(pF)\n",
+ "Co=C+(Cu*(1+(1/(gm*Ro)))) #output capacitance(pF)\n",
+ "r=(rpi*r1)/(rpi+r1) #rpi||r1\n",
+ "w21=1/(Ceq*r) #lower cutoff frequency(MHz)\n",
+ "w22=1/(Co*Ro) #higher cutoff frequenct(MHz)\n",
+ "\n",
+ "#Part c\n",
+ "Ceqnew=Cpi+(Cu*(1+(0.75*(gm*Ro)))) #as gain is reduced to 75% of original value\n",
+ "wHnew=(10**12)/(Ceqnew*r) #corner value of high frequency(Mrad/s) \n",
+ "fHnew=wHnew/(2*(math.pi)) #new value of higher frequency cutoff(KHz)\n",
+ "\n",
+ "#Results\n",
+ "print\"a)value of bypass capacitor Ce is\",round(Ce/1E-6),\"uF\"\n",
+ "if w21>w22:\n",
+ " print\"higher frequency is w21\"\n",
+ "else:\n",
+ " print\"higher frequency is w22\"\n",
+ "\n",
+ "print\"b)high frequency cut-off is\",round((w22/1E+3),2),\"Mrad/s\"\n",
+ "print\"c)high frequency cut-off is\",fHnew,\"Hz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)value of bypass capacitor Ce is 111.0 uF\n",
+ "higher frequency is w22\n",
+ "b)high frequency cut-off is 6.36 Mrad/s\n",
+ "c)high frequency cut-off is 2.64660617737e+14 Hz\n"
+ ]
+ }
+ ],
+ "prompt_number": 36
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.19,Page number 262"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "Vcc=3. #supply voltage to collector(V)\n",
+ "Vee=-3. #supply voltage to emitter(V)\n",
+ "r1=40. #resistance(ohms) \n",
+ "r2=25. #resistance(ohms)\n",
+ "r3=1.56 #resistance(ohms)\n",
+ "Vs=3. #source voltage(V)\n",
+ "beeta=200 #common emitter current gain\n",
+ "r4=0.6 #resistance(ohms)\n",
+ "r5=0.15 #resistance(ohms)\n",
+ "Vbe=0.7 #base to emitter voltage\n",
+ "r=0.5 #resistance(k ohms)\n",
+ "fL=20 #frequency(Hz)\n",
+ "Req1=24.24 #solving r||(Rth+rpi+R)||Re\n",
+ "f=2 #non dominant cutoff freq is fL/10 i.e 20/10\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Vth=Vs-(((Vcc-Vee)/(r1+r2))*r1) #thevinine's voltage(V)\n",
+ "Rth=(r1*r2)/(r1+r2) #thevinine's voltage(V)\n",
+ "Ib=(Vth-Vbe+Vcc)/(Rth+((r4+r5)*(beeta+1))) #base current(mA)\n",
+ "Ic=Ib*beeta #Collector current(mA) \n",
+ "Vo=Vcc-(r3*Ic) #output voltage(V)\n",
+ "\n",
+ "#Part b\n",
+ "rpi=(25*beeta)/Ic #dynamic drain resistance(ohms)\n",
+ "R=r4*(beeta+1) #resistance(k ohms)\n",
+ "ro=(rpi*R)/(rpi+R) #rpi||R(k ohms)\n",
+ "Req=r+((Rth*ro)/(Rth+ro)) #equivalent resistance(k ohms) \n",
+ "Cc1=1/(Req*2*(math.pi)*fL) #coupling capacitor(uF)\n",
+ "\n",
+ "#Part c\n",
+ "Ce=1/(2*(math.pi)*fL*Req1) #emitter capacitance(uF)\n",
+ "CE=beeta*Ce #emitter capacitance(uF) after current gain\n",
+ "\n",
+ "#Part d\n",
+ "Ce1=1/(2*(math.pi)*f*Req1) #emitter capacitance(uF)\n",
+ "CE1=beeta*Ce1 #emitter capacitance(uF) after current gain\n",
+ "Csum=Cc1+CE1 #total capacitance(uF)\n",
+ "\n",
+ "#Results\n",
+ "print\"a)Ic and Vo are\",round(Ic,2),\"mA and\",round(Vo),\"V\"\n",
+ "print\"b)Cc1 is\",round((Cc1/1E-3),3),\"uF\"\n",
+ "print\"c)Ce is\",round((CE/1E-3),1),\"uF\"\n",
+ "print\"d)Csum is\",round((Csum/1E-2),3),\"uF\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)Ic and Vo are 1.94 mA and -0.0 V\n",
+ "b)Cc1 is 0.565 uF\n",
+ "c)Ce is 65.7 uF\n",
+ "d)Csum is 65.715 uF\n"
+ ]
+ }
+ ],
+ "prompt_number": 33
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.21,Page number 265"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "gm=2 #transconductance\n",
+ "rd=200*10**3 #dynamic drain resistance(ohms)\n",
+ "Cgs=10 #gate to source capacitance(pF)\n",
+ "Cgd=0 #gate to drain capacitance(pF)\n",
+ "Rs=1*10**3 #source resistance(ohms)\n",
+ "Rg=1*10**6 #Rg=R1||R2\n",
+ "Rd=5*10**3 #drain resistance(ohms) \n",
+ "Rs1=2 #resistance(k ohms) \n",
+ "Cc1=Cc2=0.1*10**-6 #coupling capacitors(F)\n",
+ "Co=10*10**-12 #output capacitance(F)\n",
+ "Vgs=1 #gate to source voltage(V)\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "R=(Rd*rd)/(Rd+rd) #Rd||rd(k ohms)\n",
+ "Avo=Vo=-Vgs*gm*R #voltage gain\n",
+ "\n",
+ "#Part b\n",
+ "w11=1/(Cc1*(Rs*Rg)) #corner freq(rad/s)\n",
+ "wL=w11 #input circuit corner freq(rad/s)\n",
+ "\n",
+ "#Part c\n",
+ "w22=10**12/((Cgs*R)*10**3) #output circuit corner frequency(rad/s)\n",
+ "wH=w22/(2*math.pi) \n",
+ "\n",
+ "#Part d\n",
+ "G=-Avo*wH #gain bandwidth product\n",
+ "\n",
+ "#Part e\n",
+ "Rd=4*10**3 #drain resistance reduced(ohms) \n",
+ "Rnew=(Rd*rd)/(Rd+rd) #new resistance(ohms)\n",
+ "Avo1=-Vgs*gm*Rnew #new voltage gain\n",
+ "BWnew=(10**8/Rnew)/(2*math.pi) #new bandwidth(Mrad/s)\n",
+ "Gnew=-Avo1*BWnew #gain bandwidth product new\n",
+ "\n",
+ "#Results\n",
+ "print\"a)Avo is\",round((Avo/1E+3),2)\n",
+ "print\"b)wL is\",round((wL/1E-3),2),\"rad/s\"\n",
+ "print\"c)wH is\",round((wH/1E+3),1),\"MHz\"\n",
+ "print\"d)G is\",round((G/1E+6),2),\"MHz\"\n",
+ "print\"e)Gnew is\",round((Gnew/1E+6),1),\"MHz\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)Avo is -9.76\n",
+ "b)wL is 10.0 rad/s\n",
+ "c)wH is 3.3 MHz\n",
+ "d)G is 31.83 MHz\n",
+ "e)Gnew is 31.8 MHz\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example 4.23,Page number 268"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "import math\n",
+ "\n",
+ "#Variable declaration\n",
+ "gm=1 #transconductance\n",
+ "rd=40 #dynamic drain resistance(k ohms) \n",
+ "Cgs=5 #gate to source capacitance(pF)\n",
+ "Cgd=1 #gate to drain capacitance(pF)\n",
+ "Cds=1 #drain to source capacitance(pF)\n",
+ "Avo1=20. #voltage gain of JFET 1\n",
+ "Avo2=8. #voltage gain of JFET 2 \n",
+ "R1=5 #resistance(k ohms)\n",
+ "R2=20 #resistance(k ohms)\n",
+ "R3=8 #resistance(k ohms)\n",
+ "\n",
+ "#Calculations\n",
+ "#Part a\n",
+ "Avo=Avo1*Avo2 #voltage gain\n",
+ "Ceq1=Cgs+Cgd*(1+Avo1) #input crcuit for first JFET\n",
+ "Co1=Cds+(Cgd*(1+(1/Avo1))) #output crcuit for first JFET\n",
+ "Ceq2=Cgs+Cgd*(1+Avo2) #input crcuit for second JFET\n",
+ "Co2=Cds+(Cgd*(1+(1/Avo2))) #output crcuit for second JFET\n",
+ "\n",
+ "#Part b\n",
+ "w21=1/(R1*Ceq1) #input circuit frequency\n",
+ "w2=10**12/(R2*10**3*(Co1+Ceq2)) #common circuit frequency\n",
+ "w22=1/(R3*Co2) #output circuit frequency\n",
+ "\n",
+ "\n",
+ "#Results\n",
+ "print\"a)Avo is\",Avo\n",
+ "print\"b)w21,w2,w22 are\",round((w21/1E-3),2),\"Mrad/sec,\",round((w2/1E+6),2),\"Mrad/sec and\",round((w22/1E-3),2),\"Mrad/sec\"\n",
+ "print\"nondominant corner freq is\",round((w2/1E+6),2),\"Mrad/sec\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "a)Avo is 160.0\n",
+ "b)w21,w2,w22 are 7.69 Mrad/sec, 3.12 Mrad/sec and 58.82 Mrad/sec\n",
+ "nondominant corner freq is 3.12 Mrad/sec\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [],
+ "language": "python",
+ "metadata": {},
+ "outputs": []
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+}
\ No newline at end of file |