From 37d315828bbfc0f5cabee669d2b9dd8cd17b5154 Mon Sep 17 00:00:00 2001 From: hardythe1 Date: Wed, 17 Jun 2015 11:14:34 +0530 Subject: add books --- .../chapter7.ipynb | 645 +++++++++++++++++++++ 1 file changed, 645 insertions(+) create mode 100755 Electronic_Devices_and_Circuits_By_I.JNagrath/chapter7.ipynb (limited to 'Electronic_Devices_and_Circuits_By_I.JNagrath/chapter7.ipynb') diff --git a/Electronic_Devices_and_Circuits_By_I.JNagrath/chapter7.ipynb b/Electronic_Devices_and_Circuits_By_I.JNagrath/chapter7.ipynb new file mode 100755 index 00000000..f37b3943 --- /dev/null +++ b/Electronic_Devices_and_Circuits_By_I.JNagrath/chapter7.ipynb @@ -0,0 +1,645 @@ +{ + "metadata": { + "name": "", + "signature": "sha256:4a9283ba6472e11de214bfc0c69a7f007685d94fb7b513179011a2e471e81b7b" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter 7:Operational Amplifiers" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.1,Page number 361" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "V1=120 #negative terminal Vn(uV)\n", + "V2=80 #positive terminal Vp(uV)\n", + "Ad=10**3 #difference mode gain\n", + "\n", + "\n", + "#Calculations\n", + "Vd=V1-V2 #difference mode signal(uV) \n", + "Vc=(V1+V2)/2 #common mode signal(uV)\n", + "\n", + "#Part a\n", + "CMRR=100. #common mode rejection ratio\n", + "Vo=Ad*Vd*(1+(Vc/(CMRR*Vd))) #output voltage(mV)\n", + " \n", + "#Part b\n", + "CMRR=10**5. #common mode rejection ratio\n", + "Vo1=Ad*Vd*(1+(1/CMRR)*(Vc/Vd)) #output voltage(mV) \n", + "\n", + "#Results\n", + "print\"output voltage is\",round(Vo/1E+3),\"mV\"\n", + "print\"output voltage is\",round(Vo1/1E+3),\"mV\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "output voltage is 41.0 mV\n", + "output voltage is 40.0 mV\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.2,Page number 365" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "deltavi=0.5 #change in vi(V)\n", + "deltat=10 #change in time(us)\n", + "s=1 #slew rate(V/us)\n", + "\n", + "#Calculations\n", + "Kvf=(s*deltat)/deltavi #closed loop gain of amplifier\n", + "\n", + "#Results\n", + "print\"closed loop gain of amplifier is\",Kvf" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "closed loop gain of amplifier is 20.0\n" + ] + } + ], + "prompt_number": 10 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.3,Page number 365" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math\n", + "\n", + "#Variable declaration\n", + "f=50*10**3. #OPAMP freequency(Hz)\n", + "Vm=0.02 #maximum value of signal voltage(V)\n", + "S=.5*10**6 #slew rate(V/s)\n", + "\n", + "#Calculations\n", + "Kvf=S/(2*(math.pi)*f*Vm) #closed loop gain of amplifier\n", + "\n", + "#Results\n", + "print\"closed loop gain of amplifier is\",round(Kvf)" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "closed loop gain of amplifier is 80.0\n" + ] + } + ], + "prompt_number": 18 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.4,Page number 369" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "Ic=100 #current at quinscent point(uA)\n", + "beta=2000. #current gain\n", + "Ad=250 #difference mode gain\n", + "CMRR=5000 #as 74 dB=5000,common mode rejection ratio(dB)\n", + "\n", + "#Calculations\n", + "rpi=(25*beta)/Ic #dynamic internal resistance(k ohms) \n", + "gm=beta/rpi #transconductance(mS)\n", + "Re=CMRR/gm #emitter resistance(k ohms)\n", + "Rc=(Ad*2)/gm #collector resistance(k ohms) from formula Ad=gmRc/2\n", + "Rin=2*rpi #input resistance(k ohms)\n", + "\n", + "#Results\n", + "print\"Re is\",Re,\"k ohms\"\n", + "print\"Rc is\",Rc,\"k ohms\"\n", + "print\"input resistance is\",Rin,\"k ohms\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Re is 1250.0 k ohms\n", + "Rc is 125.0 k ohms\n", + "input resistance is 1000.0 k ohms\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.6,Page number 371" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "Icq=.428 #current at quinscent point(uA)\n", + "beta=200. #current gain\n", + " #as 74 dB=5000,common mode rejection ratio(dB)\n", + "Rc=10. #collector resistance(k ohms) \n", + "Re=16. #emitter resistance(k ohms) \n", + "Vcc=15. #supply voltage(V)\n", + "\n", + "#Calculations\n", + "#Part b\n", + "Ibq=Icq/beta #Ib at Q(uA)\n", + "rpi=(25*beta)/Icq #dynamic resistance(k ohms)\n", + "gm=beta/rpi #transconductance\n", + "\n", + "#Part b\n", + "vo1=Vcc-(Icq*Rc) #terminal 1 voltage(V) \n", + "vo2=vo1 #terminal 2 voltage(V) \n", + "\n", + "#Part c \n", + "Ad=(gm*Rc)/2 #differential mode gain\n", + "Ac=Rc/(2*Re) #common mode gain\n", + "CMRR=Ad/Ac #common mode rejection ratio\n", + "\n", + "#Part d\n", + "Rid=2*rpi #differential input resistance(k ohms)\n", + "rpi=11.7 #dynamic resistance(k ohms)\n", + "Ric=rpi+(2*(beta+1)*Re) #common mode input resistance(k ohms)\n", + "\n", + "#Results\n", + "print\"Icq is\",Icq,\"mA,and Ibq is \",round((Ibq/1E-3),2),\"uA\"\n", + "print\"vo1 and vo2 have same value as\",vo1,\"V\"\n", + "print\"\",\n", + "print\"Ad:\",round(Ad/1E-3),\",Ac:\",round(Ac,3),\"and CMRR is\",round(CMRR/1E-3)\n", + "print\"Rid is\",round((Rid/1E+3),1),\"K ohms and Ric is\",round((Ric/1E+3),2),\" Mohms\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "Icq is 0.428 mA,and Ibq is 2.14 uA\n", + "vo1 and vo2 have same value as 10.72 V\n", + " Ad: 86.0 ,Ac: 0.313 and CMRR is 274.0\n", + "Rid is 23.4 K ohms and Ric is 6.44 Mohms\n" + ] + } + ], + "prompt_number": 3 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.7,Page number 373" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "R1=10. #series resistance(K ohms)\n", + "Rf=10**3. #feedback resistance(k ohms) \n", + "vo=-5. #output voltage(V)\n", + "Ri=1000 #input resistance(k ohms)\n", + "Av=2.5*10**5 #gain\n", + "\n", + "#Calculations\n", + "v1=-vo*(R1/Rf) #input signal voltage(V)\n", + "vi=-vo/Av #inverting voltage(V) \n", + "i1=((v1*10**-3)-vi)/R1 #current through R1(uA)\n", + "ii=vi/Ri #inverting current(uA)\n", + "iF=-ii #forward current(uA)\n", + "\n", + "#Results\n", + "print\"value of vi is\",vi,\"mV\"\n", + "print\"value of ii:\",ii,\"uA i1:,\",i1,\"uA and iF is\",iF,\"uA\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "value of vi is 2e-05 mV\n", + "value of ii: 2e-08 uA i1:, 3e-06 uA and iF is -2e-08 uA\n" + ] + } + ], + "prompt_number": 5 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.8,Page number 374" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "Vs=4 #source voltage(V)\n", + "R1=10. #resistance(k ohms)\n", + "Vb=Va=2 #voltage at point A and point B\n", + "Rf=30 #forward resistance(k ohms)\n", + "\n", + "#Calculations\n", + "I=(Vs-Vb)/R1 #current(mA)\n", + "Vo=(-I*Rf)+Vb #output voltage(V) \n", + "\n", + "#Result\n", + "print\"output voltage\",Vo,\"V\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "output voltage -4.0 V\n" + ] + } + ], + "prompt_number": 45 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.9,Page number 375" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "Rf=2 #as vs=2sinwt and vo=(1+Rf/Rs)*vb and vB=vA=vs\n", + "Rs=1\n", + "\n", + "\n", + "#Calculations\n", + "vo=(1+(Rf/Rs))*2 #output voltage(V)\n", + "\n", + "#Result\n", + "print\"output voltage\",vo,\"sinwt\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "output voltage 6 sinwt\n" + ] + } + ], + "prompt_number": 50 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.10,Page number 377" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "Ro=100. #output resistance(ohms)\n", + "vo=10. #output voltage(V)\n", + "A=10**5. #gain \n", + "Ri=100*10**3 #input resistance(ohms) \n", + "Rs=1*10**3. #resistance(ohms)\n", + "Rl=10*10**3 #load resistance(ohms)\n", + "\n", + "#Calculations\n", + "#Part i\n", + "iL=vo/Rl #load current(mA)\n", + "Avi=vo+(iL*Ro) #voltage gain without feedback\n", + "vi=Avi/A #voltage(V)\n", + "ii=vi/Ri #current(A) \n", + "vs=vo+ii*(Rs+Ri) #source voltage(V)\n", + "\n", + "#Part ii\n", + "Avf=vo/vs #voltage gain with feedback \n", + "\n", + "\n", + "#Part iii\n", + "Rif=vs/ii #input resistance(ohms) \n", + "Rof=Ro/A #output resistance(ohms)\n", + "\n", + "#Results\n", + "print\"vs is\",round(vs,4),\"V\"\n", + "print\"vo/vs that is Avf is\",Avf\n", + "print\"input and output resistances are\",Rif,Rof,\"ohms\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "vs is 10.0001 V\n", + "vo/vs that is Avf is 0.999989799104\n", + "input and output resistances are 9901091099.01 0.001 ohms\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.11,Page number 382" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "Vb=Va=3 #voltage at A and B \n", + "R1=40*10**3. #input resistance(ohms)\n", + "t=50*10**-3 #time after switch is open(mS)\n", + "V1=5 #input voltage(V)\n", + "\n", + "#Calculations\n", + "#Part a\n", + "vo=-3 #as Va=Vb=3\n", + "\n", + "#Part b\n", + "i1=(V1-Vb)/R1 #input current(A)\n", + "vo1=(-250*t)-Va #vo at 50 mS\n", + "\n", + "#Result\n", + "print\"output voltage\",vo1,\"V\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "output voltage -15.5 V\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.14,Page number 388" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "import math\n", + "\n", + "#Variable declaration\n", + "BW=30*10**3 #specified bandwidth(k Hz)\n", + "fc=18*10**3 #centered frequency(Hz)\n", + "R1=20 #resistance(k ohms) \n", + "R2=180 #resistance(k ohms) \n", + "C=1.2*10**-9 #capacitance(F)\n", + "G=40 #pass band gain(dB)\n", + "g=20 #pass region gain(dB)\n", + "\n", + "#Calculationsv\n", + "fc1=fc-(BW/2) #high pass section frequency(Hz)\n", + "fc2=fc+(BW/2) #low pass section frequency(Hz)\n", + "Rfc1=1/(2*math.pi*fc1*C) #high pass section resistance(k ohms)\n", + "Rfc2=1/(2*math.pi*fc2*C) #low pass section resistance(k ohms)\n", + "Gfc1=G-g #gain at frequency 0.3KHz(dB)\n", + "Gfc2=G-2*6 #gain at frequency 132KHz(dB)\n", + "\n", + "#Results\n", + "print\"R1 and R2 are\",R1,\"K ohms and\",R2,\"K ohms\"\n", + "print\"Rfc1 is\",round(Rfc1/1E+3),\"k ohms and Rfc2 is\",round(Rfc2/1E+3),\"k ohms\"\n", + "print\"filter gain at frequencies 0.3 KHz is\",Gfc1,\"dB and 132 k Hz are\",Gfc2,\"dB\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "R1 and R2 are 20 K ohms and 180 K ohms\n", + "Rfc1 is 44.0 k ohms and Rfc2 is 4.0 k ohms\n", + "filter gain at frequencies 0.3 KHz is 20 dB and 132 k Hz are 28 dB\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.21,Page number 402" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "R=250 #resistance(k ohms)\n", + "\n", + "#Calculations\n", + "#part a\n", + "R1=-R/(-5) #as vo=-5va+3vb(given),so when vb=0,vo/voa=-250/R1=-5\n", + "\n", + "#part b\n", + "R2=R1/(2-1) #as va=0\n", + " #vx=(R1/R1+R)*vob=(1/6)*vb\n", + " #vy=(R2/R1+R2)*vb\n", + " #vx=vy\n", + " #(1/6)*vob=(R2/R1+R2)*vb\n", + " #vob=3vb\n", + " #(1/6)*3=R2/(50+R2)\n", + " \n", + "#Result\n", + "print\"R1 and R2 are\",R1,\"K ohms and\",R2,\"K ohms\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "R1 and R2 are 50 K ohms and 50 K ohms\n" + ] + } + ], + "prompt_number": 11 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.22,Page number 403" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "R1=10*10**3 #resistance(k ohms)\n", + "C1=10**-6 #capacitance(uF) \n", + "C=0.1*10**-6 #capacitance(uF) \n", + "R=100*10**3 #resistance(k ohms) \n", + "\n", + "#Calculations\n", + "#part b \n", + "wc1=1/C1*R1 #angular frequency(rad/s)\n", + "wc2=1/C*R #angular frequency(rad/s)\n", + "wc=wc1=wc2 #angular frequency(rad/s)\n", + "\n", + "#Results\n", + "print\"wc1 is\",wc1/1E+10,\"rad/s\"\n", + "print\"wc2 is\",wc2/1e+10,\"rad/s\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "wc1 is 100.0 rad/s\n", + "wc2 is 100.0 rad/s\n" + ] + } + ], + "prompt_number": 15 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Example 7.23,Page number 404" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Variable declaration\n", + "vo1=5 #say (V)\n", + "K=25 #proportionality constant \n", + "Q=250 #volume of fluid passed across metering point(cm^3) \n", + "R1=2.5 #output resistance(k ohms)\n", + "\n", + "#Calculations\n", + "C1=(K*Q)/(R1*vo1) #capacitor(nF)\n", + "\n", + "#Results\n", + "print\"C1 is\",round(C1/1E+1),\"uF\"\n", + "print\"vo1 is -5V when Q=250 cm^3\"" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + "C1 is 50.0 uF\n", + "vo1 is -5V when Q=250 cm^3\n" + ] + } + ], + "prompt_number": 6 + } + ], + "metadata": {} + } + ] +} \ No newline at end of file -- cgit