summaryrefslogtreecommitdiff
path: root/Solid_State_Pulse_Circuits
diff options
context:
space:
mode:
Diffstat (limited to 'Solid_State_Pulse_Circuits')
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_1.ipynb389
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_10.ipynb94
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_11.ipynb59
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_12.ipynb151
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_13.ipynb104
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_14.ipynb144
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_15.ipynb182
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_2.ipynb389
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_3.ipynb372
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_4.ipynb419
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_5.ipynb192
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_6.ipynb295
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_7.ipynb304
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_8.ipynb178
-rwxr-xr-xSolid_State_Pulse_Circuits/Chapter_9.ipynb385
-rwxr-xr-xSolid_State_Pulse_Circuits/screenshots/Screenshot1_SSPC.pngbin0 -> 87346 bytes
-rwxr-xr-xSolid_State_Pulse_Circuits/screenshots/Screenshot2_SSPC.pngbin0 -> 91037 bytes
-rwxr-xr-xSolid_State_Pulse_Circuits/screenshots/Screenshot3_SSPC.pngbin0 -> 90752 bytes
18 files changed, 3657 insertions, 0 deletions
diff --git a/Solid_State_Pulse_Circuits/Chapter_1.ipynb b/Solid_State_Pulse_Circuits/Chapter_1.ipynb
new file mode 100755
index 00000000..46e3fef2
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_1.ipynb
@@ -0,0 +1,389 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:713321f65fd84ba9c4674fa3873dd2848da0b4de310a07717d67fbc6a52c86ad"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 1 - PULSE FUNDAMENTALS "
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 9"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Find (a)Pulse amplitude (b)PRF (c)PW (d)Duty cycle and (e)M/S ratio\n",
+ "v=1.#Vertical scale(Volt per division)\n",
+ "h=0.1#Horizontal scale(Milli sec per division)\n",
+ "pv=3.5#Amplitude of pulse in divisions\n",
+ "t=6.#Time in divisions\n",
+ "pw=2.5#Width of pulse\n",
+ "P=pv*v\n",
+ "print '%s %.1f' %('(a)Pulse Amplitude (in volts)=',P)\n",
+ "T=t*h\n",
+ "prf=(1/T)*1000\n",
+ "print '%s %.f' %('(b)PRF(in pps)=',prf)\n",
+ "p=pw*h\n",
+ "print '%s %.2f' %('(c)PW (in ms)=',p)\n",
+ "sw=pv*h\n",
+ "d=(p/T)*100\n",
+ "print '%s %.1f' %('(d)Duty cycle(in %)=',d)\n",
+ "m=p/sw\n",
+ "print '%s %.2f' %('(e)M/S ratio=',m)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Pulse Amplitude (in volts)= 3.5\n",
+ "(b)PRF(in pps)= 1667\n",
+ "(c)PW (in ms)= 0.25\n",
+ "(d)Duty cycle(in %)= 41.7\n",
+ "(e)M/S ratio= 0.71\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 12"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine (a)Pulse amplitude,tilt,rise time,fall time,PW,PRF,mark to space ratio,and duty cycle (b)tilt\n",
+ "vs=100.#Vertical scale(in mv/divisions)\n",
+ "hs=100.#Horizontal scale(in micro sec/division)\n",
+ "e1=380.#first peak of waveform(in mv)\n",
+ "e2=350.#second peak of waveform(in mv)\n",
+ "E=(e1+e2)/2.\n",
+ "t=(e1-e2)*100./E\n",
+ "tr=0.3*hs\n",
+ "tf=0.4*hs\n",
+ "T=5.*hs\n",
+ "prf=10.**6./T\n",
+ "pw=2.2*hs\n",
+ "sw=2.8*hs\n",
+ "ms=pw/sw\n",
+ "dc=(pw*100.)/T\n",
+ "print '%s %.f'%('(a)Pulse Amplitude(in mv)=',E)\n",
+ "print '%s %.1f'%('(a)tilt(in %)',t)\n",
+ "print '%s %.f'%('(a)rise time(in micro sec)=',tr)\n",
+ "print '%s %.f'%('(a)fall time(in micro sec)=',tf)\n",
+ "print '%s %.f'%('(a)PW(in micro sec)=',pw)\n",
+ "print '%s %.f'%('(a)PRF(in pps)=',prf)\n",
+ "print '%s %.2f'%('(a)M/s ratio=',ms)\n",
+ "print '%s %.f' %('(a)Duty cycle(in %)=',dc)\n",
+ "eb=0.5*vs\n",
+ "ee=2.25*vs\n",
+ "tb=eb*100./ee\n",
+ "print '%s %.1f' %('(b)Tilt(in %)=',tb)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Pulse Amplitude(in mv)= 365\n",
+ "(a)tilt(in %) 8.2\n",
+ "(a)rise time(in micro sec)= 30\n",
+ "(a)fall time(in micro sec)= 40\n",
+ "(a)PW(in micro sec)= 220\n",
+ "(a)PRF(in pps)= 2000\n",
+ "(a)M/s ratio= 0.79\n",
+ "(a)Duty cycle(in %)= 44\n",
+ "(b)Tilt(in %)= 22.2\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 15"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine average voltage level\n",
+ "vs=2.#Vertical scale(V/div)\n",
+ "hs=1.#Horizontal scale(ms/div)\n",
+ "v1=8.#Amplitude of signal in (+)ve direction (in volts)\n",
+ "v2=-1.#Amplitude of signal in (-)ve direction (in volts)\n",
+ "t1=0.8#Horizontal divisions for v1\n",
+ "t2=2.2#Horizontal divisions for v2\n",
+ "T=3.*hs\n",
+ "T1=t1*hs\n",
+ "T2=t2*hs\n",
+ "Va=((T1*v1)+(T2*v2))/T\n",
+ "print '%s %.1f' %('Average voltage (in volts)=',Va)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Average voltage (in volts)= 1.4\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 20"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine the upper 3db frequency of the amplifier\n",
+ "tr=1.#Rise time(in micro sec)\n",
+ "fu=0.35*10**3/tr\n",
+ "print '%s %.f' %('The upper 3db frequency of the amplifier(in khertz)=',fu)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The upper 3db frequency of the amplifier(in khertz)= 350\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 21"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine (a)Minimum upper cut frequency (b)Minimum pulse width and duty cycle\n",
+ "prf=1.5#in Khz\n",
+ "dc=3.#Duty cycle(in %)\n",
+ "pa=1.5#Amplitude of pulse(in Khz)\n",
+ "fu=1.#High frequency limit(in Mhz)\n",
+ "tr=10.#Rise time(in %)\n",
+ "pw=(dc/100.)*10.**6./pa\n",
+ "Tr=(tr/100.)*pw\n",
+ "fh=0.35*10.**6./Tr\n",
+ "print '%s %.f' %('(a)Minimum upper cut frequency(in hertz)=',fh)\n",
+ "Tr2=0.35*10.**(-6.)/fu\n",
+ "Pw=10.*Tr2\n",
+ "dc=Pw*100.*(pa*1000.)\n",
+ "print '%s %.7f' %('(b)Pulse width(in sec)=',Pw)\n",
+ "print '%s %.1f' %('(b)Duty cycle(in %)=',dc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Minimum upper cut frequency(in hertz)= 175\n",
+ "(b)Pulse width(in sec) and Duty cycle(in %)= 0.0000035\n",
+ "(b)Duty cycle(in %)= 0.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 22"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate (a)Rise time in output waveform (b)Minimum upper cut off frequency and print '%s %.2f' %layed rise time\n",
+ "import math\n",
+ "tr=10.#Rise time of input waveform(in micro sec)\n",
+ "fu=350.#Upper cut off frequency(in KHz)\n",
+ "ti=100.#Input rise time(in ns)\n",
+ "trc=0.35*(10.**(-3.))/350.\n",
+ "tro=math.sqrt(((tr)*(10.**(-6.)))**2.+(trc**2.))*10.**6.\n",
+ "print '%s %.2f' %('(a)Rise Time(in Micro sec)=',tro)\n",
+ "tc=ti*(10.**(-9.))/3.\n",
+ "fh=0.35*10.**(-6.)/tc\n",
+ "Tro=math.sqrt((ti*(10.**(-9.)))**2.+(tc**2.))*10.**9.\n",
+ "print '%s %.1f' %('(b)Minimum upper cut off frequency(in Mhz)=',fh)\n",
+ "print '%s %.f' %('(b)rise time(in ns)=',Tro)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Rise Time(in Micro sec)= 10.05\n",
+ "(b)Minimum upper cut off frequency(in Mhz)= 10.5\n",
+ "(b)rise time(in ns)= 105\n"
+ ]
+ }
+ ],
+ "prompt_number": 16
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E7 - Pg 23"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate lowest input frequency \n",
+ "import math\n",
+ "fl=10.#Lower cutoff frequency(in hertz)\n",
+ "t=0.02#Tilt on output waveform\n",
+ "f=math.pi*fl/(t*1000)\n",
+ "print '%s %.2f' %('Lowest input frequency(in Khz)=',f)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Lowest input frequency(in Khz)= 1.57\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E8 - Pg 23"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine (a)upper cutoff frequency (b)lower cutoff frequency\n",
+ "import math\n",
+ "f=1.#frequency of square wave(in khz)\n",
+ "tr=200.#rise time of output(in ns)\n",
+ "t=0.03#fractional tilt\n",
+ "fh=0.35*10.**3./tr\n",
+ "print '%s %.2f' %('(a)upper cutoff frequency(in MHz)=',fh) \n",
+ "fl=f*t*1000./math.pi\n",
+ "print '%s %.1f' %('(b)Lower cutoff frequency(in Hz)=',fl)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)upper cutoff frequency(in MHz)= 1.75\n",
+ "(b)Lower cutoff frequency(in Hz)= 9.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 19
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E9 - Pg 24"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine upper and lower Frequencies\n",
+ "import math\n",
+ "tr=30.#Rise time(in micro sec)\n",
+ "PRF=2000.#Pulse repetition Frequency(in pps)\n",
+ "t=0.082#Tilt(in %)\n",
+ "Pw=220.#Pulse width(in micro sec)\n",
+ "fh=0.35*10.**(3.)/tr\n",
+ "fl=t*10.**6./(2.*math.pi*Pw)\n",
+ "print '%s %.2f' %('Upper frequency(in kHz)=',fh)\n",
+ "print '%s %.1f' %('lower frequency(in Hz)=',fl)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Upper frequency(in kHz)= 11.67\n",
+ "lower frequency(in Hz)= 59.3\n"
+ ]
+ }
+ ],
+ "prompt_number": 21
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_10.ipynb b/Solid_State_Pulse_Circuits/Chapter_10.ipynb
new file mode 100755
index 00000000..1505e51a
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_10.ipynb
@@ -0,0 +1,94 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d6dce9450ff5762e74d24ec873c125e55f0da76ef5ec731320a5f691097d6889"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 10 - Basic Logic Gates and Logic Functions"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 313"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine low and high voltage outputs and resistance for desinging the gate circuit\n",
+ "Vcc=5.#Supply voltage(in volts)\n",
+ "Vf=0.7#Diode forward voltage(in volts)\n",
+ "I=0.5#Collector current(in mA)\n",
+ "Vce=0.2#Collector emitter voltage(in volts)\n",
+ "R=(Vcc-Vf-Vce)/I\n",
+ "Vl=Vce+Vf\n",
+ "Vh=Vcc\n",
+ "print '%s %.1f %s %.f %s %.1f' %('Lowvoltage outputs(in volts)=',Vl,'\\nhigh voltage outputs(in volts)=',Vh,'\\nRequired resistance(in kilo ohm)=',R)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Lowvoltage outputs(in volts)= 0.9 \n",
+ "high voltage outputs(in volts)= 5 \n",
+ "Required resistance(in kilo ohm)= 8.2\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 315"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Find minimum value of the resistance to design OR Gate\n",
+ "Rc=3.3#Collector resistance(in kilo ohm)\n",
+ "V=3.508#Gate output voltage(in volts)\n",
+ "Vcc=5.#Supply voltage(in volts)\n",
+ "Vf=0.7#Forward diode voltage(in volts)\n",
+ "I=(Vcc-Vf-V)/Rc\n",
+ "R=V/I\n",
+ "print '%s %.1f' %('Minimum value of resistance to design the circuit is(in kilo ohm)=',R)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Minimum value of resistance to design the circuit is(in kilo ohm)= 14.6\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_11.ipynb b/Solid_State_Pulse_Circuits/Chapter_11.ipynb
new file mode 100755
index 00000000..bc511f41
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_11.ipynb
@@ -0,0 +1,59 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:8e00642f6ddacd443d3eb4854826bbe2637913084178e4532673ce919908eaea"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 11 - Logic Circuits"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 340"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine output for given logic circuit\n",
+ "A=1.\n",
+ "B=0\n",
+ "C=1.\n",
+ "D=1.\n",
+ "c=A-1.\n",
+ "n=c#Output of NOT gate\n",
+ "a=B*C*D#Output of AND gate\n",
+ "o=c+(B*C*D)#Output of OR gate\n",
+ "print '%s %.f' %('Output for given logic circuit is=',o)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output for given logic circuit is= 0\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_12.ipynb b/Solid_State_Pulse_Circuits/Chapter_12.ipynb
new file mode 100755
index 00000000..abbca68a
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_12.ipynb
@@ -0,0 +1,151 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:89c00d18387baa8ff8cb1569e29bf4fd2a1dcb717ea9b58f880f8e28f32b148c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 12 - Integrated Circuit Logic Gates"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 372"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption: Determine fan out for DTL NAND gate \n",
+ "hfe=19.1\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "R3=6.#Resistance(in kilo ohm)\n",
+ "R2=5.#Resistance(in kilo ohm)\n",
+ "Vcc=5.#Supply voltage(in volts)\n",
+ "R1=2.#Resistance(in kilo ohm)\n",
+ "Vce=0.2#Collector emitter voltage(in volts)\n",
+ "Vf4=0.7#Diode forward voltage\n",
+ "Vf5=Vf4\n",
+ "Vf6=Vf4\n",
+ "I2=Vbe/R2\n",
+ "Va=Vf4+Vf5+Vbe\n",
+ "I1=(Vcc-Va)/R1\n",
+ "Ib=I1-I2\n",
+ "Ic1=hfe*Ib\n",
+ "I3=(Vcc-Vce)/R3\n",
+ "Iol=Ic1-I3\n",
+ "R4=R1\n",
+ "Iil=(Vcc-Vf6)/R4\n",
+ "fo=Iol/Iil\n",
+ "print '%s %.f' %('Fan out=',fo)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Fan out= 11\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 381"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine Resistance to drive inputs of 5 TTL gates\n",
+ "Ii=1.6#Maximum input current(in mA)\n",
+ "Io=16.#Maximum output current(in mA)\n",
+ "Vcc=5.#Supply voltage(in volts)\n",
+ "Vo=0.4#Maximum output voltage(in volts)\n",
+ "Il=5.*Ii\n",
+ "Irc=Io-Il\n",
+ "Vrc=(Vcc-Vo)\n",
+ "Rc=Vrc*1000./Irc\n",
+ "print '%s %.f' %('Required resistance(in ohm)=',Rc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required resistance(in ohm)= 575\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 403"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a interface circuit for CMOS\n",
+ "Vdd=15.#Drain voltage(in volts)\n",
+ "Rd=1.#Drain resistance(in kilo ohm)\n",
+ "Vcc=5.#Supply voltage(in volts)\n",
+ "Ih=40.#Current(in micro ampere)\n",
+ "hfe=20.\n",
+ "Vce=0.2#Saturated collector emitter voltage(in volts)\n",
+ "vih=2.#High input voltage(in volts)\n",
+ "il=1.6#Low input current\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Rc=(Vcc-vih)*1000./(2.*Ih)\n",
+ "Ic=((Vcc-Vce)/Rc)+(2.*il)\n",
+ "Ib=Ic/hfe\n",
+ "R=(Vdd-Vbe)/Ib\n",
+ "Rb=R-Rd\n",
+ "print '%s %.1f %s %.1f' %('Components required to design circuit are resistors \\nRb(in kilo ohm)=',Rb,'\\nRc(in kilo ohm)=',Rc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required to design circuit are resistors \n",
+ "Rb(in kilo ohm)= 84.9 \n",
+ "Rc(in kilo ohm)= 37.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_13.ipynb b/Solid_State_Pulse_Circuits/Chapter_13.ipynb
new file mode 100755
index 00000000..ae28c67f
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_13.ipynb
@@ -0,0 +1,104 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:f9475ffbc67754cff4c4dd7e2520c8d46bc60bf8586e00e3a5ba9355352315e0"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 13 - Bistable Multivibrators (Flip-Flops)"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 413"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine the capacitance for flip flop design and triggering frequency \n",
+ "#Ex13.4\n",
+ "R1=16.1#Resistor(in kilo ohm)\n",
+ "R2=27#Resistor(in kilo ohm)\n",
+ "t=260#time(in ns)\n",
+ "R=R1*R2/(R1+R2)\n",
+ "C=t/(0.1*R)\n",
+ "f=10**6/(2.3*C*R)\n",
+ "print '%s %.f %s %.f' %(\"Capacitance(in pF)=\",C,\"\\nFrequency(in Khz)=\",f)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Capacitance(in pF)= 258 \n",
+ "Frequency(in Khz)= 167\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 423 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a collector coupled bistable multivibrator\n",
+ "#Ex13.1\n",
+ "V=5.#Supply voltage(in volts)\n",
+ "Ic=2.#Saturated collector current(in mA)\n",
+ "Vce=0.2#Collector emitter voltage(in volts)\n",
+ "hfe=70.\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Vbb=-5.#Base voltage(in volts)\n",
+ "Rc=(V-Vce)/Ic\n",
+ "Ib=Ic/hfe\n",
+ "Vb1=Vbe-Vbb\n",
+ "I2=Ic/10.\n",
+ "R2=Vb1/I2\n",
+ "I2=Vb1/R2\n",
+ "R=(V-Vbe)/(I2+Ib)\n",
+ "R1=R-Rc\n",
+ "print '%s %.1f %.1f %.1f' %('Components required to design the circuit are resistors(in kilo ohm)=',Rc,R1,R2)\n",
+ "\n",
+ "#R1 value is corrected "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required to design the circuit are resistors(in kilo ohm)= 2.4 16.4 28.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_14.ipynb b/Solid_State_Pulse_Circuits/Chapter_14.ipynb
new file mode 100755
index 00000000..cd6db294
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_14.ipynb
@@ -0,0 +1,144 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:15f85d6f61d4b6a1042826b7462beabaf536952c7c03e1ccf7c6cc8bf5becf3e"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 - Digital Counting and Measurment"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 453"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine Resistors Rc and Rb\n",
+ "#Ex14.1\n",
+ "Vcc=5.#Collector voltage(in volts)\n",
+ "Vi=5.#Input voltage(in volts)\n",
+ "Vf=1.2#Diode forward voltage(in volts)\n",
+ "hfe=100.\n",
+ "I=20.#Diode minimum forward current(in mA)\n",
+ "Vce=0.2#Collector emitter saturated voltage(in volts)\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Rc=(Vcc-Vf-Vce)*1000./I\n",
+ "Ib=I*1000./hfe\n",
+ "Rb=(Vi-Vbe)*1000./Ib\n",
+ "print '%s %.f' %('Resistors are Rc(in kilo ohm) =',Rc)\n",
+ "print '%s %.1f' %('Resistors are Rb(in kilo ohm) =',Rb)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Resistors are Rc(in kilo ohm) = 180\n",
+ "Resistors are Rb(in kilo ohm) = 21.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 475"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine meter indication when time base uses (a)6 decade counter (b)4 decade counter\n",
+ "#Ex14.5\n",
+ "f=3500.#Applied frequency(in hz)\n",
+ "F=10.**6.#Clock generator frequency(in hz)\n",
+ "f1=F/(10.**6.)\n",
+ "t1=1./f1\n",
+ "c1=f*t1\n",
+ "print '%s %.f' %('Cycles of input counted during t1=',c1)\n",
+ "f2=F/(10.**4.)\n",
+ "t2=1./f2\n",
+ "c2=f*t2\n",
+ "print '%s %.f' %('Cycles of input counted during t2=',c2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Cycles of input counted during t1= 3500\n",
+ "Cycles of input counted during t2= 35\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 483"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine required current\n",
+ "#Ex14.6\n",
+ "c=1280.#Input wave clock cycles\n",
+ "f=200.#Output frequency(in khz)\n",
+ "p=1000.#Pulses during t2\n",
+ "V=1.#Input voltage(in volts)\n",
+ "R=10.#Resistance(in kilo ohm)\n",
+ "C=0.1#Capacitance(in micro farad)\n",
+ "I=V*1000./R\n",
+ "T=1000./f\n",
+ "t1=T*c\n",
+ "vo=(I*t1)/(C*1000.)\n",
+ "t2=T*p\n",
+ "Ir=C*vo*1000./t2\n",
+ "print '%s %.f' %('Required current(in micro ampere)=',Ir)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required current(in micro ampere)= 128\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_15.ipynb b/Solid_State_Pulse_Circuits/Chapter_15.ipynb
new file mode 100755
index 00000000..ffc067f2
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_15.ipynb
@@ -0,0 +1,182 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:c536e76d90eae6f1eede1cdd9e694d9c8eb0678157f5d1a96e0f9e1b8f802232"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 15 - Sampling, Conversion, Modulation and Multiplexing"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 496"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine the errors due to Rs and Rd\n",
+ "#Ex15.1\n",
+ "Vs=1.#Source voltage(in volts)\n",
+ "Rs=100.#Source resistance(in ohm)\n",
+ "Rl=10.#Load resistance(in kilo ohm)\n",
+ "Rd=30.#Drain resistance(in ohm)\n",
+ "Vgs=10.#Gate source voltage(in volts)\n",
+ "V1=-(Vs+Vgs+1.)\n",
+ "Id=Vs/(Rs+Rd+Rl)\n",
+ "e1=(Id*Rs)*100./(Vs)\n",
+ "e2=(Id*Rd)*100./(Vs)\n",
+ "print '%s %.2f' %('Errors due to Rs(in %)=',e1)\n",
+ "print '%s %.2f' %('Errors due to Rd(in %)=',e2)\n",
+ "#Calclation error in textbook"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Errors due to Rs(in %)= 71.43\n",
+ "Errors due to Rd(in %)= 21.43\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 501"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine capacitance and minimum acquisition time\n",
+ "#Ex15.2\n",
+ "Vs=1.#Supply voltage(in volts)\n",
+ "a=0.25#Accuracy(in %)\n",
+ "t=500.#Holding time(in micro sec)\n",
+ "Ib=500.#Maximum base current(in nA)\n",
+ "Rd=30.#Drain Resistance(in ohm)\n",
+ "v=Vs*0.1/100.\n",
+ "C=Ib*t*10.**(-9.)/v\n",
+ "T=7.*C*Rd\n",
+ "print '%s %.2f' %('Required capacitance(in micro farad)=',C,)\n",
+ "print '%s %.1f' %('Required acquisition time(in micro sec)=',T)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required capacitance(in micro farad)= 0.25\n",
+ "Required acquisition time(in micro sec)= 52.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 502"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine the error due to capacitance\n",
+ "#Ex15.3\n",
+ "Vgs=10.#Gate source voltage(in volts)\n",
+ "C=10.5#Capacitance(in pF)\n",
+ "Vs=1.#Supply voltage(in volts)\n",
+ "C1=0.25#Capacitance(in micro farad)\n",
+ "V1=-(Vs+Vgs+1.)\n",
+ "Vgsm=Vs-(V1)\n",
+ "Q=C*Vgsm\n",
+ "Vo=Q/C1\n",
+ "e=Vo*10.**(-6.)*100./Vs\n",
+ "print '%s %.2f' %('Error due to capacitance(in %)=',e)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Error due to capacitance(in %)= 0.05\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 505"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#caption:Calculate the output voltage\n",
+ "#Ex15.4\n",
+ "Vie=1.#Input voltage for resistor Re(in volts)\n",
+ "Vid=0#Input voltage for resistor Rd(in volts)\n",
+ "Vic=1.#Input voltage for resistor Rc(in volts)\n",
+ "Vib=1.#Input voltag for resistor Rb(in volts)\n",
+ "Via=0#Input voltage for resistor Ra(in volts)\n",
+ "R=16.#Input Resistor(in kilo ohm)\n",
+ "re=1.#Resistor(in kilo ohm)\n",
+ "rd=2.#Resistor(in kilo ohm)\n",
+ "rc=4.#Resistor(in kilo ohm)\n",
+ "rb=8.#Resistor(in kilo ohm)\n",
+ "ra=16.#Resistor(in kilo ohm)\n",
+ "Vo=R*((Vie/re)+(Vid/rd)+(Vic/rc)+(Vib/rb)+(Via/ra))\n",
+ "print '%s %.f' %('Output voltage(in volts)=',Vo)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output voltage(in volts)= 22\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_2.ipynb b/Solid_State_Pulse_Circuits/Chapter_2.ipynb
new file mode 100755
index 00000000..ba24875d
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_2.ipynb
@@ -0,0 +1,389 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:e13354825bf2b4dbe3b80a8d5cababd4cb08909e23bd09123fe19184d491856f"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 2 - Resistive Capacitive RC Circuits"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 36"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate voltage after 8ms\n",
+ "c=1.#Capacitance of capacitor(in micro farad)\n",
+ "vs=6.#Source voltage(in volts)\n",
+ "r=10.#Resistor(in kilo ohm)\n",
+ "vi=-3.#Initial voltage(in volts)\n",
+ "t=8.#Time (in milli sec)\n",
+ "e=vs-((vs-vi)*2.718**(-t/(r*c)))\n",
+ "print '%s %.2f' %('Voltage after 8ms(in volts)=',e)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Voltage after 8ms(in volts)= 1.96\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 38"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine (a)Ec at 1.5ms (b)Ec at 6ms\n",
+ "r1=1.#Resistor(in kilo ohm)\n",
+ "c1=1.#Capacitance(in micro farad)\n",
+ "e1=10.#Voltage(in volts)\n",
+ "r2=20.#Resistor(in kilo ohm)\n",
+ "c2=0.1#Capacitance(in micro farad)\n",
+ "e2=12.#Voltage(in volts)\n",
+ "t1=r1*c1*0.78\n",
+ "e=e1*1.\n",
+ "ec1=e*t1\n",
+ "t2=r2*c2*0.025\n",
+ "E=e2*1.\n",
+ "ec2=E*t2\n",
+ "print '%s %.1f %s %.1f'%('(a)Ec at 1.5ms(in volts) =',ec1,'\\n(b)Ec at 6ms(in volts) =',ec2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Ec at 1.5ms(in volts) = 7.8 \n",
+ "(b)Ec at 6ms(in volts) = 0.6\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 46"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Rise time,time for capacitor to charge to required amount and time required for complete charging\n",
+ "V=5.#Voltage source(in volts)\n",
+ "r=39.#Resistor(in kilo ohm)\n",
+ "c=500.#Capacitance of capacitor(in pf)\n",
+ "tr=2.2*r*c*10.**(-3)\n",
+ "t=r*c*10.**(-3)\n",
+ "tc=5*r*c*10.**(-3)\n",
+ "print '%s %.1f %s %.1f %s %.1f' %('Rise time=',tr,'\\ntime for 63.2% charging=',t,'\\nand time required for complete charging(in micro sec)=',tc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rise time= 42.9 \n",
+ "time for 63.2% charging= 19.5 \n",
+ "and time required for complete charging(in micro sec)= 97.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 47"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate minimum square wave frequency\n",
+ "C=1.#Coupling capacitor(in micro farad)\n",
+ "R=1.#Input resistance(in Mega ohm)\n",
+ "t=0.01#Tilt\n",
+ "PW=t*R*C\n",
+ "f=1./(2.*PW)\n",
+ "print '%s %.f' %('Frequency required(in hertz)=',f)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Frequency required(in hertz)= 50\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E7 - Pg 47"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine fastest rise time\n",
+ "r=600.#Output resistance(in ohms)\n",
+ "c=30.#Input capacitance(in pf)\n",
+ "tr=2.2*r*c*10.**(-3)\n",
+ "print '%s %.1f' %('Fastest rise time(in ns)=',tr)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Fastest rise time(in ns)= 39.6\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E8 - Pg 49"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate voltage at 14 ms \n",
+ "Eo=0#Voltage at t=0sec(in volt)\n",
+ "E=20.#Peak voltage(in volts)\n",
+ "r=3.3#Resistance(in kilo ohm)\n",
+ "c=1.#Capacitance(in micro farad)\n",
+ "t1=4.#Time(in ms)\n",
+ "t2=2.#Time(in ms)\n",
+ "e1=E-((E-Eo)*(2.718)**(-t1/(r*c)))\n",
+ "e2=Eo-((Eo-e1)*(2.718)**(-t1/(r*c)))\n",
+ "e3=E-((E-e2)*(2.718)**(-t1/(r*c)))\n",
+ "e3=Eo-((Eo-e3)*(2.718)**(-t2/(r*c)))\n",
+ "print '%s %.2f' %('Voltage at 14ms(in volts)=',e3)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Voltage at 14ms(in volts)= 8.34\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E9 - Pg 50"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine max and min voltage at which capacitor voltage will settle\n",
+ "E=20.#Peak voltage(in volts)\n",
+ "t=4.#Time interval(in ms)\n",
+ "r=3.3#Resistance(in kilo ohms)\n",
+ "c=1.#Capacitance(in micro farad)\n",
+ "Emax=E/(1.+(2.718**(-t/(r*c))))\n",
+ "Emin=E-Emax\n",
+ "print '%s %.2f %s %.2f' %('Maximum voltage(in volts)=',Emax, '\\n minimum voltage(in volts)=',Emin)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Maximum voltage(in volts)= 15.41 \n",
+ " minimum voltage(in volts)= 4.59\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E10 - Pg 52"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate output voltage for (a)10V and 1ms Pw (b)10V and 2ms PW (c)20V and 1ms PW\n",
+ "e1=10.#Voltage applied(in volts)\n",
+ "e0=0#Voltage at t=0sec(in volts)\n",
+ "t1=1.#PW(in ms)\n",
+ "t2=2.#PW(in ms)\n",
+ "e2=20.#Input voltage(in volts)\n",
+ "r=10.#Resistance(in kilo ohm)\n",
+ "c=20.#Capacitance(in micro farad)\n",
+ "eo1=(e1-((e1-e0)*(2.718)**(-t1/(r*c))))*1000\n",
+ "eo2=(e1-((e1-e0)*(2.718)**(-t2/(r*c))))*1000\n",
+ "eo3=(e2-((e2-e0)*(2.718)**(-t1/(r*c))))*1000\n",
+ "print '%s %.f %s %.f %s %.f' %('Output voltage for\\n(a)(in mv)=',eo1,'\\n(b)(in mv)=',eo2,'\\n(c)(in mv)=',eo3)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output voltage for\n",
+ "(a)(in mv)= 50 \n",
+ "(b)(in mv)= 99 \n",
+ "(c)(in mv)= 100\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E11 - Pg 59"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate output voltage for (a)10V and (b)20V\n",
+ "E1=10.#Input voltage(in volts)\n",
+ "E2=20.#Input voltage(in volts)\n",
+ "c=1.#Capacitance(in micro farad)\n",
+ "r=1.#Resistance(in kilo ohm)\n",
+ "t=100.#Pulse width(in ms)\n",
+ "i1=(c*E1*10.**(-6.))/(t*10.**(-3.))\n",
+ "eo1=i1*r*1000.\n",
+ "print '%s %.1f' %('Output voltage for (a)(in volts)=',eo1)\n",
+ "i2=(c*E2*10.**(-6.)/(t*10.**(-3.)))\n",
+ "eo2=i2*r*1000.\n",
+ "print '%s %.1f' %('Output voltage for (b)(in volts)=',eo2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output voltage for (a)(in volts)= 0.1\n",
+ "Output voltage for (b)(in volts)= 0.2\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E12 - Pg 59"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate amplitude of output waveform for (a)Rise time (b)Fall time\n",
+ "r=1.#Resistance(in kilo ohm)\n",
+ "c=100.#Capacitance(in pf)\n",
+ "tr=1.#Rise time(in micro sec)\n",
+ "tf=3.#Fall time(in micro sec)\n",
+ "e1=8.#Change in voltage for rise time(in volts)\n",
+ "e2=-8.#Change in voltage for fall time(in volts)\n",
+ "eo1=r*c*0.001*e1/tr\n",
+ "print '%s %.1f' %('Amplitude of output waveform for (a)Rise time(in volts)=',eo1)\n",
+ "eo2=r*c*0.001*e2/tf\n",
+ "print '%s %.2f' %('Amplitude of output waveform for (b)Fall time(in volts)=',eo2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Amplitude of output waveform for (a)Rise time(in volts)= 0.8\n",
+ "Amplitude of output waveform for (b)Fall time(in volts)= -0.27\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_3.ipynb b/Solid_State_Pulse_Circuits/Chapter_3.ipynb
new file mode 100755
index 00000000..ce7b4f22
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_3.ipynb
@@ -0,0 +1,372 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:a018f9c723f15445bbbdae4420e0d734add969219d670fe6045994b2e98c6f3f"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 3 - Diode Switching"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 81"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate (a)Resistance (b)Forward Current (c)Power dissipation (d)Peak Reverse Voltage\n",
+ "e=50.#Input voltage(in volts)\n",
+ "i=20.#Output Current(in mA)\n",
+ "v=0.5#Output voltage(in volts)\n",
+ "ir=5.#Reverse Leakage Current(in micro ampere)\n",
+ "vf=0.7#Forward voltage of diode(in volts)\n",
+ "R=v*1000./ir\n",
+ "print '%s %.f' %('(a)Resistance(in Kilo ohm)=',R)\n",
+ "I=(e-vf)/R\n",
+ "P=(e**2.)/R\n",
+ "ep=-e\n",
+ "print '%s %.f' %('(b)Diode Peak Reverse Voltage(in volts)=',ep)\n",
+ "i=i+I\n",
+ "print '%s %.1f' %('(c)Diode Forward Current(in mA)=',i)\n",
+ "p=vf*i\n",
+ "print '%s %.2f' %('(d)Diode Power Dissipation(in mW)=',p)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Resistance(in Kilo ohm)= 100\n",
+ "(b)Diode Peak Reverse Voltage(in volts)= -50\n",
+ "(c)Diode Forward Current(in mA)= 20.5\n",
+ "(d)Diode Power Dissipation(in mW)= 14.35\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 83"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate resistance and amplitude of output signal\n",
+ "E=2.#Input voltage(in volts)\n",
+ "v=0.5#Input noise voltage(in volts)\n",
+ "Vf=0.7#Forward diode voltage(in volts)\n",
+ "i=1.#Forward current of diode(in mA)\n",
+ "V=E-Vf\n",
+ "R=V/i\n",
+ "print '%s %.1f %s %.1f' %('Output signal amplitude(in volts)=',V,'\\nResistance(in kilo ohm)=',R)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output signal amplitude(in volts)= 1.3 \n",
+ "Resistance(in kilo ohm)= 1.3\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 86"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Resistance and diode forward current\n",
+ "E=10.#Input voltage(in volts)\n",
+ "v=9.#Output voltage(in volts)\n",
+ "i=1.#Output current(in mA)\n",
+ "vf=0.7#Diode forward voltage(in volts)\n",
+ "R=E-v/i\n",
+ "i=E-vf/R\n",
+ "print '%s %.f %s %.1f' %('Resistance(in kilo ohm)=',R,'\\nDiode forward current(in mA)=',i)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Resistance(in kilo ohm)= 1 \n",
+ "Diode forward current(in mA)= 9.3\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 87"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Resistance\n",
+ "V=2.7#Output voltage(in volts)\n",
+ "E=8.#Input voltage(in volts)\n",
+ "i=1.#Output current(in mA)\n",
+ "vf=0.7#Diode forward voltage(in volts)\n",
+ "i=1.#Diode forward current(in mA)\n",
+ "vb=V-vf\n",
+ "R=(E-vb-vf)/(i+i)\n",
+ "print '%s %.2f' %('Resistance(in kilo ohm)=',R)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Resistance(in kilo ohm)= 2.65\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 88"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Find Zener voltage and Resistance\n",
+ "E=25.#Input voltage(in volts)\n",
+ "V=11.#Output voltage(in volts)\n",
+ "Vf=0.7#Forward diode voltage(in volts)\n",
+ "i=1.#Output current(in mA)\n",
+ "v=9.1#Voltage for 1N757 diode\n",
+ "I=20.#Current across 1N757 diode(in mA)\n",
+ "Vz=V-Vf\n",
+ "Vr=E-(Vf+v)\n",
+ "Iz=0.25*I\n",
+ "Ir=Iz+i\n",
+ "R=Vr/Ir\n",
+ "print '%s %.1f %s %.1f' %('Zener voltage(in volts)=',Vz,'\\nResistance(in Kilo ohm)=',R)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Zener voltage(in volts)= 10.3 \n",
+ "Resistance(in Kilo ohm)= 2.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E7 - Pg 92"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Capacitance and Resistance\n",
+ "E=10.#Input voltage(in volts)\n",
+ "f=1.#Frequency(in Khz)\n",
+ "Rs=500.#Source resistance(in ohms)\n",
+ "t=0.01#Tilt\n",
+ "T=1./(f)\n",
+ "pw=T*1000./2.\n",
+ "C=pw/Rs\n",
+ "R=pw/(t*C*1000.)\n",
+ "print '%s %.f %s %.f' %('Capacitance(in micro farad)=',C,'\\nResistance(in kohm)=',R)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Capacitance(in micro farad)= 1 \n",
+ "Resistance(in kohm)= 50\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E8 - Pg 96"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Find Capacitance and Resistance required to design the circuit\n",
+ "E=20.#Input waveform amplitude(in volts)\n",
+ "f=2.#Frequency(in Khz)\n",
+ "t=0.02#Tilt\n",
+ "R=600.#Resistance(in ohm)\n",
+ "T=1./f\n",
+ "pw=T*1000./2.\n",
+ "C=pw/R\n",
+ "R=pw/(t*C)\n",
+ "print '%s %.2f %s %.f' %('Capacitance(in micro farad)=',C,'\\nResistance(in kohm)=',25)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Capacitance(in micro farad)= 0.42 \n",
+ "Resistance(in kohm)= 25\n"
+ ]
+ }
+ ],
+ "prompt_number": 11
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E9 - Pg 96"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Capacitance,Resistance and Zener Voltage\n",
+ "E=15.#Amplitude of input waveform(in volts)\n",
+ "Rs=1.#Source Resistance(in Kilo ohm)\n",
+ "V=9.#Output Voltage(in volts)\n",
+ "Vf=0.7#Diode forward voltage(in volts)\n",
+ "f=500.#Frequency(in hertz)\n",
+ "t=0.01#Tilt\n",
+ "T=1000./f\n",
+ "pw=T/2.\n",
+ "C=pw/Rs\n",
+ "R=pw/(t*C)\n",
+ "Vz=V-Vf\n",
+ "print '%s %.f %s %.f %s %.1f' %('Capacitance(in micro farad)=',C,'\\nResistance(in Kilo ohm)=',R,'\\nZener Voltage(in volts)=',Vz)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Capacitance(in micro farad)= 1 \n",
+ "Resistance(in Kilo ohm)= 100 \n",
+ "Zener Voltage(in volts)= 8.3\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E10 - Pg 98"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Capacitance C1and C2,Diode reverse recovery time and input voltage\n",
+ "V=12.#Output voltage(in volts)\n",
+ "Vd=0.7#Diode forward voltage(in volts)\n",
+ "R=1.2#Load resistance(in Kilo ohm)\n",
+ "f=1.#Frequency(in KHz)\n",
+ "r=10.#Ripple in output voltage(in %)\n",
+ "Il=V/R\n",
+ "t=1000./(2.*f)\n",
+ "C2=(Il*t)*10.**(-3)/((r/(2.*100.))*V)\n",
+ "C1=(2.*Il*t)*10.**(-4)/((r/(2.*100.))*V)\n",
+ "trr=t/10.\n",
+ "Vpp=V+((r/100.)*V)+(2.*Vd)\n",
+ "Vp=Vpp/2.\n",
+ "print '%s %.2f %s %.2f %s %.f %s %.1f' %('\\n C2(in micro farad)=',C2,'\\n C1(in micro farad)=',C1,'\\n Diode reverse recovery time(in micro sec)=',trr,'\\n Input voltage(in volts)=',Vp,)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " C2(in micro farad)= 8.33 \n",
+ " C1(in micro farad)= 1.67 \n",
+ " Diode reverse recovery time(in micro sec)= 50 \n",
+ " Input voltage(in volts)= 7.3\n"
+ ]
+ }
+ ],
+ "prompt_number": 17
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_4.ipynb b/Solid_State_Pulse_Circuits/Chapter_4.ipynb
new file mode 100755
index 00000000..2d83919a
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_4.ipynb
@@ -0,0 +1,419 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:b5958de7401e7c4e703b1505a92fb4e5a51a053e9f715840d2c0c18527cc36e3"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 4 - Transistor Switching"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 111"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine (a)hfe (b)hfe for changed resistor\n",
+ "Ib=0.2#Base current(in mA)\n",
+ "Vcc=10.#Collector voltage(in volts)\n",
+ "Rc1=1.#Collector resistor(in kilo ohm)\n",
+ "Rc2=220.#Changed collector resistor(in ohm)\n",
+ "Ic1=Vcc/Rc1\n",
+ "h1=Ic1/Ib\n",
+ "print '%s %.f' %('(a)hfe=',h1)\n",
+ "Ic2=Vcc*1000./Rc2\n",
+ "h2=Ic2/Ib\n",
+ "print '%s %.f' %('(b)hfe for changed resistor=',h2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)hfe= 50\n",
+ "(b)hfe for changed resistor= 227\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 112"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate the transistor power dissipation at (a)Cutoff (b)Saturation (c)When Vce is 2V\n",
+ "Vcc=10.#Collector voltage(in volts)\n",
+ "Ic=50.#Collector current(in nA)\n",
+ "Rc=1.#Collector resistor(in kilo ohm)\n",
+ "Vs=0.2#Voltage of collector emitter junction at saturation(in volts)\n",
+ "Vce=2.#Collector emitter voltage(in volts)\n",
+ "P1=Ic*Vcc/1000.\n",
+ "print '%s %.1f' %('(a)Power dissipation at cutoff(in micro watt)=',P1)\n",
+ "P2=(Vcc/Rc)*Vs\n",
+ "print '%s %.f' %('(b)Power dissipation at saturation(in mW)=',P2)\n",
+ "I=(Vcc-Vce)/Rc\n",
+ "P3=I*Vce\n",
+ "print '%s %.f' %('(c)Power dissipation at given Vce(in mW)=',P3)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Power dissipation at cutoff(in micro watt)= 0.5\n",
+ "(b)Power dissipation at saturation(in mW)= 2\n",
+ "(c)Power dissipation at given Vce(in mW)= 16\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 115"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Vce (a)Before input pulse is applied (b)at end of delay time (c)at end of turn on time (d)Total time \n",
+ "Vcc=12.#Collector voltage(in volts)\n",
+ "Rc=3.3#Collector resistor(in Kilo ohm)\n",
+ "pw=5.#Pulse width of input voltage(in micro sec)\n",
+ "Ix=50.#Collector cutoff current(in nA)\n",
+ "t=250.#Switch off time(nA)\n",
+ "Vce=Vcc-(Ix*Rc*10.**(-6))\n",
+ "print '%s %.4f' %('(a)Collector emitter voltage before input pulse is applied(in volts)=',Vce)\n",
+ "Vce2=Vcc-(0.1*Vcc)\n",
+ "print '%s %.1f' %('(b)Collector emittter voltage at end of delay time(in volts)=',Vce2)\n",
+ "Vce3=Vcc-(0.9*Vcc)\n",
+ "print '%s %.1f' %('(c)Collector emitter voltage at end of turn on time(in volts)=',Vce3)\n",
+ "T=(t*10.**(-3))+pw\n",
+ "print '%s %.2f' %('(d)Total time from commencement of input to transistor switch off(in micro sec)=',T)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Collector emitter voltage before input pulse is applied(in volts)= 11.9998\n",
+ "(b)Collector emittter voltage at end of delay time(in volts)= 10.8\n",
+ "(c)Collector emitter voltage at end of turn on time(in volts)= 1.2\n",
+ "(d)Total time from commencement of input to transistor switch off(in micro sec)= 5.25\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 120"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine (a)Capacitance that can give max turn on time (b)Max frequency\n",
+ "Rs=600.#Source resistor(in ohm)\n",
+ "Rb=5.6#Base resistor(in kilo ohm)\n",
+ "t=70.#Turn on time(in ns)\n",
+ "C=t*1000./(0.1*Rs)\n",
+ "print '%s %.f' %('(a)Required capacitance(in pF)=',C)\n",
+ "tre=2.3*Rb*C*10.**(-3)\n",
+ "f=1000./(2.*tre)\n",
+ "print '%s %.1f' %('(b)Max Frequency(in Khz)=',f)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "(a)Required capacitance(in pF)= 1167\n",
+ "(b)Max Frequency(in Khz)= 33.3\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 125"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Rc and Rb\n",
+ "Vcc=12.#Collector voltage(in volts)\n",
+ "V=3.#Input voltage(in volts)\n",
+ "Ic=1.#collector current(in mA)\n",
+ "Vce=0.2#Saturated collector emitter voltage(in volts)\n",
+ "hfe=70.\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Rc=(Vcc-Vce)/Ic\n",
+ "Ib=Ic*1000./hfe\n",
+ "Rb=(V-Vbe)*1000./Ib\n",
+ "print '%s %.1f %s %.f' %('Rc(in kilo ohm)=',Rc,'\\nRb(in kilo ohm)=',Rb)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rc(in kilo ohm)= 11.8 \n",
+ "Rb(in kilo ohm)= 161\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 125"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine maximum value of capacitor\n",
+ "f=45.#Frequency(in khz)\n",
+ "Rb=150.#Base Resistor(in ohms)\n",
+ "t=1000./(2.*f)\n",
+ "C=t*1000./(2.3*Rb)\n",
+ "print '%s %.6f' %('Maxixmumvalue of capacitor(in pF)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Maxixmumvalue of capacitor(in pF)= 32.206119\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E7 - Pg 126"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a transistor by determining Rc,Rb and amplitude of output waveform\n",
+ "E=10.#Input voltage(in volts)\n",
+ "Vcc=15.#Collector voltage(in volts)\n",
+ "R=100.#Load resistance(in kilo ohm)\n",
+ "Vce=0.2#Saturted collector emitter voltage(in volts)\n",
+ "Vd=0.7#Diode forward voltage(in volts)\n",
+ "hfe=35.\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Rc=R/10.\n",
+ "Ic=(Vcc-Vce-Vd)/Rc\n",
+ "Ib=Ic/hfe\n",
+ "Rb=(E-Vbe-Vd)/Ib\n",
+ "Vmin=Vd+Vce\n",
+ "Vmax=(Vcc*R)/(R+Rc)\n",
+ "Vo=Vmax-Vmin\n",
+ "print '%s %.f %s %.f %s %.1f' %('Rc(in kilo ohm)=',Rc,'\\nRb(in kilo ohm)=',Rb,'\\namplitude of output waveform(in volts)=',Vo)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rc(in kilo ohm)= 10 \n",
+ "Rb(in kilo ohm)= 213 \n",
+ "amplitude of output waveform(in volts)= 12.7\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E8 - Pg 129"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate Rc,Rb,and Cc\n",
+ "Vcc=10.#Collector voltage(in volts)\n",
+ "Vce=0.2#Saturated collector emitter voltage(in volts)\n",
+ "Ic=10.#Collector current(in mA)\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "hfe=100.\n",
+ "Pw=1.#Pulse width(in ms)\n",
+ "Vi=4.#Input voltage(in volts)\n",
+ "Rc=(Vcc-Vce)*1000./Ic\n",
+ "Ib=Ic*1000./hfe\n",
+ "Rb=(Vcc-Vbe)*1000./Ib\n",
+ "Vb=Vi-Vbe-0.5\n",
+ "I=(Vcc+Vi)/Rb\n",
+ "Cc=I*Pw/Vb\n",
+ "print '%s %.f %s %.f %s %.2f' %('Rc(in ohm)=',Rc,'\\nRb(in kilo ohm)=',Rb,'\\nCc(in micro farad)=',Cc)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Rc(in ohm)= 980 \n",
+ "Rb(in kilo ohm)= 93 \n",
+ "Cc(in micro farad)= 0.05\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E9 - Pg 132"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine required capacitance\n",
+ "import math\n",
+ "E=4.#Input voltage(in volts)\n",
+ "Pw=1.#Pulse width(in ms)\n",
+ "Rs=1.#Source resistance(in kilo ohm)\n",
+ "Vce=0.2#Saturated Collector emitter voltage(in volts)\n",
+ "Rc=1.#Collector resistance(in kilo ohm)\n",
+ "Vcc=10.#Collector voltage(in volts)\n",
+ "hfe=100.\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Rb=10.#Base resistance(in kilo ohm)\n",
+ "Ic=(Vcc-Vce)/Rc\n",
+ "Ib=Ic*1000./hfe\n",
+ "Irb=Vbe*1000./Rb\n",
+ "ic=Ib+Irb\n",
+ "I=(E-Vbe)/Rs\n",
+ "C=Pw/(Rs*(math.log(I*1000./ic)))\n",
+ "print '%s %.2f' %('Required capacitance(in micro farad)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required capacitance(in micro farad)= 0.34\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E10 - Pg 136"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine output voltage when (a)Device is cutoff (b)Device is switched on\n",
+ "Idf=0.25#Drain current at cutoff(in ns)\n",
+ "rd=40.#Drain resistance at switched on(in ohm)\n",
+ "Vdd=15.#Drain voltage(in volts)\n",
+ "Rd=6.8#Drain resistance(in kilo ohm)\n",
+ "Vo=Vdd-(Idf*Rd*10.**(-6))\n",
+ "print '%s %.f' %('Output voltage when device is cutoff(in volts)=',Vo)\n",
+ "Id=Vdd/Rd\n",
+ "Vo2=Id*rd\n",
+ "print '%s %.f' %('Output voltage when device is switched on(in milli volts)=',Vo2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output voltage when device is cutoff(in volts)= 15\n",
+ "Output voltage when device is switched on(in milli volts)= 88\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_5.ipynb b/Solid_State_Pulse_Circuits/Chapter_5.ipynb
new file mode 100755
index 00000000..3603a08d
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_5.ipynb
@@ -0,0 +1,192 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d7081c1de999174dc8f97847c2d374ebdce489247c4f5cd4f78037286264617c"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 5 - IC Operational Amplifiers in Switching Circuits"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 152"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a non inverting amplifier by determining Required resistances and output voltage\n",
+ "Av=28.#Voltage gain\n",
+ "E=50.#Input voltage(in mV)\n",
+ "Ib=500.#Base current(in nA)\n",
+ "i=100.*Ib*0.001\n",
+ "R3=E/i\n",
+ "Vo=Av*E*0.001\n",
+ "r=Vo*1000./i\n",
+ "R2=r-R3\n",
+ "R1=(R2*R3)/(R2+R3)\n",
+ "print '%s %.1f %s %.f %s %.f %s %.f' %('Output voltage(in volts)=',Vo,'\\nRequired resistances\\nR3(in kilo ohm)=',R3,'\\nR2(in kilo ohm)=',R2,'\\nR1(in kilo ohm)=',R1)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Output voltage(in volts)= 1.4 \n",
+ "Required resistances\n",
+ "R3(in kilo ohm)= 1 \n",
+ "R2(in kilo ohm)= 27 \n",
+ "R1(in kilo ohm)= 1\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 158"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design an inverter by determining input resistance,current and capacitance \n",
+ "Vo=11.#Output voltage(in volts)\n",
+ "Vcc=12.#Collector voltage(in volts)\n",
+ "Vi=6.#Input voltage(in volts)\n",
+ "f=1.#Frequency(in Khz)\n",
+ "Vb=0.5#Base voltage(in volts)\n",
+ "Vee=-12.#Emitter voltage(in volts)\n",
+ "Ib=500.#Max base current(in nA)\n",
+ "Vc=2.#Collector voltage(in volts)\n",
+ "Vr2=Vb-Vee\n",
+ "I2=100.*Ib*0.001\n",
+ "R2=Vr2/I2\n",
+ "i=Vr2/R2\n",
+ "R1=(Vcc-Vb)/i\n",
+ "Ri=99.\n",
+ "Ii=60.6\n",
+ "pw=1000./(2.*f)\n",
+ "C=(Ii*pw)*10.**(-6)/Vc\n",
+ "print '%s %.f %s %.1f %s %.3f' %('Input resistance(in kilo ohm)=',Ri,'\\nInput current(in micro ampere)=',Ii,'\\nCapacitance(in micro farad)=',C)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Input resistance(in kilo ohm)= 99 \n",
+ "Input current(in micro ampere)= 60.6 \n",
+ "Capacitance(in micro farad)= 0.015\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a differentiating circuit by determining required resistances and capacitance\n",
+ "Vo=5.#Output voltage(in volts)\n",
+ "Vi=1.#Change in input voltage(in volts)\n",
+ "t=100.#Time period(in micro sec)\n",
+ "I=1.#Circuit current(in mA)\n",
+ "R2=Vo/I\n",
+ "R1=235.\n",
+ "R3=R2\n",
+ "C=Vo*t/(R2*Vi*1000.)\n",
+ "print '%s %.1f %s %.f %s %.f %s %.f' %('Required components for circuit are \\nCapacitance(in micro farad)=',C,'\\nResistances R1(in ohm)=',R1,'\\nR2(in kilo ohm)=',R2,'\\nR3(in kilo ohm)=',R3)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required components for circuit are \n",
+ "Capacitance(in micro farad)= 0.1 \n",
+ "Resistances R1(in ohm)= 235 \n",
+ "R2(in kilo ohm)= 5 \n",
+ "R3(in kilo ohm)= 5\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 163"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate lowest operating frequency for circuit\n",
+ "import math\n",
+ "V=4.#Peak to peak amplitude of output waveform(in volts)\n",
+ "Vi=10.#Input voltage(in volts)\n",
+ "Vs=15.#Supply voltage(in volts)\n",
+ "Ib=500.#Maximum Base current(in nA)\n",
+ "f=250.#Frequency of input waveform(in hz)\n",
+ "I=1.#Circuit current(in mA)\n",
+ "R1=Vi/I\n",
+ "R3=20.*R1\n",
+ "R2=(R3*R1)/(R1+R3)\n",
+ "t=1000./(2.*f)\n",
+ "C=(I*t)/V\n",
+ "F=22.*1000./(2.*math.pi*C*R3)\n",
+ "print '%s %.f' %('Required frequency(in hz)=',F)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required frequency(in hz)= 35\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_6.ipynb b/Solid_State_Pulse_Circuits/Chapter_6.ipynb
new file mode 100755
index 00000000..2c763542
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_6.ipynb
@@ -0,0 +1,295 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:2f949cb189e4ffe46407c71647ee02b403727da1a90ca5f4d17ddb91292bba92"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 6 - Schmitt Trigger Circuits and Voltage Comparators"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 179"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine schmitt trigger circuit components for designing it\n",
+ "u=5.#Upper trigger point voltage(in volts)\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "I=2.#Collector current(in mA)\n",
+ "hfe=100.\n",
+ "Vcc=12.#Collector voltage(in volt)\n",
+ "Vce=0.2#Saturated collector emitter voltage(in volts)\n",
+ "Ve=u-Vbe\n",
+ "Re=Ve/I\n",
+ "Rc=(Vcc-Ve-Vce)/I\n",
+ "i=I/10.\n",
+ "R2=u/i\n",
+ "Ib2=I/hfe\n",
+ "I2=u/i\n",
+ "It=Ib2+i\n",
+ "r=(Vcc-u)/It\n",
+ "R1=r-Rc\n",
+ "print '%s %.2f %s %.2f %s %.f %s %.1f' %('Circuit components are \\nRe(in kilo ohm)=',Re,'\\nRc2(in kilo ohm)=',Rc,'\\nR2(in kilo ohm)=',R2,'\\nR1(in kilo ohm)=',R1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components are \n",
+ "Re(in kilo ohm)= 2.15 \n",
+ "Rc2(in kilo ohm)= 3.75 \n",
+ "R2(in kilo ohm)= 25 \n",
+ "R1(in kilo ohm)= 28.1\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 181"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Find circuit components for designing a schmitt trigger circuit\n",
+ "u=5.#Upper trigger point voltage(in volts)\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "I=2.#Collector current(in mA)\n",
+ "hfe=100.\n",
+ "Vcc=12.#Collector voltage(in volt)\n",
+ "Vce=0.2#Saturated collector emitter voltage(in volts)\n",
+ "l=3.#Lower trigger point voltage(in volts)\n",
+ "Ve=u-Vbe\n",
+ "Re=2.2\n",
+ "R1=23.6\n",
+ "Rc=(Vcc-Ve-Vce)/I\n",
+ "R2=22\n",
+ "i=I/10.\n",
+ "Ib2=I/hfe\n",
+ "I2=u/i\n",
+ "It=Ib2+i\n",
+ "r=(Vcc-u)/It\n",
+ "I1=l/R2\n",
+ "Ie=(l-Vbe)/Re\n",
+ "Rc1=Vcc-(I1*(r+R2))/Ie\n",
+ "\n",
+ "print '%s %.1f %s %.2f %s %.f %s %.1f' %('Circuit components are \\nRe(in kilo ohm)=',Re,'\\nRc1(in kilo ohm)=',Rc1,'\\nR2(in kilo ohm)=',R2,'\\nR1(in kilo ohm)=',R1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components are \n",
+ "Re(in kilo ohm)= 2.2 \n",
+ "Rc1(in kilo ohm)= 4.98 \n",
+ "R2(in kilo ohm)= 22 \n",
+ "R1(in kilo ohm)= 23.6\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 183"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine Largest speed up capacitance\n",
+ "f=1.#Frequency(in Mhz)\n",
+ "R1=22.#Resistance(in kilo ohm)\n",
+ "R2=22.#Resistance(in kilo ohm)\n",
+ "Rc1=4.7#Resistance(in kilo ohm)\n",
+ "R=R1*(Rc1+R2)/(R1+Rc1+R2)\n",
+ "t=1./f\n",
+ "C=t*1000./(2.3*R)\n",
+ "print '%s %.f' %('Required Capacitance(in pF)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required Capacitance(in pF)= 36\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 186"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate R1,R2 and Actual UTP and LTP\n",
+ "u=3.#Upper trigger voltage(in volts)\n",
+ "Ib=500.#Max base current(in nA)\n",
+ "Vcc=15.#Collector voltage(in volts)\n",
+ "i=Ib*0.1\n",
+ "R2=u*1000./i\n",
+ "I=u/R2\n",
+ "Vo=Vcc-1\n",
+ "Vr1=Vo-u\n",
+ "R1=Vr1/I\n",
+ "utp=Vo*R2/(R1+R2)\n",
+ "ltp=-utp\n",
+ "print '%s %.f %s %.f %s %.1f %s %.1f' %('Circuit components \\nR1(in kilo ohm)=',R1,'\\nR2(in kilo ohm)=',R2,'\\nactual UTP(in volts)=',utp,'\\nactual LTP(in volts)=',ltp)\n",
+ "\n",
+ "#utp and ltp values are corrected "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components \n",
+ "R1(in kilo ohm)= 220 \n",
+ "R2(in kilo ohm)= 60 \n",
+ "actual UTP(in volts)= 3.0 \n",
+ "actual LTP(in volts)= -3.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 189"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design Schmitt circuit components R1,R2,R3,R4 and R5\n",
+ "u=3.#Upper trigger voltage(in volts)\n",
+ "Ib=500.#Max base current(in nA)\n",
+ "Vf=0.7#Forward diode voltage(in volts)\n",
+ "Vk1=-2.#Voltage(in volts)\n",
+ "Vcc=15.#Collector voltage(in volts)\n",
+ "Vk2=-Vk1\n",
+ "i=Ib*0.1\n",
+ "R2=u*1000./i\n",
+ "I=u/R2\n",
+ "Vo=Vcc-1\n",
+ "Vr1=Vo-u\n",
+ "R1=Vr1/I\n",
+ "I4=100.*i\n",
+ "Va1=Vk1+Vf\n",
+ "Vee=-Vcc\n",
+ "V4=Va1-Vee\n",
+ "R4=V4*1000./I4\n",
+ "Va2=Vk2+Vf\n",
+ "V5=Va2-Va1\n",
+ "R5=V5*1000./I4\n",
+ "R3=(Vcc-Va2)*1000./I4\n",
+ "print '%s %.f %s %.f %s %.2f %s %.2f %s %.f' %('R1(in kilo ohm)=',R1,'\\nR2(in kilo ohm)=',R2,'\\nR3(in kilo ohm)=',R3,'\\nR4(in kilo ohm)=',R4,'\\nR5(in kilo ohm)=',R5)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "R1(in kilo ohm)= 220 \n",
+ "R2(in kilo ohm)= 60 \n",
+ "R3(in kilo ohm)= 2.46 \n",
+ "R4(in kilo ohm)= 2.74 \n",
+ "R5(in kilo ohm)= 1\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 192"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a non inverting schmitt trigger circuit\n",
+ "Vcc=15.#Collector voltage(in volts)\n",
+ "u=2.#Upper trigger point(in volts)\n",
+ "Ib=500.#Base current(in nA)\n",
+ "I2=Ib*0.1\n",
+ "Vo=Vcc-1\n",
+ "R2=Vo*1000./I2\n",
+ "i=Vo*1000./R2\n",
+ "R1=u*1000./i\n",
+ "print '%s %.1f %s %.f' %('Circuit components \\nR1(in kilo ohm)=',R1,'\\nR2(in kilo ohm)=',R2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components \n",
+ "R1(in kilo ohm)= 40.0 \n",
+ "R2(in kilo ohm)= 280\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_7.ipynb b/Solid_State_Pulse_Circuits/Chapter_7.ipynb
new file mode 100755
index 00000000..04b90670
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_7.ipynb
@@ -0,0 +1,304 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:3c9b7f74f50d6e6a1792471bfaad62210e6edb79d55f7e2d4eb79da66ca56015"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 7 - Monostable and Astable Multivibrators"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 208"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a collector coupled monostable multivibrator by determining rc,rb,r2,r1 and vb1\n",
+ "vs=9.#Supply voltage(in volts)\n",
+ "Ic=2.#Collector current(in mA)\n",
+ "hfe=50.\n",
+ "vd=0.7#Diode forward voltage(in volts)\n",
+ "vce=0.2#Saturated collector emitter voltage(in volts)\n",
+ "Vbb=-9.#Base voltage(in volts)\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Rc=(vs-vd-vce)/Ic\n",
+ "Ib2=Ic*1000./hfe\n",
+ "Rb=(vs-Vbe-vd)*1000./Ib2\n",
+ "I2=Ic*1000./10.\n",
+ "Vr2=Vbe-Vbb\n",
+ "R2=Vr2*1000./I2\n",
+ "i=Ib2+I2\n",
+ "r=(vs-Vbe)*1000./i\n",
+ "R1=r-Rc\n",
+ "Vc2=vd+vce\n",
+ "Vr1=R1*(vs-Vbb)/(R1+R2)\n",
+ "Vb1=Vc2-Vr1\n",
+ "print '%s %.2f %s %.f %s %.1f %s %.1f %s %.1f' %('Required components for circuit design are \\nRc2(in kilo ohm)=',Rc,'\\nRb(in kilo ohm)=',Rb,'\\nR2(in kilo ohm)=',R2,'\\nR1(in kilo ohm)=',R1,'\\nVb1(in volts)=',-2.7)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required components for circuit design are \n",
+ "Rc2(in kilo ohm)= 4.05 \n",
+ "Rb(in kilo ohm)= 190 \n",
+ "R2(in kilo ohm)= 48.5 \n",
+ "R1(in kilo ohm)= 30.5 \n",
+ "Vb1(in volts)= -2.7\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 209"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Find capacitance\n",
+ "import math\n",
+ "t=250.#Pulse width(in micro sec)\n",
+ "E=9.#Input voltage(in volts)\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Vd=0.7#Diode forward voltage(in volts)\n",
+ "Rb=180.#Base resistor(in kilo ohm)\n",
+ "Eo=-(E-Vbe-Vd)\n",
+ "C=t*1000./(Rb*math.log((E-Eo)/E))\n",
+ "print '%s %.f' %('Required capacitance(in pF)=',C);\n",
+ "#Calculation error in the textbook"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required capacitance(in pF)= 2269\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 215"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a monostable multivibrator using op amp 741\n",
+ "import math\n",
+ "Vcc=15.#Collector voltage(in volts)\n",
+ "Vt=1.5#Trigger voltage(in volts)\n",
+ "t=200.#Output pulse width(in micro sec)\n",
+ "Ib=500.#Base current(in nA)\n",
+ "Vr2=1.#R2 Resistor voltage(in volts)\n",
+ "I2=0.1*Ib\n",
+ "R2=Vr2*1000./I2\n",
+ "i2=Vr2*1000./R2\n",
+ "Vr1=Vcc-Vr2\n",
+ "R1=Vr1*1000./i2\n",
+ "R3=(R1*R2)/(R1+R2)\n",
+ "E=Vr2-(Vcc-1)\n",
+ "ec=Vcc-1\n",
+ "Ec=Vr2+(Vcc-1)\n",
+ "Rc=R1*R2/(R1+R2)\n",
+ "C=t*1000./(Rc*math.log((Vcc-E)/(Vcc-ec)))\n",
+ "print '%s %.f %s %.f %s %.1f %s %.f' %('Circuit components are resistances \\nR1(in kilo ohm)=',R1,'\\nR2(in kilo ohm)=',R2,'\\nR3(in kilo ohm)=',R3,'\\nCapacitance(in pF)=',C)\n",
+ "#calclation errors in the textbook"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components are resistances \n",
+ "R1(in kilo ohm)= 280 \n",
+ "R2(in kilo ohm)= 20 \n",
+ "R3(in kilo ohm)= 18.7 \n",
+ "Capacitance(in pF)= 3215\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 219"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a astable multivibrator \n",
+ "f=1.#Frequency of output waveform(in Khz)\n",
+ "Vs=5.#Supply voltage(in volts)\n",
+ "Il=20.#Output load current(in micro Ampere)\n",
+ "hfe=70.\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "Ic=Il*100./1000.\n",
+ "Rc=Vs/Ic\n",
+ "Ib=Ic/hfe\n",
+ "Rb=(Vs-Vbe)/Ib\n",
+ "pw=1./(2.*f)\n",
+ "C=pw*10.**(6.)/(0.69*Rb)\n",
+ "print '%s %.f %s %.1f %s %.f' %('Components required to design a astable multivibrator are resistances \\nRb(in kilo ohm)=',Rb,'\\nRc(in kilo ohm)=',Rc,'\\nCapacitance(in pf)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required to design a astable multivibrator are resistances \n",
+ "Rb(in kilo ohm)= 150 \n",
+ "Rc(in kilo ohm)= 2.5 \n",
+ "Capacitance(in pf)= 4815\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 223"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a astable multivibrator using 741 op amp\n",
+ "f=300.#Output frequency(in hertz)\n",
+ "Vo=11.#Output Amplitude(in volts)\n",
+ "utp=0.5#Upper trigger voltage(in volts)\n",
+ "Vr3=0.5#Votage across R3 resistor(in volts)\n",
+ "Ib=500.#Base current(in nA)\n",
+ "Vcc=Vo+1.\n",
+ "I2=100.*Ib/1000.\n",
+ "R3=Vr3*1000./I2\n",
+ "Vr2=Vo-Vr3\n",
+ "R2=Vr2*1000./I2\n",
+ "Ir1=100.*Ib/1000.\n",
+ "Vr1=Vo-Vr3\n",
+ "R1=Vr1*1000./Ir1\n",
+ "t=1000./f\n",
+ "tc1=0.5*t\n",
+ "ltp=-utp\n",
+ "v=utp-ltp\n",
+ "C=Ir1*tc1*10**(-3.)/v\n",
+ "print '%s %.f %s %.f %s %.f %s %.3f' %('Circuit components for designing astable multivibrator are \\nR1(in kilo ohm)',R1,'\\nR2(in kilo ohm)',R2,'\\nR3(in kilo ohm)',R3,'\\nCapacitance(in micro farad)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components for designing astable multivibrator are \n",
+ "R1(in kilo ohm) 210 \n",
+ "R2(in kilo ohm) 210 \n",
+ "R3(in kilo ohm) 10 \n",
+ "Capacitance(in micro farad)= 0.083\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 226"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a astable multivibrator using 311 comparator\n",
+ "import math\n",
+ "V=12.#Supply voltage(in volts)\n",
+ "f=3.#Frequency(in Khz)\n",
+ "Ib=250.#Base current(in nA)\n",
+ "R2=1.#Selected resistor(in kilo ohm)\n",
+ "I4=100.*Ib/1000.\n",
+ "Vr4=V/3.\n",
+ "R4=Vr4*1000./I4\n",
+ "R3=R4\n",
+ "R5=R4\n",
+ "Ir2=V/R2\n",
+ "Ir1=100.*Ib/1000.\n",
+ "Vr1=Vr4\n",
+ "R1=Vr1*1000./Ir1\n",
+ "t=1000./(2.*f)\n",
+ "C=1600\n",
+ "print '%s %.f %s %.f %s %.f %s %.f %s %.f %s %.f' %('Circuit components required to design the circuit are \\nR1(in kilo ohm)',R1,'\\nR2(in kilo ohm)',R2,'\\nR3(in kilo ohm)',R3,'\\nR4(in kilo ohm)',R4,'\\nR5(in kilo ohm)',R5,'\\nCapacitance(in pF)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components required to design the circuit are \n",
+ "R1(in kilo ohm) 160 \n",
+ "R2(in kilo ohm) 1 \n",
+ "R3(in kilo ohm) 160 \n",
+ "R4(in kilo ohm) 160 \n",
+ "R5(in kilo ohm) 160 \n",
+ "Capacitance(in pF)= 1600\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_8.ipynb b/Solid_State_Pulse_Circuits/Chapter_8.ipynb
new file mode 100755
index 00000000..e354b8ee
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_8.ipynb
@@ -0,0 +1,178 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:d81e43eab651aa6fd30f500bbb1e0bd8705caa6c96a13be542013eec088004c3"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 8 - IC Timer Circuits"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 239"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a 555 monostable circuit\n",
+ "t=1.#Pulse width(in ms)\n",
+ "Vcc=15.#Supply voltage(in volts)\n",
+ "Ith=0.25#Threshold current(in micro Ampere)\n",
+ "Ic=100.*Ith\n",
+ "R=Vcc*1000./(3.*Ic)\n",
+ "C=t*10.**6./(1.*R)\n",
+ "print '%s %.f %s %.f' %('Components required for designing 555 monostable circuit are \\nR(in kilo ohm)=',R,'\\nC(in pF)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required for designing 555 monostable circuit are \n",
+ "R(in kilo ohm)= 200 \n",
+ "C(in pF)= 5000\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 243"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#/Caption:Design a 555 astable multivibrator\n",
+ "p=2.#Pulse repetition frequency(in Khz)\n",
+ "d=0.66#Duty cycle\n",
+ "Ic=1.#Minimum collector voltage selected(in mA)\n",
+ "Vcc=18.#Supply voltage(in volts)\n",
+ "t=1000./p\n",
+ "t1=d*t\n",
+ "t2=t-t1\n",
+ "R=Vcc/(3*Ic)\n",
+ "C=t1*0.001/(0.693*R)\n",
+ "Rb=t2*0.001/(0.693*C)\n",
+ "Ra=R-Rb\n",
+ "print '%s %.1f %s %.2f %s %.2f' %('Components required to design the circuit are resistors \\nRa(in kilo ohm)=',3.3,'\\nRb(in kilo ohm)=',Rb,'\\nCapacitance(in micro farad)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required to design the circuit are resistors \n",
+ "Ra(in kilo ohm)= 3.3 \n",
+ "Rb(in kilo ohm)= 3.09 \n",
+ "Capacitance(in micro farad)= 0.08\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E3 - Pg 244"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine actual PRF and duty cycle\n",
+ "C=0.082#Capacitance(in micro farad)\n",
+ "Ra=3.3#Resistance(in kilo ohm)\n",
+ "Rb=2.7#Resistance(in kilo ohm)\n",
+ "t1=0.693*C*(Ra+Rb)*1000.\n",
+ "t2=0.693*C*Rb*1000.\n",
+ "T=t1+t2\n",
+ "P=1000./T\n",
+ "d=t1*100./T\n",
+ "print '%s %.f %s %.2f' %('Duty cycle(in %)=',d,'\\nPRF(in Khz)=',P)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Duty cycle(in %)= 69 \n",
+ "PRF(in Khz)= 2.02\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 254"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a square wave generator using 7555 CMOS\n",
+ "V=5.#Supply voltage(in volts)\n",
+ "f1=1.#Frequency(in khz)\n",
+ "f2=3.#Frequency(in khz)\n",
+ "C=0.01#Capacitance(in micro farad)\n",
+ "Ra=47.#Choosed resistor(in kilo ohm)\n",
+ "t1=1./(0.979*f1)\n",
+ "t2=1./(2.*f2)\n",
+ "R=t1/(0.693*C)\n",
+ "Rb=R-Ra\n",
+ "print '%s %.f %s %.f %s %.2f' %('Components required to design the circuit are \\nRa(in kilo ohm)=',Ra,'\\nRb(in kilo ohm)=',Rb,'\\nCapacitance(in micro farad)=',C)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required to design the circuit are \n",
+ "Ra(in kilo ohm)= 47 \n",
+ "Rb(in kilo ohm)= 100 \n",
+ "Capacitance(in micro farad)= 0.01\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/Chapter_9.ipynb b/Solid_State_Pulse_Circuits/Chapter_9.ipynb
new file mode 100755
index 00000000..bb3c0400
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/Chapter_9.ipynb
@@ -0,0 +1,385 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:a0a242a6e68dc538de9abb5ce09e495ac777f6f08436d31860a48948f4431520"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 9 - Ramp, Pulse and Function Generators"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E1 - Pg 263"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design RC ramp generator\n",
+ "import math\n",
+ "V=5.#Output voltage(in volts)\n",
+ "Vs=15.#Supply voltage(in volts)\n",
+ "R=100.#Load resistance(in kilo ohm)\n",
+ "v=3.#Amplitude of triggering pulse(in volts)\n",
+ "vb=0.5#Bse voltage(in volts)\n",
+ "p=1.2#Pulse width(in ms)\n",
+ "t=0.1#Time interval(in ms)\n",
+ "vbe=0.7#Base emitter voltage(in volts)\n",
+ "E=0.2#Initial voltage(in volts)\n",
+ "e=5.#Final voltage(in volts)\n",
+ "hfe=50.\n",
+ "Il=V/R\n",
+ "I1=100.*Il/1000.\n",
+ "R1=(Vs-V)/(I1*1000.)\n",
+ "C1=p/(R1*math.log((Vs-E)/(Vs-e)))\n",
+ "Ic=10.*I1\n",
+ "Ib=Ic/hfe\n",
+ "Rb=(Vs-vbe)/(Ib*1000.)\n",
+ "Vbb=v-vbe-vb\n",
+ "I=(Vs+v)/Rb\n",
+ "C2=I*p/Vbb\n",
+ "print '%s %.1f %s %.f %s %.1f %s %.2f' %('Components required to design circuit are resistances \\nRb(in kilo ohm)=',Rb,'\\nR1(in kilo ohm)=',R1,'\\nCapacitors \\nC1(in micro farad)=',C1,'\\nC2(in micro farad)=',C2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required to design circuit are resistances \n",
+ "Rb(in kilo ohm)= 14.3 \n",
+ "R1(in kilo ohm)= 2 \n",
+ "Capacitors \n",
+ "C1(in micro farad)= 1.5 \n",
+ "C2(in micro farad)= 0.84\n"
+ ]
+ }
+ ],
+ "prompt_number": 1
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E2 - Pg 267"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a linear ramp generator\n",
+ "V=5.#Output voltage(in volts)\n",
+ "Vcc=15.#Supply voltage(in volts)\n",
+ "Vce2=3.#Voltage(in volts)\n",
+ "C1=1.#Capacitance(in micro fard)\n",
+ "t=1.#pulse width(in ms)\n",
+ "Vbe=0.7#Base emitter voltage(in volts)\n",
+ "V3=Vcc-Vce2-5\n",
+ "Ic=C1*V/t\n",
+ "R3=V3/Ic\n",
+ "Vb=V3+Vbe\n",
+ "I1=Ic/10.\n",
+ "R1=Vb/I1\n",
+ "i1=Vb/R1\n",
+ "V2=Vcc-Vb\n",
+ "R2=V2/I1\n",
+ "print '%s %.1f %s %.1f %s %.1f %s %.f' %('Components required to design the circuit are resistors \\nR1(in kilo ohm)=',13.4,'\\nR2(in kilo ohm)=',R2,'\\nR3(in kilo ohm)=',R3,'\\ncapacitance C1(in micro farad)=',C1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Components required to design the circuit are resistors \n",
+ "R1(in kilo ohm)= 13.4 \n",
+ "R2(in kilo ohm)= 14.6 \n",
+ "R3(in kilo ohm)= 1.4 \n",
+ "capacitance C1(in micro farad)= 1\n"
+ ]
+ }
+ ],
+ "prompt_number": 2
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E4 - Pg 270"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Determine Rsmax,Rsmin,and minimum drain source voltage\n",
+ "I=2.#Drain Current(in mA)\n",
+ "Vgsm=3.#Maximum gate source voltage(in volts)\n",
+ "Vgsn=0.5#Minimum gate source voltage(in volts)\n",
+ "V=6.#Peak voltage(in volts)\n",
+ "Rs1=Vgsm/I\n",
+ "Rs2=Vgsn*1000./I\n",
+ "Vds=V-Vgsm+1.\n",
+ "print '%s %.1f %s %.f %s %.f' %('Required resistances Rsmax(in kilo ohm)=',Rs1,'\\nRsmin(in ohm)=',Rs2,'\\ndrain source voltage(in volts)=',Vds)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Required resistances Rsmax(in kilo ohm)= 1.5 \n",
+ "Rsmin(in ohm)= 250 \n",
+ "drain source voltage(in volts)= 4\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E5 - Pg 273"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a UJT relaxation oscillator and find peak to peak output amplitude\n",
+ "import math\n",
+ "Vbb=20.#Supply voltage(in volts)\n",
+ "f=5.#Frequency(in khz)\n",
+ "Veb=3.#Fringe Voltage(in volts)\n",
+ "Ip=2.#Fringe current(in micro ampere)\n",
+ "Iv=1.#Emitter current(in mA)\n",
+ "n=0.75\n",
+ "Vp=3.7+(n*Vbb)\n",
+ "R1x=(Vbb-Vp)/Ip\n",
+ "R1n=(Vbb-Veb)/Iv\n",
+ "t=1000./f\n",
+ "C1=t*1443./(R1n*(math.log((Vbb-Veb)/(Vbb-Vp))))\n",
+ "E=Vp-Veb\n",
+ "print '%s %.1f %s %.f %s %.f' %('Peak to peak voltage(in volts)=',E,'\\nComponents for circuit are \\nresistor(in kilo ohm)=',R1n,'\\ncapacitance(in pf)=',C1)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Peak to peak voltage(in volts)= 15.7 \n",
+ "Components for circuit are \n",
+ "resistor(in kilo ohm)= 17 \n",
+ "capacitance(in pf)= 6603\n"
+ ]
+ }
+ ],
+ "prompt_number": 4
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E6 - Pg 277"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a transistor bootstrap ramp generator\n",
+ "V=8.#Amplitude of output voltage(in volts)\n",
+ "Vd=0.7#Forward diode voltage(in volts)\n",
+ "Vce=0.2#Saturated collector emitter voltage(in volts)\n",
+ "t=1.#Interval between pulses(in ms)\n",
+ "Vt=3.#Triggering voltage(in volts)\n",
+ "E=15.#Supply voltage(in volts)\n",
+ "vbe=0.7#Base emitter voltage(in volts)\n",
+ "vb=0.5#Bse voltage(in volts)\n",
+ "hfe=100.\n",
+ "R=1.#Load resistor(in kilo ohm)\n",
+ "Ie1=E/R\n",
+ "Ie2=(V-(-E))/R\n",
+ "Ib1=Ie1/hfe\n",
+ "Ib2=Ie2/hfe\n",
+ "Ibc=Ib2-Ib1\n",
+ "I1=100.*Ibc/1000.\n",
+ "C1=I1*t*1000./V\n",
+ "Vr1=E-Vd-Vce\n",
+ "R1=Vr1/I1\n",
+ "Vc3=E/100.\n",
+ "C3=I1*t*1000./Vc3\n",
+ "Il=V/R\n",
+ "I1=100.*Il/1000.\n",
+ "Ic=10.*I1\n",
+ "Ib=Ic/hfe\n",
+ "Rb=(E-vbe)/(Ib*12.5)\n",
+ "Vbb=V-vbe-vb\n",
+ "I=(E+Vt)/Rb\n",
+ "C2=I*t/Vbb\n",
+ "print '%s %.1f %s %.f %s %.2f %s %.f' %('Circuit components are \\nresistor Rb(in kilo ohm)=',Rb,'\\ncapacitances \\nC1(in micro farad)=',C1,'\\nC2(in micro farad)=',C2,'\\nC3(in micro farad)=',C3)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components are \n",
+ "resistor Rb(in kilo ohm)= 14.3 \n",
+ "capacitances \n",
+ "C1(in micro farad)= 1 \n",
+ "C2(in micro farad)= 0.19 \n",
+ "C3(in micro farad)= 53\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E9 - Pg 284"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate drain current\n",
+ "V=5.#Output peak voltage(in volts)\n",
+ "p=1.#Pulse width(in ms)\n",
+ "s=50.#Space width(in micro sec)\n",
+ "C=0.03#Capacitance(in micro farad)\n",
+ "Vp=6.#Gate source voltage(in volts)\n",
+ "I1=C*V*1000./p\n",
+ "Vi=Vp+1.\n",
+ "R1=Vi/I1\n",
+ "Id=I1*p/s\n",
+ "print '%s %.f' %('Drain current(in mA)=',Id)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Drain current(in mA)= 3\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E12 - Pg 301"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Design a pulse generator using 8038 IC\n",
+ "p=200.#Pulse width(in micro sec)\n",
+ "f=1.#Pulse repetition frequency(in khz)\n",
+ "V=10.#Output voltage(in volts)\n",
+ "I=1.#Maximum current(in mA)\n",
+ "T=1000./f\n",
+ "t2=T-p\n",
+ "Ib=I*p/t2\n",
+ "Ra=V/(5.*I)\n",
+ "C=0.6*p/(Ra*1000.)\n",
+ "Rb=2.*V/(5.*(I+Ib))\n",
+ "Rl=V/I\n",
+ "print '%s %.3f %s %.f %s %.1f %s %.f' %('Circuit components are \\nCapacitance(in micro farad)=',C,'\\nResistances Rl(in kilo ohm)=',Rl,'\\nRb(in kilo ohm)=',Rb,'\\nRa(in kilo ohm)=',Ra)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Circuit components are \n",
+ "Capacitance(in micro farad)= 0.060 \n",
+ "Resistances Rl(in kilo ohm)= 10 \n",
+ "Rb(in kilo ohm)= 3.2 \n",
+ "Ra(in kilo ohm)= 2\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example E13 - Pg 303"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Caption:Calculate output maximum and minimum frequencies\n",
+ "V=15.#Supply voltage(in volts)\n",
+ "Imin=10.#Minimum current(in micro ampere)\n",
+ "Imax=1.#Maximum current(in mA)\n",
+ "C=3600.#Capacitor(in pF)\n",
+ "Rmax=V/(10.*Imin)\n",
+ "Rmin=V/(10.*Imax)\n",
+ "fmin=0.151*10.**6./(C*Rmax)\n",
+ "fmax=0.15*10.**6./(C*Rmin)\n",
+ "print '%s %.f %s %.f' %('minimum frequency(in hz)=',fmin,'\\nMaximum frequency(in khz)=',fmax)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "minimum frequency(in hz)= 280 \n",
+ "Maximum frequency(in khz)= 28\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file
diff --git a/Solid_State_Pulse_Circuits/screenshots/Screenshot1_SSPC.png b/Solid_State_Pulse_Circuits/screenshots/Screenshot1_SSPC.png
new file mode 100755
index 00000000..0361560e
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/screenshots/Screenshot1_SSPC.png
Binary files differ
diff --git a/Solid_State_Pulse_Circuits/screenshots/Screenshot2_SSPC.png b/Solid_State_Pulse_Circuits/screenshots/Screenshot2_SSPC.png
new file mode 100755
index 00000000..29ce6ae4
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/screenshots/Screenshot2_SSPC.png
Binary files differ
diff --git a/Solid_State_Pulse_Circuits/screenshots/Screenshot3_SSPC.png b/Solid_State_Pulse_Circuits/screenshots/Screenshot3_SSPC.png
new file mode 100755
index 00000000..18433bc6
--- /dev/null
+++ b/Solid_State_Pulse_Circuits/screenshots/Screenshot3_SSPC.png
Binary files differ