summaryrefslogtreecommitdiff
path: root/Semiconductor_Circuit_Approximations_by_Malvino
diff options
context:
space:
mode:
Diffstat (limited to 'Semiconductor_Circuit_Approximations_by_Malvino')
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/10-Other_Power_Amplifiers.ipynb358
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/11-More_Amplifier_Theory.ipynb159
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/12-JFETS.ipynb178
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/14-Thyristors.ipynb158
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/16-Op_Amp_Negative_Feedback.ipynb275
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/2-Rectifier_Diodes.ipynb248
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/3-Special_Diodes.ipynb575
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/4-Diode_Applications.ipynb258
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/5-Bipolar_Transistor.ipynb493
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/6-Common_Emitter_Approximations.ipynb451
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/7-Common_Collector_Approximations.ipynb404
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/8-Common_Base_Approximations.ipynb189
-rw-r--r--Semiconductor_Circuit_Approximations_by_Malvino/9-Class_A_Power_Amplifiers.ipynb520
13 files changed, 4266 insertions, 0 deletions
diff --git a/Semiconductor_Circuit_Approximations_by_Malvino/10-Other_Power_Amplifiers.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/10-Other_Power_Amplifiers.ipynb
new file mode 100644
index 0000000..72122fe
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/10-Other_Power_Amplifiers.ipynb
@@ -0,0 +1,358 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 10: Other Power Amplifiers"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.1: PDQ_PDmax_and_PLmax.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.1\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CEQ= 7.5;// in V\n",
+"R_L= 50;// in Ω\n",
+"I_Csat= V_CEQ/R_L;// in A\n",
+"I_CQ= 0.01*I_Csat;// in A\n",
+"P_DQ= V_CEQ*I_CQ;// in W\n",
+"PP= 2*V_CEQ;// in V\n",
+"P_Dmax= PP^2/(40*R_L);// in W\n",
+"P_Lmax= PP^2/(8*R_L);// in W\n",
+"// The value of P_DQ \n",
+"P_DQ= P_DQ*10^3;// in mW\n",
+"// The value of P_Dmax \n",
+"P_Dmax= P_Dmax*10^3;// in mW\n",
+"// The value of P_Lmax \n",
+"P_Lmax= P_Lmax*10^3;// in mW\n",
+"disp(P_DQ,'The value of P_DQ in mW is : ')\n",
+"disp(P_Dmax,'The value of P_Dmax in mW is : ')\n",
+"disp(P_Lmax,'The value of P_Lmax in mW is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.2: Efficiency_of_the_amplifier_with_a_maximum_output_signal.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.2\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 15;// in V\n",
+"I_Csat= 150;// in mA\n",
+"P_Lmax= 563;// in mW\n",
+"I= 0.02*I_Csat;// in mA\n",
+"Idc= 0.318*I_Csat;// in mA\n",
+"I_CC= I+Idc;// in mA\n",
+"P_CC= V_CC*I_CC;// in mW\n",
+"// The efficiency of amplifier \n",
+"Eta= P_Lmax/P_CC*100;// in %\n",
+"disp(Eta,'The efficiency of amplifier in % is : ');\n",
+"\n",
+"// Note: The answer in the book is not accurate\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.3: DC_and_AC_load_line.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.3\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 40;// in V\n",
+"V_CEQ= 20;// in V\n",
+"R_L= 10;// in Ω\n",
+"I_Csat= V_CEQ/R_L;// in A\n",
+"V_CEcutoff= V_CEQ;// in V\n",
+"V_CE= 0:0.1:V_CEcutoff;// in V\n",
+"I_C= (V_CEQ-V_CE)/R_L;// in A\n",
+"// The plot of ac load line,\n",
+"plot(V_CE,I_C)\n",
+"xlabel('V_CE in volts')\n",
+"ylabel('I_C in A')\n",
+"title('AC load line')\n",
+"disp('AC load line shown in figure')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.4: PDQ_PDmax_and_PLmax.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.4\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 40;// in V\n",
+"V_BE= 0.7;// in V\n",
+"R= 1*10^3;// in Ω\n",
+"R_L= 10;// in Ω\n",
+"V_CEQ= 20;// in V\n",
+"I_CQ= (V_CC-2*V_BE)/(2*R);// in A\n",
+"// The value of P_DQ\n",
+"P_DQ= V_CEQ*I_CQ;// in W\n",
+"disp(P_DQ,'The value of P_DQ in W is : ')\n",
+"PP= 2*V_CEQ;// in V\n",
+"// The value of P_Lmax\n",
+"P_Lmax= PP^2/(8*R_L);// in W\n",
+"// The value of P_Dmax\n",
+"P_Dmax= PP^2/(40*R_L);// in W\n",
+"disp(P_Lmax,'The value of P_Lmax in W is : ')\n",
+"disp(P_Dmax,'The value of P_Dmax in W is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.5: Voltage_gain_of_the_driver_stage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.5\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_E= 1.43;// in V\n",
+"R_E= 100;// in Ω\n",
+"R_L= 100;// in Ω\n",
+"R_C= 1*10^3;// in Ω\n",
+"bita= 200;\n",
+"Vt= 25*10^-3;// in V\n",
+"I_E= V_E/R_E;// in A\n",
+"I_CQ= I_E;// in A\n",
+"Zin= bita*R_L;// in Ω\n",
+"r_desh_e= Vt/I_CQ;// in Ω\n",
+"// The voltage gain of the driver stage \n",
+"A= (R_C*Zin/(R_C+Zin))/(R_E+r_desh_e);\n",
+"disp(A,'The voltage gain of the driver stage is : ')\n",
+"// On ignoring Zin and r_desh_e,\n",
+"A= R_C/R_E;\n",
+"disp(A,'On ignoring the value of Zin and r''e, the voltage gain is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.6: Ideal_value_of_PP_and_PLmax.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.6\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 30;// in V\n",
+"PP= V_CC;// in V\n",
+"R_L= 100;// in Ω\n",
+"// The value of P_Lmax \n",
+"P_Lmax= PP^2/(8*R_L);// in W\n",
+"disp(PP,'The value of PP in volts is : ')\n",
+"disp(P_Lmax,'The value of P_Lmax in W is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.7: Overall_voltage_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.7\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_C= 1*10^3;// in Ω\n",
+"r_desh_e= 2.5;//in Ω\n",
+"Zin= 1*10^3;// in Ω\n",
+"A2= 10;// unit less\n",
+"A3= 1;// unit less\n",
+"A1= (R_C*Zin/(R_C+Zin))/r_desh_e;// unit less\n",
+"// The overall voltage gain \n",
+"A= A1*A2*A3;\n",
+"disp(A,'The overall voltage gain is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.8: Minimum_base_current_that_produces_saturation.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.8\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 50;// in V\n",
+"V_CEsat= 1;// in V\n",
+"R_L= 5;// in Ω\n",
+"bita_dc= 90;// unit less\n",
+"I_Csat= (V_CC-V_CEsat)/R_L;// in A\n",
+"// The minimum base current that produces saturation \n",
+"I_Bsat= I_Csat/bita_dc;// in A\n",
+"I_Bsat= I_Bsat*10^3;// in mA\n",
+"disp(I_Bsat,'The minimum base current that produces saturation in mA is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 10.9: Input_voltage_required.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 10.9\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"I_Csat= 109*10^-3;// in A\n",
+"bita_dc= 200;\n",
+"R_B= 1*10^3;// in Ω\n",
+"V_BE1= 0.7;// in V\n",
+"V_BE2= 1.6;// in V\n",
+"// The base current,\n",
+"I_Bsat= I_Csat/bita_dc;// in A\n",
+"// The input voltage\n",
+"Vin= I_Bsat*R_B+V_BE1+V_BE2;// in V\n",
+"disp(Vin,'The input voltage in volts 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/Semiconductor_Circuit_Approximations_by_Malvino/11-More_Amplifier_Theory.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/11-More_Amplifier_Theory.ipynb
new file mode 100644
index 0000000..268ffd0
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/11-More_Amplifier_Theory.ipynb
@@ -0,0 +1,159 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 11: More Amplifier Theory"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 11.1: Closed_loop_voltage_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 11.1\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"r_F= 220;// in Ω\n",
+"r_E= 4.7;//in Ω\n",
+"// The closed loop voltage gain \n",
+"A_CL= r_F/r_E+1;\n",
+"disp(A_CL,'The closed loop voltage gain is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 11.2: Alpha_bita_rdeshe_and_rdeshc.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 11.2\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"h_ie= 3.5*10^3;//in Ω\n",
+"h_fe= 120;\n",
+"h_re= 1.3*10^-4;\n",
+"h_oe= 8.5*10^-6;// in S\n",
+"bita= h_fe;// unit less\n",
+"// The value of alpha \n",
+"alpha= h_fe/(h_fe+1);\n",
+"disp(alpha,'The value of alpha is : ')\n",
+"// The value of r'e\n",
+"r_desh_e= h_ie/h_fe;// in Ω\n",
+"r_desh_c= h_fe/h_oe;// in Ω\n",
+"disp(r_desh_e,'The value of r''e in Ω is : ')\n",
+"// The value of r'c\n",
+"r_desh_c= r_desh_c*10^-6;// in Mohm\n",
+"disp(r_desh_c,'The value of r''c in MΩ is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 11.3: Value_of_rdeshb.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 11.3\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"h_rb= 1.75*10^-4;\n",
+"h_ob= 10^-6;// in S\n",
+"r_desh_b= h_rb/h_ob;// in Ω\n",
+"disp(r_desh_b,'The value of r''b in Ω is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 11.4: Voltage_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 11.4\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"h_fe= 120;// unit less\n",
+"h_ie= 3.5*10^3;//in Ω\n",
+"r_L= 2*10^3;// in Ω\n",
+"h_oe= 8.5*10^-6;// in S\n",
+"h_re= 1.3*10^-4;// unit less\n",
+"// The voltage gain \n",
+"A= h_fe*r_L/(h_ie*(1+h_oe*r_L)-h_re*h_fe*r_L)\n",
+"disp(A,'The voltage gain 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/Semiconductor_Circuit_Approximations_by_Malvino/12-JFETS.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/12-JFETS.ipynb
new file mode 100644
index 0000000..e185c41
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/12-JFETS.ipynb
@@ -0,0 +1,178 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 12: JFETS"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 12.1: Source_voltage_to_ground.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 12.1\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R1= 20;// in kΩ\n",
+"R2= 10;// in kΩ\n",
+"R_E= 10;// in kΩ\n",
+"R_D= 8.2;// in kΩ\n",
+"V_G= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"V_GS= -2;// in V\n",
+"V_DD= 30;// in V\n",
+"V_B= R2*V_DD/(R1+R2);// in V\n",
+"I_E= (V_B-V_BE)/R_E;// in mA\n",
+"I_D= I_E;// in mA\n",
+"// The dc voltage from the drain to ground \n",
+"V_D= V_DD-I_D*R_D;// in V\n",
+"// The source voltage to ground \n",
+"Vs= V_G-V_GS;// in V\n",
+"disp(V_D,'The dc voltage from the drain to ground in volts is : ');\n",
+"disp(Vs,'The source voltage to ground in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 12.2: Transconductance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 12.2\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"gmo= 3000;// in µmhoS\n",
+"V_GSoff= -4;// in V\n",
+"I_DSS= 10;// in mA\n",
+"disp('Part (i) When V_GS= -1');\n",
+"V_GS= -1;// in V\n",
+"// The value of gm \n",
+"gm= gmo*(1-V_GS/V_GSoff);// in µS\n",
+"disp(gm,'The value of gm in µS is : ')\n",
+"disp('Part (ii) When I_D= 2.5 mA')\n",
+"I_D= 2.5;// in mA\n",
+"// The value of gm \n",
+"gm= gmo*2*I_D/I_DSS;// in µS\n",
+"disp(gm,'The value of gm in µS is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 12.3: Output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 12.3\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"gm= 2000;// in µS\n",
+"gm=gm*10^-6;// in S\n",
+"R_D= 4.7;// in kΩ\n",
+"Vin= 2;// in mV\n",
+"R_L= 10;// in kΩ\n",
+"r_D= R_D*R_L/(R_D+R_L);// in kΩ\n",
+"r_D= r_D*10^3;// in Ω\n",
+"A= gm*r_D;// unit less\n",
+"// The output voltage \n",
+"Vout= A*Vin;// in mV\n",
+"disp(Vout,'The output voltage in mV is : ')\n",
+"\n",
+"// Note: The calculated value of A in the book is wrong. Correct value of A is : 6.39, So the answer in the book is wrong."
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 12.4: Voltage_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 12.4\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_D= 7.5;// in kΩ\n",
+"R_L= 3;// in kΩ\n",
+"r_s= R_D*R_L/(R_D+R_L);// in kΩ\n",
+"r_s= r_s*10^3;// in Ω\n",
+"gm= 2500*10^-6;// in S\n",
+"// The voltage gain \n",
+"A= gm*r_s/(1+gm*r_s);// unit less\n",
+"disp(A,'The voltage gain 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/Semiconductor_Circuit_Approximations_by_Malvino/14-Thyristors.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/14-Thyristors.ipynb
new file mode 100644
index 0000000..606815e
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/14-Thyristors.ipynb
@@ -0,0 +1,158 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 14: Thyristors"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 14.1: Load_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 14.1\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V1=15;// in V\n",
+"V2=1;// in V\n",
+"R= 100;// in Ω\n",
+"// The load current \n",
+"I= (V1-V2)/R;// in A\n",
+"I= I*10^3;// in mA\n",
+"disp(I,'The load current in mA is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 14.2: Input_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 14.2\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"I= 4;// in mA\n",
+"I=I*10^-3;// in A\n",
+"V1=0.5;// voltage across diode in V\n",
+"R=100;// in Ω\n",
+"// The input voltage \n",
+"V= V1+I*R;// in V\n",
+"disp(V,'The input voltage in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 14.6: Ideal_emitter_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 14.6\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Eta= 0.85;\n",
+"V= 10;// in V\n",
+"V1= Eta*V;// in V\n",
+"V= 20;// in V\n",
+"R= 400;// in Ω\n",
+"// The emitter current\n",
+"I_E= V/R;// in A\n",
+"I_E= I_E*10^3;// in mA\n",
+"disp(I_E,'The emitter current in mA is : ')\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 14.7: Value_of_emitter_supply_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 14.7\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_E= 1;// in V\n",
+"R= 400;// in Ω\n",
+"I= 7*10^-3;// in A\n",
+"// The emitter supply voltage\n",
+"V= V_E+I*R;// in V\n",
+"disp(V,'The emitter supply voltage in volts is : ')\n",
+""
+ ]
+ }
+],
+"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/Semiconductor_Circuit_Approximations_by_Malvino/16-Op_Amp_Negative_Feedback.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/16-Op_Amp_Negative_Feedback.ipynb
new file mode 100644
index 0000000..ab629ce
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/16-Op_Amp_Negative_Feedback.ipynb
@@ -0,0 +1,275 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 16: Op Amp Negative Feedback"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 16.1: Output_voltage_and_error_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 16.1\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"A=100000;//unit less\n",
+"R1= 98*10^3;// in Ω\n",
+"R2= 2*10^3;// in Ω\n",
+"Vin= 1*10^-3;// in V\n",
+"B= R2/(R1+R2);// unit less\n",
+"A_CL= 1/B;// unit less\n",
+"A_CL= A/(1+A*B);// unit less\n",
+"// The output voltage \n",
+"Vout= Vin*A_CL;// in V\n",
+"// The error voltage \n",
+"Verror= Vout/A;// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"Verror= Verror*10^6;// in µV\n",
+"disp(Vout,'The output voltage in mV is : ')\n",
+"disp(Verror,'The error voltage in µV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 16.2: ACL_Vout_and_Verror.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 16.2\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"A=20000;\n",
+"B= 0.02;\n",
+"Vin= 1;// in mV\n",
+"Vin= Vin*10^-3;// in V\n",
+"// The closed loop voltage gain,\n",
+"A_CL= A/(1+A*B);\n",
+"// The output voltage,\n",
+"Vout= Vin*A_CL;// in V\n",
+"// The error voltage,\n",
+"Verror= Vout/A;// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"Verror= Verror*10^6;// in µV\n",
+"disp(A_CL,'The value of A_CL is : ');\n",
+"disp(Vout,'The value of Vout in mV is : ')\n",
+"disp(Verror,'The value of Verror in µV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 16.3: Closed_loop_input_and_output_impedence.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 16.3\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"A=100000;\n",
+"R1= 100*10^3;// in Ω\n",
+"R2= 100;// in Ω\n",
+"r_in= 2*10^6;// in Ω\n",
+"r_out= 75;// in Ω\n",
+"B= R2/(R1+R2);// unit less\n",
+"// The closed loop input impedence \n",
+"r_in_CL= (1+A*B)*r_in;// in Ω\n",
+"// The closed loop output impedence \n",
+"r_out_CL= r_out/(1+A*B);// in Ω\n",
+"r_in_CL=r_in_CL*10^-6;// in Mohm\n",
+"disp(r_in_CL,'The closed loop input impedence in MΩ is : ')\n",
+"disp(r_out_CL,'The closed loop output impedence in Ω is : ')\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 16.4: Closed_loop_voltage_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 16.4\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"A=100;\n",
+"R_B= 39*10^3;// in Ω\n",
+"r_in= 2*10^6;// in Ω\n",
+"r_out= 75;// in Ω\n",
+"Vin_off= 2*10^-3;// in V\n",
+"I_B1= 90*10^-9;// in A\n",
+"I_in_off= 20*10^-9;// in A\n",
+"// The closed loop voltage gain \n",
+"B=1;// unit less\n",
+"// The closed-loop input impedance\n",
+"r_in_CL= (1+A*B)*r_in;// in Ω\n",
+"r_in_CL= r_in_CL*10^-6;// in Mohm\n",
+"disp(B,'The closed loop voltage gain is : ')\n",
+"disp(r_in_CL,'The closed-loop input impedance in MΩ is : ')\n",
+"A=100000;\n",
+"// The closed-loop output impedance\n",
+"r_out_CL= r_out/A;// in Ω\n",
+"disp(r_out_CL,'The closed-loop output impedance in Ω is : ')\n",
+"//Let V= V1-V2 = Vin_off+I_B1*R_B\n",
+"V= Vin_off+I_B1*R_B;// in A\n",
+"// The output offset voltage \n",
+"Voo_CL= A*V/A;// in V\n",
+"Voo_CL= Voo_CL*10^3;// in mV\n",
+"disp(Voo_CL,'The output offset voltage in mV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 16.5: Closed_loop_voltage_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 16.5\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_F= 22*10^3;// in Ω\n",
+"R_S= 1*10^3;// in Ω\n",
+"A= 100000;// unit less\n",
+"// The closed-loop voltage gain\n",
+"A_CL= R_F/R_S;\n",
+"// The desensitivity\n",
+"desensitivity= A/A_CL;\n",
+"disp(A_CL,'The closed-loop voltage gain is : ')\n",
+"disp(desensitivity,'The desensitivity is : ')\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 16.6: Value_of_FCL.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 16.6\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"f_unity= 1*10^6;// in Hz\n",
+"// For A_CL= 1000, The value of f_CL\n",
+"A_CL= 1000;\n",
+"f_CL= f_unity/A_CL;// in Hz\n",
+"f_CL= f_CL*10^-3;// in kHz\n",
+"disp(f_CL,'For A_CL= 1000, The value of f_CL in kHz is : ')\n",
+"// For A_CL= 100, The value of f_CL\n",
+"A_CL= 100;\n",
+"f_CL= f_unity/A_CL;// in Hz\n",
+"f_CL= f_CL*10^-3;// in kHz\n",
+"disp(f_CL,'For A_CL= 100, The value of f_CL in kHz is : ')\n",
+"// For A_CL= 10, The value of f_CL\n",
+"A_CL= 10;\n",
+"f_CL= f_unity/A_CL;// in Hz\n",
+"f_CL= f_CL*10^-3;// in kHz\n",
+"disp(f_CL,'For A_CL= 10, The value of f_CL in kHz is : ')\n",
+"// For A_CL= 1, The value of f_CL\n",
+"A_CL= 1;\n",
+"f_CL= f_unity/A_CL;// in Hz\n",
+"f_CL= f_CL*10^-6;// in MHz\n",
+"disp(f_CL,'For A_CL= 1, The value of f_CL in MHz 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/Semiconductor_Circuit_Approximations_by_Malvino/2-Rectifier_Diodes.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/2-Rectifier_Diodes.ipynb
new file mode 100644
index 0000000..b106524
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/2-Rectifier_Diodes.ipynb
@@ -0,0 +1,248 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 2: Rectifier Diodes"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.1: Output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 2.1\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"format('v',6)\n",
+"// given data\n",
+"Vin= 15;// in V\n",
+"R_L= 10;// in kΩ\n",
+"// The output voltage\n",
+"Vout= Vin ;// in V\n",
+"// The current\n",
+"I= Vout/R_L;// in mA\n",
+"disp(Vout,'The output voltage in volts is : ');\n",
+"disp(I,'The current in mA is : ');"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.2: Output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 2.2\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"format('v',6)\n",
+"// given data\n",
+"Vin= 15;// in V\n",
+"I=0;\n",
+"R_L= 10;// in kΩ\n",
+"R_L= R_L*10^3;// in Ω\n",
+"// The output voltage \n",
+"Vout= I*R_L;// in V\n",
+"// The voltage across the diode \n",
+"V_R= Vin-Vout;// in V\n",
+"disp(Vout,'The output voltage in volts is : ');\n",
+"disp(V_R,'The voltage across the diode in volts is : ');"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.4: Maximum_reverse_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 2.4\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin= 15;// in V\n",
+"V_P= Vin;// in V\n",
+"R_L= 10;// in kΩ\n",
+"R_L= R_L*10^3;// in Ω\n",
+"Vout=0;\n",
+"// The peak current through the diode \n",
+"I_P= V_P/R_L;// in A\n",
+"// The maximum reverse voltage \n",
+"V_R= Vin-Vout;// in V\n",
+"I_P= I_P*10^3;// in mA\n",
+"disp(I_P,'The peak current through the diode in mA is : ');\n",
+"disp(V_R,'The maximum reverse voltage in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.5: Power_dissipation_of_the_diode.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 2.5\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin= 15;// in V\n",
+"V_K= 0.7;// in V\n",
+"R_L= 10;// in kΩ\n",
+"R_L= R_L*10^3;// in Ω\n",
+"// The output voltage \n",
+"Vout= Vin-V_K;// in V\n",
+"// The current \n",
+"I= Vout/R_L;// in A\n",
+"// The power dissipation of the diode \n",
+"P= V_K*I;// in W\n",
+"I=I*10^3;// in mA\n",
+"P= round(P*10^3);// in mW\n",
+"disp(Vout,'The output voltage in volts is : ');\n",
+"disp(I,'The current in mA is : ');\n",
+"disp(P,'The power dissipation of the diode in mW is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.6: Peak_forward_current_and_PIV.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 2.6\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin= 15;// in V\n",
+"V_K= 0.7;// in V\n",
+"Vout=0;// in V\n",
+"R_L= 10;// in kΩ\n",
+"R_L= R_L*10^3;// in Ω\n",
+"// The peak output voltage \n",
+"V_P= Vin-V_K;// in V\n",
+"// The maximum forward current \n",
+"I_P= V_P/R_L;// in A\n",
+"// The peak inverse voltage \n",
+"PIV= Vin-Vout;// in V\n",
+"I_P= I_P*10^3;// in mA\n",
+"disp(V_P,'The peak output voltage in volts is : ');\n",
+"disp(I_P,'The maximum forward current in mA is : ');\n",
+"disp(PIV,'The peak inverse voltage in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 2.7: Peak_load_voltage_and_peak_inverse_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 2.7\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"format('v',5)\n",
+"// given data\n",
+"Vin= 10;// in V\n",
+"V_K= 0.7;// in V\n",
+"Vout=0;// in V\n",
+"R_L= 1000;// in kΩ\n",
+"r_B= 20;// in Ω\n",
+"// The peak forward current,\n",
+"I_P= (Vin-V_K)/(R_L+r_B);// in A\n",
+"// The peak voltage \n",
+"V_P= I_P*R_L;// in V\n",
+"// The peak inverse voltage \n",
+"PIV= Vin-Vout;// in V\n",
+"disp(V_P,'The peak voltage in volts is : ');\n",
+"disp(PIV,'The peak inverse voltage in volts 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/Semiconductor_Circuit_Approximations_by_Malvino/3-Special_Diodes.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/3-Special_Diodes.ipynb
new file mode 100644
index 0000000..870948f
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/3-Special_Diodes.ipynb
@@ -0,0 +1,575 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 3: Special Diodes"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.10: Value_of_Change_in_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.10\n",
+"format('v',7)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_Z= 7;// in Ω\n",
+"I_Z1=12.2;// in mA\n",
+"I_Z2=60.2;// in mA\n",
+"deltaV_Z=(I_Z2-I_Z1)*R_Z;// in mV\n",
+"deltaV_Z= deltaV_Z*10^-3;// in V\n",
+"Vz= 12;// in V\n",
+"// The output voltage,\n",
+"Vout= Vz+deltaV_Z;// in V\n",
+"disp(Vout,'The output voltage in V is : ');"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.11: Value_of_IS_IL_IZ.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.11\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vz= 12;// in V\n",
+"Vin= 15;// in V\n",
+"R_S= 200;// in Ω\n",
+"R_L= 1*10^3;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vz)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vz/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.12: Value_of_IS_IL_IZ.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.12\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"disp('(i) For 15 V input voltage');\n",
+"Vin= 15;// in V\n",
+"Vz= 12;// in V\n",
+"R_S= 200;// in Ω\n",
+"R_L= 1*10^3;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vz)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vz/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(ii) For 20 V input voltage');\n",
+"Vin= 20;// in V\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vz)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vz/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(iii) For 25 V input voltage');\n",
+"Vin= 25;// in V\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vz)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vz/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(iv) For 30 V input voltage');\n",
+"Vin= 30;// in V\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vz)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vz/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(v) For 35 V input voltage');\n",
+"Vin= 35;// in V\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vz)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vz/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.1: LED_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.1\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin= 12;// in V\n",
+"V_LED= 2;// in V\n",
+"Rs= 470;// in Ω\n",
+"Vs= Vin-V_LED;// in V\n",
+"// The LED current \n",
+"I= Vs/Rs;// in A\n",
+"I= I*10^3;// in mA\n",
+"disp(I,'The LED current in mA is : ')\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.2: LED_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.2\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin= 5;// in V\n",
+"V_LED= 2;// in V\n",
+"Rs= 470;// in Ω\n",
+"Vs= Vin-V_LED;// in V\n",
+"// When supply voltage is 5 V, the LED current\n",
+"I= Vs/Rs;// in A\n",
+"I= I*10^3;// in mA\n",
+"disp(I,'When supply voltage is 5 V, the LED current in mA is : ')\n",
+"Vin= 10;// in V\n",
+"Vs= Vin-V_LED;// in V\n",
+"// When supply voltage is 10 V, the LED current\n",
+"I= Vs/Rs;// in A\n",
+"I= I*10^3;// in mA\n",
+"disp(I,'When supply voltage is 10 V, the LED current in mA is : ')\n",
+"Vin= 15;// in V\n",
+"Vs= Vin-V_LED;// in V\n",
+"// When supply voltage is 15 V, the LED current\n",
+"I= Vs/Rs;// in A\n",
+"I= I*10^3;// in mA\n",
+"disp(I,'When supply voltage is 15 V, the LED current in mA is : ')\n",
+"Vin= 20;// in V\n",
+"Vs= Vin-V_LED;// in V\n",
+"// When supply voltage is 20 V, the LED current\n",
+"I= Vs/Rs;// in A\n",
+"I= I*10^3;// in mA\n",
+"disp(I,'When supply voltage is 20 V, the LED current in mA is : ')\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.4: Tuning_range.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.4\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"C1= 560;//transistor capacitance at 1V in pF\n",
+"C2= 30;//transistor capacitance at 10V in pF\n",
+"// The tuning range \n",
+"tuningRange= C1/C2;\n",
+"disp(tuningRange,'The tuning range is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.5: Minimum_and_maximum_zener_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.5\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin_min= 20;// in V\n",
+"Vin_max= 40;// in V\n",
+"Vz= 10;// in V\n",
+"Rs= 820;// in Ω\n",
+"// The minimum zener current,\n",
+"Iz_min= (Vin_min-Vz)/Rs;// in A\n",
+"// The maximum zener current, \n",
+"Iz_max= (Vin_max-Vz)/Rs;// in A\n",
+"// The output voltage,\n",
+"Vout= Vz;// in V\n",
+"Iz_min= Iz_min*10^3;// in mA\n",
+"Iz_max= Iz_max*10^3;// in mA\n",
+"disp(Iz_min,'The minimum zener current in mA is : ');\n",
+"disp(Iz_max,'The maximum zener current in mA is : ');\n",
+"disp(Vout,'The output voltage in V is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.6: Minimum_and_maximum_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.6\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Rs= 820;// in Ω\n",
+"Rz= 17;// in Ω\n",
+"R_T= Rs+Rz;// in Ω\n",
+"Vz= 10;// in V\n",
+"Vin_min= 20;// in V\n",
+"Vin_max= 40;// in V\n",
+"// The minimum zener current \n",
+"Iz_min= (Vin_min-Vz)/R_T;// in A\n",
+"// The maximum zener current \n",
+"Iz_max= (Vin_max-Vz)/R_T;// in A\n",
+"// The minimum output voltage \n",
+"Vout_min= Vz+Iz_min*Rz;// in V\n",
+"// The maximum output voltage \n",
+"Vout_max= Vz+Iz_max*Rz;// in V\n",
+"Iz_min= Iz_min*10^3;// in mA\n",
+"Iz_max= Iz_max*10^3;// in mA\n",
+"disp(Iz_min,'The minimum zener current in mA is : ')\n",
+"disp(Iz_max,'The maximum zener current in mA is : ')\n",
+"disp(Vout_min,'The minimum output voltage in V is : ')\n",
+"disp(Vout_max,'The maximum output voltage in V is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.7: Maximum_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.7\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"P= 100;// power rating in mW\n",
+"V= 6.2;// in V\n",
+"// The maximum current rating \n",
+"I_ZM= P/V;// in mA\n",
+"disp(I_ZM,'The maximum current rating in mA is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.8: Value_of_IS_IL_IZ.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.8\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vz= 12;// in V\n",
+"Vout= Vz;// in V\n",
+"Vin= 25;// in V\n",
+"R_S= 180;// in Ω\n",
+"R_L= 200;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vout)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vout/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.9: Values_of_all_currents.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Exa 3.9\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"disp('(i) For 200 Ω load resistance');\n",
+"R_L= 200;// in Ω\n",
+"Vz= 12;// in V\n",
+"Vout= Vz;// in V\n",
+"Vin= 25;// in V\n",
+"R_S= 180;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vout)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vout/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(ii) For 400 Ω load resistance');\n",
+"R_L= 400;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vout)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vout/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(iii) For 600 Ω load resistance');\n",
+"R_L= 600;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vout)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vout/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(iv) For 800 Ω load resistance');\n",
+"R_L= 800;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vout)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vout/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"disp('(v) For 1 kΩ load resistance');\n",
+"R_L= 1*10^3;// in Ω\n",
+"// The value of I_S \n",
+"I_S= (Vin-Vout)/R_S;// in A\n",
+"// The value of I_L \n",
+"I_L= Vout/R_L;// in A\n",
+"// The value of I_Z \n",
+"I_Z= I_S-I_L;// in A\n",
+"I_S= I_S*10^3;// in mA\n",
+"I_L= I_L*10^3;// in mA\n",
+"I_Z= I_Z*10^3;// in mA\n",
+"disp(I_S,'The value of I_S in mA is : ')\n",
+"disp(I_L,'The value of I_L in mA is : ')\n",
+"disp(I_Z,'The value of I_Z in mA is : ')\n",
+"\n",
+"\n",
+""
+ ]
+ }
+],
+"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/Semiconductor_Circuit_Approximations_by_Malvino/4-Diode_Applications.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/4-Diode_Applications.ipynb
new file mode 100644
index 0000000..78d2c88
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/4-Diode_Applications.ipynb
@@ -0,0 +1,258 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 4: Diode Applications"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.1: DC_voltage_across_load_resistance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 4.1\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V2rms= 40;// in V\n",
+"R_L= 20;// in Ω\n",
+"V2peak= V2rms/0.707;// in V\n",
+"Vout_peak= V2peak;// in V\n",
+"// The dc voltage across the load resistor \n",
+"Vdc=0.318*Vout_peak;// in V\n",
+"//The peak inverse voltage across the diode \n",
+"PIV= V2peak;// in V\n",
+"Idc= Vdc/R_L;// in A\n",
+"// The dc current through the diode \n",
+"I_diode= Idc;// in A\n",
+"disp(Vdc,'The dc voltage across the load resistor in volts is : ');\n",
+"disp(PIV,'The peak inverse voltage across the diode in volts is : ');\n",
+"disp(I_diode,'The dc current through the diode in A is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.2: DC_current_through_each_diode.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 4.2\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vrms= 40;// in V\n",
+"R_L= 20;// in Ω\n",
+"V2peak= Vrms/0.707;// in V\n",
+"Vout_peak= V2peak/2;// in V\n",
+"// The dc load voltage \n",
+"Vdc=0.636*Vout_peak;// in V\n",
+"// The peak inverse voltage across each diode \n",
+"PIV= V2peak;// in V\n",
+"Idc= Vdc/R_L;// in A\n",
+"// The dc current through each diode \n",
+"I_diode= Idc/2;// in A\n",
+"disp(Vdc,'The dc load voltage in volts is : ');\n",
+"disp(PIV,'The peak inverse voltage across each diode in volts is : ');\n",
+"disp(I_diode,'The dc current through each diode in A is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.3: Value_of_Vdc_and_PIV.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 4.3\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vrms= 40;// in V\n",
+"R_L= 20;// in Ω\n",
+"V2peak= Vrms/0.707;// in V\n",
+"Vout_peak= V2peak;// in V\n",
+"// The value of Vdc \n",
+"Vdc=0.636*Vout_peak;// in V\n",
+"// The value of PIV \n",
+"PIV= V2peak;// in V\n",
+"Idc= Vdc/R_L;// in A\n",
+"//The value of I_diode\n",
+"I_diode= Idc/2;// in A\n",
+"disp(Vdc,'The value of Vdc in volts is : ');\n",
+"disp(PIV,'The value of PIV in volts is : ');\n",
+"disp(I_diode,'The value of I_diode in A is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.6: DC_load_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 4.6\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vdc= 56.6;// in V\n",
+"R_L= 100;// in Ω\n",
+"f=120;// in Hz\n",
+"C= 1000;// in µF\n",
+"C= C*10^-6;// in F\n",
+"V2peak= Vdc;// in V\n",
+"Idc= Vdc/R_L;// in A\n",
+"// The peak-to-peak ripple \n",
+"Vrip= Idc/(f*C);// in V\n",
+"// The dc load voltage \n",
+"Vdc= V2peak-Vrip/2;// in V\n",
+"disp(Vrip,'The peak-to-peak ripple in volts is : ');\n",
+"disp(Vdc,'The dc load voltage in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.8: Zener_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 4.8\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V2rms= 12.6;// in V\n",
+"V_Z= 6.8;// in V\n",
+"V2peak= V2rms/0.707;// in V\n",
+"Vin= V2peak;// in V\n",
+"Vout= V_Z;// in V\n",
+"R_L= 1.2;// in kΩ\n",
+"R_L= R_L*10^3;//in Ω\n",
+"Rs= 1;// in kΩ\n",
+"Rs= Rs*10^3;// in Ω\n",
+"Is= (Vin-Vout)/Rs;// in A\n",
+"I_L= Vout/R_L;// in A\n",
+"// The zener current \n",
+"Iz= Is-I_L;// in A\n",
+"Iz= Iz*10^3;// in mA\n",
+"disp(Iz,'The zener current in mA is : ')\n",
+"\n",
+"// Note: The calculation in the book is not accurate."
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 4.9: Ripple_across_the_load_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 4.9\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"C= 100;//in µF\n",
+"C= C*10^-6;// in F\n",
+"Rz= 5;//in Ω\n",
+"Rs= 1*10^3;//in Ω\n",
+"Idc= 11*10^-3;//in A\n",
+"f=120;//in Hz\n",
+"Vin_rip= Idc/(f*C);// in V\n",
+"// The ripple across the load resistance \n",
+"Vout_rip= Rz*Vin_rip/(Rs+Rz);//in A\n",
+"Vout_rip= Vout_rip*10^3;// in mV\n",
+"disp(Vout_rip,'The ripple across the load resistance in mV 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/Semiconductor_Circuit_Approximations_by_Malvino/5-Bipolar_Transistor.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/5-Bipolar_Transistor.ipynb
new file mode 100644
index 0000000..74f5583
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/5-Bipolar_Transistor.ipynb
@@ -0,0 +1,493 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 5: Bipolar Transistor"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.10: IC_and_VCE.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.10\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;//in V\n",
+"V_CC= 15;// in V\n",
+"R_C= 1*10^3;// in Ω\n",
+"R_B= 200*10^3;// in Ω\n",
+"bita= 300;// unit less\n",
+"// The collector current,\n",
+"I_C= (V_CC-V_BE)/(R_C+R_B/bita);// in A\n",
+"I_C=I_C*10^3;// in mA\n",
+"disp(I_C,'The value of I_C in mA is : ');\n",
+"I_C=I_C*10^-3;// in A\n",
+"// The collector to emitter voltage,\n",
+"V_CE= V_CC-I_C*R_C;// in V\n",
+"disp(V_CE,'The value of V_CE in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.11: IC_and_VCE.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.11\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;//in V\n",
+"V_CC= 15;// in V\n",
+"V_EE= 15;// in V\n",
+"R_E= 10*10^3;// in Ω\n",
+"R_C= 5.1*10^3;// in Ω\n",
+"I_E= (V_EE-V_BE)/R_E;// in A\n",
+"// The collector current,\n",
+"I_C= I_E;// in A\n",
+"V_C= V_CC-I_C*R_C;// in A\n",
+"V_E= -V_BE;// in V\n",
+"V_CE= V_C-V_E;// in V\n",
+"// The collector to emitter voltage,\n",
+"V_CE= V_CC+V_EE-I_C*(R_C+R_E)\n",
+"I_C= I_C*10^3;// in mA\n",
+"disp(I_C,'The value of I_C in mA is : ');\n",
+"disp(V_CE,'The value of V_CE in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.12: DC_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.12\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;//in V\n",
+"V_CC= 30;// in V\n",
+"Vz= 6;// in V\n",
+"R_E= 3*10^3;// in Ω\n",
+"R_C= 4*10^3;// in Ω\n",
+"I_E= (Vz-V_BE)/R_E;// in A\n",
+"I_C= I_E;// in A\n",
+"// For first stage the collector voltage to ground \n",
+"V_C= V_CC-I_C*R_C;// in v\n",
+"disp(V_C,'For first stage the collector voltage to ground in volts is : ')\n",
+"Vz= 10;// in V\n",
+"R_E= 2*10^3;//in Ω\n",
+"R_C= 3*10^3;// in Ω\n",
+"I_E= (Vz-V_BE)/R_E;// in A\n",
+"I_C= I_E;// in A\n",
+"// For second stage the collector voltage to ground \n",
+"V_C= I_C*R_C;// in v\n",
+"disp(V_C,'For second stage the collector voltage to ground in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.1: Value_of_VCE.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.1\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BB= 10;//in V\n",
+"V_BE= 0.7;//in V\n",
+"V_CC= 20;// in V\n",
+"R_B= 1.5;// in MΩ\n",
+"R_B= R_B*10^6;//in Ω\n",
+"R_C= 5*10^3;//in Ω\n",
+"bita= 125;// unit less\n",
+"I_B= (V_BB-V_BE)/R_B;//in A\n",
+"I_C= bita*I_B;//in A\n",
+"// The dc voltage between the collector and emitter \n",
+"V_CE= V_CC-I_C*R_C;//in V\n",
+"disp(V_CE,'The dc voltage between the collector and emitter in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.2: DC_load_line.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.2\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 30;// in V\n",
+"R_C= 1.5;//in kΩ\n",
+"Ver_intercept= V_CC/R_C;//in mA\n",
+"Hor_intercept= V_CC;// in V\n",
+"V_CE= 0:0.1:Hor_intercept;// in V\n",
+"I_C= (V_CC-V_CE)/R_C;// in mA\n",
+"// DC load line\n",
+"plot(V_CE,I_C)\n",
+"xlabel('V_CE in volts');\n",
+"ylabel('I_C in mA')\n",
+"title('DC load line')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.3: Value_of_IC_and_VCE.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.3\n",
+"format('v',4)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;//in V\n",
+"V_CC= 30;// in V\n",
+"R_B= 390;// in kΩ\n",
+"R_B= R_B*10^3;//in Ω\n",
+"R_C= 1.5*10^3;//in Ω\n",
+"bita= 80;// unit less\n",
+"I_B= (V_CC-V_BE)/R_B;//in A\n",
+"// The collector current,\n",
+"I_C= bita*I_B;//in A\n",
+"// The value of V_CE\n",
+"V_CE= V_CC-I_C*R_C;//in V\n",
+"I_C= I_C*10^3;// in mA\n",
+"disp(I_C,'The value of I_C in mA is : ')\n",
+"disp(V_CE,'The value of V_CE in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.4: LED_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.4\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;// in V\n",
+"V_LED= 2;//in V\n",
+"V_CC= 20;// in V\n",
+"R_B= 47;// in kΩ\n",
+"R_B= R_B*10^3;//in Ω\n",
+"R_C= 1*10^3;//in Ω\n",
+"bita= 150;// unit less\n",
+"// The LED current\n",
+"I_LED= (V_CC-V_LED)/R_C;// in A\n",
+"I_Csat= I_LED;// in A\n",
+"I_Bsat= I_Csat/bita;// in A\n",
+"// The input voltage,\n",
+"V_IN= I_Bsat*R_B+V_BE;//in V\n",
+"I_LED= I_LED*10^3;// in mA\n",
+"disp(I_LED,'The LED current in mA is : ');\n",
+"disp(V_IN,'The value of Vin in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.5: DC_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.5\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vz= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"V_CC= 30;// in V\n",
+"R_E= 5;// in kΩ\n",
+"R_E= R_E*10^3;//in Ω\n",
+"R_C= 4;// in kΩ\n",
+"R_C= R_C*10^3;//in Ω\n",
+"V_E= Vz-V_BE;// in V\n",
+"I_E= V_E/R_E;// in A\n",
+"I_C= I_E;// in A\n",
+"// The collector voltage\n",
+"V_C= V_CC-I_C*R_C;// in V\n",
+"disp(V_C,'The collector voltage in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.6: DC_collector_to_ground_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.6\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;// in V\n",
+"R2= 1*10^3;//in Ω\n",
+"R1= 3.9*10^3;//in Ω\n",
+"R_E= 100;// in Ω\n",
+"R_C= 150;// in kΩ\n",
+"V_CC= 25;// in V\n",
+"Vz= R2*V_CC/(R1+R2);// in V\n",
+"V_E= Vz-V_BE;// in V\n",
+"I_E= V_E/R_E;// in A\n",
+"I_C= I_E;// in A\n",
+"// The collector voltage \n",
+"V_C= V_CC-I_C*R_C;// in V\n",
+"disp(V_C,'The collector voltage in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.7: Value_of_Vc.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.7\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_E= 2*10^3;// in Ω\n",
+"R_C= 1*10^3;// in kΩ\n",
+"V_E= 4.3;//in V\n",
+"V_CC= 15;// in V\n",
+"I_E= V_E/R_E;// in A\n",
+"I_C= I_E;//in A\n",
+"// In the first stage the collector voltage \n",
+"V_C= V_CC-I_C*R_C;// in A\n",
+"disp(V_C,'In the first stage the collector voltage in volts is : ');\n",
+"// Second stage\n",
+"V_E= 2.3;// in V\n",
+"R_E= 220;// in Ω\n",
+"R_C= 470;// in Ω\n",
+"I_E= V_E/R_E;// in A\n",
+"I_C= I_E;//in A\n",
+"// In the second stage the collector voltage \n",
+"V_C= V_CC-I_C*R_C;// in A\n",
+"disp(V_C,'In the second stage the collector voltage in volts is : ');\n",
+"\n",
+"// Note : In the book, the calculated value of collector voltage in first stage is not accurate."
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.8: Minimum_and_maximum_collector_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.8\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;//in V\n",
+"V_CC= 30;// in V\n",
+"R_B= 3*10^6;// in Ω\n",
+"bitamin= 100;// unit less\n",
+"bitamax= 300;// unit less\n",
+"I_B= (V_CC-V_BE)/R_B;// in A\n",
+"// The minimum value of collector current \n",
+"I_Cmin= bitamin*I_B;// in A\n",
+"// The maximum value of collector current \n",
+"I_Cmax= bitamax*I_B;// in A\n",
+"I_Cmin= I_Cmin*10^3;// in mA\n",
+"I_Cmax= I_Cmax*10^3;// in mA\n",
+"disp(I_Cmin,'The minimum value of collector current in mA is : ');\n",
+"disp(I_Cmax,'The maximum value of collector current in mA is : ');"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 5.9: IC_and_VCE.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 5.9\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;//in V\n",
+"V_CC= 15;// in V\n",
+"R_E= 100;// in Ω\n",
+"R_C= 910;// in Ω\n",
+"R_B= 430*10^3;// in Ω\n",
+"bita= 300;// unit less\n",
+"// The collector current,\n",
+"I_C= (V_CC-V_BE)/(R_E+R_B/bita);// in A\n",
+"I_C= I_C*10^3;// in mA\n",
+"disp(I_C,'The value of I_C in mA is : ');\n",
+"I_C= I_C*10^-3;// in A\n",
+"// The collector to emitter voltage,\n",
+"V_CE= V_CC-I_C*(R_C+R_E);// in V\n",
+"disp(V_CE,'The value of V_CE in volts 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/Semiconductor_Circuit_Approximations_by_Malvino/6-Common_Emitter_Approximations.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/6-Common_Emitter_Approximations.ipynb
new file mode 100644
index 0000000..32ceed4
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/6-Common_Emitter_Approximations.ipynb
@@ -0,0 +1,451 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 6: Common Emitter Approximations"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.10: Ac_output_voltage_across_the_final_load_resistor.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.10\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"bita= 150;\n",
+"R1= 10*10^3;// in Ω\n",
+"R2= 2.2*10^3;// in Ω\n",
+"R_E= 1*10^3;// in Ω\n",
+"Rs= 1*10^3;// in Ω\n",
+"R_C= 3.6*10^3;// in Ω\n",
+"R_L= 1.5*10^3;// in Ω\n",
+"V_CC= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"Vt= 25*10^-3;// in V\n",
+"Vin= 1*10^-3;// in V\n",
+"V_B= R2*V_CC/(R1+R2);// in V\n",
+"V_E= V_B-V_BE;// in V\n",
+"I_E= V_E/R_E;// in A\n",
+"r_desh_e= Vt/I_E;// in Ω\n",
+"Zin_base= bita*r_desh_e;// in Ω\n",
+"Zin= R1*R2*Zin_base/(R1*R2+R1*Zin_base+R2*Zin_base);// in Ω\n",
+"Vb1= Zin*Vin/(Rs+Zin);// in V\n",
+"r_L= R_C*Zin/(R_C+Zin);// in Ω\n",
+"V_B= R2*V_CC/(R1+R2);// in V\n",
+"V_E= V_B-V_BE;// in V\n",
+"I_E= V_E/R_E;// in A\n",
+"r_desh_e= Vt/I_E;// in Ω\n",
+"A1= r_L/r_desh_e;\n",
+"Vb2= A1*Vb1;// in V\n",
+"r_L= R_C*R_L/(R_C+R_L);// in Ω\n",
+"A2= r_L/r_desh_e;\n",
+"// The ac output voltage across the final load resistor \n",
+"Vout= A2*Vb2;// in V\n",
+"A= A1*A2;\n",
+"Vout= A*Vb1;// in V\n",
+"disp(Vout,'The ac output voltage across the final load resistor in volts is : ')\n",
+"\n",
+"\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.11: Ac_voltage_at_the_final_output.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.11\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"bita= 150;\n",
+"R1= 10*10^3;// in Ω\n",
+"R2= 2.2*10^3;// in Ω\n",
+"R_C= 3.6*10^3;// in Ω\n",
+"Rs= 1*10^3;// in Ω\n",
+"R_L= 1.5*10^3;// in Ω\n",
+"r_E= 180;// in Ω\n",
+"R_E= 1*10^3;// in Ω\n",
+"V_CC= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"Vt= 25*10^-3;// in V\n",
+"Vin= 1*10^-3;// in V\n",
+"V_B= R2*V_CC/(R1+R2);// in V\n",
+"V_E= V_B-V_BE;// in V\n",
+"I_E= V_E/R_E;// in A\n",
+"r_desh_e= Vt/I_E;// in Ω\n",
+"Zin_base= bita*(r_desh_e+r_E);// in Ω\n",
+"Zin= R1*R2*Zin_base/(R1*R2+R1*Zin_base+R2*Zin_base);// in Ω\n",
+"r_L= R_C*Zin/(R_C+Zin);// in Ω\n",
+"A1= r_L/(r_E+r_desh_e);\n",
+"r_L= R_C*R_L/(R_C+R_L);// in Ω\n",
+"A2= r_L/(r_desh_e+r_E);\n",
+"A= A1*A2;\n",
+"Vb1= Zin*Vin/(Rs+Zin);// in V\n",
+"// The ac voltage at the final output \n",
+"Vout= A*Vb1;// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"disp(Vout,'The ac voltage at the final output in mV is : ')\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.2: Total_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.2\n",
+"format('v',4)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R1= 10;// in Ω\n",
+"R2= 10010;// in Ω\n",
+"V1= 10;// in V\n",
+"// The total voltage across the 10 Ω resistance \n",
+"V= R1/R2*V1;// in V\n",
+"V= V*10^3;// in mV\n",
+"disp(V,'The total voltage across the 10 Ω resistance in mV is :');\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.3: Total_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.3\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R= 10*10^3;// in Ω\n",
+"V_CC= 15;// in V\n",
+"V_BE= 0.7;// in V\n",
+"Vt= 25*10^-3;// in V\n",
+"Vp= 1*10^-3;// in V\n",
+"I= (V_CC-V_BE)/R;// in A\n",
+"r_ac= Vt/I;// in Ω\n",
+"// The total current through diode \n",
+"Ip= Vp/r_ac;// in A\n",
+"Ip= Ip*10^6;// in µA\n",
+"disp(Ip,'The total current through diode in µA is : ')\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.4: Input_impedence.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.4\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R1= 47*10^3;// in Ω\n",
+"R2= 15*10^3;// in Ω\n",
+"R_E= 8.2*10^3;// in Ω\n",
+"R_C= 10*10^3;// in Ω\n",
+"R3= 3.3*10^3;// in Ω\n",
+"bita= 200;\n",
+"V_CC= 30;// in V\n",
+"V_BE= 0.7;// in V\n",
+"Vin= 5*10^-3;//in V\n",
+"Vt= 25*10^-3;// in V\n",
+"V2= R2*V_CC/(R1+R2);// in V\n",
+"// DC voltage across emitter\n",
+"V_E= V2-V_BE;// in V\n",
+"// Emitter current\n",
+"I_E= V_E/R_E;// in A\n",
+"r_desh_e= Vt/I_E;// in Ω\n",
+"r_L= R_C*R3/(R_C+R3);//in Ω\n",
+"A= r_L/r_desh_e;\n",
+"// The output voltage \n",
+"Vout= A*Vin;// in V\n",
+"Zin_base= bita*r_desh_e;// in Ω\n",
+"// The input impedance of amplifier \n",
+"Zin= R1*R2*Zin_base/(R2*Zin_base+R1*Zin_base+R1*R2);// in Ω\n",
+"Vout= Vout*10^3;// in mV\n",
+"Zin= Zin*10^-3;// in k ohm\n",
+"disp(Vout,'The output voltage in mV is : ')\n",
+"disp(Zin,'The input impedance of amplifier in kΩ is : ')\n",
+"\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.5: Value_of_VB.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.5\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R1= 10*10^3;// in Ω\n",
+"R2= 2.2*10^3;// in Ω\n",
+"R_C= 3.6*10^3;// in Ω\n",
+"V_CC= 10;// in V\n",
+"I_C= 1.1*10^-3;// in A\n",
+"// The base voltage \n",
+"V_B= R2*V_CC/(R1+R2);// in V\n",
+"// The collector voltage \n",
+"V_C= V_CC-I_C*R_C;// in V\n",
+"disp(V_B,'The base voltage in V is : ')\n",
+"disp(V_C,'The collector voltage in V is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.6: Ac_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.6\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V2= 1.1;// in V\n",
+"Vin= 1*10^-3;// in V\n",
+"Vt= 25*10^-3;// in V\n",
+"R2= 1*10^3;// in Ω\n",
+"R_C= 3.6*10^3;// in Ω\n",
+"I_E= V2/R2;// in A\n",
+"// Emitter diode ac resistance\n",
+"r_desh_e= Vt/I_E;// in Ω\n",
+"A= R_C/r_desh_e;\n",
+"// The output voltage \n",
+"Vout= A*Vin;// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"disp(Vout,'The output voltage in mV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.7: Minimum_and_maximum_voltage_gain.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.7\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_C= 10*10^3;// in Ω\n",
+"R_L= 82*10^3;// in Ω\n",
+"r_E= 1*10^3;// in Ω\n",
+"r_desh_e_min= 50;// in Ω\n",
+"r_desh_e_max= 100;// in Ω\n",
+"r_L= R_C*R_L/(R_C+R_L);// in Ω\n",
+"// The minimum voltage gain \n",
+"A_min= r_L/r_desh_e_max;\n",
+"// The maximum voltage gain \n",
+"A_max= r_L/r_desh_e_min;\n",
+"disp(A_min,'The minimum voltage gain is : ')\n",
+"disp(A_max,'The maximum voltage gain is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.8: Input_impedance_of_the_amplifier.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.8\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"bita= 200;\n",
+"R1= 47*10^3;// in Ω\n",
+"R2= 15*10^3;// in Ω\n",
+"r_E= 1*10^3;// in Ω\n",
+"r_desh_e= 50;// in Ω\n",
+"Zin_base= bita*(r_E+r_desh_e);// in Ω\n",
+"// The input impedance of the amplifier \n",
+"Zin= R1*R2*Zin_base/(R1*R2+R1*Zin_base+R2*Zin_base);// in Ω\n",
+"Zin= Zin*10^-3;// in k ohm\n",
+"disp(Zin,'The input impedance of the amplifier in kΩ is : ')\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 6.9: Input_impedance_of_each_stage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 6.9\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"bita= 150;\n",
+"R1= 10*10^3;// in Ω\n",
+"R2= 2.2*10^3;// in Ω\n",
+"R_E= 1*10^3;// in Ω\n",
+"V_CC= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"Vt= 25*10^-3;// in V\n",
+"V_B= R2*V_CC/(R1+R2);// in V\n",
+"V_E= V_B-V_BE;// in V\n",
+"// The emitter current,\n",
+"I_E= V_E/R_E;// in A\n",
+"r_desh_e= Vt/I_E;// in Ω\n",
+"Zin_base= bita*r_desh_e;// in Ω\n",
+"// The input impedance of each stage \n",
+"Zin= R1*R2*Zin_base/(R1*R2+R1*Zin_base+R2*Zin_base);// in Ω\n",
+"Zin= Zin*10^-3;// in k ohm\n",
+"disp(Zin,'The input impedance of each stage in kΩ is : ')\n",
+""
+ ]
+ }
+],
+"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/Semiconductor_Circuit_Approximations_by_Malvino/7-Common_Collector_Approximations.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/7-Common_Collector_Approximations.ipynb
new file mode 100644
index 0000000..53d2dee
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/7-Common_Collector_Approximations.ipynb
@@ -0,0 +1,404 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 7: Common Collector Approximations"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.10: Input_impedance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.10\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_E= 360;// in Ω\n",
+"R_L= 1*10^3;// in Ω\n",
+"R1= 100*10^3;//in Ω\n",
+"R2= 100*10^3;//in Ω\n",
+"r_desh_e1= 250;// in Ω\n",
+"r_desh_e2= 2.5;// in Ω\n",
+"h_FE= 100;\n",
+"h_fe= 100;\n",
+"// The load resistance,\n",
+"r_L= R_E*R_L/(R_E+R_L);// in Ω\n",
+"Zin1= h_FE*h_fe*r_L;// in Ω\n",
+"Zin= R1*R2*Zin1/(R1*R2+R2*Zin1+Zin1*R1);// in Ω\n",
+"Zin2= h_FE*(r_L+r_desh_e2);// in Ω\n",
+"Zin1= h_FE*(Zin2+r_desh_e1);// in Ω\n",
+"// The input impedence \n",
+"Zin= R1*R2*Zin1/(R1*R2+R2*Zin1+Zin1*R1);// in Ω\n",
+"Zin= Zin*10^-3;// in k ohm\n",
+"disp(Zin,'The input impedence in kΩ is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.11: Zener_current.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.11\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin= 20;// in V\n",
+"Vz= 10;// in V\n",
+"Rs= 680;// in Ω\n",
+"V_BE= 0.7;// in V\n",
+"R_L= 15;// in Ω\n",
+"bita= 80;\n",
+"Is= (Vin-Vz)/Rs;// in A\n",
+"Vout= Vz-V_BE;// in V\n",
+"I_E= Vout/R_L;// in A\n",
+"I_L= I_E;// in A\n",
+"I_B= I_E/bita;// in A\n",
+"// The current through the zener diode \n",
+"Iz= Is-I_B;// in A\n",
+"V_CE= Vin-Vout;// in V\n",
+"// The transistor power dissipation \n",
+"Po= I_L*(Vin-Vout);// in W\n",
+"Iz= Iz*10^3;// in mA\n",
+"disp(Iz,'The current through the zener diode in mA is : ');\n",
+"disp(Po,'The transistor power dissipation in watt is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.1: DC_load_line_and_Q_point.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.1\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 10;// in V\n",
+"R_E= 430;// in Ω\n",
+"V_BE= 0.7;//in V\n",
+"V_B= 5;//in V\n",
+"// The collector saturation current,\n",
+"I_Csat= V_CC/R_E;// in A\n",
+"// The collector emitter voltage,\n",
+"V_CEcutoff= V_CC;// in V\n",
+"// The collector current,\n",
+"I_C= (V_B-V_BE)/R_E;// in A\n",
+"// The collector emitter voltage,\n",
+"V_CE= V_CC-(V_B-V_BE);// in V\n",
+"I_C= I_C*10^3;// in mA\n",
+"disp('Q-point is : '+string(V_CE)+' V, '+string(I_C)+' mA');\n",
+"disp('DC load line shown in figure')\n",
+"I_C= I_C*10^-3;// in A\n",
+"V_CE= 0:0.1:V_CEcutoff;// in V\n",
+"I_C= (V_CC-V_CE)/R_E*10^3;// in mA\n",
+"// The plot of DC load line\n",
+"plot(V_CE,I_C);\n",
+"xlabel('V_CE in volts');\n",
+"ylabel('I_C in mA');\n",
+"title('DC load line')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.2: AC_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.2\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Vin= 100;// in mV\n",
+"Vin= Vin*10^-3;// in V\n",
+"R_E= 430;// in Ω\n",
+"R_L= 1*10^3;// in Ω\n",
+"r_e= 2.5;// in Ω\n",
+"// The ac load resistance,\n",
+"r_L= R_E*R_L/(R_E+R_L);// in Ω\n",
+"A= r_L/(r_L+r_e);// unit less\n",
+"// The output voltage \n",
+"Vout= A*Vin;// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"disp(Vout,'The output voltage in mV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.3: Voltage_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.3\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_E= 430;// in Ω\n",
+"R_L= 100;// in Ω\n",
+"R1= 10*10^3;// in Ω\n",
+"R2= 10*10^3;// in Ω\n",
+"bita= 200;// unit less\n",
+"r_e= 2.5;// in Ω\n",
+"r_L= R_E*R_L/(R_E+R_L);// in Ω\n",
+"// The voltge gain \n",
+"A= r_L/(r_L+r_e);\n",
+"disp(A,'The voltge gain is : ')\n",
+"Zin_base= bita*(r_L+r_e);// in Ω\n",
+"// The input impedence \n",
+"Zin= R1*R2*Zin_base/(R1*R2+R2*Zin_base+Zin_base*R1);// in Ω\n",
+"Zin= Zin*10^-3;// in k ohm\n",
+"disp(Zin,'The input impedence in kΩ is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.4: Power_gai.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.4\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_E= 430;// in Ω\n",
+"R_L= 100;// in Ω\n",
+"R1= 10*10^3;// in Ω\n",
+"R2= 10*10^3;// in Ω\n",
+"bita= 200;\n",
+"r_e= 2.5;// in Ω\n",
+"// The load resistance\n",
+"r_L= R_E*R_L/(R_E+R_L);// in Ω\n",
+"// The power gain \n",
+"G= bita*r_L/(r_L+r_e);\n",
+"disp(G,'The power gain is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.5: AC_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.5\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_C= 5*10^3;// in Ω\n",
+"r_e= 25;// in Ω\n",
+"Vin= 1*10^-3;// in V\n",
+"R_L= 1*10^3;// in Ω\n",
+"A= R_C/r_e;\n",
+"// Thevenin voltage,\n",
+"V_TH= A*Vin;// in V\n",
+"// The ac output voltage \n",
+"Vout= R_L*V_TH/(R_C+R_L);// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"disp(Vout,'The ac output voltage in mV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.7: AC_output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.7\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_B= 1.8;// in V\n",
+"V_E= 1.1;// in V\n",
+"V_TH= 200*10^-3;// in V\n",
+"I_E= 1*10^-3;// in A\n",
+"r_e= 2.5;//in Ω\n",
+"bita=200;\n",
+"V_CC= 10;// in V\n",
+"R_C= 5*10^3;// in Ω\n",
+"R_E= 430;// in Ω\n",
+"R_L= 1*10^3;//in Ω\n",
+"I_C= I_E;// in A\n",
+"// The collector voltage,\n",
+"V_C= V_CC-I_C*R_C;// in V\n",
+"V_E= 4.3;// in V\n",
+"// The emitter current,\n",
+"I_E= V_E/R_E;// in A\n",
+"// The base current,\n",
+"I_B= I_E/bita;// in A\n",
+"// The load resistance,\n",
+"r_L= R_E*R_L/(R_E+R_L);// in Ω\n",
+"Zin= bita*(r_L+r_e);// in Ω\n",
+"Vin= Zin*V_TH/(R_C+Zin);// in V\n",
+"// The ac output voltage\n",
+"Vout= r_L*Vin/(r_L+r_e);//in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"disp(Vout,'The ac output voltage in mV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 7.9: re1_and_re2.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 7.9\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R1= 100;//in kΩ\n",
+"R2= 100;//in kΩ\n",
+"R3= 360;//in Ω\n",
+"bita= 100;\n",
+"V1= 5;// in V\n",
+"v1= 1.4;// in V\n",
+"v2= 25;// in mV\n",
+"// Voltage at first base\n",
+"V2= R1/R2*V1;// in V\n",
+"// Emitter current in second transistor\n",
+"I_E2= (V2-v1)/R3;// in A\n",
+"I_E2= I_E2*10^3;// in mA\n",
+"// Resistance of second emitter diode,\n",
+"r_desh_e2= v2/I_E2;// in Ω\n",
+"// Base current\n",
+"I_B2= I_E2/bita;// in mA \n",
+"// Emitter current,\n",
+"I_E1= I_B2;// in mA\n",
+"// First emitter diode resistance\n",
+"r_desh_e1= v2/I_E1;// in Ω\n",
+"disp(r_desh_e2,'The value of r''e2 in Ω is : ')\n",
+"disp(r_desh_e1,'The value of r''e1 in Ω 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/Semiconductor_Circuit_Approximations_by_Malvino/8-Common_Base_Approximations.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/8-Common_Base_Approximations.ipynb
new file mode 100644
index 0000000..a5b4968
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/8-Common_Base_Approximations.ipynb
@@ -0,0 +1,189 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 8: Common Base Approximations"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.1: Value_of_VCB.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 8.1\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_EE= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"R_E= 20*10^3;// in Ω\n",
+"V_CC= 25;// in V\n",
+"R_C= 10*10^3;// in Ω\n",
+"// The emitter current\n",
+"I_E= (V_EE-V_BE)/R_E;// in A\n",
+"I_C= I_E;// in A\n",
+"// The collector to base voltage,\n",
+"V_CB= V_CC-I_C*R_C;// in V\n",
+"disp(V_CB,'The value of V_CB in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.2: Value_of_VCB.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 8.2\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_EE= 12;// in V\n",
+"V_BE= 0.7;// in V\n",
+"R_E= 5.6*10^3;// in Ω\n",
+"V_CC= 15;// in V\n",
+"R_C= 6.8*10^3;// in Ω\n",
+"// The emitter current,\n",
+"I_E= (V_EE-V_BE)/R_E;// in A\n",
+"I_C= I_E;// in A\n",
+"// The collector to base voltage\n",
+"V_CB= V_CC-I_C*R_C;// in V\n",
+"disp(V_CB,'The value of V_CB in volts is : ')\n",
+"\n",
+"// Note : The answer in the book is not accurate.\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.3: Output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 8.3\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_EE= 15;// in V\n",
+"V_BE= 0.7;// in V\n",
+"R_E= 22*10^3;// in Ω\n",
+"Vin= 2*10^-3;// in V\n",
+"V= 25*10^-3;// in V\n",
+"R1= 10*10^3;// in Ω\n",
+"R2= 30*10^3;// in Ω\n",
+"I_E= (V_EE-V_BE)/R_E;// in A\n",
+"// The ac resistance of emitter diode,\n",
+"r_desh_e= V/I_E;// in Ω\n",
+"r_L= R1*R2/(R1+R2);// in Ω\n",
+"// The voltage gain\n",
+"A= r_L/r_desh_e;\n",
+"// The output voltage \n",
+"Vout= A*Vin;// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"disp(Vout,'The output voltage in mV is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 8.4: Output_voltage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 8.4\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_EE= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"R_E= 6.8*10^3;// in Ω\n",
+"Rs= 100;// in Ω\n",
+"R1= 3.3*10^3;// in Ω\n",
+"R2= 1.5*10^3;// in Ω\n",
+"V= 25*10^-3;// in V\n",
+"Vs= 1*10^-3;// in V\n",
+"I_E= (V_EE-V_BE)/R_E;// in A\n",
+"r_desh_e= V/I_E;// in Ω\n",
+"Zin= r_desh_e;// in Ω\n",
+"// The input voltage to the emitter,\n",
+"Vin= Zin*Vs/(Rs+Zin);// in V\n",
+"r_L= R1*R2/(R1+R2);// in Ω\n",
+"// The voltage gain,\n",
+"A= r_L/r_desh_e;\n",
+"// The output voltage \n",
+"Vout= A*Vin;// in V\n",
+"Vout= Vout*10^3;// in mV\n",
+"disp(Vout,'The output voltage in mV 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/Semiconductor_Circuit_Approximations_by_Malvino/9-Class_A_Power_Amplifiers.ipynb b/Semiconductor_Circuit_Approximations_by_Malvino/9-Class_A_Power_Amplifiers.ipynb
new file mode 100644
index 0000000..7f0e502
--- /dev/null
+++ b/Semiconductor_Circuit_Approximations_by_Malvino/9-Class_A_Power_Amplifiers.ipynb
@@ -0,0 +1,520 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 9: Class A Power Amplifiers"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.10: Maximum_ac_load_power.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.10\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"R_C= 3.6;// in kΩ\n",
+"R_L= 1.5;// in kΩ\n",
+"V_CEQ= 4.94;// in V\n",
+"I_CQ= 1.1;// in mA\n",
+"// The quiescent power dissipation of the transistor,\n",
+"P_DQ= V_CEQ*I_CQ;// in mW\n",
+"r_L= R_C*R_L/(R_C+R_L);// in kΩ\n",
+"PP= 2*I_CQ*r_L;// in V\n",
+"// The maximum ac load power,\n",
+"P_Lmax= PP^2/(8*R_L);// in mW\n",
+"disp(P_Lmax,'The maximum ac load power in mW is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.11: Efficiency.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.11\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_E= 1.71;// in V\n",
+"R_E= 240;// in Ω\n",
+"V_CC= 12;// in V\n",
+"R_C= 1*10^3;// in Ω\n",
+"R_L= 1*10^3;// in Ω\n",
+"I= 0.355*10^-3;// in A\n",
+"I_CQ= V_E/R_E;// in A\n",
+"I_C= I_CQ;// in A\n",
+"// The collector emitter voltage,\n",
+"V_CEQ= V_CC-I_C*(R_C+R_E);// in V\n",
+"r_L= R_C*R_L/(R_C+R_L);// in Ω\n",
+"PP= 2*V_CEQ;// in V\n",
+"// The maximum ac load power,\n",
+"P_Lmax= PP^2/(8*R_L);// in W\n",
+"I_CC= I_C+I;// in A\n",
+"P_CC= V_CC*I_CC;// in W\n",
+"// The efficiency \n",
+"Eta= P_Lmax/P_CC*100;// in %\n",
+"disp(Eta,'The efficiency in % is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.12: Power_rating.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.12\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"Ta= 70;// ambient temperature in °C\n",
+"P= 30;// in power dissipation in W\n",
+"theta_CS= 0.5;// in °C/W\n",
+"theta_SA= 1.5;// in °C/W\n",
+"// The case temperature\n",
+"Tc= Ta+P*(theta_CS+theta_SA);// in °C\n",
+"// The power rating\n",
+"P_Dmax= 60;// in W\n",
+"disp(Tc,'The case temperature in °C is : ');\n",
+"disp(P_Dmax,'The power rating in watt is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.1: DC_and_AC_load_line.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.1\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 10;// in V\n",
+"V_BE= 0.7;// in V\n",
+"R1= 2.2;// in kΩ\n",
+"R2= 10;// in kΩ\n",
+"R_E= 1;// in kΩ\n",
+"R_C= 3.6;// in kΩ\n",
+"R= 1.5;// in kΩ\n",
+"// The base voltage\n",
+"V_B= R1*V_CC/(R1+R2);// in V\n",
+"// The emitter current,\n",
+"I_E= (V_B-V_BE)/R_E;// in mA\n",
+"// The collector current,\n",
+"I_CQ= I_E;// in mA\n",
+"// The collector emitter voltage,\n",
+"V_CE= V_CC-I_E*(R_C+R_E);// in V\n",
+"V_CEQ= V_CE;// in V\n",
+"// The saturation current,\n",
+"I_Csat= V_CC/(R_C+R_E);// in mA\n",
+"V_CEcutoff= V_CC;// in V\n",
+"V_CE= 0:0.1:V_CEcutoff;// in V\n",
+"I_C= (V_CC-V_CE)/(R_C+R_E);// in mA\n",
+"// The dc and ac load line\n",
+"subplot(121)\n",
+"plot(V_CE,I_C)\n",
+"xlabel('V_CE in volts')\n",
+"ylabel('I_C in mA');\n",
+"title('DC load line')\n",
+"r_L= R_C*R/(R_C+R);// in kΩ\n",
+"I_Csat= I_CQ+V_CEQ/r_L;// in mA\n",
+"Vce_cutoff= V_CEQ+I_CQ*r_L;// in V\n",
+"x=[0 Vce_cutoff];\n",
+"y=[I_Csat 0]\n",
+"subplot(122)\n",
+"plot(x,y)\n",
+"xlabel('V_CE in volts')\n",
+"ylabel('I_C in mA');\n",
+"title('AC load line')\n",
+"disp('DC and AC load line shown in figure.')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.2: Cut_off_value_of_VCE.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.2\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;// in V\n",
+"V_CC= 30;// in V\n",
+"R_E= 8.2;// in Ω\n",
+"R1= 22;// in Ω\n",
+"R2= 47;// in Ω\n",
+"R_C= 10;// in Ω\n",
+"R_L= 30;//in Ω\n",
+"// The base to ground voltage,\n",
+"V_B= R1*V_CC/(R1+R2);// in V\n",
+"// The emitter current,\n",
+"I_E= (V_B-V_BE)/R_E;// in A\n",
+"// The collector current,\n",
+"I_CQ= I_E;// in A\n",
+"// The collector emitter voltage,\n",
+"V_CEQ= V_CC-I_E*(R_E+R_C);// in V\n",
+"// The load resistance,\n",
+"r_L= R_C*R_L/(R_C+R_L);// in Ω\n",
+"I_Csat= I_E+V_CEQ/r_L;// in A\n",
+"Vce_cutoff= V_CEQ+I_CQ*r_L;// in V\n",
+"disp(Vce_cutoff,'The cut off value of V_CE in volts is : ')\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.3: cutt_of_value_of_VCE.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.3\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_BE= 0.7;// in V\n",
+"V_CC= 20;// in V\n",
+"V_B= 10;// in V\n",
+"R_E= 50;// in Ω\n",
+"// The collector current,\n",
+"I_CQ= (V_B-V_BE)/R_E;// in A\n",
+"// The collector emitter voltage,\n",
+"V_CEQ= V_CC-I_CQ*R_E;// in V\n",
+"R1= 50;// in Ω\n",
+"R2= 50;// in Ω\n",
+"// The load resistance,\n",
+"r_L= R1*R2/(R1+R2);// in Ω\n",
+"I_Csat= I_CQ+V_CEQ/r_L;// in A\n",
+"Vce_cutoff= V_CEQ+I_CQ*r_L;// in V\n",
+"disp(Vce_cutoff,'The cut off value of V_CE in volts is : ')\n",
+""
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.4: AC_compliance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.4\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_E= 1;// in V\n",
+"R_E=1*10^3;// in Ω\n",
+"V_CC= 10;// in V\n",
+"R_C= 4*10^3;// in Ω\n",
+"R_L= 10*10^3;// in Ω\n",
+"// The collector current,\n",
+"I_CQ= V_E/R_E;// in A\n",
+"I_C= I_CQ;// in A\n",
+"// The collector emitter voltage,\n",
+"V_CEQ= V_CC-I_C*(R_C+R_E);// in V\n",
+"// The load resistance,\n",
+"r_L= R_L*R_C/(R_L+R_C);// in Ω\n",
+"//The ac compliance,\n",
+"PP= 2*I_CQ*r_L;// in V\n",
+"disp(PP,'The ac compliance in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.5: Value_of_ICQrL.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.5\n",
+"format('v',5)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_E= 1;// in V\n",
+"R_E=1*10^3;// in Ω\n",
+"R_C= 4*10^3;// in Ω\n",
+"V_CC= 10;// in V\n",
+"I_CQ= V_E/R_E;// in A\n",
+"I_C= I_CQ;// in A\n",
+"V_CEQ= V_CC-I_C*(R_C+R_E);// in V\n",
+"// (i) when R_L = 1 MΩ, the value of 2I_CQrL\n",
+"R_L= 1*10^6;// in Ω\n",
+"r_L= R_L*R_C/(R_L+R_C);// in Ω\n",
+"I_CQrL= I_CQ*r_L;//in A\n",
+"disp(2*I_CQrL,'When R_L = 1 MΩ, the value of 2I_CQrL in volts is : ')\n",
+"// (ii) when R_L = 100 kΩ, the value of 2I_CQrL\n",
+"R_L= 100*10^3;// in Ω\n",
+"r_L= R_L*R_C/(R_L+R_C);// in Ω\n",
+"I_CQrL= I_CQ*r_L;//in A\n",
+"disp(2*I_CQrL,'When R_L = 100 kΩ, the value of 2I_CQrL in volts is : ')\n",
+"// (iii) when R_L = 10 kΩ, the value of 2I_CQrL\n",
+"R_L= 10*10^3;// in Ω\n",
+"r_L= R_L*R_C/(R_L+R_C);// in Ω\n",
+"I_CQrL= I_CQ*r_L;//in A\n",
+"disp(2*I_CQrL,'When R_L = 10 kΩ, the value of 2I_CQrL in volts is : ')\n",
+"// (iv) when R_L = 1 kΩ, the value of 2I_CQrL\n",
+"R_L= 1*10^3;// in Ω\n",
+"r_L= R_L*R_C/(R_L+R_C);// in Ω\n",
+"I_CQrL= I_CQ*r_L;//in A\n",
+"disp(2*I_CQrL,'When R_L = 1 kΩ, the value of 2I_CQrL in volts is : ')\n",
+"// (v) when R_L = 100 Ω, the value of 2I_CQrL\n",
+"R_L= 100;// in Ω\n",
+"r_L= R_L*R_C/(R_L+R_C);// in Ω\n",
+"I_CQrL= I_CQ*r_L;//in A\n",
+"disp(2*I_CQrL,'When R_L = 100 Ω, the value of 2I_CQrL in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.6: Voltage_divider_biased_stage.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.6\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 12;// in V\n",
+"V_BE= 0.7;// in V\n",
+"I_CQ= 5*10^-3;// in A\n",
+"bita= 200;// unit less\n",
+"// The emitter voltage,\n",
+"V_E= 0.1*V_CC;// in V\n",
+"// The emitter current,\n",
+"I_E= I_CQ;// in A\n",
+"// The emitter resistance,\n",
+"R_E= V_E/I_E;// in Ω\n",
+"// The collector resistance,\n",
+"R_C= 4*R_E;// in Ω\n",
+"// The base voltage,\n",
+"V_B= V_E+V_BE;// in V\n",
+"I_C= I_CQ;// in A\n",
+"I_B= I_C/bita;// in A\n",
+"R= V_CC/(10*I_B);// in Ω\n",
+"R2= V_B/(10*I_B);// in Ω\n",
+"R1= R-R2;// in Ω\n",
+"R1= R1*10^-3;// in k ohm\n",
+"R2= R2*10^-3;// in k ohm\n",
+"R_C= R_C*10^-3;// in k ohm\n",
+"disp('The value of R1 is : '+string(R1)+' kΩ (standard value : 39 kΩ)')\n",
+"disp('The value of R2 is : '+string(R2)+' kΩ (standard value : 7.5 kΩ)')\n",
+"disp('The value of R_E is : '+string(R_E)+' Ω (standard value : 240 Ω)')\n",
+"disp('The value of R_C is : '+string(R_C)+' kΩ (standard value : 1 kΩ)')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.7: AC_compliance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.7\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"I_CQ= 5*10^-3;// in A\n",
+"R_C= 1*10^3;// in Ω\n",
+"R_L= 1*10^3;// in Ω\n",
+"// The load resistance\n",
+"r_L= R_C*R_L/(R_C+R_L);// in Ω\n",
+"// The ac compliance,\n",
+"PP= 2*I_CQ*r_L;// in V\n",
+"I_CQ= 5.15*10^-3;// in A\n",
+"PP= 2*I_CQ*r_L;// in V\n",
+"disp(PP,'The ac compliance in volts is : ')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 9.9: New_value_of_AC_compliance.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"// Example 9.9\n",
+"format('v',6)\n",
+"clc;\n",
+"clear;\n",
+"close;\n",
+"// given data\n",
+"V_CC= 12;// in V\n",
+"V_BE= 0.7;// in V\n",
+"R_C= 1*10^3;// in Ω\n",
+"R_E= 240;// in Ω\n",
+"r_L= 500;// in Ω\n",
+"bita= 200;// unit less\n",
+"// The required collector current,\n",
+"I_CQ= V_CC/(R_C+R_E+r_L);// in A\n",
+"// The emitter voltage,\n",
+"V_E= I_CQ*R_E;// in V\n",
+"// The base voltage,\n",
+"V_B= V_E+V_BE;// in V\n",
+"I_C= I_CQ;// in A\n",
+"I_B= I_C/bita;// in A\n",
+"// The total resistance of the voltage divider,\n",
+"R= V_CC/(10*I_B);// in Ω\n",
+"R2= V_B/(10*I_B);// in Ω\n",
+"R1= R-R2;// in Ω\n",
+"R1= R1*10^-3;// in k ohm\n",
+"R2= R2*10^-3;// in k ohm\n",
+"R_C= R_C*10^-3;// in k ohm\n",
+"disp('The value of R1 is : '+string(R1)+' kΩ (standard value : 27 kΩ)')\n",
+"disp('The value of R2 is : '+string(R2)+' kΩ (standard value : 6.8 kΩ)')\n",
+"disp('The value of R_E is : '+string(R_E)+' Ω (standard value : 240 Ω)')\n",
+"disp('The value of R_C is : '+string(R_C)+' kΩ (standard value : 1 kΩ)')\n",
+"\n",
+" "
+ ]
+ }
+],
+"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
+}