summaryrefslogtreecommitdiff
path: root/Solid_State_Pulse_Circuits_by_D_A_Bell
diff options
context:
space:
mode:
Diffstat (limited to 'Solid_State_Pulse_Circuits_by_D_A_Bell')
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/1-Pulse_Fundamentals.ipynb329
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/10-Basic_Logic_gates_and_logic_functions.ipynb92
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/11-Logic_circuits.ipynb63
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/12-IC_logic_gates.ipynb145
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/13-Bistable_Multivibrators.ipynb99
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/14-Digital_counting_and_measurement.ipynb134
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/15-Samping_conversion_modulation_and_multiplexing.ipynb165
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/2-RC_circuits.ipynb348
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/3-Diode_switching.ipynb330
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/4-Transistor_switching.ipynb373
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/5-IC_operational_amplifiers_in_switching_circuits.ipynb173
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/6-Schmit_Trigger_Circuits_and_voltage_comparators.ipynb258
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/7-Monostable_and_astable_multivibrators.ipynb261
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/8-IC_timer_circuits.ipynb161
-rw-r--r--Solid_State_Pulse_Circuits_by_D_A_Bell/9-Ramp_Pulse_and_function_generator.ipynb335
15 files changed, 3266 insertions, 0 deletions
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/1-Pulse_Fundamentals.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/1-Pulse_Fundamentals.ipynb
new file mode 100644
index 0000000..c8e3731
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/1-Pulse_Fundamentals.ipynb
@@ -0,0 +1,329 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 1: Pulse Fundamentals"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.1: Duty_cycle.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Find (a)Pulse amplitude (b)PRF (c)PW (d)Duty cycle and (e)M/S ratio\n",
+"//Exa:1.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(P,'(a)Pulse Amplitude (in volts)=')\n",
+"T=t*h\n",
+"prf=(1/T)*1000\n",
+"disp(prf,'(b)PRF(in pps)=')\n",
+"p=pw*h\n",
+"disp(p,'(c)PW (in ms)=')\n",
+"sw=pv*h\n",
+"d=(p/T)*100\n",
+"disp(d,'(d)Duty cycle(in %)=')\n",
+"m=p/sw\n",
+"disp(m,'(e)M/S ratio=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.2: pulse_amplitude.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine (a)Pulse amplitude,tilt,rise time,fall time,PW,PRF,mark to space ratio,and duty cycle (b)tilt\n",
+"//Ex1.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(dc,ms,pw,prf,tf,tr,t,E,'(a)Pulse Amplitude(in mv),tilt(in %),rise time(in micro sec),fall time(in micro sec),PW(in micro sec),PRF(in pps),M/s ratio,Duty cycle(in %)=')\n",
+"eb=0.5*vs\n",
+"ee=2.25*vs\n",
+"tb=eb*100/ee\n",
+"disp(tb,'(b)Tilt(in %)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.3: Average_voltage_level.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine average voltage level\n",
+"//Ex1.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Va,'Average voltage (in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.4: Determine_the_upper_3db_frequency_of_the_amplifier.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine the upper 3db frequency of the amplifier\n",
+"//Ex1.4\n",
+"clc;\n",
+"clear; \n",
+"close;\n",
+"tr=1//Rise time(in micro sec)\n",
+"fu=0.35*10^6/tr\n",
+"disp(fu,'The upper 3db frequency of the amplifier(in hertz)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.5: Determine_Minimum_upper_cut_frequency_Minimum_pulse_width_and_duty_cycle.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine (a)Minimum upper cut frequency (b)Minimum pulse width and duty cycle\n",
+"//Ex1.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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^3/pa\n",
+"Tr=(tr/100)*pw\n",
+"fh=0.35*10^6/Tr\n",
+"disp(fh,'(a)Minimum upper cut frequency(in hertz)=')\n",
+"Tr2=0.35*10^(-6)/fu\n",
+"Pw=10*Tr2\n",
+"dc=Pw*100*(pa*1000)\n",
+"disp(dc,Pw,'(b)Pulse width(in sec) and Duty cycle(in %)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6: EX1_6.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate a. Rise time in output waveform b. Minimum upper cut off frequency and displayed rise time\n",
+"//Ex1.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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=sqrt(((tr)*(10^(-6)))^2+(trc^2))*10^6\n",
+"disp(tro,'(a)Rise Time(in Micro sec)=')\n",
+"tc=ti*(10^(-9))/3\n",
+"fh=0.35*10^(-6)/tc\n",
+"Tro=sqrt((ti*(10^(-9)))^2+(tc^2))*10^9\n",
+"disp(Tro,fh,'(b)Minimum upper cut off frequency(in Mhz) and rise time(in ns)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.7: Calculate_lowest_input_frequency.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate lowest input frequency \n",
+"//Exa:1.7\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"fl=10//Lower cutoff frequency(in hertz)\n",
+"t=0.02//Tilt on output waveform\n",
+"f=%pi*fl/(t*1000)\n",
+"disp(f,'Lowest input frequency(in Khz)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.8: Determine_upper_cutoff_frequency_and_lower_cutoff_frequency.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine upper cutoff frequency and lower cutoff frequency\n",
+"//Ex:1.8\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(fh,'(a)upper cutoff frequency(in mhz)=') \n",
+"fl=f*t*1000/%pi\n",
+"disp(fl,'(b)Lower cutoff frequency(in hz)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.9: Determine_upper_and_lower_Frequencies.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine upper and lower Frequencies\n",
+"//Ex:1.9\n",
+"clc;\n",
+"clear;\n",
+"close;\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^(6)/tr\n",
+"fl=t*10^6/(2*%pi*Pw)\n",
+"disp(fl,fh,'Upper and lower frequencies(in hz)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/10-Basic_Logic_gates_and_logic_functions.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/10-Basic_Logic_gates_and_logic_functions.ipynb
new file mode 100644
index 0000000..2047c37
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/10-Basic_Logic_gates_and_logic_functions.ipynb
@@ -0,0 +1,92 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 10: Basic Logic gates and logic functions"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.1: Determine_low_and_high_voltage_outputs.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine low and high voltage outputs and resistance for desinging the gate circuit\n",
+"//Ex10.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R,Vh,Vl,'Low and high voltage outputs(in volts) and Required resistance(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.2: Find_minimum_value_of_the_resistance_to_design_OR_Gate.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Find minimum value of the resistance to design OR Gate\n",
+"//Ex10.2\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"Rc=3.3//Collector resistance(in kilo ohm)\n",
+"V=3.5//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",
+"disp(R,'Minimum value of resistance to design the circuit is(in kilo ohm)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/11-Logic_circuits.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/11-Logic_circuits.ipynb
new file mode 100644
index 0000000..cc4bc6f
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/11-Logic_circuits.ipynb
@@ -0,0 +1,63 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 11: Logic circuits"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 11.3: Determine_output_for_given_logic_circuit.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine output for given logic circuit\n",
+"//Ex11.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(o,'Output for given logic circuit is=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/12-IC_logic_gates.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/12-IC_logic_gates.ipynb
new file mode 100644
index 0000000..e4c4779
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/12-IC_logic_gates.ipynb
@@ -0,0 +1,145 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 12: IC logic gates"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 12.1: Determine_fan_out_for_DTL_NAND_gate.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption: Determine fan out for DTL NAND gate \n",
+"//Ex12.1\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"hfe=20\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",
+"disp(fo,'Fan out=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 12.2: Determine_Resistance_to_drive_inputs_of_5_TTL_gates.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine Resistance to drive inputs of 5 TTL gates\n",
+"//Ex12.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Rc,'Required resistance(in ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 12.4: Design_a_interface_circuit_for_CMOS.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a interface circuit for CMOS\n",
+"//Ex12.4\n",
+"clc; \n",
+"clear;\n",
+"close;\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",
+"disp(Rc,Rb,'Components required to design circuit are resistors Rb and Rc(in kilo ohm)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/13-Bistable_Multivibrators.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/13-Bistable_Multivibrators.ipynb
new file mode 100644
index 0000000..b8c0940
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/13-Bistable_Multivibrators.ipynb
@@ -0,0 +1,99 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 13: Bistable Multivibrators"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 13.1: Design_a_collector_coupled_bistable_multivibrator.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a collector coupled bistable multivibrator\n",
+"//Ex13.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Rc,R1,R2,'Components required to design the circuit are resistors(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 13.4: Determine_the_capacitance_for_flip_flop.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine the capacitance for flip flop design and triggering frequency \n",
+"//Ex13.4\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"R1=15//Resistor(in kilo ohm)\n",
+"R2=27//Resistor(in kilo ohm)\n",
+"t=250//time(in ns)\n",
+"R=R1*R2/(R1+R2)\n",
+"C=t/(0.1*R)\n",
+"f=10^6/(2.3*C*R)\n",
+"disp(f,C,'Capacitance(in pF) and Frequency(in Khz)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/14-Digital_counting_and_measurement.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/14-Digital_counting_and_measurement.ipynb
new file mode 100644
index 0000000..ce99f19
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/14-Digital_counting_and_measurement.ipynb
@@ -0,0 +1,134 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 14: Digital counting and measurement"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 14.1: Determine_Resistors_Rc_and_Rb.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine Resistors Rc and Rb\n",
+"//Ex14.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Rb,Rc,'Resistors are Rc and Rb(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 14.5: Determine_meter_indication_when_time_base_uses.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine meter indication when time base uses (a)6 decade counter (b)4 decade counter\n",
+"//Ex14.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(c1,'Cycles of input counted during t1=')\n",
+"f2=F/(10^4)\n",
+"t2=1/f2\n",
+"c2=f*t2\n",
+"disp(c2,'Cycles of input counted during t2=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 14.6: Determine_required_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine required current\n",
+"//Ex14.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Ir,'Required current(in micro ampere)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/15-Samping_conversion_modulation_and_multiplexing.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/15-Samping_conversion_modulation_and_multiplexing.ipynb
new file mode 100644
index 0000000..cdd17d0
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/15-Samping_conversion_modulation_and_multiplexing.ipynb
@@ -0,0 +1,165 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 15: Samping conversion modulation and multiplexing"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 15.1: Determine_the_errors_due_to_Rs_and_Rd.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine the errors due to Rs and Rd\n",
+"//Ex15.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(e2,e1,'Errors due to Rs(in %) and due to Rd(in %)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 15.2: Determine_capacitance_and_minimum_acquisition_time.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine capacitance and minimum acquisition time\n",
+"//Ex15.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(T,C,'Required capacitance(in micro farad) and acquisition time(in micro sec)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 15.3: Determine_the_error_due_to_capacitance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine the error due to capacitance\n",
+"//Ex15.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(e,'Error due to capacitance(in %)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 15.4: Calculate_the_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//caption:Calculate the output voltage\n",
+"//Ex15.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Vo,'Output voltage(in volts)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/2-RC_circuits.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/2-RC_circuits.ipynb
new file mode 100644
index 0000000..a7dd78d
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/2-RC_circuits.ipynb
@@ -0,0 +1,348 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 2: RC circuits"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.10: Calculate_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate output voltage for (a)10V and 1ms Pw (b)10V and 2ms PW (c)20V and 1ms PW\n",
+"//Ex2.10\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(eo3,eo2,eo1,'Output voltage for(a)(in mv),(b)(in mv),(c)(in mv)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.11: Calculate_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate output voltage for (a)10V and (b)20V\n",
+"//Ex2.11\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(eo1,'Output voltage for (a)(in volts)=')\n",
+"i2=(c*E2*10^(-6)/(t*10^(-3)))\n",
+"eo2=i2*r*1000\n",
+"disp(eo2,'Output voltage for (b)(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.12: Calculate_amplitude_of_output_waveform.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate amplitude of output waveform for (a)Rise time (b)Fall time\n",
+"//Ex2.12\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(eo1,'Amplitude of output waveform for (a)Rise time(in volts)=')\n",
+"eo2=r*c*0.001*e2/tf\n",
+"disp(eo2,'Amplitude of output waveform for (b)Fall time(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.3: Calculate_voltage_after_8ms.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate voltage after 8ms\n",
+"//Ex:2.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(e,'Voltage after 8ms(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.4: Determine_EC.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine (a)Ec at 1.5ms (b)Ec at 6ms\n",
+"//Ex2.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(ec2,ec1,'(a)Ec at 1.5ms(in volts) and (b)Ec at 6ms(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.5: Calculate_Rise_time.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Rise time,time for capacitor to charge to required amount and time required for complete charging\n",
+"//Ex2.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(tc,t,tr,'Rise time,time for 63.2% charging and time required for complete charging(in micro sec)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.6: Calculate_minimum_square_wave_frequency.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate minimum square wave frequency\n",
+"//Ex2.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(f,'Frequency required(in hertz)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.7: Determine_fastest_rise_time.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine fastest rise time\n",
+"//Ex2.7\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"r=600//Output resistance(in ohms)\n",
+"c=30//Input capacitance(in pf)\n",
+"tr=2.2*r*c*10^(-3)\n",
+"disp(tr,'Fastest rise time(in ns)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.8: Calculate_voltage_at_14_ms.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate voltage at 14 ms \n",
+"//Ex2.8\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(e3,'Voltage at 14ms(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.9: Determine_max_and_min_voltage_at_which_capacitor_voltage_will_settle.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine max and min voltage at which capacitor voltage will settle\n",
+"//Ex2.9\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Emin,Emax,'Maximum and minimum voltage(in volts)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/3-Diode_switching.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/3-Diode_switching.ipynb
new file mode 100644
index 0000000..af93853
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/3-Diode_switching.ipynb
@@ -0,0 +1,330 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 3: Diode switching"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.10: Calculate_Capacitance_C1and_C2.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Capacitance C1and C2,Diode reverse recovery time and input voltage\n",
+"//Ex3.10\n",
+"clc;\n",
+"clear;\n",
+"close;\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^(-3)/((r/(2*100))*V)\n",
+"trr=t/10\n",
+"Vpp=V+((r/100)*V)+(2*Vd)\n",
+"Vp=Vpp/2\n",
+"disp(C1,C2,trr,Vp,'Input voltage(in volts),Diode reverse recovery time(in micro sec),C2 and C1(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.1: Forward_Current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate (a)Resistance (b)Forward Current (c)Power dissipation (d)Peak Reverse Voltage\n",
+"//Ex:3.1\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"e=50//Input voltage(in volts)\n",
+"i=20//Output Current(in mA)\n",
+"v=0.5//Output voltage(in volts)\n",
+"is=5//Reverse Leakage Current(in micro ampere)\n",
+"vf=0.7//Forward voltage of diode(in volts)\n",
+"R=v*1000/is\n",
+"disp(R,'(a)Resistance(in Kilo ohm)=')\n",
+"I=(e-vf)/R\n",
+"P=(e^2)/R\n",
+"if=i+I\n",
+"disp(if,'(b)Forward Current(in mA)=')\n",
+"p=vf*if\n",
+"disp(p,'(c)Power Dissipation(in mW)=')\n",
+"ep=-e\n",
+"disp(ep,'(d)Peak Reverse Voltage(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.3: Calculate_resistance_and_amplitude_of_output_signal_Ex3_3.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate resistance and amplitude of output signal\n",
+"//Ex3.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"if=1//Forward current of diode(in mA)\n",
+"V=E-Vf\n",
+"R=V/if\n",
+"disp(V,R,'Resistance(in kilo ohm) and Output signal amplitude(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.4: Calculate_Resistance_and_diode_forward_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Resistance and diode forward current\n",
+"//Ex3.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"if=E-vf/R\n",
+"disp(if,R,'Resistance(in kilo ohm) and Diode forward current(in mA)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.5: Calculate_Resistance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Resistance\n",
+"//Ex3.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"if=1//Diode forward current(in mA)\n",
+"vb=V-vf\n",
+"R=(E-vb-vf)/(i+if)\n",
+"disp(R,'Resistance(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.6: Find_Zener_voltage_and_Resistance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Find Zener voltage and Resistance\n",
+"//Ex3.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R,Vz,'Zener voltage(in volts) and Resistance(in Kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.7: Calculate_Capacitance_and_Resistance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Capacitance and Resistance\n",
+"//Ex3.7\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R,C,'Capacitance(in micro farad) and Resistance(in Kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.8: Find_Capacitance_and_Resistance_required_to_design_the_circuit.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Find Capacitance and Resistance required to design the circuit\n",
+"//Ex3.8\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R,C,'Capacitance(in micro farad) and Resistance(in ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.9: Calculate_Capacitance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Capacitance,Resistance and Zener Voltage\n",
+"//Ex3.9\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Vz,R,C,'Capacitance(in micro farad),Resistance(in Kilo ohm) and Zener Voltage(in volts)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/4-Transistor_switching.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/4-Transistor_switching.ipynb
new file mode 100644
index 0000000..3798e47
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/4-Transistor_switching.ipynb
@@ -0,0 +1,373 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 4: Transistor switching"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.10: Determine_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine output voltage when (a)Device is cutoff (b)Device is switched on\n",
+"//Ex4.10\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Vo,'Output voltage when device is cutoff(in volts)=')\n",
+"Id=Vdd/Rd\n",
+"Vo2=Id*rd\n",
+"disp(Vo2,'Output voltage when device is switched on(in milli volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.1: hfe_for_changed_resistor.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine (a)hfe (b)hfe for changed resistor\n",
+"//Ex4.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(h1,'(a)hfe=')\n",
+"Ic2=Vcc*1000/Rc2\n",
+"h2=Ic2/Ib\n",
+"disp(h2,'(b)hfe for changed resistor=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.2: Calculate_the_transistor_power_dissipation_at.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate the transistor power dissipation at (a)Cutoff (b)Saturation (c)When Vce is 2V\n",
+"//Ex4.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(P1,'(a)Power dissipation at cutoff(in micro watt)=')\n",
+"P2=(Vcc/Rc)*Vs\n",
+"disp(P2,'(b)Power dissipation at saturation(in mW)=')\n",
+"I=(Vcc-Vce)/Rc\n",
+"P3=I*Vce\n",
+"disp(P3,'(c)Power dissipation at given Vce(in mW)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.3: Before_input_pulse_is_applied.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//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",
+"//Ex4.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Vce,'(a)Collector emitter voltage before input pulse is applied(in volts)=')\n",
+"Vce2=Vcc-(0.1*Vcc)\n",
+"disp(Vce2,'(b)Collector emittter voltage at end of delay time(in volts)=')\n",
+"Vce3=Vcc-(0.9*Vcc)\n",
+"disp(Vce3,'(c)Collector emitter voltage at end of turn on time(in volts)=')\n",
+"T=(t*10^(-3))+pw\n",
+"disp(T,'(d)Total time from commencement of input to transistor switch off(in micro sec)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.4: Capacitance_that_can_give_max_turn_on_time.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine (a)Capacitance that can give max turn on time (b)Max frequency\n",
+"//Ex4.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(C,'(a)Required capacitance(in pF)=')\n",
+"tre=2.3*Rb*C*10^(-3)\n",
+"f=1000/(2*tre)\n",
+"disp(f,'(b)Max Frequency(in Khz)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.5: Calculate_Rc_and_Rb.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Rc and Rb\n",
+"//Ex4.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Rb,Rc,'Rc and Rb(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.6: Determine_maximum_value_of_capacitor.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine maximum value of capacitor\n",
+"//Ex4.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(C,'Maxixmumvalue of capacitor(in pF)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.7: Design_a_transistor_by_determining_Rc.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a transistor by determining Rc,Rb and amplitude of output waveform\n",
+"//Ex4.7\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Vo,Rb,Rc,'Rc,Rb(in kilo ohm),and amplitude of output waveform(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.8: Calculate_Rc_Rb_and_Cc.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate Rc,Rb,and Cc\n",
+"//Ex4.8\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Cc,Rb,Rc,'Rc(in ohm),Rb(in kilo ohm),Cc(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.9: Determine_required_capacitance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine required capacitance\n",
+"//Ex4.9\n",
+"clc;\n",
+"clear;\n",
+"close;\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*(log(I*1000/ic)))\n",
+"disp(C,'Required capacitance(in micro farad)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/5-IC_operational_amplifiers_in_switching_circuits.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/5-IC_operational_amplifiers_in_switching_circuits.ipynb
new file mode 100644
index 0000000..424fb65
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/5-IC_operational_amplifiers_in_switching_circuits.ipynb
@@ -0,0 +1,173 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 5: IC operational amplifiers in switching circuits"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.1: design_a_non_inverting_amplifier.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a non inverting amplifier by determining Required resistances and output voltage\n",
+"//Ex5.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R1,R2,R3,Vo,'Output voltage(in volts),Required resistances R3,R2 and R1(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.3: Design_an_inverter_by_determining_input_resistance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design an inverter by determining input resistance,current and capacitance \n",
+"//Ex5.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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=(R1*R2)*1000/(R1+R2)\n",
+"Ii=Vi*1000/Ri\n",
+"pw=1000/(2*f)\n",
+"C=(Ii*pw)*10^(-6)/Vc\n",
+"disp(C,Ii,Ri,'Input resistance(in kilo ohm),Input current(in micro ampere) and Capacitance(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.4: Design_a_differentiating_circuit_by_determining_required_resistances.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a differentiating circuit by determining required resistances and capacitance\n",
+"//Ex5.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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=R2*1000/20\n",
+"R3=R2\n",
+"C=Vo*t/(R2*Vi*1000)\n",
+"disp(R3,R2,R1,C,'Required components for circuit are Capacitance(in micro farad),Resistances R1(in ohm),R2(in kilo ohm),R3(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.5: Calculate_lowest_operating_frequency_for_circuit.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate lowest operating frequency for circuit\n",
+"//Ex5.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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=20*1000/(2*%pi*C*R3)\n",
+"disp(F,'Required frequency(in hz)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/6-Schmit_Trigger_Circuits_and_voltage_comparators.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/6-Schmit_Trigger_Circuits_and_voltage_comparators.ipynb
new file mode 100644
index 0000000..7219e9e
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/6-Schmit_Trigger_Circuits_and_voltage_comparators.ipynb
@@ -0,0 +1,258 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 6: Schmit Trigger Circuits and voltage comparators"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.1: Determine_schmitt_trigger_circuit_components_for_designing_it.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine schmitt trigger circuit components for designing it\n",
+"//Ex6.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R1,R2,Rc,Re,'Circuit components Re,Rc,R2,R1(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.2: Find_circuit_components_for_designing_a_schmitt_trigger_circuit.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Find circuit components for designing a schmitt trigger circuit\n",
+"//Ex6.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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=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",
+"I1=l/R2\n",
+"Ie=(l-Vbe)/Re\n",
+"Rc1=Vcc-(I1*(r+R2))/Ie\n",
+"R1=r-Rc1\n",
+"disp(R1,R2,Rc1,Re,'Circuit components are Re,Rc1,R2,R1(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.3: Determine_Largest_speed_up_capacitance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine Largest speed up capacitance\n",
+"//Ex6.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(C,'Required Capacitance(in pF)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.4: Actual_UTP_and_LTP.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate R1,R2 and Actual UTP and LTP\n",
+"//Ex6.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(ltp,utp,R2,R1,'Circuit components R1,R2(in kilo ohm) and actual UTP and LTP(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.5: Design_Schmitt_circuit_components.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design Schmitt circuit components R1,R2,R3,R4 and R5\n",
+"//Ex6.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R5,R4,R3,R2,R1,'R1,R2,R3,R4,R5(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.6: Design_a_non_inverting_schmitt_trigger_circuit.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a non inverting schmitt trigger circuit\n",
+"//Ex6.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(R2,R1,'Circuit components R1 and R2(in kilo ohm)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/7-Monostable_and_astable_multivibrators.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/7-Monostable_and_astable_multivibrators.ipynb
new file mode 100644
index 0000000..f3f7e19
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/7-Monostable_and_astable_multivibrators.ipynb
@@ -0,0 +1,261 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 7: Monostable and astable multivibrators"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.1: Design_a_collector_coupled_monostable_multivibrator.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a collector coupled monostable multivibrator by determining rc,rb,r2,r1 and vb1\n",
+"//Ex7.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Vb1,R1,R2,Rb,Rc,'Required components for circuit design are Rc,Rb,R2,R1(in kilo ohm) and Vb1(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.2: Find_capacitance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Find capacitance\n",
+"//Ex7.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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*log((E-Eo)/E))\n",
+"disp(C,'Required capacitance(in pF)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.3: Design_a_monostable_multivibrator_using_op_amp_741.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a monostable multivibrator using op amp 741\n",
+"//Ex7.3\n",
+"clc;\n",
+"clear;\n",
+"close;\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*log((Vcc-E)/(Vcc-ec)))\n",
+"disp(C,R3,R2,R1,'Circuit components are resistances R1,R2,R3(in kilo ohm) and Capacitance(in pF)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.4: Design_a_astable_multivibrator.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a astable multivibrator \n",
+"//Ex7.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(C,Rb,Rc,'Components required to design a astable multivibrator are resistances Rb,Rc(in kilo ohm) and Capacitance(in pf)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.5: Design_a_astable_multivibrator_using_741_op_amp_Ex7_5.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a astable multivibrator using 741 op amp\n",
+"//Ex7.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(C,R3,R2,R1,'Circuit components for designing astable multivibrator are R1,R2,R3(in kilo ohm) and Capacitance(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.6: Design_a_astable_multivibrator_using_311_comparator.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a astable multivibrator using 311 comparator\n",
+"//Ex7.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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=t*1000/(R1*(log (2)))\n",
+"disp(C,R5,R4,R3,R2,R1,'Circuit components required to design the circuit are R1,R2,R3,R4,R5(in kilo ohm) and Capacitance(in pF)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/8-IC_timer_circuits.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/8-IC_timer_circuits.ipynb
new file mode 100644
index 0000000..a6e609e
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/8-IC_timer_circuits.ipynb
@@ -0,0 +1,161 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 8: IC timer circuits"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.1: Design_a_555_monostable_circuit.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a 555 monostable circuit\n",
+"//Ex8.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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.1*R)\n",
+"disp(C,R,'Components required for designing 555 monostable circuit are R(in kilo ohm) and C(in pF)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.2: Design_a_555_astable_multivibrator.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a 555 astable multivibrator\n",
+"//Ex8.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(C,Rb,Ra,'Components required to design the circuit are resistors Ra,Rb(in kilo ohm) and Capacitance(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.3: Determine_actual_PRF_and_duty_cycle.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine actual PRF and duty cycle\n",
+"//Ex8.3\n",
+"clc; \n",
+"clear;\n",
+"close;\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",
+"disp(P,d,'Duty cycle(in %) and PRF(in Khz)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.4: Design_a_square_wave_generator_using_7555_CMOS.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a square wave generator using 7555 CMOS\n",
+"//Ex8.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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/(2*f1)\n",
+"t2=1/(2*f2)\n",
+"R=t1/(0.693*C)\n",
+"Rb=R-Ra\n",
+"disp(C,Rb,Ra,'Components required to design the circuit are Ra,Rb(in kilo ohm) and Capacitance(in micro farad)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}
diff --git a/Solid_State_Pulse_Circuits_by_D_A_Bell/9-Ramp_Pulse_and_function_generator.ipynb b/Solid_State_Pulse_Circuits_by_D_A_Bell/9-Ramp_Pulse_and_function_generator.ipynb
new file mode 100644
index 0000000..73311f4
--- /dev/null
+++ b/Solid_State_Pulse_Circuits_by_D_A_Bell/9-Ramp_Pulse_and_function_generator.ipynb
@@ -0,0 +1,335 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 9: Ramp Pulse and function generator"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.12: Design_a_pulse_generator_using_8038_IC.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a pulse generator using 8038 IC\n",
+"//Ex9.12\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Ra,Rb,Rl,C,'Circuit components are Capacitance(in micro farad) and Resistances Rl,Rb,Ra(in kilo ohm)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.13: Calculate_output_maximum_and_minimum_frequencies.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate output maximum and minimum frequencies\n",
+"//Ex9.13\n",
+"clc;\n",
+"clear;\n",
+"close;\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.15*10^6/(C*Rmax)\n",
+"fmax=0.15*10^6/(C*Rmin)\n",
+"disp(fmin,fmax,'Maximum frequency(in khz) and minimum frequency(in hz)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.1: esign_RC_ramp_generator_Ex9_1.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design RC ramp generator\n",
+"//Ex9.1\n",
+"clc;\n",
+"clear;\n",
+"close;\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//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*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",
+"disp(C2,C1,R1,Rb,'Components required to design circuit are resistances Rb,R1(in kilo ohm) and Capacitors C1,C2(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.2: Design_a_linear_ramp_generator.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a linear ramp generator\n",
+"//Ex9.2\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(C1,R3,R2,R1,'Components required to design the circuit are resistors R1,R2,R3(in kilo ohm) and capacitance C1(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.4: Determine_Rsmax.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Determine Rsmax,Rsmin,and minimum drain source voltage\n",
+"//Ex9.4\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Vds,Rs2,Rs1,'Required resistances Rsmax(in kilo ohm),Rsmin(in ohm) and drain source voltage(in volts)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.5: find_peak_to_peak_output_amplitude.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a UJT relaxation oscillator and find peak to peak output amplitude\n",
+"//Ex9.5\n",
+"clc;\n",
+"clear;\n",
+"close;\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=0.7+(n*Vbb)\n",
+"R1x=(Vbb-Vp)/Ip\n",
+"R1n=(Vbb-Veb)/Iv\n",
+"t=1000/f\n",
+"C1=t*1000/(R1n*(log((Vbb-Veb)/(Vbb-Vp))))\n",
+"E=Vp-Veb\n",
+"disp(C1,R1n,E,'Peak to peak voltage(in volts) and Components for circuit are resistor(in kilo ohm) and capacitance(in pf)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.6: Design_a_transistor_bootstrap_ramp_generator.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Design a transistor bootstrap ramp generator\n",
+"//Ex9.6\n",
+"clc;\n",
+"clear;\n",
+"close;\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*1000)\n",
+"Vbb=V-vbe-vb\n",
+"I=(E+Vt)/Rb\n",
+"C2=I*t/Vbb\n",
+"disp(C3,C2,C1,Rb,'Circuit components are resistor Rb(in kilo ohm) and capacitances C1,C2,C3(in micro farad)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.9: Calculate_drain_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:Calculate drain current\n",
+"//Ex9.9\n",
+"clc;\n",
+"clear;\n",
+"close;\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",
+"disp(Id,'Drain current(in mA)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}