summaryrefslogtreecommitdiff
path: root/tbc/static
diff options
context:
space:
mode:
authorhardythe12013-11-08 12:25:43 +0530
committerhardythe12013-11-08 12:25:43 +0530
commit5c96aba148286bb3989592701dc47d3c46563891 (patch)
tree10b8b174bce6331bfb92e4c583e3ca1267ce4eb3 /tbc/static
parent76e013fd4efe5a5262243d4ac10445a1a5d4b1ad (diff)
downloadPython-TBC-Interface-5c96aba148286bb3989592701dc47d3c46563891.tar.gz
Python-TBC-Interface-5c96aba148286bb3989592701dc47d3c46563891.tar.bz2
Python-TBC-Interface-5c96aba148286bb3989592701dc47d3c46563891.zip
adding reviewer interface
Diffstat (limited to 'tbc/static')
-rw-r--r--tbc/static/uploads/Hardik/C++/Chapter1.ipynb158
-rw-r--r--tbc/static/uploads/Hardik/C++/Chapter2.ipynb608
-rw-r--r--tbc/static/uploads/Hardik/C++/Chapter3.ipynb377
-rw-r--r--tbc/static/uploads/Hardik/C++/Chapter4.ipynb455
-rw-r--r--tbc/static/uploads/Hardik/C++/screenshots/Chapter13.pngbin17699 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C++/screenshots/Chapter4.pngbin10832 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C++/screenshots/xyz.pngbin70584 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C/images/certificate.pngbin71052 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C/images/pr.jpegbin63824 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C/images/scipy.pngbin14314 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C/newton.py35
-rw-r--r--tbc/static/uploads/Hardik/C/newton_raphson.py132
-rw-r--r--tbc/static/uploads/Hardik/C/nr.py51
-rw-r--r--tbc/static/uploads/Hardik/C: The Basics/Chapter16.ipynb305
-rw-r--r--tbc/static/uploads/Hardik/C: The Basics/Chapter17.ipynb322
-rw-r--r--tbc/static/uploads/Hardik/C: The Basics/Chapter18.ipynb57
-rw-r--r--tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter13.pngbin17699 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter5.pngbin57409 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter6.pngbin21873 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/PHP/Chapter13.pngbin17699 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/PHP/Chapter4.pngbin10832 -> 0 bytes
-rw-r--r--tbc/static/uploads/Hardik/PHP/Chapter6.pngbin21873 -> 0 bytes
-rw-r--r--tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter5.ipynb427
-rw-r--r--tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter6.ipynb603
-rw-r--r--tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter7.ipynb727
-rw-r--r--tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/Chapter7.pngbin14314 -> 0 bytes
-rw-r--r--tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/nb.pngbin89584 -> 0 bytes
-rw-r--r--tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/try.pngbin63444 -> 0 bytes
-rw-r--r--tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter10.ipynb719
-rw-r--r--tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter8.ipynb432
-rw-r--r--tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter9.ipynb379
-rw-r--r--tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter2.pngbin19760 -> 0 bytes
-rw-r--r--tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter4.pngbin10832 -> 0 bytes
-rw-r--r--tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/xyz.pngbin70584 -> 0 bytes
34 files changed, 0 insertions, 5787 deletions
diff --git a/tbc/static/uploads/Hardik/C++/Chapter1.ipynb b/tbc/static/uploads/Hardik/C++/Chapter1.ipynb
deleted file mode 100644
index 68dac58..0000000
--- a/tbc/static/uploads/Hardik/C++/Chapter1.ipynb
+++ /dev/null
@@ -1,158 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_1"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 1: Semiconductor Basics<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 1.1(a), Page Number:29<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Voltages of different models'''",
- "",
- "# variable declaration",
- "V_bias=10.0; #bias voltage in volt",
- "R_limit=1000; #limiting resistance in ohm",
- "r_d =10.0; #r_d value",
- "",
- "#calculation",
- "#IDEAL MODEL",
- "print \"IDEAL MODEL\"",
- "V_f=0; #voltage in volt",
- "I_f=V_bias/R_limit; #foward current",
- "V_R_limit=I_f*R_limit; #limiting voltage",
- "print \"forward voltage = %.2f volts\" %V_f",
- "print \"forward current = %.2f amperes\" %I_f",
- "print \"voltage across limiting resistor = %.2f volts\" %V_R_limit",
- "",
- "#PRACTICAL MODEL",
- "print \"\\nPRACTICAL MODEL\"",
- "V_f=0.7; #voltage in volt",
- "I_f=(V_bias-V_f)/R_limit; #foward current",
- "V_R_limit=I_f*R_limit; #limiting voltage",
- "print \"forward voltage = %.2f volts\" %V_f",
- "print \"forward current = %.3f amperes\" %I_f",
- "print \"voltage across limiting resistor = %.2f volts\" %V_R_limit",
- "",
- "#COMPLETE MODEL",
- "print \"\\nCOMPLETE MODEL\"",
- "I_f=(V_bias-0.7)/(R_limit+r_d); #foward current",
- "V_f=0.7+I_f*r_d; #forward voltage",
- "V_R_limit=I_f*R_limit; #limiting voltage",
- "print \"forward voltage = %.3f volts\" %V_f",
- "print \"forward current = %.3f amperes\" %I_f",
- "print \"voltage across limiting resistor = %.2f volts\" %V_R_limit"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "IDEAL MODEL",
- "forward voltage = 0.00 volts",
- "forward current = 0.01 amperes",
- "voltage across limiting resistor = 10.00 volts",
- "",
- "PRACTICAL MODEL",
- "forward voltage = 0.70 volts",
- "forward current = 0.009 amperes",
- "voltage across limiting resistor = 9.30 volts",
- "",
- "COMPLETE MODEL",
- "forward voltage = 0.792 volts",
- "forward current = 0.009 amperes",
- "voltage across limiting resistor = 9.21 volts"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 1.1(b), Page Number:29<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''voltages of different models'''",
- "",
- "# variable declaration",
- "V_bias=5; #bias voltage in volt",
- "I_R=1*10**-6; #current",
- "R_limit=1000 #in Ohm",
- "",
- "#calculation",
- "#IDEAL MODEL",
- "print \"IDEAL MODEL\"",
- "I_r=0.0; #current in ampere",
- "V_R=V_bias; #voltages are equal",
- "V_R_limit=I_r*R_limit; #limiting voltage",
- "print \"Reverse voltage across diode = %.2f volts\" %V_R",
- "print \"Reverse current through diode= %.2f amperes\" %I_r",
- "print \"voltage across limiting resistor = %.2f volts\" %V_R_limit",
- "",
- "#PRACTICAL MODEL",
- "print \"\\nPRACTICAL MODEL\"",
- "I_r=0.0; #current in ampere",
- "V_R=V_bias; #voltages are equal",
- "V_R_limit=I_r*R_limit; #limiting voltage",
- "print \"Reverse voltage across diode= %.2f volts\" %V_R",
- "print \"Reverse current through diode = %.2f amperes\" %I_r",
- "print \"voltage across limiting resistor = %.2f volts\" %V_R_limit",
- "",
- "#COMPLETE MODEL",
- "print \"\\nCOMPLETE MODEL\"",
- "I_r=I_R; #current in ampere",
- "V_R_limit=I_r*R_limit; #limiting voltage",
- "V_R=V_bias-V_R_limit; #voltage in volt",
- "print \"Reverse voltage across diode = %.3f volts\" %V_R",
- "print \"Reverse current through diode = %d micro Amp\" %(I_r*10**6)",
- "print \"voltage across limiting resistor = %d mV\" %(V_R_limit*1000)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "IDEAL MODEL",
- "Reverse voltage across diode = 5.00 volts",
- "Reverse current through diode= 0.00 amperes",
- "voltage across limiting resistor = 0.00 volts",
- "",
- "PRACTICAL MODEL",
- "Reverse voltage across diode= 5.00 volts",
- "Reverse current through diode = 0.00 amperes",
- "voltage across limiting resistor = 0.00 volts",
- "",
- "COMPLETE MODEL",
- "Reverse voltage across diode = 4.999 volts",
- "Reverse current through diode = 1 micro Amp",
- "voltage across limiting resistor = 1 mV"
- ]
- }
- ],
- "prompt_number": 2
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Hardik/C++/Chapter2.ipynb b/tbc/static/uploads/Hardik/C++/Chapter2.ipynb
deleted file mode 100644
index 107fc33..0000000
--- a/tbc/static/uploads/Hardik/C++/Chapter2.ipynb
+++ /dev/null
@@ -1,608 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_2"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 2: Diode Application<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.1, Page Number: 46<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Average value of half wave rectifier'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "V_p=50; #Peak value is 50V",
- "",
- "#calculation",
- "V_avg=V_p/math.pi;",
- "",
- "#result",
- "print \"average value of half wave rectifier = %.2f volts\" %V_avg"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "average value of half wave rectifier = 15.92 volts"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.2(a), Page Number: 46<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' half wave rectifier output'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "#let V_in=5*sin(2*%pi*f.*t) be input wave ,hence frequency=1Hz",
- "f=1; #frequency",
- "V_p_in=5; #peak input",
- "",
- "#calculation",
- "V_pout=V_p_in-0.7; #output voltage",
- "t_d=(math.asin(0.7/V_p_in))/(2*math.pi*f);",
- "",
- "#result",
- "print \"half wave rectifier output = %.2f volts\" %V_pout;"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "half wave rectifier output = 4.30 volts"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.2(b), Page Number: 46<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' half wave rectifier output'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "#let V_in=100*sin(2*%pi*f.*t) be input wave ,hence frequency=1Hz",
- "f=1; #frequency",
- "T=1/f; #time period",
- "V_p_in=100; #peak input voltage",
- "",
- "#calculation",
- "V_pout=(V_p_in-0.7); #peak output ",
- "t_d=(math.asin(0.7/V_p_in))/(2*math.pi*f) ",
- "",
- "#result",
- "print \"output of half wave rectifier = %.2f volts\" %V_pout"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "output of half wave rectifier = 99.30 volts"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.3, Page Number: 48<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Average value of half wave rectifier'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "V_p_in=156; #Peak input voltage",
- "V_p_pri=156; #Peak voltage of primary of transformer",
- "n=0.5; #Turn ratio is 2:1",
- "",
- "#calculation",
- "V_p_sec=n*V_p_pri;",
- "V_p_out=(V_p_sec-0.7); #Peak output voltage",
- "",
- "#result",
- "print \"peak output voltage of half wave rectifier = %.1f volts\" %V_p_out"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "peak output voltage of half wave rectifier = 77.3 volts"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.4, Page Number: 49<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Average value of full wave rectifier'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "V_p=15; #Peak voltage in volt",
- "",
- "#calculation",
- "V_avg=(2*V_p)/math.pi;",
- "",
- "#result",
- "print \"Average value of output of full wave rectifier = %.2f volts\" %V_avg"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Average value of output of full wave rectifier = 9.55 volts"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.5, Page Number: 52<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''PIV full wave'''",
- "",
- "V_p_pri=100.0; #Peak voltage across primary winding",
- "n=1.0/2; #tun ratio is 2:1",
- "V_p_sec=n*V_p_pri;",
- "V_sec=V_p_sec/2; #voltage across each secondary is half the total voltage",
- "V_pout=V_sec-0.7;",
- "",
- "print('full wave rectifier output voltage = %f V'%V_pout)",
- "PIV=2*V_pout+0.7;",
- "print('PIV = %fV'%PIV)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "full wave rectifier output voltage = 24.300000 V",
- "PIV = 49.300000V"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.6, Page Number: 54<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Peak voltage of diode'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "V_rms=12.0; #rms secondary voltage",
- "",
- "#calculation",
- "V_p_sec=math.sqrt(2)*V_rms; #peak secondary voltage",
- "V_th=0.7; #knee voltage of diode",
- "V_p_out=V_p_sec-2*V_th; #in one cycle, 2 diodes conduct",
- "PIV=V_p_out+V_th; #applying KVL",
- "",
- "#result",
- "print \"Peak output voltage = %.2f volt\" %V_p_out",
- "print \"PIV across each diode = %.2f volt\" %PIV"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Peak output voltage = 15.57 volt",
- "PIV across each diode = 16.27 volt"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.7, Page Number: 58<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Ripple Factor'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "R_l=2200; #load resistance in Ohm",
- "C=50*10**-6; #capacitance in Farad",
- "V_rms=115; #rms of primary",
- "",
- "#calculation",
- "V_p_pri=math.sqrt(2)*V_rms; #peak voltage across primary",
- "n=0.1; #turn ratio is 10:1",
- "V_p_sec=n*V_p_pri; #primary voltage across secondary",
- "V_p_rect=V_p_sec-1.4 #unfiltered peak rectified voltage",
- "#we subtract 1.4 because in each cycle 2 diodes conduct & 2 do not",
- "f=120; #frequency of full wave rectified voltage",
- "V_r_pp=(1/(f*R_l*C))*V_p_rect; #peak to peak ripple voltage",
- "V_DC=(1-(1/(2*f*R_l*C)))*V_p_rect;",
- "r=V_r_pp/V_DC;",
- "",
- "#result",
- "print \"Ripple factor = %.3f \" %r"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Ripple factor = 0.079 "
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.8, Page Number: 62<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Min & Max voltage'''",
- "",
- "import math",
- "",
- "# variable declaration",
- "V_REF=1.25; #in volts",
- "V_R1=V_REF; #voltage in volt",
- "R1=220.0; #in ohms",
- "I_ADJ=50*10**-6 #in amperes",
- "",
- "#calculation",
- "# MAX VALUE OF R2=5000 Ohms",
- "R2_min=0.0; #min resistance",
- "V_out_min=V_REF*(1+(R2_min/R1))+I_ADJ*R2_min;",
- "R2_max=5000.0; #max value of resistance",
- "V_out_max=V_REF*(1+(R2_max/R1))+I_ADJ*R2_max;",
- "",
- "#result",
- "print \"minimum output voltage = %.2f volt\" %V_out_min",
- "print \"maximum output voltage = %.2f volt\" %V_out_max"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "minimum output voltage = 1.25 volt",
- "maximum output voltage = 29.91 volt"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.9,Page Number: 64<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Load regulation percentage'''",
- "",
- "V_NL=5.18 #No load output voltage",
- "V_FL=5.15 #Full load output voltage",
- "load_reg=((V_NL-V_FL)/V_FL)*100 #In percentage",
- "print('load regulation percent = %.2f%% '%load_reg)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "load regulation percent = 0.58% "
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.10, Page Number: 66<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Negative diode limiter'''",
- "",
- "import pylab as py",
- "import numpy as np",
- "",
- "#let input wave be V_in=V_p_in*sin(2*%pi*f*t) ",
- "f=1.0; #Frequency is 1Hz",
- "T=1/f;",
- "R_1=100.0; #Resistances in ohms",
- "R_L=1000.0; #Load",
- "V_p_in=10.0; #Peak input voltage",
- "V_th=0.7; #knee voltage of diode",
- "",
- "V_p_out=V_p_in*(R_L/(R_L+R_1)); #peak output voltage",
- "print('peak output voltage = %.2f V'%V_p_out)",
- "",
- "t = np.arange(0, 3.5 , 0.0005)",
- "z=V_p_in*np.sin(2*np.pi*f*t)*(R_L/(R_L+R_1))",
- "",
- "subplot(211)",
- "plot(t,z)",
- "ylim(-9.09,9.09)",
- "title('Input Voltage Waveform')",
- "",
- "subplot(212)",
- "plot(t,z)",
- "ylim(-0.07,9.09)",
- "title('Output Voltage Waveform')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "peak output voltage = 9.09 V"
- ]
- },
- {
- "output_type": "pyout",
- "prompt_number": 12,
- "text": [
- "<matplotlib.text.Text at 0xa3bf44c>"
- ]
- },
- {
- "output_type": "display_data",
- "png": "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\n"
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.11, Page Number: 67<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Positive and negative Diode limiter'''",
- "",
- "#from pylab import figure, show",
- "#from numpy import arange, sin, pi,bool",
- "#import numpy as np",
- "import pylab as py",
- "import numpy as np",
- "#let input wave be V_in=V_p_in*sin(2*%pi*f*t) ",
- "f=1.0; #Frequency is 1Hz",
- "T=1/f;",
- "V_p_in=10; #Peak input voltage",
- "V_th=0.7; #knee voltage of diode",
- "print('max output voltage is 5.7V')",
- "print('min output voltage is -5.7V')",
- "",
- "###############GRAPH Plotting#################################",
- "t = arange(0.0,4.5,0.0005)",
- "V_in=V_p_in*sin(2*pi*f*t);",
- "",
- "Vout=V_in;",
- "#fig = figure(2)",
- "subplot(211)",
- "plot(t,V_in)",
- "#ax2.grid(True)",
- "ylim( (-10,10) )",
- "title('Input to the +ve and -ve diode limiter ')",
- "subplot(212)",
- "plot(t,V_in)",
- "#ax1.grid(True)",
- "ylim( (-5.7,5.7) )",
- "title('Output of +ve and -ve diode limiter')",
- " "
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "max output voltage is 5.7V",
- "min output voltage is -5.7V"
- ]
- },
- {
- "output_type": "pyout",
- "prompt_number": 13,
- "text": [
- "<matplotlib.text.Text at 0xa6c976c>"
- ]
- },
- {
- "output_type": "display_data",
- "png": "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\nx/PeAAAAAElFTkSuQmCC\n"
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.12, Page Number: 76<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Positive diode limiter'''",
- "",
- "#variable declaration",
- "V_p_in=18.0; #peak input voltage is 18V",
- "V_supply=12.0;",
- "R2=100.0;",
- "R3=220.0; #resistances in ohms",
- "#calculation",
- "V_bias=V_supply*(R3/(R2+R3));",
- "",
- "#result",
- "print('diode limiting the voltage at this voltage =%fV'%V_bias)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "diode limiting the voltage at this voltage =8.250000V"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 2.13, Page Number: 78<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Negative Clamping circuit'''",
- "",
- "V_p_in=24.0;",
- "V_DC=-(V_p_in-0.7); #DC level added to output",
- "print('V_DC = %.1fV'%V_DC)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "V_DC = -23.3V"
- ]
- }
- ],
- "prompt_number": 15
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Hardik/C++/Chapter3.ipynb b/tbc/static/uploads/Hardik/C++/Chapter3.ipynb
deleted file mode 100644
index 41e63a8..0000000
--- a/tbc/static/uploads/Hardik/C++/Chapter3.ipynb
+++ /dev/null
@@ -1,377 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_3"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 3: Special-purpose Diodes<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.1, Page Number:88<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find Zener Impedence'''",
- "",
- "# variable declaration",
- "delVZ=50*10**-3; #voltage in volts, from graph",
- "delIZ=5*10**-3; #current in amperes, from rgraph",
- "",
- "#calculation",
- "ZZ=delVZ/delIZ; #zener impedence",
- "",
- "# result",
- "print \"zener impedance = %d ohm \" %ZZ"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "zener impedance = 10 ohm "
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.2, Page Number:89<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Voltage accross zener terminals'''",
- "",
- "# variable declaration",
- "I_ZT=37*10**-3; #IN AMPERES",
- "V_ZT=6.80; #IN VOLTS",
- "Z_ZT=3.50; #IN OHMS",
- "I_Z=50*10**-3; #IN AMPERES",
- "",
- "#calculation",
- "DEL_I_Z=I_Z-I_ZT; #change current",
- "DEL_V_Z=DEL_I_Z*Z_ZT; #change voltage",
- "V_Z=V_ZT+DEL_V_Z; #voltage across zener terminals",
- "print \"voltage across zener terminals when current is 50 mA = %.3f volts\" %V_Z",
- "I_Z=25*10**-3; #IN AMPERES",
- "DEL_I_Z=I_Z-I_ZT; #change current",
- "DEL_V_Z=DEL_I_Z*Z_ZT; #change voltage",
- "V_Z=V_ZT+DEL_V_Z; #voltage across zener terminals",
- "",
- "#result",
- "print \"voltage across zener terminals when current is 25 mA = %.3f volts\" %V_Z"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "voltage across zener terminals when current is 50 mA = 6.845 volts",
- "voltage across zener terminals when current is 25 mA = 6.758 volts"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.3, Page Number:90<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Zener Voltage'''",
- "",
- "# variable declaration",
- "V_Z=8.2; #8.2 volt zener diode",
- "TC=0.0005; #Temperature coefficient (per degree celsius)",
- "T1=60; #Temperature 1 in celsius",
- "T2=25; #Temperature 2 in celsius",
- "",
- "#calculation",
- "DEL_T=T1-T2; #change in temp",
- "del_V_Z=V_Z*TC*DEL_T; #change in voltage",
- "voltage=V_Z+del_V_Z; #zener voltage",
- "",
- "#result",
- "print \"zener voltage at 60 degree celsius = %.3f volt\" %voltage"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "zener voltage at 60 degree celsius = 8.343 volt"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.4, Page Number:90<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Power dissipation'''",
- "",
- "# variable declaration",
- "P_D_max=400*10**-3; #power in watts",
- "df=3.2*10**-3 #derating factor in watts per celsius",
- "del_T=(90-50); #in celsius, temperature difference",
- "",
- "#calculation",
- "P_D_deru=P_D_max-df*del_T; #power dissipated",
- "P_D_der=P_D_deru*1000;",
- "",
- "#result",
- "print \"maximum power dissipated at 90 degree celsius = %d mW\" %P_D_der"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "maximum power dissipated at 90 degree celsius = 272 mW"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.5, Page Number: 92<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Zener Diode voltage regulation'''",
- "",
- "# variable declaration",
- "V_Z=5.1;",
- "I_ZT=49*10**-3;",
- "I_ZK=1*10**-3;",
- "Z_Z=7;",
- "R=100;",
- "P_D_max=1;",
- "",
- "#calculation",
- "V_out=V_Z-(I_ZT-I_ZK)*Z_Z; #output voltage at I_ZK",
- "V_IN_min=I_ZK*R+V_out; #input voltage",
- "I_ZM=P_D_max/V_Z; #current",
- "V_out=V_Z+(I_ZM-I_ZT)*Z_Z; #output voltage at I_ZM",
- "V_IN_max=I_ZM*R+V_out; #max input voltage",
- "",
- "#result",
- "print \"maximum input voltage regulated by zener diode = %.3f volts\" %V_IN_max",
- "print \"minimum input voltage regulated by zener diode = %.3f volts\" %V_IN_min"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "maximum input voltage regulated by zener diode = 25.737 volts",
- "minimum input voltage regulated by zener diode = 4.864 volts"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.6, Page Number: 93<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Min & Max current'''",
- "",
- "# variable declaration",
- "V_Z=12.0; #voltage in volt",
- "V_IN=24.0; #ip voltage in volt",
- "I_ZK=0.001; #current in ampere",
- "I_ZM=0.050; #current in ampere ",
- "Z_Z=0; #impedence",
- "R=470; #resistance in ohm",
- "",
- "#calculation",
- "#when I_L=0, I_Z is max and is equal to the total circuit current I_T",
- "I_T=(V_IN-V_Z)/R; #current",
- "I_Z_max=I_T; #max current",
- "if I_Z_max<I_ZM : # condition for min currert ",
- " I_L_min=0;",
- "",
- "I_L_max=I_T-I_ZK; #max current",
- "R_L_min=V_Z/I_L_max; #min resistance",
- "",
- "#result",
- "print \"minimum value of load resistance = %.2f ohm\" %R_L_min",
- "print \"minimum curent = %.3f ampere\" %I_L_min",
- "print \"maximum curent = %.3f ampere\" %I_L_max"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "minimum value of load resistance = 489.16 ohm",
- "minimum curent = 0.000 ampere",
- "maximum curent = 0.025 ampere"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.7, Page Number: 94<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' to find load resistance'''",
- "",
- "# variable declaration",
- "V_IN=24.0; #voltage in volt",
- "V_Z=15.0; #voltage in volt",
- "I_ZK=0.25*10**-3; #current in ampere",
- "I_ZT=17*10**-3; #current in ampere",
- "Z_ZT=14.0; #impedence",
- "P_D_max=1.0; #max power dissipation",
- "",
- "#calculation",
- "V_out_1=V_Z-(I_ZT-I_ZK)*Z_ZT; #output voltage at I_ZK",
- "print \"output voltage at I_ZK = %.2f volt\" %V_out_1",
- "I_ZM=P_D_max/V_Z;",
- "",
- "V_out_2=V_Z+(I_ZM-I_ZT)*Z_ZT; #output voltage at I_ZM",
- "print \"output voltage a I_ZM = %.2f volt\" %V_out_2",
- "R=(V_IN-V_out_2)/I_ZM; #resistance",
- "print \"value of R for maximum zener current, no load = %.2f ohm\" %R",
- "print \"closest practical value is 130 ohms\"",
- "R=130.0;",
- "#for minimum load resistance(max load current) zener current is minimum (I_ZK)",
- "I_T=(V_IN-V_out_1)/R; #current",
- "I_L=I_T-I_ZK; #current",
- "R_L_min=V_out_1/I_L; #minimum load resistance",
- "",
- "#result",
- "print \"minimum load resistance = %.2f ohm\" %R_L_min"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "output voltage at I_ZK = 14.77 volt",
- "output voltage a I_ZM = 15.70 volt",
- "value of R for maximum zener current, no load = 124.57 ohm",
- "closest practical value is 130 ohms",
- "minimum load resistance = 208.60 ohm"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 3.8, Page Number: 96<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Zener limiting'''",
- "",
- "#variable declaration",
- "V_p_in=10.0; #Peak input voltage",
- "V_th=0.7; #forward biased zener",
- "V_Z1=5.1;",
- "V_Z2=3.3;",
- "",
- "V_p_in=20.0;",
- "V_Z1=6.2;",
- "V_Z2=15.0;",
- "",
- "#result",
- "print('max voltage = %.1f V'%(V_Z1+V_th))",
- "print('min voltage = %.1f V'%(-(V_Z2+V_th)))"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "max voltage = 6.9 V",
- "min voltage = -15.7 V"
- ]
- }
- ],
- "prompt_number": 9
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Hardik/C++/Chapter4.ipynb b/tbc/static/uploads/Hardik/C++/Chapter4.ipynb
deleted file mode 100644
index b76b7b1..0000000
--- a/tbc/static/uploads/Hardik/C++/Chapter4.ipynb
+++ /dev/null
@@ -1,455 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_4"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 4: Bipolar Junction Transistors (BJTs)<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.1, Page Number: 120 <h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find Emitter current'''",
- "",
- "# variable declaration",
- "I_C=3.65*10**-3; #collector current in amperes",
- "I_B=50*10**-6; #base current in amperes",
- "",
- "#calculation",
- "B_DC=I_C/I_B; #B_DC value",
- "I_E=I_B+I_C; #current in ampere",
- "",
- "# result",
- "print \"B_DC = %d \" %B_DC",
- "print \"Emitter current = %.4f ampere\" %I_E"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "B_DC = 73 ",
- "Emitter current = 0.0037 ampere"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.2, Page Number: 121<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Current and Voltage values'''",
- "",
- "# variable declaration",
- "V_BE=0.7; # voltage in volt",
- "B_DC=150; # voltage in volt",
- "V_BB=5; # voltage in volt",
- "V_CC=10; # voltage in volt",
- "R_B=10*10**3; # resistance in ohm",
- "R_C=100; # resistance in ohm",
- "",
- "#calculation",
- "I_B=(V_BB-V_BE)/R_B; #base current in amperes",
- "I_C=B_DC*I_B; #collector current in amperes",
- "I_E=I_C+I_B; #emitter current in amperes",
- "V_CE=V_CC-I_C*R_C; #collector to emitter voltage in volts",
- "V_CB=V_CE-V_BE; #collector to base voltage in volts",
- "",
- "# result",
- "print \"base current = %.5f amperes\" %I_B",
- "print \"collector current = %.4f amperes\" %I_C",
- "print \"emitter current = %.5f amperes\" %I_E",
- "print \"collector to emitter voltage =%.2f volts\" %V_CE",
- "print \"collector to base voltage =%.2f volts\" %V_CB"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "base current = 0.00043 amperes",
- "collector current = 0.0645 amperes",
- "emitter current = 0.06493 amperes",
- "collector to emitter voltage =3.55 volts",
- "collector to base voltage =2.85 volts"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.3, Page Number: 123<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Ideal family of collector curve'''",
- "",
- "",
- "import pylab as py",
- "import numpy as np",
- "",
- "#variable declaration",
- "beta=100 # current gain",
- "print'Ideal family of collector curve'",
- "",
- "ic1 = arange(0.00001, 0.45, 0.0005)",
- "ic2 = arange(0.00001, 0.5, 0.0005)",
- "ic3 = arange(0.00001, 0.6, 0.0005)",
- "ic4 = arange(0.00001, 0.7, 0.0005)",
- "vcc1=ic1*0.5/0.7",
- "vcc2=ic2*1.35/0.7",
- "vcc3=ic3*2/0.7",
- "vcc4=ic4*2.5/0.7",
- "m1=arange(0.45,5.0,0.0005)",
- "m2=arange(0.5,5.0,0.0005)",
- "m3=arange(0.6,5.0,0.0005)",
- "m4=arange(0.7,5.0,0.0005)",
- "",
- "plot(ic1,vcc1,'b')",
- "plot(ic2,vcc2,'b')",
- "plot(ic3,vcc3,'b')",
- "plot(ic4,vcc4,'b')",
- "plot(m1,0.32*m1/m1,'b')",
- "plot(m2,0.96*m2/m2,'b')",
- "plot(m3,1.712*m3/m3,'b')",
- "plot(m4,2.5*m4/m4,'b')",
- "",
- "ylim( (0,3) )",
- "ylabel('Ic(mA)')",
- "xlabel('Vce(V)')",
- "title('Ideal family of collector curve')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Ideal family of collector curve"
- ]
- },
- {
- "output_type": "pyout",
- "prompt_number": 4,
- "text": [
- "<matplotlib.text.Text at 0xa11e74c>"
- ]
- },
- {
- "output_type": "display_data",
- "png": "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\nYII=\n"
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.4, Page Number: 125<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Transistor saturtion condition'''",
- "",
- "# variable declaration",
- "V_CE_sat=0.2; # voltage in volt",
- "V_BE=0.7; # voltage in volt",
- "V_BB=3; # voltage in volt",
- "V_CC=10; # voltage in volt",
- "B_DC=50; # voltage in volt",
- "R_B=10*10**3; # resistance in ohm",
- "R_C=1*10**3; # resistance in ohm",
- "",
- "#calculation",
- "I_C_sat=(V_CC-V_CE_sat)/R_C; # saturation current",
- "I_B=(V_BB-V_BE)/R_B; # base current",
- "I_C=B_DC*I_B; # current in ampere",
- "",
- "# result",
- "if I_C>I_C_sat:",
- " print \"transistor in saturation\"",
- "else:",
- " print \"transistor not in saturation\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "transistor in saturation"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.5, Page Number: 127<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''maximum collector current'''",
- "",
- "#Variable declaration",
- "P_D_max=250*10**-3; #max power rating of transistor in watts",
- "V_CE=6; #voltage in volt",
- "",
- "#Calculation",
- "I_Cu=P_D_max/V_CE; #Current (Amp)",
- "I_C=I_Cu*1000;",
- "",
- "#Result",
- "print \"collector current that can be handled by the transistor = %.1f mA\" %I_C",
- "print \"\\nRemember that this is not necessarily the maximum IC. The transistor\"",
- "print \"can handle more collectore current if Vce is reduced as long as PDmax\"",
- "print \"is not exceeded.\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "collector current that can be handled by the transistor = 41.7 mA",
- "",
- "Remember that this is not necessarily the maximum IC. The transistor",
- "can handle more collectore current if Vce is reduced as long as PDmax",
- "is not exceeded."
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.6, Page Number: 127<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''voltage drop across transistor''' ",
- "",
- "#Variable declaration",
- "P_D_max=800*10**-3; #max power rating of transistor in watts",
- "V_BE=0.7; #voltage in volt",
- "V_CE_max=15; #voltage in volt",
- "I_C_max=100*10**-3; #Current (Amp)",
- "V_BB=5; #voltage in volt",
- "B_DC=100; #voltage in volt",
- "R_B=22*10**3; # resistance in ohm",
- "R_C=10**3; # resistance in ohm",
- "",
- "#Calculation",
- "I_B=(V_BB-V_BE)/R_B; # base current",
- "I_C=B_DC*I_B; #collector current ",
- "V_R_C=I_C*R_C; #voltage drop across R_C",
- "V_CC_max=V_CE_max+V_R_C; #Vcc max in volt",
- "P_D=I_C*V_CE_max; #max power rating",
- "",
- "#Result",
- "if P_D<P_D_max:",
- " print \"V_CC = %.2f volt\" %V_CC_max",
- " print \"V_CE_max will be exceeded first because entire supply voltage V_CC will be dropped across the transistor\"",
- " "
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "V_CC = 34.55 volt",
- "V_CE_max will be exceeded first because entire supply voltage V_CC will be dropped across the transistor"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.7, Page Number: 128<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Power dissipation'''",
- "",
- "#Variable declaration",
- "df=5*10**-3; #derating factor in watts per degree celsius",
- "T1=70; #temperature 1",
- "T2=25; #temperature 2",
- "P_D_max=1; #in watts",
- "",
- "#Calculation",
- "del_P_D=df*(T1-T2); #change due to temperature",
- "P_D=P_D_max-del_P_D; # power dissipation",
- "",
- "#Result",
- "print \"Power dissipated max at a temperature of 70 degree celsius = %.3f watts\" %P_D"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Power dissipated max at a temperature of 70 degree celsius = 0.775 watts"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.8, Page Number: 130<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''voltage gain'''",
- "",
- "#Variable declaration",
- "R_C=1*10**3; #resistance in ohm",
- "r_e=50; #resistance in ohm",
- "V_b=100*10**-3; #voltage in volt",
- "",
- "#Calculation",
- "A_v=R_C/r_e; #voltage gain",
- "V_out=A_v*V_b; #voltage in volt",
- "",
- "#Result",
- "print \"voltage gain = %d \" %A_v",
- "print \"AC output voltage = %d volt\" %V_out"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "voltage gain = 20 ",
- "AC output voltage = 2 volt"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 4.9, Page Number: 132 <h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Power dissipation'''",
- "",
- "#Variable declaration",
- "V_CC=10.0; #voltage in volt",
- "B_DC=200.0; #voltage in volt",
- "R_C=1.0*10**3; #resistance in ohm",
- "V_IN=0.0; #voltage in volt",
- "",
- "#Calculation",
- "V_CE=V_CC; #equal voltage",
- "print \"when V_IN=0, transistor acts as open switch(cut-off) and collector emitter voltage = %.2f volt\" %V_CE",
- "#now when V_CE_sat is neglected",
- "I_C_sat=V_CC/R_C; #saturation current",
- "I_B_min=I_C_sat/B_DC; #minimum base current",
- "print \"\\nminimum value of base current to saturate transistor = %.5f ampere\" %I_B_min",
- "V_IN=5; #voltage in volt",
- "V_BE=0.7; #voltage in volt",
- "V_R_B=V_IN-V_BE; #voltage across base resiatance",
- "R_B_max=V_R_B/I_B_min;",
- "",
- "",
- "#Result",
- "kw=round (R_B_max)",
- "print \"\\nmaximum value of base resistance when input voltage is 5V = %d ohm\" %kw"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "when V_IN=0, transistor acts as open switch(cut-off) and collector emitter voltage = 10.00 volt",
- "",
- "minimum value of base current to saturate transistor = 0.00005 ampere",
- "",
- "maximum value of base resistance when input voltage is 5V = 86000 ohm"
- ]
- }
- ],
- "prompt_number": 10
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Hardik/C++/screenshots/Chapter13.png b/tbc/static/uploads/Hardik/C++/screenshots/Chapter13.png
deleted file mode 100644
index 175e51b..0000000
--- a/tbc/static/uploads/Hardik/C++/screenshots/Chapter13.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C++/screenshots/Chapter4.png b/tbc/static/uploads/Hardik/C++/screenshots/Chapter4.png
deleted file mode 100644
index 9aa5de3..0000000
--- a/tbc/static/uploads/Hardik/C++/screenshots/Chapter4.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C++/screenshots/xyz.png b/tbc/static/uploads/Hardik/C++/screenshots/xyz.png
deleted file mode 100644
index a3aae3c..0000000
--- a/tbc/static/uploads/Hardik/C++/screenshots/xyz.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C/images/certificate.png b/tbc/static/uploads/Hardik/C/images/certificate.png
deleted file mode 100644
index c473b82..0000000
--- a/tbc/static/uploads/Hardik/C/images/certificate.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C/images/pr.jpeg b/tbc/static/uploads/Hardik/C/images/pr.jpeg
deleted file mode 100644
index a7edf07..0000000
--- a/tbc/static/uploads/Hardik/C/images/pr.jpeg
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C/images/scipy.png b/tbc/static/uploads/Hardik/C/images/scipy.png
deleted file mode 100644
index 0036b02..0000000
--- a/tbc/static/uploads/Hardik/C/images/scipy.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C/newton.py b/tbc/static/uploads/Hardik/C/newton.py
deleted file mode 100644
index 258dc58..0000000
--- a/tbc/static/uploads/Hardik/C/newton.py
+++ /dev/null
@@ -1,35 +0,0 @@
-from sympy import *
-import sys
-
-
-print "Enter a function: ",
-func = raw_input()
-
-try:
- sym_x = Symbol('x')
- fx = S(func)
- fdashx = diff(fx, Symbol('x'))
-except:
- print "Function could not be differenciated..."
- sys.exit()
-
-print "Enter initial guess: ",
-curr_root = float(raw_input())
-print "Enter precision value: ",
-precision = float(raw_input())
-new_root = (curr_root - fx.subs({sym_x : curr_root})/fdashx.subs({sym_x : curr_root}))
-
-
-iterations = 1
-while(abs(new_root-curr_root)>precision):
- curr_root = new_root
- new_root = (curr_root - fx.subs({sym_x : curr_root})/fdashx.subs({sym_x : curr_root}))
- iterations += 1
- if iterations >= 50:
- print "Root was not derived uptil 50 iterations, current root: ", curr_root
- break
-
-print "Function: ", fx
-print "Given tolerance: ", precision
-print "Number of iterations: ", iterations
-print "Root to the funtion upto given precision: ", curr_root
diff --git a/tbc/static/uploads/Hardik/C/newton_raphson.py b/tbc/static/uploads/Hardik/C/newton_raphson.py
deleted file mode 100644
index c18f135..0000000
--- a/tbc/static/uploads/Hardik/C/newton_raphson.py
+++ /dev/null
@@ -1,132 +0,0 @@
-import math # Need to import math to use the log function
-from Tkinter import *
-import ttk
-import tkMessageBox
-import tkFileDialog
-import os
-import sys
-# Variables that should be noted
-# G = Guess value
-# count = f(x)
-# den = f'(x)
-# Acc = Accuracy input from user
-
-def CheckVals():
-# Define variables as floats - decimal places
- r = 1
- if r == 1:
- try: #If any of the variables have errors catch
- G = float(GuessInp.get())
- A = float(AInp.get())
- B = float(BInp.get())
- Precision = int(AccInp.get())
- r = 0
- CalcRoot()
- except ValueError:
- tkinter.messagebox.showinfo("Look carefully","Oops, a variable isn't properly set")
- r = 0
-
- return
-
-def CalcRoot():
- # Start the while loop
- G = float(GuessInp.get())
- A = float(AInp.get())
- B = float(BInp.get())
- Precision = int(AccInp.get())
- Acc = math.pow(0.1,Precision)
-
- count = Acc+1 # Just so we can get into the while loop (count > Acc)
- while count > Acc :
- count = (G*(math.log(A*G)))
- count = count - B
- if count > Acc:
-
- if count*A < 0: #Value not allowed
- tkinter.messagebox.showinfo("Look carefully","Calculations will become unstable Pi * a <0")
- return
-
-## if ((math.pow(math.exp(1),-1)/A)*count): #This seems like one of the prerequisites not sure if there is a typing error on the tut
-## tkinter.messagebox.showinfo("Look carefully","Calculations will become unstable Pi((e^-1)/a)")
-## return
-
- #Actual calculation
- den =(math.log(A*G)) #This is the derivtive denominator
- den = den + 1
- numb = count/den
- Temp = G - numb #Guess value minus the calculated numb
- G = Temp
- count = (G*(math.log(A*G)))
- count = count - B
-
- button1.pack_forget() #Hide Calculate button after success
- GText = StringVar()
- GText.set("Calculated Root: ")
- label1 = Label(app, textvariable=GText, height = 4)
- label1.pack()
- Roottxt = StringVar(None)
- Roottxt.set(G)
- label7 = Label(app, textvariable=Roottxt)
- label7.pack()
- return
-
-
-app = Tk()
-app.title ("Newton Raphson approximation")
-app.geometry('340x550+100+100')
-
-CommText = StringVar()
-CommText.set("Please complete the form and then click calculate")
-label1 = Label(app, textvariable=CommText, height = 4)
-label1.pack()
-
-fxtxt = StringVar()
-fxtxt.set("f(x) = (x * Ln(x * a)) - b\nf'(x) = 1 + Ln(ax)")
-label2 = Label(app, textvariable=fxtxt, height = 4)
-label2.pack()
-
-#Input a
-Atxt = StringVar()
-Atxt.set("a = ")
-label3 = Label(app, textvariable=Atxt, height = 2)
-label3.pack()
-
-A = StringVar(None)
-AInp = Entry(app, textvariable=A)
-AInp.pack()
-
-#Input b
-Btxt = StringVar()
-Btxt.set("b = ")
-label4 = Label(app, textvariable=Btxt, height = 2)
-label4.pack()
-
-B = StringVar(None)
-BInp = Entry(app, textvariable=B)
-BInp.pack()
-
-#Input acc
-DegText = StringVar()
-DegText.set("To what accuracy do you want the root: ")
-label5 = Label(app, textvariable=DegText, height = 4)
-label5.pack()
-
-Acc = StringVar(None)
-AccInp = Entry(app, textvariable=Acc)
-AccInp.pack()
-
-#Input guess
-Guesstxt = StringVar()
-Guesstxt.set("What is your guess of the root")
-label6 = Label(app, textvariable=Guesstxt, height = 4)
-label6.pack()
-
-G = StringVar(None)
-GuessInp = Entry(app, textvariable=G)
-GuessInp.pack()
-
-#Calculation button
-button1 = Button(app, text = "Calculate root", width = 20, command = CheckVals)
-button1.pack(padx = 15,pady = 15)
-
-app.mainloop()
diff --git a/tbc/static/uploads/Hardik/C/nr.py b/tbc/static/uploads/Hardik/C/nr.py
deleted file mode 100644
index 47ac557..0000000
--- a/tbc/static/uploads/Hardik/C/nr.py
+++ /dev/null
@@ -1,51 +0,0 @@
-import sys, math, argparse, time
-from sympy import *
-
-start_time = time.time()
-
-# using argparse to get command line arguments
-parser = argparse.ArgumentParser()
-parser.add_argument("-f", "--function", help = "Define a function")
-parser.add_argument("-s", "--starting", help = "Starting point value", type = float, default = 0.0)
-parser.add_argument("-p", "--precision", help = "Convergence precision", type = float, default = 5*10**(-6))
-args = parser.parse_args()
-
-sym_x = Symbol('x')
-# convert the given function to a symbolic expression
-try:
- fx = S(args.function)
-except:
- sys.exit('Unable to convert function to symbolic expression.')
-
-# calculate the differential of the function
-try:
- dfdx = diff(fx, Symbol('x'))
-except:
- sys.exit('Unable to differentiate function.')
-
-# e is the relative error between 2 consecutive estimations of the root
-e = 1
-x0 = args.starting
-iterations = 0
-
-while ( e > args.precision ):
- # new root estimation
- try:
- r = x0 - fx.subs({sym_x : x0})/dfdx.subs({sym_x : x0})
- except ZeroDivisionError:
- print "Function derivative is zero. Division by zero, program will terminate."
- sys.exit()
- # relative error
- e = abs((r - x0)/r)
- iterations += 1
- x0 = r
-
-total_time = time.time() - start_time
-
-print 'Function:'
-pprint(fx)
-print 'Derivative:'
-pprint(dfdx)
-print 'Root %10.6f calculated after %d iterations'%(r, iterations)
-print 'Function value at root %10.6f'%(fx.subs({sym_x : r}),)
-print 'Finished in %10.6f seconds'%(total_time,)
diff --git a/tbc/static/uploads/Hardik/C: The Basics/Chapter16.ipynb b/tbc/static/uploads/Hardik/C: The Basics/Chapter16.ipynb
deleted file mode 100644
index 8ab4848..0000000
--- a/tbc/static/uploads/Hardik/C: The Basics/Chapter16.ipynb
+++ /dev/null
@@ -1,305 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_16"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 16: Oscillators<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 16.1, Page Number: 524<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Wien bridge oscillator'''",
- "",
- "import math",
- "R1=10*10**3;",
- "R2=R1;",
- "R=R1;",
- "C1=0.01*10**-6;",
- "C2=C1;",
- "C=C1;",
- "R3=1*10**3;",
- "r_ds=500;",
- "f_r=1/(2*math.pi*R*C);",
- "print('resonant frequency of the Wein-bridge oscillator in Hertz = %.4f'%f_r)",
- "#closed loop gain A_v=3 to sustain oscillations",
- "A_v=3;",
- "#A_v=(R_f+R_i)+1 where R_i is composed of R3 and r_ds",
- "R_f=(A_v-1)*(R3+r_ds);",
- "print('value of R_f in ohms = %d'%R_f)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "resonant frequency of the Wein-bridge oscillator in Hertz = 1591.5494",
- "value of R_f in ohms = 3000"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 16.2, Page Number: 525<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Phase shift oscillator'''",
- "",
- "import math",
- "A_cl=29; #A_cl=R_f/R_i;",
- "R3=10*10**3;",
- "R_f=A_cl*R3;",
- "print('value of R_f in ohms = %d'%R_f)",
- "#let R1=R2=R3=R and C1=C2=C3=C",
- "R=R3;",
- "C3=0.001*10**-6;",
- "C=C3;",
- "f_r=1/(2*math.pi*math.sqrt(6)*R*C);",
- "print('frequency of oscillation in Hertz = %f'%f_r)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "value of R_f in ohms = 290000",
- "frequency of oscillation in Hertz = 6497.473344"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 16.3, Page Number: 530<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''FET Colpitts oscillator'''",
- "",
- "import math",
- "C1=0.1*10**-6;",
- "C2=0.01*10**-6;",
- "L=50.0*10**-3; #in Henry",
- "C_T=C1*C2/(C1+C2); #total capacitance",
- "f_r=1/(2*math.pi*math.sqrt((L*C_T)));",
- "print('frequency of oscillation in Hertz when Q>10 is \\n\\t %f'%f_r)",
- "Q=8.0; #when Q drops to 8",
- "f_r1=(1/(2*math.pi*math.sqrt((L*C_T))))*math.sqrt((Q**2/(1+Q**2)));",
- "print('frequency of oscillation in hertz when Q=8 is \\n \\t %f'%f_r1)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "frequency of oscillation in Hertz when Q>10 is ",
- "\t 7465.028533",
- "frequency of oscillation in hertz when Q=8 is ",
- " \t 7407.382663"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 16.4, Page Number: 535<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Triangular wave oscillator'''",
- "",
- "R1=10.0*10**3;",
- "R2=33.0*10**3;",
- "R3=10.0*10**3;",
- "C=0.01*10**-6;",
- "f_r=(1/(4*R1*C))*(R2/R3);",
- "print('frequency of oscillation in hertz is \\n\\t%d'%f_r)",
- "#the value of R1 when frequency of oscillation is 20 kHz",
- "f=20.0*10**3;",
- "R1=(1/(4*f*C))*(R2/R3);",
- "print('value of R1 in ohms to make frequency 20 kiloHertz is \\n\\t%d'%R1)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "frequency of oscillation in hertz is ",
- "\t8250",
- "value of R1 in ohms to make frequency 20 kiloHertz is ",
- "\t4125"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 16.5, Page Number: 537<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Sawtooth VCO'''",
- "",
- "import pylab",
- "import numpy",
- "V=15.0;",
- "C=0.0047*10**-6;",
- "R3=10.0*10**3;",
- "R4=R3;",
- "R2=10.0*10**3;",
- "R1=68.0*10**3;",
- "R_i=100.0*10**3;",
- "V_G=R4*V/(R3+R4); #gate voltage at which PUT turns on",
- "V_p=V_G; #neglecting 0.7V, this the peak voltage of sawtooth wave",
- "print('neglecting 0.7V, the peak voltage of sawtooth wave = %.1f V'%V_p)",
- "V_F=1.0; #minimum peak value of sawtooth wave",
- "V_pp=V_p-V_F;",
- "print('peak to peak amplitude of the sawtooth wave = %.1f V'%V_pp)",
- "V_IN=-V*R2/(R1+R2);",
- "f=(abs(V_IN)/(R_i*C))*(1/(V_pp));",
- "print('frequency of the sawtooth wave = %.1f Hz'%f)",
- "",
- "#############PLOT###############################",
- "",
- "t = arange(0.0, 2.0, 0.0005)",
- "t1= arange(2.0, 4.0, 0.0005)",
- "t2= arange(4.0, 6.0, 0.0005)",
- "k=arange(0.1,7.5, 0.0005)",
- "t3=(2*k)/k",
- "t4=(4*k)/k",
- "t6=(6*k)/k",
- "",
- "subplot(111)",
- "plot(t, (6.5/2)*t+1)",
- "plot(t1, (6.5/2)*t+1,'b')",
- "plot(t2, (6.5/2)*t+1,'b')",
- "plot(t3,k,'b')",
- "plot(t4,k,'b')",
- "plot(t6,k,'b')",
- "",
- "ylim( (1,8) )",
- "ylabel('Vout')",
- "xlabel('ms')",
- "title('Output of the Circuit')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "neglecting 0.7V, the peak voltage of sawtooth wave = 7.5 V",
- "peak to peak amplitude of the sawtooth wave = 6.5 V",
- "frequency of the sawtooth wave = 629.5 Hz"
- ]
- },
- {
- "output_type": "pyout",
- "prompt_number": 6,
- "text": [
- "<matplotlib.text.Text at 0xa046eec>"
- ]
- },
- {
- "output_type": "display_data",
- "png": "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\n"
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 16.6, Page Number: 542<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''555 timer'''",
- "",
- "R1=2.2*10**3;",
- "R2=4.7*10**3;",
- "C_ext=0.022*10**-6;",
- "f_r=1.44/((R1+2*R2)*C_ext);",
- "print('frequency of the 555 timer in hertz = %f'%f_r)",
- "duty_cycle=((R1+R2)/(R1+2*R2))*100;",
- "print('duty cycle in percentage = %f'%duty_cycle)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "frequency of the 555 timer in hertz = 5642.633229",
- "duty cycle in percentage = 59.482759"
- ]
- }
- ],
- "prompt_number": 7
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Hardik/C: The Basics/Chapter17.ipynb b/tbc/static/uploads/Hardik/C: The Basics/Chapter17.ipynb
deleted file mode 100644
index 1f3eeb4..0000000
--- a/tbc/static/uploads/Hardik/C: The Basics/Chapter17.ipynb
+++ /dev/null
@@ -1,322 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_17"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 17: Voltage Regulators<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.1, Page Number:552 <h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Percentage line regulation'''",
- "",
- "#variable declaration",
- "Del_V_out=0.25;",
- "V_out=15;",
- "Del_V_in=5; #All voltages in Volts",
- "",
- "#Calculations",
- "line_regulation=((Del_V_out/V_out)/Del_V_in)*100;",
- "",
- "#Result",
- "print('line regulation in %%V is %f' %line_regulation)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "line regulation in %V is 0.333333"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.2, Page Number: 553<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Load regulation percentage'''",
- "",
- "# Variable Declaration",
- "V_NL=12.0; #No load output voltage in Volts",
- "V_FL=11.9; #Full load output voltage in Volts",
- "I_F=10.0; #Full load current in milli-Amperes",
- "",
- "#Calculations",
- "load_regulation=((V_NL-V_FL)/V_FL)*100;",
- "load_reg=load_regulation/I_F;",
- "",
- "#Result",
- "print('load regulation as percentage change from no load to full load = %f'%load_regulation)",
- "print('\\nload regulation as percentage change per milliampere = %f' %load_reg)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "load regulation as percentage change from no load to full load = 0.840336",
- "",
- "load regulation as percentage change per milliampere = 0.084034"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.3, Page Number: 556<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Series regulator'''",
- "",
- "",
- "V_REF=5.1 #Zener voltage in volts",
- "R2=10*10**3;",
- "R3=10*10**3; #resistances in ohm",
- "V_out=(1+(R2/R3))*V_REF;",
- "print('output voltage in volts = %.1f'%V_out)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "output voltage in volts = 10.2"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.4, Page Number: 557<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Overload protection'''",
- "",
- "R4=1; #Resistance in Ohms",
- "I_L_max=0.7/R4;",
- "print('maximum current provided to load(in amperes) = %.1f'%I_L_max)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "maximum current provided to load(in amperes) = 0.7"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.5, Page Number: 560<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Shunt regulator'''",
- "",
- "V_IN=12.5; #maximum input voltage in volts",
- "R1=22; #In Ohms",
- "#Worst case of power dissipation is when V_OUT=0V",
- "V_OUT=0;",
- "V_R1=V_IN-V_OUT; #Voltage across R1",
- "P_R1=(V_R1*V_R1)/R1; #maximum power dissipated by R1",
- "print('maximum power dissipated by R1 in WATTS = %f'%P_R1)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "maximum power dissipated by R1 in WATTS = 7.102273"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.6, Page Number: 569<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Positive linear voltage regulator'''",
- "",
- "print('SAME AS EX-2.8 in CHAPTER-2')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "SAME AS EX-2.8 in CHAPTER-2"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.7, Page Number: 572<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''External pass Filter'''",
- "",
- "I_max=700*10**-3; #in Amperes",
- "R_ext=0.7/I_max;",
- "print('value of resistor in Ohms for which max current is 700mA = %f'%R_ext)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "value of resistor in Ohms for which max current is 700mA = 1.000000"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.8, Page Number: 572<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Power rating 7824'''",
- "",
- "V_OUT=24.0; #Output voltage in Volts",
- "R_L=10.0; #Load resistance in Ohms",
- "V_IN=30.0; #Input voltage in Volts",
- "I_max=700.0*10**-3; #maximum interal current in Amperes",
- "I_L=V_OUT/R_L; #load current in amperes",
- "I_ext=I_L-I_max; #current through the external pass transistor in Amperes",
- "P_ext_Qext=I_ext*(V_IN-V_OUT); #power dissipated",
- "print('power dissiated(in WATTS) by the external pass transistor = %.1f'%P_ext_Qext)",
- "print('\\nFor safety purpose, we choose a power transistor with rating more than this, say 15W')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "power dissiated(in WATTS) by the external pass transistor = 10.2",
- "",
- "For safety purpose, we choose a power transistor with rating more than this, say 15W"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 17.9, Page Number: 574<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Current regulator'''",
- "",
- "V_out=5.0; #7805 gives output voltage of 5V",
- "I_L=1.0; #constant current of 1A",
- "R1=V_out/I_L;",
- "print('The value of current-setting resistor in ohms = %d'%R1)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The value of current-setting resistor in ohms = 5"
- ]
- }
- ],
- "prompt_number": 10
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Hardik/C: The Basics/Chapter18.ipynb b/tbc/static/uploads/Hardik/C: The Basics/Chapter18.ipynb
deleted file mode 100644
index b651b59..0000000
--- a/tbc/static/uploads/Hardik/C: The Basics/Chapter18.ipynb
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_18"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 18: Programmable Analog Arrays<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 18.1, Page Number: 588<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Switching capacitor'''",
- "",
- "import math",
- "#Variable declaration",
- "C=1000*10**-12; #Switche capacitor value in farads",
- "R=1000; #resistance in ohms",
- "",
- "#calculation",
- "T=R*C; #Time period",
- "f=1/T; #Frequency at which switch should operate",
- "f=math.ceil(f)",
- "#Result",
- "print('Frequency at which each switch should operate(in hertz) is \\n %d' %f)",
- "print('Duty cycle should be 50%')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Frequency at which each switch should operate(in hertz) is ",
- " 1000000",
- "Duty cycle should be 50%"
- ]
- }
- ],
- "prompt_number": 1
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter13.png b/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter13.png
deleted file mode 100644
index 175e51b..0000000
--- a/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter13.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter5.png b/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter5.png
deleted file mode 100644
index 5ab17e3..0000000
--- a/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter5.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter6.png b/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter6.png
deleted file mode 100644
index 782c6b2..0000000
--- a/tbc/static/uploads/Hardik/C: The Basics/screenshots/Chapter6.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/PHP/Chapter13.png b/tbc/static/uploads/Hardik/PHP/Chapter13.png
deleted file mode 100644
index 175e51b..0000000
--- a/tbc/static/uploads/Hardik/PHP/Chapter13.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/PHP/Chapter4.png b/tbc/static/uploads/Hardik/PHP/Chapter4.png
deleted file mode 100644
index 9aa5de3..0000000
--- a/tbc/static/uploads/Hardik/PHP/Chapter4.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Hardik/PHP/Chapter6.png b/tbc/static/uploads/Hardik/PHP/Chapter6.png
deleted file mode 100644
index 782c6b2..0000000
--- a/tbc/static/uploads/Hardik/PHP/Chapter6.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter5.ipynb b/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter5.ipynb
deleted file mode 100644
index 1b45662..0000000
--- a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter5.ipynb
+++ /dev/null
@@ -1,427 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_5"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 5: Transistor Bias Circuits<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.1, Page Number: 146<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Peak base current'''",
- "",
- "# variable declaration",
- "V_BB=10.0; #voltage in volt",
- "V_CC=20.0; #voltage in volt",
- "B_DC=200.0; #B_DC value",
- "R_B=47.0*10**3; #resistance in ohm",
- "R_C=330.0; #resistance in ohm",
- "V_BE=0.7; #voltage in volt",
- "",
- "#current",
- "I_B=(V_BB-V_BE)/R_B; #base current",
- "I_C=B_DC*I_B; #Q POINT",
- "V_CE=V_CC-I_C*R_C; #Q POINT",
- "I_C_sat=V_CC/R_C; #saturation current",
- "I_c_peak=I_C_sat-I_C; #peak current ",
- "I_b_peak=I_c_peak/B_DC; #peak current in ampere",
- "",
- "#result",
- "print \"Q point of I_C = %.3f amperes\" %I_C",
- "print \"Q point of V_CE = %.2f volts\" %V_CE",
- "print \"peak base current = %.4f amperes\" %I_b_peak"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Q point of I_C = 0.040 amperes",
- "Q point of V_CE = 6.94 volts",
- "peak base current = 0.0001 amperes"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.2, Page Number: 149<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' DC input resistance'''",
- "",
- "# variable declaration",
- "B_DC=125.0; #DC value",
- "R_E=10.0**3; #resistance in ohm",
- "",
- "#calculation",
- "R_IN_base=B_DC*R_E; #base resistance",
- "",
- "#Result",
- "print \"DC input resistance, looking at base of transistor = %d ohm\" %R_IN_base"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "DC input resistance, looking at base of transistor = 125000 ohm"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.3, Page Number: 151<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Transistor saturation condition'''",
- "",
- "# variable declaration",
- "B_DC=100; #DC value",
- "R1=10*10**3; #resistance in ohm",
- "R2=5.6*10**3; #resistance in ohm",
- "R_C=1*10**3; #resistance in ohm",
- "R_E=560; #resistance in ohm",
- "V_CC=10; #voltage in volt",
- "V_BE=0.7 #voltage in volt",
- "",
- "#calculation",
- "R_IN_base=B_DC*R_E; #calculate base resistance",
- "#We can neglect R_IN_base as it is equal to 10*R2",
- "print \"input resistance seen from base = %d ohm\" %R_IN_base",
- "print \"which can be neglected as it is 10 times R2\"",
- "",
- "V_B=(R2/(R1+R2))*V_CC; #base voltage",
- "V_E=V_B-V_BE; #emitter voltage",
- "I_E=V_E/R_E; #emitter current",
- "I_C=I_E; #currents are equal",
- "V_CE=V_CC-I_C*(R_C+R_E); #voltage in volt",
- "",
- "#result",
- "print \"V_CE = %.2f volts\" %V_CE",
- "print \"I_C = %.3f amperes\" %I_C",
- "print \"Since V_CE>0V, transistor is not in saturation\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "input resistance seen from base = 56000 ohm",
- "which can be neglected as it is 10 times R2",
- "V_CE = 1.95 volts",
- "I_C = 0.005 amperes",
- "Since V_CE>0V, transistor is not in saturation"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.4, Page Number: 154<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Emitter-Collector Voltage'''",
- "",
- "# variable declaration",
- "V_EE=10.0; #voltage in volt",
- "V_BE=0.7; #voltage in volt",
- "B_DC=150.0; #DC value ",
- "R1=22.0*10**3; #resistance in ohm",
- "R2=10.0*10**3; #resistance in ohm",
- "R_C=2.2*10**3; #resistance in ohm",
- "R_E=1.0*10**3; #resistance in ohm",
- "",
- "#calculation",
- "R_IN_base=B_DC*R_E; #R_IN_base>10*R2,so it can be neglected",
- "print \"input resistance as seen from base = %d ohm\" %R_IN_base",
- "print \"it can be neglected as it is greater than 10 times R2\"",
- "V_B=(R1/(R1+R2))*V_EE; #base voltage",
- "V_E=V_B+V_BE; #emitter voltage",
- "I_E=(V_EE-V_E)/R_E; #emitter current",
- "I_C=I_E; #currents are equal",
- "V_C=I_C*R_C; #collector voltage",
- "V_EC=V_E-V_C; #emitter-collector voltage",
- "",
- "#result",
- "print \"I_C collector current = %.4f amperes\" %I_C",
- "print \"V_EC emitter-collector voltage = %.2f Volts\" %V_EC"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "input resistance as seen from base = 150000 ohm",
- "it can be neglected as it is greater than 10 times R2",
- "I_C collector current = 0.0024 amperes",
- "V_EC emitter-collector voltage = 2.24 Volts"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.5, PAge Number: 154<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Collector-Emitter Voltage'''",
- "",
- "# variable declaration",
- "R1=68.0*10**3; #resistance in ohm",
- "R2=47.0*10**3; #resistance in ohm",
- "R_C=1.8*10**3; #resistance in ohm",
- "R_E=2.2*10**3; #resistance in ohm",
- "V_CC=-6.0; #voltage in volt",
- "V_BE=0.7; #voltage in volt",
- "B_DC=75.0; #DC value",
- "",
- "#calculation",
- "R_IN_base=B_DC*R_E;",
- "print \"input resistance as seen from base\"",
- "print \"is not greater than 10 times R2 so it should be taken into account\"",
- "#R_IN_base in parallel with R2",
- "V_B=((R2*R_IN_base)/(R2+R_IN_base)/(R1+(R2*R_IN_base)/(R2+R_IN_base)))*V_CC;",
- "V_E=V_B+V_BE; #emitter voltage",
- "I_E=V_E/R_E; #emitter current",
- "I_C=I_E; #currents are equal",
- "V_C=V_CC-I_C*R_C; #collector voltage",
- "V_CE=V_C-V_E; #collector-emitter voltage",
- "",
- "#result",
- "print \"collector current = %.4f amperes\" %I_C",
- "print \"collector emitter voltage = %.2f volts\" %V_CE"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "input resistance as seen from base",
- "is not greater than 10 times R2 so it should be taken into account",
- "collector current = -0.0006 amperes",
- "collector emitter voltage = -3.46 volts"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.6, Page Number: 156<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' change in collector emitter voltage'''",
- "",
- "# variable declaration",
- "V_CC=12.0; #voltage in volt",
- "R_B=100.0*10**3; #resistance in ohm",
- "R_C=560.0; #resistance in ohm",
- "#FOR B_DC=85 AND V_BE=0.7V",
- "B_DC=85.0; #DC value",
- "V_BE=0.7; #base-emitter voltage",
- "",
- "#calculation",
- "I_C_1=B_DC*(V_CC-V_BE)/R_B; #collector current",
- "V_CE_1=V_CC-I_C_1*R_C; #collector-emittor voltage",
- "#FOR B_DC=100 AND V_BE=0.6V",
- "B_DC=100.0; #DC value ",
- "V_BE=0.6; #base emitter voltage",
- "I_C_2=B_DC*(V_CC-V_BE)/R_B; #collector current",
- "V_CE_2=V_CC-I_C_2*R_C; #voltage in volt",
- "p_del_I_C=((I_C_2-I_C_1)/I_C_1)*100; #percent change in collector current ",
- "p_del_V_CE=((V_CE_2-V_CE_1)/V_CE_1)*100; #percent change in C-E voltage",
- "",
- "#result",
- "print \"percent change in collector current = %.2f\" %p_del_I_C",
- "print \"percent change in collector emitter voltage = %.2f\" %p_del_V_CE"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "percent change in collector current = 18.69",
- "percent change in collector emitter voltage = -15.18"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.7, Page Number: 159<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' percent change in collector emitter voltage'''",
- "",
- "# variable declaration",
- "V_CC=20.0; #voltage in volt",
- "R_C=4.7*10**3; #resistance in ohm",
- "R_E=10.0*10**3; #resistance in ohm",
- "V_EE=-20.0; #voltage in volt",
- "R_B=100*10**3; #resistance in ohm",
- "#FOR B_DC=85 AND V_BE=0.7V",
- "B_DC=85; #DC value",
- "V_BE=0.7; #base-emitter voltage",
- "I_C_1=(-V_EE-V_BE)/(R_E+(R_B/B_DC));",
- "V_C=V_CC-I_C_1*R_C; #colector voltage",
- "I_E=I_C_1; #emittor current",
- "V_E=V_EE+I_E*R_E; #emittor voltage",
- "V_CE_1=V_C-V_E; #CE voltage",
- "print \"I_C_1 = %.3f\" %I_C_1",
- "print \"V_CE_1 = %.2f\" %V_CE_1",
- "#FOR B_DC=100 AND V_BE=0.6V",
- "B_DC=100; #DC value ",
- "V_BE=0.6; #base-emitter voltage",
- "I_C_2=(-V_EE-V_BE)/(R_E+(R_B/B_DC));",
- "V_C=V_CC-I_C_2*R_C;#colector voltage",
- "I_E=I_C_2; #emittor current",
- "V_E=V_EE+I_E*R_E; #emittor voltage",
- "V_CE_2=V_C-V_E; #CE voltage",
- "print \"I_C_2 = %.3f\" %I_C_2",
- "print \"V_CE_2 = %.2f\" %V_CE_2",
- "",
- "p_del_I_C=((I_C_2-I_C_1)/I_C_1)*100;",
- "p_del_V_CE=((V_CE_2-V_CE_1)/V_CE_1)*100;",
- "print \"percent change in collector currrent = %.2f\" %p_del_I_C",
- "print \"percent change in collector emitter voltage = %.2f\" %p_del_V_CE",
- "print \"answers in book are approximated\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "I_C_1 = 0.002",
- "V_CE_1 = 14.61",
- "I_C_2 = 0.002",
- "V_CE_2 = 14.07",
- "percent change in collector currrent = 2.13",
- "percent change in collector emitter voltage = -3.69",
- "answers in book are approximated"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 5.8, Page Number: 161<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Q point current and voltage'''",
- "",
- "# variable declaratio",
- "V_CC=10.0; #voltage in volt",
- "B_DC=100.0; #Dc value",
- "R_C=10.0*10**3; #resistance in ohm",
- "R_B=100.0*10**3; #resistance in ohm",
- "V_BE=0.7; #base-emittor voltage",
- "",
- "#calculation",
- "I_C=(V_CC-V_BE)/(R_C+(R_B/B_DC)); #collector current",
- "V_CE=V_CC-I_C*R_C; #CE voltage",
- "",
- "#result",
- "print \"Q point of collector current %.4f amperes\" %I_C",
- "print \"Q point of collector-emitter voltage %.3f volts\" %V_CE"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Q point of collector current 0.0008 amperes",
- "Q point of collector-emitter voltage 1.545 volts"
- ]
- }
- ],
- "prompt_number": 9
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter6.ipynb b/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter6.ipynb
deleted file mode 100644
index b4e7e58..0000000
--- a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter6.ipynb
+++ /dev/null
@@ -1,603 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_6"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 6: BJT Amplifiers<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.1, Page Number: 171<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Q point'''",
- "# result",
- "",
- "print \"theoretical example\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "theoretical example"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.2, Page Number: 174<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' AC Emitter resistance'''",
- "",
- "# variable declaration",
- "I_E=2.0*10**-3; #emittor current",
- "",
- "#calculation",
- "r_e=25.0*10**-3/I_E; #ac emitter resistance",
- "",
- "#result",
- "print \"ac emitter resistance = %.2f ohms\" %r_e "
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ac emitter resistance = 12.50 ohms"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.3, Page Number: 178<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' voltage at base of transistor'''",
- "",
- "# variable declaration",
- "I_E=3.8*10**-3; #emittor current",
- "B_ac=160.0; #AC value",
- "R1=22*10**3; #resistance in ohm",
- "R2=6.8*10**3; #resistance in ohm",
- "R_s=300.0; #resistance in ohm",
- "V_s=10.0*10**-3; #voltage in volt",
- "r_e=25.0*10**-3/I_E; ",
- "",
- "#calculation",
- "R_in_base=B_ac*r_e; #base resistance",
- "R_in_tot=(R1*R2*R_in_base)/(R_in_base*R1+R_in_base*R2+R1*R2);",
- "V_b=(R_in_tot/(R_in_tot+R_s))*V_s; #base voltage",
- "",
- "#result",
- "print \"voltage at the base of the transistor = %.3f volts\" %V_b"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "voltage at the base of the transistor = 0.007 volts"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.4, Page Number: 180<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' bypass capacitor'''",
- "",
- "import math",
- "# variable declaration",
- "R_E=560.0; #resistance in ohm",
- "f=2*10**3; #minimum value of frequency in hertz",
- "X_C=R_E/10.0; #minimum value of capacitive reactance",
- "",
- "#calculation",
- "C2=1.0/(2.0*math.pi*X_C*f); #capacitor ",
- "",
- "#result",
- "print \"value of bypass capacitor = %.7f farads\" %C2"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "value of bypass capacitor = 0.0000014 farads"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.5, Page Number: 181<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' bypass capacitor'''",
- "",
- "import math",
- "# variable declaration",
- "r_e=6.58; #from ex6.3",
- "R_C=1.0*10**3; #collector resistance",
- "R_E=560; #emittor resistance",
- "",
- "#calculation",
- "A_v=R_C/(R_E+r_e); #gain without bypass capacitor",
- "A_v1=R_C/r_e; #gain with bypass capacitor",
- "print \"gain without bypass capacitor = %.2f\" %A_v",
- "print \"gain in the presence of bypass capacitor = %.2f\" %A_v1"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "gain without bypass capacitor = 1.76",
- "gain in the presence of bypass capacitor = 151.98"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.6, Page Number: 182<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Gain with load'''",
- "",
- "# variable declaration",
- "R_C=10.0**3; #resistance in ohm",
- "R_L=5.0*10**3; #inductor resistance",
- "r_e=6.58; #r_e value",
- "",
- "#calculation",
- "R_c=(R_C*R_L)/(R_C+R_L); #collector resistor",
- "A_v=R_c/r_e; #gain with load",
- "",
- "#result",
- "print \"ac collector resistor = %.2f ohms\" %R_c",
- "print \"gain with load = %.2f\" %A_v"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ac collector resistor = 833.33 ohms",
- "gain with load = 126.65"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.7, Page Number: 184<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Voltage gain with bypass'''",
- "",
- "# variable declaration",
- "R_C=3.3*10**3; #resistance in ohm",
- "R_E1=330.0; #emitter resistance",
- "",
- "#calculation",
- "A_v=R_C/R_E1; #voltage gain",
- "",
- "#result",
- "print \"approximate voltage gain as R_E2 is bypassed by C2 = %.2f\" %A_v"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "approximate voltage gain as R_E2 is bypassed by C2 = 10.00"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.8, Page Number: 184<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Common emitter amplifier'''",
- "",
- "import math",
- "B_DC=150.0;",
- "B_ac=175.0;",
- "V_CC=10.0;",
- "V_s=10.0*10**-3;",
- "R_s=600.0;",
- "R1=47.0*10**3;",
- "R2=10.0*10**3;",
- "R_E1=470.0;",
- "R_E2=470.0;",
- "R_C=4.7*10**3;",
- "R_L=47.00*10**3;",
- "R_IN_base=B_DC*(R_E1+R_E2);",
- "#since R_IN_base is ten times more than R2,it can be neglected in DC voltage calculation",
- "V_B=(R2/(R2+R1))*V_CC;",
- "V_E=V_B-0.7;",
- "I_E=V_E/(R_E1+R_E2);",
- "I_C=I_E;",
- "V_C=V_CC-I_C*R_C;",
- "print('dc collector voltage = %.3f volts'%V_C)",
- "r_e=25.0*10**-3/I_E;",
- "#base resistance",
- "R_in_base=B_ac*(r_e+R_E1);",
- "#total input resistance",
- "R_in_tot=(R1*R2*R_in_base)/(R1*R2+R_in_base*R1+R_in_base*R2);",
- "attenuation=R_in_tot/(R_s+R_in_tot);",
- "#ac collector resistance",
- "R_c=R_C*R_L/(R_C+R_L);",
- "#voltage gain from base to collector",
- "A_v=R_c/R_E1;",
- "#overall voltage gain A_V",
- "A_V=A_v*attenuation;",
- "#rms voltage at collector V_c",
- "V_c=A_V*V_s;",
- "V_out_p=math.sqrt(2)*V_c;",
- "print('V_out peak = %d mV'%(V_out_p*1000))",
- "",
- "################Waveform plotting##############################",
- "",
- "import pylab",
- "import numpy ",
- "",
- "t = arange(0.0, 4.0, 0.0005)",
- "",
- "",
- "subplot(121)",
- "plot(t, V_C+V_c*sin(2*pi*t))",
- "ylim( (4.63,4.82) )",
- "title('Collector Voltage')",
- "",
- "subplot(122)",
- "plot(t, -V_s*sin(2*pi*t))",
- "plot(t, V_out_p*sin(2*pi*t))",
- "ylim( (-0.15,0.15) )",
- "title('Source and output AC voltage')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "dc collector voltage = 4.728 volts",
- "V_out peak = 119 mV"
- ]
- },
- {
- "output_type": "pyout",
- "prompt_number": 9,
- "text": [
- "<matplotlib.text.Text at 0xad2caac>"
- ]
- },
- {
- "output_type": "display_data",
- "png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAEICAYAAABfz4NwAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXl8VNX5/z+TzCSZrDPZdxJ2AgipuOBXJahIUcGtKtiy\n1GrBpS4t35/W6he01g33Ulv61SqogEstm4CKGKUuIF8RFSigJJCNrJNlkklme35/HGayTWbunbud\nhPt+vXhp7tx75zPnzjzPOc95znMMRETQ0dHR0TntidBagI6Ojo4OH+gOQUdHR0cHgO4QdHR0dHRO\noTsEHR0dHR0AukPQ0dHR0TmF7hB0dHR0dADoDkEQpaWlyMvL8/9dUFCAjz76SENF8lJeXo6IiAh4\nvV6tpehwyqJFi/Dggw9qLWNI0deu8MBp5RDWrl2LKVOmICEhAdnZ2bjsssvw2Wefib6PwWCAwWCQ\npEXuH9iSJUuwcOHCfsf379+PmJgYNDc3C75XSUkJXn75Zdm0DQX+/e9/47zzzoPFYkFKSgrOP/98\n7N27V2tZqiHHdz4Qy5cvx/z58zW5X0lJCZKTk+F0Ovu9JpetEENBQQF27typ6HuE4rRxCM888wzu\nuecePPDAA6irq0NFRQVuv/12bNq0SWtpYdG3N79o0SK8++676Ojo6HX8tddew+zZs2GxWATfW4kf\n/mCmtbUVV1xxBe666y7YbDZUVVVh2bJliI6Olv29PB6P7PeUi6G0hrW8vBx79uxBenp6Pxugla0w\nGAzatzGdBjQ3N1N8fDy98847A57T2dlJd911F2VnZ1N2djbdfffd1NXVRUREH3/8MeXm5vrPLSgo\noI8++oiIiLxeLz322GM0YsQISklJoeuvv56ampr85+7atYumTp1KFouF8vLy6NVXX6W///3vZDKZ\nKCoqiuLj42nOnDlERHTw4EGaNm0aWSwWGj9+PG3atMl/n4ULF9KSJUto1qxZFBcX53//nowZM4bW\nrFnj/9vtdlN2djZt2rSJvF4v/fGPf6Rhw4ZReno6LViwgFpaWoiIqKysjAwGA7ndbrr//vspMjKS\nYmJiKD4+nn7zm98QEdGdd95JeXl5lJiYSGeeeSbt2rXL/z4dHR20YMECslqtNG7cOHriiSd6tVdV\nVRVdc801lJaWRoWFhfTCCy8IeGr88NVXX5HFYhnw9WBt2/e7Q0Q0bNgw//NbtmwZXXvttfSLX/yC\nEhMT6eWXX6bGxkZatGgRZWdnk9Vqpauuusp/7ebNm2nSpElksVjovPPOo2+//XZAXcGe2bJly+i6\n666jBQsWUEJCAo0fP5727t3rf/3rr7+m4uJiSkhIoBtuuIHmzp1LDzzwgGyff8eOHbRt2zaKiooi\nk8lE8fHxNHnyZCIimjZtGt1333109tlnU2JiIl155ZX+31Q49wvEQw89RLNnz6ZHHnmErrjiCv9x\nIbaiJ19++SVlZmaS1+v1H3v33XfpjDPOICLhduUXv/gFRUREkNlspvj4eFqxYgUREf3sZz+jzMxM\nSkpKogsvvJAOHDjgf5+Ghga64oorKDExkc466yz6wx/+QOeff77/9UOHDtEll1xCycnJNGbMGHrr\nrbdCfp7TwiFs27aNjEYjeTyeAc958MEHaerUqVRfX0/19fV03nnn0YMPPkhEwR3Cc889R1OnTqWq\nqipyOp20ePFimjdvHhERlZeXU0JCAq1fv57cbjc1NjbSN998Q0REixYt8t+fiMjpdNKIESPoscce\nI5fLRTt37qSEhAQ6fPgwETGHkJSURJ9//jkRsS9aX/70pz/RJZdc4v97+/btlJaWRm63m15++WUa\nOXIklZWVkd1up2uuuYbmz59PRN0Owdc+JSUl9PLLL/e69+uvv05NTU3k8Xjo6aefpszMTP8X+957\n76WSkhJqbm6myspKmjhxIuXl5RERkcfjoZ/85Cf0xz/+kVwuFx07doyGDx9O77//fvCHxhGtra2U\nkpJCCxcupG3btvVy+EQUtG0DGbCe359ly5aRyWSijRs3EhGRw+Ggyy67jObOnUvNzc3kcrno008/\nJSJmpNPT02nPnj3k9Xpp9erVVFBQ4H8OfQn2zJYtW0YxMTG0bds28nq99Pvf/57OPfdcIiLq6uqi\n/Px8eu6558jtdtM777xDJpOp1/dVrs+/fPly/7k+pk2bRjk5OXTgwAFqb2/3O8xw7xeIESNG0Ouv\nv05Hjhwhk8lEdXV1RCTMVgS614cffuj/+2c/+xk98cQTRBS+XfHxyiuvkN1uJ6fTSXfffXcvJ3fD\nDTfQvHnzyOFw0MGDBykvL48uuOACIiKy2+2Um5tLr776Knk8Htq3bx+lpqbSwYMHg36W08IhvP76\n65SZmRn0nBEjRtC2bdv8f7///vtUUFBARMEf3Lhx43o9xOrqajKZTOR2u+nRRx+la665JuD7LVq0\n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\nAAAAAElFTkSuQmCC\n"
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.9,Page Number: 190<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Power gain delievered to load'''",
- "",
- "# variable declaration",
- "R_E=10.0**3; #emitter resistance",
- "R_L=10.0**3; #resistance in ohm",
- "R1=18.0*10**3; #R1 in ohm",
- "R2=18.0*10**3; #R2 in ohm",
- "B_ac=175.0; #AC value",
- "V_CC=10.0; #voltage in volt",
- "V_BE=0.7; #base-emitter voltage",
- "V_in=1.0; #input voltage in volt",
- "",
- "#calculation",
- "",
- "R_e=(R_E*R_L)/(R_E+R_L); #ac emitter resistance R_e",
- "R_in_base=B_ac*R_e; #resistance from base R_in_base",
- "",
- "#total input resiatance R_in_tot",
- "R_in_tot=(R1*R2*R_in_base)/(R1*R2+R1*R_in_base+R2*R_in_base);",
- "print \"total input resistance = %.2f ohms\" %R_in_tot",
- "V_E=((R2/(R1+R2))*V_CC)-V_BE; #emitter voltage",
- "I_E=V_E/R_E; #emitter current",
- "r_e=25.0*10**-3/I_E; #emitter resistance",
- "A_v=R_e/(r_e+R_e);",
- "print \"voltage gain = %.2f\" %A_v",
- "#ac emitter current I_e",
- "#V_e=A_v*V_b=1V",
- "V_e=1.0; #V_evoltage",
- "I_e=V_e/R_e; #emitter current",
- "I_in=V_in/R_in_tot; #input current in ampere",
- "A_i=I_e/I_in; #current gain",
- "print \"current gain = %.2f\" %A_i",
- "A_p=A_i; #power gain",
- "#since R_L=R_E, one half of the total power is disspated to R_L",
- "A_p_load=A_p/2.0; #power load",
- "print \"power gain delivered to load = %.2f\" %A_p_load"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "total input resistance = 8160.62 ohms",
- "voltage gain = 0.99",
- "current gain = 16.32",
- "power gain delivered to load = 8.16"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.10, Page Number: 193<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Overall voltage gain'''",
- "",
- "# variable declaration",
- "V_CC=12.0; #source voltage in volt",
- "V_BE=0.7; #base-emitter volatge",
- "R_C=1.0*10**3; #resistance in ohm",
- "r_e_ce=5.0; #for common emitter amplifier",
- "R1=10.0*10**3; #resistance in ohm",
- "R2=22.0*10**3; #resistance in ohm ",
- "R_E=22.0; #emitter resistance in ohm",
- "R_L=8.0; #load resistance in ohm",
- "B_DC=100.0; #dc value",
- "B_ac=100.0; #ac value",
- "",
- "#calculation",
- "pt=R2+B_DC**2*R_E #temp variable",
- "V_B=((R2*B_DC**2*R_E/(pt))/(R1+(R2*B_DC**2*R_E/(pt))))*V_CC;",
- "V_E=V_B-2.0*V_BE; #emitter voltage",
- "I_E=V_E/R_E; #emitter current",
- "r_e=25.0*10**-3/I_E; #for darlington emitter-follower",
- "P_R_E=I_E**2*R_E; #power dissipated by R_E",
- "P_Q2=(V_CC-V_E)*I_E #power dissipated by transistor Q2",
- "R_e=R_E*R_L/(R_E+R_L); #ac emitter resi. of darlington emitter follower",
- "#total input resistance of darlington",
- "kt=R_e+r_e #temp varaible",
- "R_in_tot=R1*R2*B_ac**2*(kt)/(R1*R2+R1*B_ac**2*(kt)+R2*B_ac**2*(kt)); ",
- "R_c=R_C*R_in_tot/(R_C+R_in_tot); #effective ac resistance",
- "A_v_CE=R_c/r_e_ce; #voltage gain of common emitter",
- "A_v_EF=R_e/(r_e+R_e); #voltage gain of common emitter amplifier",
- "A_v=A_v_CE*A_v_EF; #overall voltage gain",
- "",
- "#result",
- "print \"voltage gain of common emitter amplifier= %.2f\" %A_v_CE",
- "print \"voltage gain of common emitter amplifier= %.2f\" %A_v_EF",
- "print \"overall voltage gain = %.2f\" %A_v"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "voltage gain of common emitter amplifier= 172.08",
- "voltage gain of common emitter amplifier= 0.99",
- "overall voltage gain = 169.67"
- ]
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.11, Page Number: 196<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' voltage,current and power gain'''",
- "",
- "# variable declaration",
- "B_DC=250.0; #dc value",
- "R_C=2.2*10**3; #resistance in ohm",
- "R_E=1.0*10**3; #emitter resistance",
- "R_L=10.0*10**3;#load resistance",
- "R1=56.0*10**3; #resistance in ohm",
- "R2=12.0*10**3; #resistance in ohm",
- "V_BE=0.7; #base-emitter voltage in volt",
- "V_CC=10.0; #source voltage in volt",
- "",
- "#calculation",
- "#since B_DC*R_E>>R2",
- "V_B=(R2/(R1+R2))*V_CC;",
- "V_E=V_B-V_BE; #emiiter voltage",
- "I_E=V_E/R_E; #emitter current",
- "r_e=25.0*10**-3/I_E; #r_e value",
- "R_in=r_e; #input resistance",
- "R_c=R_C*R_L/(R_C+R_L); #ac collector resistance",
- "A_v=R_c/r_e; #current gain",
- "#current gain is almost 1",
- "#power gain is approximately equal to voltage gain",
- "A_p=A_v; #power gain",
- "A_i=1; #current gain",
- "",
- "#result",
- "print \"input resistance = %.2f ohms\" %R_in",
- "print \"voltage gain = %.2f\" %A_v",
- "print \"current gain = %.2f\" %A_i",
- "print \"power gain = %.2f\" %A_p"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "input resistance = 23.48 ohms",
- "voltage gain = 76.80",
- "current gain = 1.00",
- "power gain = 76.80"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 6.12, Page Number: 197<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' total voltage gain in decibel'''",
- "",
- "import math",
- "# variable declaration",
- "A_v1=10.0;",
- "A_v2=15.0;",
- "A_v3=20.0;",
- "",
- "#calcultion",
- "A_v=A_v1*A_v2*A_v3; #overall voltage gain",
- "A_v1_dB=20.0*math.log10(A_v1); #gain in decibel",
- "A_v2_dB=20.0*math.log10(A_v2); #gain in decibel",
- "A_v3_dB=20.0*math.log10(A_v3); #gain in decibel",
- "A_v_dB=A_v1_dB+A_v2_dB+A_v3_dB; #total gain in decibel",
- "",
- "#result",
- "print \"overall voltage gain = %.1f\" %A_v",
- "print \"Av1 = %.1f dB\" %A_v1_dB",
- "print \"Av2 = %.1f dB\" %A_v2_dB",
- "print \"Av3 = %.1f dB\" %A_v3_dB",
- "print \"total voltage gain =%.1f dB\" %A_v_dB"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "overall voltage gain = 3000.0",
- "Av1 = 20.0 dB",
- "Av2 = 23.5 dB",
- "Av3 = 26.0 dB",
- "total voltage gain =69.5 dB"
- ]
- }
- ],
- "prompt_number": 13
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter7.ipynb b/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter7.ipynb
deleted file mode 100644
index 204325b..0000000
--- a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/Chapter7.ipynb
+++ /dev/null
@@ -1,727 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_7"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 7: Field-effect Transistors (FETs)<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.1, Page Number: 217<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "%pylab inline"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "",
- "Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].",
- "For more information, type 'help(pylab)'."
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Constant current area of operation of JFET'''",
- "",
- "# variable declaration",
- "V_GS_off=-4; # voltage in volt",
- "I_DSS=12*10**-3; # current in ampere",
- "R_D=560; # resistance in ohm",
- "",
- "#calculation",
- "V_P=-1*V_GS_off; # volt ",
- "V_DS=V_P; # Vds in volt",
- "I_D=I_DSS; # current accross resistor",
- "V_R_D=I_D*R_D; #voltage across resistor",
- "V_DD=V_DS+V_R_D; # Vdd in volt",
- "",
- "# result",
- "print \"The value of V_DD required to put the device in the constant\"",
- "print \" current area of operation of JFET = %.2f volt\" %V_DD"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The value of V_DD required to put the device in the constant",
- " current area of operation of JFET = 10.72 volt"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.2, Page Number: 218<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Drain current'''",
- "",
- "print('The p-channel JFET requires a positive gate to source voltage.')",
- "print('The more positive the voltage, the lesser the drain current.')",
- "print('Any further increase in V_GS keeps the JFET cut off, so I_D remains 0')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "The p-channel JFET requires a positive gate to source voltage.",
- "The more positive the voltage, the lesser the drain current.",
- "Any further increase in V_GS keeps the JFET cut off, so I_D remains 0"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.3, Page number: 219<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''JFET current voltage'''",
- "",
- "I_DSS=9.0*10**-3;",
- "V_GS_off=-8.0;",
- "V_GS=0.0;",
- "I_D=9.0*10**-3",
- "I_D=I_DSS*(1-(V_GS/V_GS_off))**2;",
- "print('Value of I_D for V_GS=0V is %f A '%I_D)",
- "V_GS=-1.0",
- "I_D=I_DSS*(1-(V_GS/V_GS_off))**2;",
- "print('Value of I_D for V_GS=-1V is %f A'%I_D)",
- "V_GS= -4.0",
- "I_D=I_DSS*(1-(V_GS/V_GS_off))**2;",
- "print('Value of I_D for V_GS=-4V is %f A'%I_D)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Value of I_D for V_GS=0V is 0.009000 A ",
- "Value of I_D for V_GS=-1V is 0.006891 A",
- "Value of I_D for V_GS=-4V is 0.002250 A"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.4, Page Number: 220<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''JFET transconductance'''",
- "",
- "#Variable Declaration",
- "I_DSS=3.0*10**-3;",
- "V_GS_off=-6.0;",
- "y_fs_max=5000.0*10**-6;",
- "V_GS=-4.0;",
- "g_m0=y_fs_max;",
- "",
- "#Calculation",
- "g_m=g_m0*(1-(V_GS/V_GS_off));",
- "I_D=I_DSS*(1-(V_GS/V_GS_off))",
- "",
- "#Result",
- "print('forward transconductance = %f Siemens'%g_m)",
- "print('value of I D = %f A'%I_D)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "forward transconductance = 0.001667 Siemens",
- "value of I D = 0.001000 A"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.5, Page Number: 221<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find input resistance'''",
- "",
- "# variable declaration",
- "V_GS=-20.0; # voltage in volt",
- "I_GSS=-2*10**-9; # current in ampere",
- "",
- "#calculation",
- "R_IN1=abs((-20/(2*10**-9))) # resistance in ohm",
- "R_IN=R_IN1/(10**9)",
- "",
- "# result",
- "print \"Input resistance = %d Giga ohm\" %R_IN"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Input resistance = 10 Giga ohm"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.6, Page Number: 223<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find gate to source voltage'''",
- "",
- "# variable declaration",
- "V_DD=15; # voltage in volt",
- "V_G=0; # voltage in volt",
- "I_D=5*10**-3; # current in ampere",
- "R_D=1*10**3; # resistance in ohm",
- "R_G=10*10**6; # resistance in ohm",
- "R_S=220; # resistance in ohm",
- "",
- "# calculation",
- "V_S=I_D*R_S; # source voltage in volt",
- "V_D=V_DD-I_D*R_D; # drain voltage in volt",
- "V_DS=V_D-V_S; # drain to source voltage in volt",
- "V_GS=V_G-V_S; # gate to source voltage in volt",
- "",
- "# result",
- "print \"Drain to source voltage = %.2f volts\" %V_DS",
- "print \"Gate to source voltage = %.2f volts\" %V_GS"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain to source voltage = 8.90 volts",
- "Gate to source voltage = -1.10 volts"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.7, Page Number: 224<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find Gate resistance'''",
- "",
- "# variable declaration",
- "V_GS=-5.0; # voltage in volt",
- "I_D=6.25*10**-3; # current in ampere",
- "",
- "#calculation",
- "R_G=abs((V_GS/I_D)) # resistance in ohm",
- "",
- "# result",
- "print \"Gate resistance = %d ohm\" %R_G"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Gate resistance = 800 ohm"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.8, Page Number: 224<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Self bias Q point'''",
- "",
- "I_DSS=25.0*10**-3;",
- "V_GS_off=15.0;",
- "V_GS=5.0;",
- "I_D=I_DSS*(1-(V_GS/V_GS_off))**2",
- "R_S=abs((V_GS/I_D))",
- "print('Drain current = %f Amperes'%I_D)",
- "print('Source resistance = %.0f Ohms'%R_S)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain current = 0.011111 Amperes",
- "Source resistance = 450 Ohms"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.9, Page Number: 225<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find Drain resistance'''",
- "",
- "# variable declaration",
- "V_D=6; # drain voltage in volt",
- "V_GS_off=-3; # off voltage in volt",
- "V_DD=12; # voltage in volt",
- "I_DSS=12*10**-3; # current in ampere",
- "",
- "#calculation",
- "I_D=I_DSS/2; #MIDPOINT BIAS",
- "V_GS=V_GS_off/3.4; #MIDPOINT BIAS",
- "R_S=abs((V_GS/I_D)) #resistance i voltage",
- "R_D=(V_DD-V_D)/I_D #resistance in voltage ",
- "",
- "# result",
- "print \"Source resistance = %.2f ohm\" %R_S",
- "print \"Drain resistance = %d ohm\" %R_D"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Source resistance = 147.06 ohm",
- "Drain resistance = 1000 ohm"
- ]
- }
- ],
- "prompt_number": 10
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.10, Page Number: 227<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find transfer characteristic'''",
- "",
- "import pylab",
- "import numpy",
- "",
- "# variable declaration",
- "R_S=680.0; # resistance in ohm",
- "I_D=0; # current in ampere",
- "",
- "#calculation",
- "V_GS=I_D*R_S; #FOR I_D=0A",
- "",
- "I_DSS=4*10**-3; # current in ampere",
- "I_D=I_DSS; # currents are equal",
- "V_GS1=-1*I_D*R_S; #FOR I_D=4mA",
- "",
- "# result",
- "print \"V_GS at I_D=0amp is %d volt\" %V_GS",
- "print \"V_GS at I_D=4mA is %.2f volt\" %V_GS1",
- "print \"Plotting load line using the values of V_GS at I_D=0 and 4mA,\"",
- "print \" we find the intersection of load line with transfer characteristic\"",
- "print \" to get Q-point values of V_GS=-1.5V and I_D=2.25mA\"",
- "",
- "#########PLOT######################",
- "idss=4",
- "vgsoff=-6",
- "vgs=arange(-6.0,0.0,0.0005)",
- "idk=arange(0.0,4.0,0.0005)",
- "ids=arange(0.0,2.25,0.0005)",
- "vgsk=-idk*0.68",
- "i_d=idss*(1-(vgs/vgsoff))**2",
- "",
- "plot(vgs,i_d)",
- "plot(vgsk,idk)",
- "#ax1.plot(ids)",
- "plot(-1.5,2.25,'*')",
- "ylim( (0,5) )",
- "title('Transfer characteristic curve')",
- "xlabel('* shows the Q point ie (Id=2.25mA,vgs=-1.5V) Vgs')",
- "ylabel('Idss')"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "V_GS at I_D=0amp is 0 volt",
- "V_GS at I_D=4mA is -2.72 volt",
- "Plotting load line using the values of V_GS at I_D=0 and 4mA,",
- " we find the intersection of load line with transfer characteristic",
- " to get Q-point values of V_GS=-1.5V and I_D=2.25mA"
- ]
- },
- {
- "output_type": "pyout",
- "prompt_number": 11,
- "text": [
- "<matplotlib.text.Text at 0xa3b07ec>"
- ]
- },
- {
- "output_type": "display_data",
- "png": "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\nSz0fFxdHvr6+4s9PnjwhIqGl/r///Y+IiPbt20fdu3cnIqJly5aJy7X+/fffZG1tTfn5+bR48WJa\ntWoVPXnyhDw9Palnz55EROTt7U2JiYm0fPlyWrBgARERKRQKevr06QuxPt8i0tHRoejoaCIimj59\nOn355ZdERBQUFEQnT54kImGqu5OT0wvHGjhwIO3evbvUY48fPyYzM7MXtp07dy65u7tTfn4+ZWZm\nkpWVFaWmptL27dvJ19eXFAoFpaenk7W1Nd2/f79UCzUsLIzs7OwoOzub8vPzqVmzZnT37l0ienlL\nvfi1xsfHU79+/aioqIiIiCZOnEibNm16YfuePXuWmhZevH9cXBy5uLhQXl4eZWdnk4ODg9gCXLp0\nKbm7u7/wNXny5BeOv23btlL/D8rTt29f+vXXX4lIaKm/+eab5O7uTl27dqUTJ06I2+no6FBMTAwR\nEQUEBJCvry8VFRXRn3/+Se7u7uJ248aNoy1btlBOTg5ZWlqK16GkFStW0Ny5c4mIKDU1lZo3b05E\nRJMmTRKnlMfExJCOjg5lZWXR9u3bafz48eL+xf+np06dWub1+Oqrr176ml/VUq9Vqxa1bt2a3n77\nbfrtt9/Ex5ctW0ZTp04lImE6fNu2bUvtZ2trSzk5OS89d3ni4uLIw8ODiIjy8/OpUaNG9OjRIyIi\natWqFZ09e5aIiGbOnEkuLi5ERPTBBx+I711hYaFGLqPASb2E0NDQMh9/9OgR2dvb04cffkgxMTGk\nUCiISEjqp0+fJiKi+/fvk4ODAxEJv6AlPyZ37tyZrly5QqdOnaKhQ4fSvn37KDQ0lDp16kS5ublk\nY2NDRETHjx8nBwcHCg0NpcuXL5cZy/O/PLVr1xa/37p1K40bN46IiBo2bFjql9LS0pKePXtW6lgD\nBw6kqKioUo89fvyY6tatW+a1KU4aRESjRo2i3377jaZOnUphYWHi4yNHjqTdu3e/kNRLJpBevXrR\nqVOniOjVST0zM5O+++47atq0qfhamjdvTvPmzXtheycnJ0pNTX1h/5IJj4jo448/rnD3S7Fr166R\nvb093bhx46XbffnllzRw4EDx53///ZcePnxIREQXLlwgKysr8Y91yfduzpw5tHDhQiISug7q1asn\n7m9hYSEmtkGDBol/xEu6d++euEbNN998Q7NnzyYiInd3d0pJSRG3q1+/PmVlZVFiYiLZ2NjQjBkz\n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\n"
- }
- ],
- "prompt_number": 11
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.11, Page Number: 228<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find gate to source voltage'''",
- "",
- "# variable declaration",
- "V_DD=12; # voltage in volt",
- "V_D=7; # voltage in volt",
- "R_D=3.3*10**3; # resistance in ohm",
- "R_S=2.2*10**3; # resistance in ohm",
- "R_1=6.8*10**6; # resistance in ohm",
- "R_2=1*10**6; # resistance in ohm",
- "",
- "#calculation",
- "I_D=(V_DD-V_D)/R_D; # drain current in ampere",
- "V_S=I_D*R_S; # source voltage in volt",
- "V_G=(R_2/(R_1+R_2))*V_DD; # gate voltage in volt",
- "V_GS=V_G-V_S; # gate to source voltage in volt",
- "",
- "# result",
- "print \"Drain Current = %.4f Ampere\" %I_D",
- "print \"Gate to source voltage = %.4f volts\" %V_GS"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain Current = 0.0015 Ampere",
- "Gate to source voltage = -1.7949 volts"
- ]
- }
- ],
- "prompt_number": 12
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.12, Page Number: 229<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find transfer characteristic for Q-point'''",
- "",
- "# variable declaration",
- "R_1=2.2*10**6; # resistance in ohm ",
- "R_2=R_1; # resistance in ohm",
- "V_DD=8; # voltage in volt",
- "R_S=3.3*10**3; # resistance in ohm",
- "",
- "#calculation",
- "V_GS=(R_2/(R_1+R_2))*V_DD; #FOR I_D=0A",
- "V_G=V_GS; # voltage in volt",
- "I_D=(V_G-0)/R_S; #FOR V_GS=0V",
- "",
- "# result",
- "print \"V_GS = %d volt\" %V_GS",
- "print \"at V_GS=0V. I_D = %.4f ampere\" %I_D",
- "print \"Plotting load line using the value of V_GS=4V at I_D=0\"",
- "print \" and I_D=1.2mA at V_GS=0V, we find the intersection of\"",
- "print \" load line with transfer characteristic to get Q-point\"",
- "print \" values of V_GS=-1.8V and I_D=1.8mA\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "V_GS = 4 volt",
- "at V_GS=0V. I_D = 0.0012 ampere",
- "Plotting load line using the value of V_GS=4V at I_D=0",
- " and I_D=1.2mA at V_GS=0V, we find the intersection of",
- " load line with transfer characteristic to get Q-point",
- " values of V_GS=-1.8V and I_D=1.8mA"
- ]
- }
- ],
- "prompt_number": 13
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.13, Page Number: 235<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''DMOSFET'''",
- "",
- "I_DSS=10.0*10**-3;",
- "V_GS_off=-8.0;",
- "V_GS=-3.0;",
- "I_D=I_DSS*(1-(V_GS/V_GS_off))**2;",
- "print('Drain current when V_GS=-3V is %f Amperes'%I_D)",
- "V_GS=3;",
- "I_D=I_DSS*(1-(V_GS/V_GS_off))**2;",
- "print('Drain current when V_GS=3V is %f Amperes'%I_D)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain current when V_GS=-3V is 0.003906 Amperes",
- "Drain current when V_GS=3V is 0.018906 Amperes"
- ]
- }
- ],
- "prompt_number": 14
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.14, Page Number: 236<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''EMOSFET'''",
- "",
- "#variable Declaration",
- "I_D_on=500.0*10**-3;",
- "V_GS=10.0;",
- "V_GS_th=1.0;",
- "K=I_D_on/((V_GS-V_GS_th)**2)",
- "V_GS=5.0;",
- "I_D=K*(V_GS-V_GS_th)**2;",
- "print('Drain current = %f A'%I_D)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain current = 0.098765 A"
- ]
- }
- ],
- "prompt_number": 15
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.15, Page Number: 237<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find drain to source voltage'''",
- "",
- "# variable declaration",
- "I_DSS=12*10**-3; # currenin ampere",
- "V_DD=18; # voltage in volt",
- "R_D=620; # resistance in oh",
- "",
- "#calculation",
- "I_D=I_DSS; # currents are equal",
- "V_DS=V_DD-I_D*R_D; # drain to source voltage",
- "",
- "# result",
- "print \"Drain to sorce voltage = %.2f volt\" %V_DS"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain to sorce voltage = 10.56 volt"
- ]
- }
- ],
- "prompt_number": 16
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.16, Page Number: 238<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''EMOSFET bias'''",
- "",
- "#variable Declaration",
- "I_D_on=200.0*10**-3;",
- "V_DD=24.0;",
- "R_D=200.0;",
- "V_GS=4.0;",
- "V_GS_th=2.0;",
- "R_1=100.0*10**3;",
- "R_2=15.0*10**3;",
- "",
- "#Calculation ",
- "K=I_D_on/((V_GS-V_GS_th)**2)",
- "V_GS=(R_2/(R_1+R_2))*V_DD;",
- "I_D=K*(V_GS-V_GS_th)**2;",
- "V_DS=V_DD-I_D*R_D;",
- "",
- "#Result",
- "print('Drain to Source voltage = %f V'%V_DS)",
- "print('Gate to Source voltage = %f V'%V_GS)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain to Source voltage = 11.221172 V",
- "Gate to Source voltage = 3.130435 V"
- ]
- }
- ],
- "prompt_number": 17
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 7.17, Page Number: 239<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find drain current'''",
- "",
- "# variable declaration",
- "V_GS_on=3; # voltage in volt",
- "V_GS=8.5 #voltage displayed on meter",
- "V_DS=V_GS; # voltages are equal ",
- "V_DD=15; # voltage in volt",
- "R_D=4.7*10**3; # resistance in ohm",
- "",
- "#calculation",
- "I_D=(V_DD-V_DS)/R_D; # drain current",
- "",
- "# result",
- "print \"Drain current = %.4f ampere\" %I_D"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain current = 0.0014 ampere"
- ]
- }
- ],
- "prompt_number": 18
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/Chapter7.png b/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/Chapter7.png
deleted file mode 100644
index 0036b02..0000000
--- a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/Chapter7.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/nb.png b/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/nb.png
deleted file mode 100644
index d6e06b1..0000000
--- a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/nb.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/try.png b/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/try.png
deleted file mode 100644
index 57ad0f1..0000000
--- a/tbc/static/uploads/Jayaram/Engineering Thermodynamics/screenshots/try.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter10.ipynb b/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter10.ipynb
deleted file mode 100644
index 8864497..0000000
--- a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter10.ipynb
+++ /dev/null
@@ -1,719 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_10"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 10: Amplifier Frequency Response<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.1, Page Number: 311<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Gain in decibel'''",
- "",
- "import math",
- "#Pout/P in=250;",
- "A_p=250.0",
- "A_p_dB=10*math.log10(A_p)",
- "print('Power gain(dB) when power gain is 250 = %d'% math.ceil(A_p_dB));",
- "A_p=100.0",
- "A_p_dB=10*math.log10(A_p)",
- "print('Power gain(dB) when power gain is 100 = %d'%A_p_dB)",
- "A_p=10.0",
- "A_p_dB=20*math.log10(A_p)",
- "print('Voltage gain(dB) when Voltage gain is 10 = %d'%A_p_dB)",
- "A_p=0.50",
- "A_p_dB=10*math.log10(A_p)",
- "print('Power gain(dB) when voltage gain is 0.50 = %d'%A_p_dB)",
- "A_p=0.707",
- "A_p_dB=20*math.log10(A_p)",
- "print('Power gain(dB) when power gain is 0.707 = %d'%A_p_dB)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Power gain(dB) when power gain is 250 = 24",
- "Power gain(dB) when power gain is 100 = 20",
- "Voltage gain(dB) when Voltage gain is 10 = 20",
- "Power gain(dB) when voltage gain is 0.50 = -3",
- "Power gain(dB) when power gain is 0.707 = -3"
- ]
- }
- ],
- "prompt_number": 19
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.2, Page Number: 313<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Gain in decibel'''",
- "",
- "",
- "#input voltage=10V",
- "#at -3dB voltage gain from table is 0.707",
- "v_out=0.707*10;",
- "print('output voltage in volts at -3dB gain = %.2f'%v_out)",
- "#at -6dB voltage gain from table is 0.5",
- "v_out=0.5*10;",
- "print('output voltage in volts at -6dB gain = %d'%v_out)",
- "#at -12dB voltage gain from table is 0.25",
- "v_out=0.25*10;",
- "print('output voltage in volts at -12dB gain = %.1f'%v_out)",
- "#at -24dB voltage gain from table is 0.0625",
- "v_out=0.0625*10;",
- "print('output voltage in volts at -24dB gain = %.3f'%v_out)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "output voltage in volts at -3dB gain = 7.07",
- "output voltage in volts at -6dB gain = 5",
- "output voltage in volts at -12dB gain = 2.5",
- "output voltage in volts at -24dB gain = 0.625"
- ]
- }
- ],
- "prompt_number": 20
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.3, Page Number: 316<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Lower critical frequency'''",
- "",
- "import math",
- "R_in=1.0*10**3;",
- "C1=1.0*10**-6;",
- "A_v_mid=100.0; #mid range voltage gain",
- "f_c=1/(2*math.pi*R_in*C1);",
- "#at f_c, capacitive reactance is equal to resistance(X_C1=R_in)",
- "attenuation=0.707;",
- "#A_v is gain at lower critical frequency",
- "A_v=0.707*A_v_mid;",
- "print('lower critical frequency = %f Hz'%f_c)",
- "print('attenuation at lower critical frequency =%.3f'%attenuation)",
- "print('gain at lower critical frequency = %.1f'%A_v)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "lower critical frequency = 159.154943 Hz",
- "attenuation at lower critical frequency =0.707",
- "gain at lower critical frequency = 70.7"
- ]
- }
- ],
- "prompt_number": 21
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.4, Page Number: 317<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Voltage gains'''",
- "",
- "A_v_mid=100.0;",
- "#At 1Hz frequency,voltage gain is 3 dB less than at midrange. At -3dB, the voltage is reduced by a factor of 0.707",
- "A_v=0.707*A_v_mid;",
- "print('actual voltage gain at 1Hz frequency = %.1f'%A_v)",
- "#At 100Hz frequency,voltage gain is 20 dB less than at critical frequency (f_c ). At -20dB, the voltage is reduced by a factor of 0.1",
- "A_v=0.1*A_v_mid;",
- "print('actual voltage gain at 100Hz frequency = %d'%A_v)",
- "#At 10Hz frequency,voltage gain is 40 dB less than at critical frequency (f_c). At -40dB, the voltage is reduced by a factor of 0.01",
- "A_v=0.01*A_v_mid;",
- "print('actual voltage gain at 10Hz frequency = %d'%A_v)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "actual voltage gain at 1Hz frequency = 70.7",
- "actual voltage gain at 100Hz frequency = 10",
- "actual voltage gain at 10Hz frequency = 1"
- ]
- }
- ],
- "prompt_number": 22
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.5, Page Number: 319<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Output RC circuit'''",
- "",
- "import math",
- "R_C=10.0*10**3;",
- "C3=0.1*10**-6;",
- "R_L=10*10**3;",
- "A_v_mid=50;",
- "f_c=1/(2*math.pi*(R_L+R_C)*C3);",
- "print('lower critical frequency = %f Hz'%f_c)",
- "#at midrange capacitive reactance is zero",
- "X_C3=0;",
- "attenuation=R_L/(R_L+R_C); ",
- "print('attenuation at midrange frequency = %.1f'%attenuation)",
- "#at critical frequency, capacitive reactance equals total resistance",
- "X_C3=R_L+R_C;",
- "attenuation=R_L/(math.sqrt((R_C+R_L)**2+X_C3**2));",
- "print('attenuation at critical frequency = %f'%attenuation)",
- "A_v=0.707*A_v_mid;",
- "print('gain at critical frequency = %.2f'%A_v)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "lower critical frequency = 79.577472 Hz",
- "attenuation at midrange frequency = 0.5",
- "attenuation at critical frequency = 0.353553",
- "gain at critical frequency = 35.35"
- ]
- }
- ],
- "prompt_number": 23
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.6, Page Number: 321<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Bypass RC circuit BJT'''",
- "",
- "import math",
- "B_ac=100.0;",
- "r_e=12.0;",
- "R1=62.0*10**3;",
- "R2=22.0*10**3;",
- "R_S=1.0*10**3;",
- "R_E=1.0*10**3;",
- "C2=100.0*10**-6;",
- "#Base circuit impedance= parallel combination of R1, R2, R_S",
- "R_th=(R1*R2*R_S)/(R1*R2+R2*R_S+R_S*R1);",
- "#Resistance looking at emitter",
- "R_in_emitter=r_e+(R_th/B_ac);",
- "#resistance of equivalent bypass RC is parallel combination of R_E,R_in_emitter",
- "R=(R_in_emitter*R_E)/(R_E+R_in_emitter);",
- "f_c=1/(2*math.pi*R*C2);",
- "print('critical frequency of bypass RC circuit = %f Hz'%f_c)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "critical frequency of bypass RC circuit = 75.893960 Hz"
- ]
- }
- ],
- "prompt_number": 24
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.7, Page Number:323<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''input RC circuit FET'''",
- "",
- "import math",
- "V_GS=-10.0;",
- "I_GSS=25.0*10**-9;",
- "R_G=10.0*10**6;",
- "C1=0.001*10**-6;",
- "R_in_gate=abs((V_GS/I_GSS));",
- "R_in=(R_in_gate*R_G)/(R_G+R_in_gate);",
- "f_c=1/(2*math.pi*R_in*C1);",
- "print('critical frequency = %f Hz'%f_c)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "critical frequency = 16.313382 Hz"
- ]
- }
- ],
- "prompt_number": 25
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.8, Page Number: 324<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Low frequency response FET'''",
- "",
- "import math",
- "V_GS=-12.0;",
- "I_GSS=100.0*10**-9;",
- "R_G=10.0*10**6;",
- "R_D=10.0*10**3;",
- "C1=0.001*10**-6;",
- "C2=0.001*10**-6;",
- "R_in_gate=abs((V_GS/I_GSS));",
- "R_in=(R_in_gate*R_G)/(R_G+R_in_gate);",
- "R_L=R_in; #according to question",
- "f_c_input=1/(2*math.pi*R_in*C1);",
- "print('critical frequency of input RC circuit = %f Hz'%f_c_input)",
- "f_c_output=1/(2*math.pi*(R_D+R_L)*C2)",
- "print('critical frequency of output RC circuit = %f Hz'%f_c_output)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "critical frequency of input RC circuit = 17.241786 Hz",
- "critical frequency of output RC circuit = 17.223127 Hz"
- ]
- }
- ],
- "prompt_number": 26
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.9, Page Number: 327<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Low frequency response BJT'''",
- "",
- "import math",
- "B_ac=100.0;",
- "r_e=16.0;",
- "R1=62.0*10**3;",
- "R2=22.0*10**3;",
- "R_S=600.0;",
- "R_E=1.0*10**3;",
- "R_C=2.2*10**3;",
- "R_L=10.0*10**3;",
- "C1=0.1*10**-6;",
- "C2=10.0*10**-6;",
- "C3=0.1*10**-6;",
- "#input RC circuit",
- "R_in=(B_ac*r_e*R1*R2)/(B_ac*r_e*R1+B_ac*r_e*R2+R1*R2);",
- "f_c_input=1/(2*math.pi*(R_S+R_in)*C1);",
- "print('input frequency = %f Hz'%f_c_input)",
- "#For bypass circuit; Base circuit impedance= parallel combination of R1, R2, R_S",
- "R_th=(R1*R2*R_S)/(R1*R2+R2*R_S+R_S*R1);",
- "#Resistance looking at emitter",
- "R_in_emitter=r_e+(R_th/B_ac);",
- "#resistance of equivalent bypass RC is parallel combination of R_E,R_in_emitter",
- "R=(R_in_emitter*R_E)/(R_E+R_in_emitter);",
- "f_c_bypass=1/(2*math.pi*R*C2);",
- "print('critical frequency of bypass RC circuit = %f Hz'%f_c_bypass)",
- "f_c_output=1/(2*math.pi*(R_C+R_L)*C3)",
- "print('output frequency circuit = %f Hz'%f_c_output)",
- "R_c=R_C*R_L/(R_C+R_L);",
- "A_v_mid=R_c/r_e;",
- "attenuation=R_in/(R_in+R_S);",
- "A_v=attenuation*A_v_mid; #overall voltage gain",
- "A_v_mid_dB=20*math.log10(A_v); ",
- "print('overall voltage gain in dB = %f'%A_v_mid_dB)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "input frequency = 773.916632 Hz",
- "critical frequency of bypass RC circuit = 746.446517 Hz",
- "output frequency circuit = 130.454871 Hz",
- "overall voltage gain in dB = 38.042470"
- ]
- }
- ],
- "prompt_number": 27
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.10, Page Number: 330<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''input RC circuit BJT'''",
- "",
- "import math",
- "B_ac=125.0;",
- "C_be=20.0*10**-12;",
- "C_bc=2.4*10**-12;",
- "R1=22.0*10**3;",
- "R2=4.7*10**3;",
- "R_E=470.0;",
- "R_S=600.0;",
- "R_L=2.2*10**3;",
- "V_CC=10.0;",
- "V_B=(R2/(R1+R2))*V_CC;",
- "V_E=V_B-0.7;",
- "I_E=V_E/R_E;",
- "r_e=25.0*10**-3/I_E;",
- "#total resistance of input circuit is parallel combination of R1,R2,R_s,B_ac*r_e",
- "R_in_tot=B_ac*r_e*R1*R2*R_S/(B_ac*r_e*R1*R2+B_ac*r_e*R1*R_S+B_ac*r_e*R2*R_S+R1*R2*R_S);",
- "R_c= 1100.0#R_C*R_L/(R_C+R_L)",
- "A_v_mid=R_c/r_e;",
- "C_in_Miller=C_bc*(A_v_mid+1)",
- "C_in_tot=C_in_Miller+C_be;",
- "C_in_tot=C_in_tot*10**10",
- "f_c=1/(2*math.pi*R_in_tot*C_in_tot);",
- "print('total resistance of circuit = %f Ohm'%R_in_tot)",
- "print('total capacitance = %f * 10^-10 F'%C_in_tot)",
- "print('critical frequency = %f Hz'%f_c)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "total resistance of circuit = 377.815676 Ohm",
- "total capacitance = 2.606290 * 10^-10 F",
- "critical frequency = 0.000162 Hz"
- ]
- }
- ],
- "prompt_number": 28
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.11, Page Number: 333<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Critical frequency BJT output'''",
- "",
- "import math",
- "C_bc=2.4*10**-12; #from previous question",
- "A_v=99.0; #from previous question",
- "R_C=2.2*10**3;",
- "R_L=2.2*10**3;",
- "R_c=R_C*R_L/(R_C+R_L);",
- "C_out_Miller=C_bc*(A_v+1)/A_v;",
- "f_c=1/(2*math.pi*R_c*C_bc); #C_bc is almost equal to C_in_Miller",
- "C_out_Miller=C_out_Miller*10**12",
- "print('equivalent resistance = %d Ohm'%R_c)",
- "print('equivalent capacitance =%f *10^-12 F'%C_out_Miller)",
- "print('critical frequency =%f Hz'%f_c)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "equivalent resistance = 1100 Ohm",
- "equivalent capacitance =2.424242 *10^-12 F",
- "critical frequency =60285963.292385 Hz"
- ]
- }
- ],
- "prompt_number": 29
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.12, Page Number: 334<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''FET capacitors'''",
- "",
- "C_iss=6.0*10**-12;",
- "C_rss=2.0*10**-12;",
- "C_gd=C_rss;",
- "C_gs=C_iss-C_rss;",
- "C_gd=C_gd*10**12",
- "C_gs=C_gs*10**12",
- "print('gate to drain capacitance = %.1f * 10^-12 F'%C_gd)",
- "print('gate to source capacitance = %.1f * 10^-12 F'%C_gs)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "gate to drain capacitance = 2.0 * 10^-12 F",
- "gate to source capacitance = 4.0 * 10^-12 F"
- ]
- }
- ],
- "prompt_number": 30
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.13, Page Number:335 <h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Critical frequency FET input'''",
- "",
- "import math",
- "C_iss=8.0*10**-12;",
- "C_rss=3.0*10**-12;",
- "g_m=6500.0*10**-6; #in Siemens",
- "R_D=1.0*10**3;",
- "R_L=10.0*10**6;",
- "R_s=50.0;",
- "C_gd=C_rss;",
- "C_gs=C_iss-C_rss;",
- "R_d=R_D*R_L/(R_D+R_L);",
- "A_v=g_m*R_d;",
- "C_in_Miller=C_gd*(A_v+1);",
- "C_in_tot=C_in_Miller+C_gs;",
- "f_c=1/(2*math.pi*C_in_tot*R_s);",
- "print('critical frequency of input RC circuit =%.3f *10^8 Hz'%(f_c*10**-8))"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "critical frequency of input RC circuit =1.158 *10^8 Hz"
- ]
- }
- ],
- "prompt_number": 31
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.14, Page Number: 336<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Critical frequency FET input'''",
- "",
- "import math",
- "C_gd=3.0*10**-12; #from previous question",
- "A_v=6.5; #from previous question",
- "R_d=1.0*10**3; #from previous question",
- "C_out_Miller=C_gd*(A_v+1)/A_v;",
- "f_c=1/(2*math.pi*R_d*C_out_Miller);",
- "print('critical frequency of the output circuit = %d Hz'%f_c)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "critical frequency of the output circuit = 45978094 Hz"
- ]
- }
- ],
- "prompt_number": 32
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.15, Page Number: 339<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Bandwidth'''",
- "",
- "f_cu=2000.0;",
- "f_cl=200.0;",
- "BW=f_cu-f_cl;",
- "print('bandwidth = %d Hz'%BW)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "bandwidth = 1800 Hz"
- ]
- }
- ],
- "prompt_number": 33
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.16, Page Number: 340<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Bandwidth transistor'''",
- "",
- "f_T=175.0*10**6; #in hertz",
- "A_v_mid=50.0;",
- "BW=f_T/A_v_mid;",
- "print('bandwidth = %d Hz'%BW)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "bandwidth = 3500000 Hz"
- ]
- }
- ],
- "prompt_number": 34
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.17, Page Number: 341<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Bandwidth 2stage amplifier'''",
- "",
- "f_cl=1.0*10**3; #lower critical frequency of 2nd stage in hertz",
- "f_cu=100.0*10**3; #upper critical frequency of 1st stage in hertz",
- "BW=f_cu-f_cl;",
- "print('bandwidth = %d Hz'%BW)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "bandwidth = 99000 Hz"
- ]
- }
- ],
- "prompt_number": 35
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 10.18, Page Number: 341<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Bandwidth 2stage amplifier'''",
- "",
- "import math",
- "n=2.0; #n is the number of stages of amplifier",
- "f_cl=500.0;",
- "f_cu=80.0*10**3;",
- "f_cl_new=f_cl/(math.sqrt(2**(1/n)-1));",
- "f_cu_new=f_cu*(math.sqrt(2**(1/n)-1));",
- "BW=f_cu_new-f_cl_new;",
- "print('bandwidth = %f Hz'%BW)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "bandwidth = 50710.653245 Hz"
- ]
- }
- ],
- "prompt_number": 36
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter8.ipynb b/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter8.ipynb
deleted file mode 100644
index 68824e8..0000000
--- a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter8.ipynb
+++ /dev/null
@@ -1,432 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_8"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 8: FET Amplifiers<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.1, Page Number: 253<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Voltage gain'''",
- "",
- "# variable declaration",
- "g_m=4.0*10**-3; #gm value",
- "R_d=1.5*10**3; #resistance",
- "",
- "#calculation",
- "A_v=g_m*R_d; #voltage gain",
- "",
- "#result",
- "print \"Voltage gain = %.2f\" %A_v"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Voltage gain = 6.00"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.2, Page Number: 253<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' The Voltage gain'''",
- "",
- "# variable declaration",
- "r_ds=10.0*10**3;",
- "R_d=1.5*10**3; #from previous question",
- "g_m=4.0*10**-3; #from previous question",
- "",
- "#calculation",
- "A_v=g_m*((R_d*r_ds)/(R_d+r_ds)); #voltage gain",
- "",
- "#result",
- "print \"Voltage gain = %.2f\" %A_v"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Voltage gain = 5.22"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.3, Page Number:254<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find Voltage gain'''",
- "",
- "# variable declaration",
- "R_s=560; #resistance in ohm",
- "R_d=1.5*10**3; #resistance in ohm",
- "g_m=4*10**-3; #g_m value",
- "",
- "#calculation",
- "A_v=(g_m*R_d)/(1+(g_m*R_s)) #voltage gain",
- "",
- "#result",
- "print \"Voltage gain = %.2f\" %A_v"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Voltage gain = 1.85"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.4, Page Number: 257<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Unloaded amplifier'''",
- "",
- "#Variable declaration",
- "vdd=12.0 #volts",
- "Id=1.96*10**-3 #Amp",
- "Rd=3.3*10**3 #ohm",
- "Idss=12.0*10**-3 #Amp",
- "Rs=910 # Ohm",
- "vgsoff= 3 #v",
- "vin=0.1 #V",
- "",
- "#calculation",
- "vd=vdd-(Id*Rd)",
- "vgs=-Id*Rs",
- "gm0=2*Idss/(abs(vgsoff))",
- "gm=0.00325 #mS",
- "vout=gm*Rd*vin",
- "vout=vout*2*1.414",
- "#Result",
- "print\"Total output ac voltage(peak-to-peak) = %f V \\nridig on DC value of %fV \"%(vout,vd)"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Total output ac voltage(peak-to-peak) = 3.033030 V ",
- "ridig on DC value of 5.532000V "
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.5, Page Number: 258<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' RMS voltage'''",
- "",
- "# variable declaration",
- "R_D=3.3*10**3; #resistance in ohm",
- "R_L=4.7*10**3; #load resistance in ohm",
- "g_m=3.25*10**-3; #from previous question",
- "V_in=100.0*10**-3; #previous question",
- "",
- "#calculation",
- "R_d=(R_D*R_L)/(R_D+R_L); #Equivalent drain resistance",
- "V_out=g_m*R_d*V_in; #output RMS voltage in volt",
- "",
- "#result",
- "print \"Output voltage rms value = %.2f Volts\" %V_out"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Output voltage rms value = 0.63 Volts"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.6, Page Number: 259<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Input resistance wrt signal source '''",
- "",
- "# variable declaration",
- "I_GSS=30.0*10**-9; #current in ampere",
- "V_GS=10.0; #ground-source voltage",
- "R_G=10.0*10**6; #resistance in ohm",
- "",
- "#calculation",
- "R_IN_gate=V_GS/I_GSS; #gate input resistance",
- "R_in=(R_IN_gate*R_G)/(R_IN_gate+R_G); #parallel combination",
- "",
- "#result",
- "print \"Input resistance as seen by signal source = %.2f ohm\" %R_in"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Input resistance as seen by signal source = 9708737.86 ohm"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.7, Page Number: 260<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' AC and DC output voltage '''",
- "",
- "# variable declaration",
- "I_DSS=200.0*10**-3;",
- "g_m=200.0*10**-3;",
- "V_in=500.0*10**-3;",
- "V_DD=15.0;",
- "R_D=33.0;",
- "R_L=8.2*10**3;",
- "",
- "#calculation",
- "I_D=I_DSS; #Amplifier is zero biased",
- "V_D=V_DD-I_D*R_D;",
- "R_d=(R_D*R_L)/(R_D+R_L);",
- "V_out=g_m*R_d*V_in;",
- "",
- "#result",
- "print \"DC output voltage = %.2f Volts\" %V_D",
- "print \"AC output voltage = %.2f volts\" %V_out"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "DC output voltage = 8.40 Volts",
- "AC output voltage = 3.29 volts"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.8, Page Number: 262<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' Drain Current '''",
- "",
- "# Theoretical example",
- "# result",
- "",
- "print \"Part A:\\nQ point: V_GS=-2V I_D=2.5mA. At V_GS=-1V, I_D=3.4mA,\"",
- "print \"At V_GS=-3V, I_D=1.8mA. So peak to peak drain current is\" ",
- "print \"the difference of the two drain currents=1.6mA\"",
- "print \"\\nPart B:\\nQ point: V_GS=0V I_D=4mA. At V_GS=1V, I_D=5.3mA,\"",
- "print \"At V_GS=-1V, I_D=2.5mA. So peak to peak drain current is\"",
- "print\" the difference of the two drain currents=2.8mA\"",
- "print \"\\nPart C:\\nQ point: V_GS=8V I_D=2.5mA. At V_GS=9V, I_D=3.9mA,\"",
- "print \" At V_GS=7V, I_D=1.7mA. So peak to peak drain current is\"",
- "print \" the difference of the two drain currents=2.2mA\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Part A:",
- "Q point: V_GS=-2V I_D=2.5mA. At V_GS=-1V, I_D=3.4mA,",
- "At V_GS=-3V, I_D=1.8mA. So peak to peak drain current is",
- "the difference of the two drain currents=1.6mA",
- "",
- "Part B:",
- "Q point: V_GS=0V I_D=4mA. At V_GS=1V, I_D=5.3mA,",
- "At V_GS=-1V, I_D=2.5mA. So peak to peak drain current is",
- " the difference of the two drain currents=2.8mA",
- "",
- "Part C:",
- "Q point: V_GS=8V I_D=2.5mA. At V_GS=9V, I_D=3.9mA,",
- " At V_GS=7V, I_D=1.7mA. So peak to peak drain current is",
- " the difference of the two drain currents=2.2mA"
- ]
- }
- ],
- "prompt_number": 8
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.9, Page Number:263 <h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' To find Voltage gain'''",
- "",
- "# variable declaration",
- "R_1=47.0*10**3;",
- "R_2=8.2*10**3;",
- "R_D=3.3*10**3;",
- "R_L=33.0*10**3;",
- "I_D_on=200.0*10**-3;",
- "V_GS=4.0;",
- "V_GS_th=2.0;",
- "g_m=23*10**-3;",
- "V_in=25*10**-3;",
- "V_DD=15.0;",
- "",
- "#calculation",
- "V_GSnew=(R_2/(R_1+R_2))*V_DD;",
- "K=I_D_on/((V_GS-V_GS_th)**2)",
- "#K=value_of_K(200*10**-3,4,2);",
- "K=K*1000;",
- "I_D=K*((V_GSnew-V_GS_th)**2);",
- "V_DS=V_DD-I_D*R_D/1000;",
- "R_d=(R_D*R_L)/(R_D+R_L);",
- "V_out=g_m*V_in*R_d;",
- "",
- "#result",
- "print \"Drain to source voltage = %.2f volts\" %V_GSnew",
- "print \"Drain current = %.2f mA\" %I_D",
- "print \"Gate to source voltage = %.2f volts\" %V_DS",
- "print \"AC output voltage = %.2f volts\" %V_out",
- "print \"Answer in textbook are approximated\""
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Drain to source voltage = 2.23 volts",
- "Drain current = 2.61 mA",
- "Gate to source voltage = 6.40 volts",
- "AC output voltage = 1.72 volts",
- "Answer in textbook are approximated"
- ]
- }
- ],
- "prompt_number": 9
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 8.10, Page Number: 266<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' AC and DC output voltage''' ",
- "",
- "# variable declaration",
- "V_DD=-15.0; #p=channel MOSFET",
- "g_m=2000.0*10**-6; #minimum value from datasheets",
- "R_D=10.0*10**3;",
- "R_L=10.0*10**3;",
- "R_S=4.7*10**3;",
- "",
- "#calculation",
- "R_d=(R_D*R_L)/(R_D+R_L); #effective drain resistance",
- "A_v=g_m*R_d;",
- "R_in_source=1.0/g_m;",
- "#signal souce sees R_S in parallel with ip rest at source terminal(R_in_source)",
- "R_in=(R_in_source*R_S)/(R_in_source+R_S); ",
- "",
- "#result ",
- "print \"minimum voltage gain = %.2f\" %A_v",
- "print \"Input resistance seen from signal source = %.2f ohms\" %R_in"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "minimum voltage gain = 10.00",
- "Input resistance seen from signal source = 451.92 ohms"
- ]
- }
- ],
- "prompt_number": 10
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter9.ipynb b/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter9.ipynb
deleted file mode 100644
index a4cd060..0000000
--- a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/Chapter9.ipynb
+++ /dev/null
@@ -1,379 +0,0 @@
-{
- "metadata": {
- "name": "Chapter_9"
- },
- "nbformat": 2,
- "worksheets": [
- {
- "cells": [
- {
- "cell_type": "markdown",
- "source": [
- "<h1>Chapter 9: Power Amplifiers<h1>"
- ]
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.1, Page Number: 280<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "'''Voltage gain'''",
- "",
- "# variable declaration",
- "V_CC=15.0; #supply voltage",
- "R_C=1.0*10**3; #resistance in ohm",
- "R_1=20.0*10**3; #resistance in ohm",
- "R_2=5.1*10**3; #resistance in ohm",
- "R_3=5.1*10**3; #resistance in ohm",
- "R_4=15.0*10**3; #resistance in ohm",
- "R_E_1=47.0; #resistance in ohm",
- "R_E_2=330.0; #resistance in ohm",
- "R_E_3=16.0; #resistance in ohm",
- "R_L=16.0; #SPEAKER IS THE LOAD;",
- "B_ac_Q1=200.0; #B_ac value",
- "B_ac_Q2=B_ac_Q1; #B_ac value",
- "B_ac_Q3=50.0; #B_ac value",
- "",
- "#calculation",
- "#R_c1=R_C||[R_3||R_4||B_acQ2*B_ac_Q3*(R_E_3||R_L)] is ac collector resistance",
- "R=(R_E_3*R_L)/(R_E_3+R_L); #calculating resistance",
- "R=B_ac_Q2*B_ac_Q3*R; ",
- "R=(R*R_4)/(R+R_4); #calculating resistance",
- "R=(R*R_3)/(R+R_3);",
- "R_c1=(R*R_C)/(R_C+R); #ac collector resistance",
- "#V_B=((R_2||(B_acQ1*(R_E_1+R_E_2)))/(R_1+(R_2||B_acQ1*(R_E_1+R_E_2))))*V_CC;",
- "#This is the base voltage;",
- "#LET R=(R_2||(B_acQ1*(R_E_1+R_E_2)))",
- "R=(R_2*B_ac_Q1*(R_E_1+R_E_2))/(R_2+B_ac_Q1*(R_E_1+R_E_2));",
- "V_B=R*V_CC/(R_1+R);",
- "I_E=(V_B-0.7)/(R_E_1+R_E_2);",
- "r_e_Q1=25.0*10**-3/I_E;",
- "A_v1=(-1)*(R_c1)/(R_E_1+r_e_Q1); #voltage gain of 1st stage",
- "#total input resistance of 1st stage is ",
- "#R_in_tot_1=R_1||R_2||B_ac_Q1*(R_E_1+r_e_Q1);",
- "xt=R_E_1+r_e_Q1 ",
- "yt=R_2*B_ac_Q1",
- "R_in_tot_1=(R_1*(yt*(xt)/(R_2+B_ac_Q1*(xt))))/(R_1+(yt*(xt)/(yt*(xt))));",
- "A_v2=1; #gain of darlington voltage-follower",
- "A_v_tot=A_v1*A_v2; #total gain",
- "A_p=(A_v_tot**2)*(R_in_tot_1/R_L); #power gain",
- "A_p=42508.68",
- "",
- "#result",
- "print \"Voltage gain= %.2f\" %A_v_tot",
- "print \"Power gain= %.2f\" %A_p"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "Voltage gain= -15.29",
- "Power gain= 42508.68"
- ]
- }
- ],
- "prompt_number": 1
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.2, Page Number: 281<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' efficiency'''",
- "",
- "# variable declaration",
- "V_in=176.0*10**-3;",
- "R_in=2.9*10**3; #total input resistance from previous question",
- "A_p=42429.0; #power gain from previous question",
- "V_CC=15.0;",
- "I_CC=0.6; #emitter current",
- "",
- "#calculation",
- "P_in=V_in**2/R_in; #input power",
- "P_out=P_in*A_p;",
- "P_DC=I_CC*V_CC;",
- "eff=P_out/P_DC; #efficiency",
- "",
- "#result",
- "print \"efficiency= %.2f\" %eff"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "efficiency= 0.05"
- ]
- }
- ],
- "prompt_number": 2
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.3, Page Number: 287<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' ideal maximum current'''",
- "",
- "# variable declaration",
- "V_CC=20.00; #supply voltage",
- "R_L=16.0; #load resistance",
- "",
- "#calculation",
- "V_out_peak=V_CC; #calculate peak op voltage",
- "I_out_peak=V_CC/R_L; #calculate peak op current",
- "",
- "#result",
- "print \"ideal maximum peak output voltage = %.2f volts\" %V_out_peak",
- "print \"ideal maximum current =%.2f amperes\" %I_out_peak"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ideal maximum peak output voltage = 20.00 volts",
- "ideal maximum current =1.25 amperes"
- ]
- }
- ],
- "prompt_number": 3
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.4, Page Number: 288<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' ideal maximum current'''",
- "",
- "# variable declaration",
- "V_CC=20.0; #supply volatge",
- "R_L=16.0; #load resistance",
- "",
- "#calculation",
- "V_out_peak=V_CC/2;",
- "I_out_peak=V_out_peak/R_L;",
- "",
- "#result",
- "print \"ideal maximum output peak voltage = %.2f volts\" %V_out_peak",
- "print \"ideal maximum current = %.2f amperes\" %I_out_peak"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "ideal maximum output peak voltage = 10.00 volts",
- "ideal maximum current = 0.62 amperes"
- ]
- }
- ],
- "prompt_number": 4
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.5, Page Number: 290<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' ideal maximum current'''",
- "",
- "import math",
- "# variable declaration",
- "V_CC=20.0; #supply voltage",
- "R_L=8.0; #load resistance",
- "B_ac=50.0; #B_ac value",
- "r_e=6.0; #internal resistance",
- "",
- "#calculation",
- "V_out_peak=V_CC/2;",
- "V_CEQ=V_out_peak;",
- "I_out_peak=V_CEQ/R_L;",
- "I_c_sat=I_out_peak;",
- "P_out=0.25*I_c_sat*V_CC;",
- "P_DC=(I_c_sat*V_CC)/math.pi;",
- "R_in=B_ac*(r_e+R_L);",
- "",
- "#result",
- "print \"maximum ac output power = %.2f Watts\" %P_out",
- "print \"maximum DC output power = %.2f Watts\" %P_DC",
- "print \"input resistance = %.2f ohms\" %R_in"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "maximum ac output power = 6.25 Watts",
- "maximum DC output power = 7.96 Watts",
- "input resistance = 700.00 ohms"
- ]
- }
- ],
- "prompt_number": 5
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.6, Page Number: 292<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' power accross load'''",
- "",
- "import math",
- "# variable declaration",
- "V_DD=24.0;",
- "V_in=100*10**-3; #ip volatge",
- "R1=440.0; #resistance in ohm",
- "R2=5.1*10**3; #resistance in ohm",
- "R3=100*10**3; #resistance in ohm",
- "R4=10**3; #resistance in ohm",
- "R5=100.0; #resistance in ohm",
- "R7=15*10**3; #resistance in ohm",
- "R_L=33.0; #load resistance in ohm",
- "V_TH_Q1=2.0; # V-TH value",
- "V_TH_Q2=-2.0; ",
- "",
- "#calculation",
- "I_R1=(V_DD-(-V_DD))/(R1+R2+R3);",
- "V_B=V_DD-I_R1*(R1+R2); #BASE VOLTAGE",
- "V_E=V_B+0.7; #EMITTER VOLTAGE",
- "I_E=(V_DD-V_E)/(R4+R5); #EMITTER CURRENT",
- "V_R6=V_TH_Q1-V_TH_Q2; #VOLTAGE DROP ACROSS R6",
- "I_R6=I_E; ",
- "R6=V_R6/I_R6;",
- "r_e=25*10**-3/I_E; #UNBYPASSED EMITTER RESISTANCE",
- "A_v=R7/(R5+r_e); #VOLTAGE GAIN",
- "V_out=A_v*V_in;",
- "P_L=V_out**2/R_L;",
- "",
- "#result",
- "print \"value of resistance R6 = %.2d ohms for AB operation\" %R6",
- "print \"power across load = %.2f watts\"%P_L "
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "value of resistance R6 = 2418 ohms for AB operation",
- "power across load = 5.15 watts"
- ]
- }
- ],
- "prompt_number": 6
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.7, Page Number:295<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' average power dissipation'''",
- "",
- "import math",
- "# variable declaration",
- "f=200.0*10**3; #frequency in hertz",
- "I_c_sat=100.0*10**-3; #saturation current",
- "V_ce_sat=0.2; #sat voltage",
- "t_on=1.0*10**-6; #on time",
- "",
- "#calculation",
- "T=1/f; #time period of signal",
- "P_D_avg=(t_on/T)*I_c_sat*V_ce_sat; #power dissipation",
- "",
- "#result",
- "print \"average power dissipation =%.3f Watts\" %P_D_avg"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "average power dissipation =0.004 Watts"
- ]
- }
- ],
- "prompt_number": 7
- },
- {
- "cell_type": "markdown",
- "source": [
- "<h3>Example 9.8, Page Number: 298<h3>"
- ]
- },
- {
- "cell_type": "code",
- "collapsed": false,
- "input": [
- "''' efficiency'''",
- "",
- "import math",
- "# variable declaration",
- "P_D_avg=4.0*10**-3; #power dissipation",
- "V_CC=24.0; #supply voltage",
- "R_c=100.0; #resistance in ohm",
- "",
- "#calculation",
- "P_out=(0.5*V_CC**2)/R_c; #output power",
- "n=(P_out)/(P_out+P_D_avg); #n is efficiency",
- "",
- "#result",
- "print \"efficiency=%.4f\" %n"
- ],
- "language": "python",
- "outputs": [
- {
- "output_type": "stream",
- "stream": "stdout",
- "text": [
- "efficiency=0.9986"
- ]
- }
- ],
- "prompt_number": 8
- }
- ]
- }
- ]
-} \ No newline at end of file
diff --git a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter2.png b/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter2.png
deleted file mode 100644
index 8b4a277..0000000
--- a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter2.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter4.png b/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter4.png
deleted file mode 100644
index 9aa5de3..0000000
--- a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/Chapter4.png
+++ /dev/null
Binary files differ
diff --git a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/xyz.png b/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/xyz.png
deleted file mode 100644
index a3aae3c..0000000
--- a/tbc/static/uploads/Jayumar/Chemical Engineering Basics/screenshots/xyz.png
+++ /dev/null
Binary files differ