{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 2: Semiconductor Diodes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.11: example_11.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 108 example 11\n", "clear\n", "r=250;//ohm\n", "c=40*10^-6;//farad\n", "alpha1=180-atand(377*r*c);\n", "disp('alpha = '+string(alpha1)+'degre');" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.12: example_12.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 109 example 12\n", "clear\n", "i1=0.1;//current in ampere\n", "vms=40;//rms voltage in volts\n", "c=40*10^-6;//capacitance in farad\n", "r1=50;//resistance in ohms\n", "ripple=0.0001;\n", "induct=((1.76/c)*sqrt(0.472/ripple));//inductance\n", "outv=(2*sqrt(2)*vms)/3.14-i1*r1;//output voltage\n", "disp('inductance = '+string(induct)+'henry');//correction in the book\n", "disp('output voltage = '+string(outv)+'volt');" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.14: example_14.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 109 example 14\n", "clear\n", "voltag=40;//volt\n", "i1=0.2;//ampere\n", "c1=40*10^-6;//farad\n", "c2=c1;\n", "induct=2;//henry\n", "//(1) ripple\n", "vdc=2*sqrt(2)*voltag/3.14;\n", "r1=vdc/i1;\n", "induc1=r1/1130;\n", "v1=voltag/(3*3.14^3*120^2*4*induct*c1);\n", "disp('ripple voltage = '+string((v1))+'volt');\n", "//(2) with two filter\n", "v1=4*voltag/((3*3.14^5)*(16*120^2*induct^2*c1^2));\n", "disp('ripple voltage including filters = '+string((v1))+'volt');//correction in the book\n", "//(3)ripple voltage\n", "v1=4*voltag/(5*3.14*1.414*2*3.14*240*240*3.14*induct*c1);\n", "v1=v1/20;\n", "disp('ripple voltage = '+string((v1))+'volt');" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.15: example_15.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 111 example 15\n", "clear\n", "voltag=375;//volt\n", "r1=2000;//ohm\n", "induct=20;//henry\n", "c1=16*10^-6;//farad\n", "r11=100;//ohm\n", "r=200;//ohm\n", "//(1) voltage and ripple with load\n", "disp('voltage and ripple with load');\n", "r=r+r11+400;\n", "vdc=((2*sqrt(2)*voltag/3.14))/1.35;\n", "ripple=r1/(3*sqrt(2)*(377)*induct*2);\n", "disp('vdc = '+string((vdc))+'volt');\n", "disp('ripple = '+string((ripple)));\n", "//(2) capacitance connected across load\n", "disp('capacitance connected across load');\n", "vdc=sqrt(2)*voltag/(1+1/(4*(60)*r1*2*c1));\n", "ripple=1/(4*sqrt(3)*(60)*r1*2*c1);\n", "disp('vdc = '+string((vdc))+'volt');\n", "disp('ripple = '+string((ripple)));\n", "//(3) filter containing two inductors and capacitors in parallel\n", "disp('filter containing two inductors and capacitors in parallel');\n", "vdc=250;//volt\n", "ripple=0.83*10^-6/(2*induct*2*c1);//correction in the book\n", "disp('vdc = '+string((vdc))+'volt');\n", "disp('ripple = '+string((ripple)));\n", "//(4) two filter\n", "disp('two filter');\n", "vdc=250;\n", "ripple=sqrt(2)/(3*16*3.14^2*60^2*induct*c1)^2;//correction in the book\n", "disp('vdc = '+string((vdc))+'volt');\n", "disp('ripple = '+string((ripple)));\n", "vdc=sqrt(2)*voltag/(1+(4170/(r1*16))+(r/r1));\n", "ripple=3300/(16^2*2*20*r1);\n", "disp('vdc = '+string((vdc))+'volt');\n", "disp('ripple = '+string((ripple)));" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.16: example_16.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 112 example 16\n", "clear\n", "capaci=4;//farad\n", "induct=20;//henry\n", "i1=50*10^-3;//ampere\n", "resist=200;//ohm\n", "maxvol=300*sqrt(2);\n", "vdc=maxvol-((4170/capaci)*(i1))-(i1*resist);\n", "ripple=(3300*i1)/((capaci^2)*(induct)*353);\n", "disp('output voltage = '+string((vdc))+'volt');\n", "disp('ripple voltage = '+string((ripple)));" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.17: example_17.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 113 example 17\n", "clear\n", "voltag=25;//volt\n", "c1=10*10^-6;//farad\n", "i1=100*10^-3;//ampere\n", "ripple=0.001;\n", "w=754;//radians\n", "//(1) inductance and resistance\n", "\n", "\n", "r1=voltag/i1;\n", "induct=40/(sqrt(2)*w^2*(c1));\n", "disp('inductance of filter = '+string((induct))+'henry');//correction in the book\n", "disp('resistance of filter = '+string((r1))+'ohm');\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.18: example_18.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 113 example 18\n", "clear\n", "resacu=0.1*10^-12;//ampere\n", "u=20+273;//kelvin\n", "voltaf=0.55;//volt\n", "w=1.38*10^-23;\n", "q=1.6*10^-19;\n", "for z=1:2\n", " if z==2 then\n", " u=100+273;\n", " disp('current at 100celsius rise');\n", " end\n", " voltag=w*u/q;\n", " i1=(10^-13)*(exp((voltaf/voltag))-1);\n", " if z==2 then\n", " i1=(256*10^-13)*((exp(voltaf/voltag)-1));\n", " end\n", " disp('current = '+string((i1))+'ampere');\n", "end\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.19: example_19.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 114 example 19\n", "clear\n", "na=10*22;//atoms per cubic metre\n", "nd=1.2*10^21;//donor per cubic metre\n", "voltag=1.38*10^-23*(273+298)/(1.6*10^-19);//correction in the book\n", "voltag=0.026;\n", "ni=1.5*10^16;\n", "ni=ni^2;\n", "v1=voltag*log((na*nd)/(ni));\n", "disp('thermal voltage = '+string((voltag))+'volt');\n", "disp('barrier voltage = '+string(abs(v1))+'volt');//correction in the book" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.1: example_1.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 99 example 1\n", "clear\n", "q=0.01;//centimetre\n", "sigma1=1;//ohm centimetre inverse\n", "q1=0.01;//centimetre\n", "sigm11=0.01;//ohm centimetre inverse\n", "iratio=(0.0224^2*2.11*20)*3.6^2/((3.11*(4.3^2*10^-6)^2*2.6*20*10^3));\n", "for q=1:2\n", " if q==1 then\n", " un=3800;\n", " up=1500;\n", " q=1.6*10^-19;\n", " ni=2.5*10;\n", " else\n", " q=1.6*10^-19;\n", " up=500\n", " un=1300;\n", " ni=1.5*10\n", "end\n", " \n", " b=un/up;\n", " sigmai=(un+up)*q*ni;\n", "end\n", "disp('ratio of reverse saturation current = '+string((iratio)));//correction in the book\n", "\n", "\n", "\n", "\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.20: example_20.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 114 example 20\n", "clear\n", "i1=2*10^-7;//ampere\n", "voltag=0.026;//volt\n", "i=i1*((exp(0.1/voltag)-1));\n", "disp('current = '+string((i))+'ampere');" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.21: example_21.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 115 example 21\n", "clear\n", "resacu=1*10^-6;//ampere\n", "voltaf=150*10^-3;//volt\n", "w=8.62*10^-5;\n", "voltag=0.026;//volt\n", "u=300;//kelvin\n", "uw=u*w;\n", "resist=(uw)/((resacu)*exp(voltaf/voltag));\n", "disp('resistance at 150mvolt = '+string((resist))+'ohm');//correction in the book\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.22: example_22.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 115 example 22\n", "clear\n", "dopfac=1000;\n", "w=300;//kelvin\n", "q=0.026*log(dopfac);\n", "disp('change in barrier = '+string((q))+'volt');" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.23: example_23.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 116 example 23\n", "clear\n", "area12=1*10^-8;//metre square\n", "volre1=-1;//reverse voltage\n", "capac1=5*10^-12;//farad\n", "volbu1=0.9;//volt\n", "voltag=0.5;//volt\n", "i1=10*10^-3;//ampere\n", "durmin=1*10^-6;//ssecond\n", "//(1) capacitance\n", "capac1=capac1*sqrt((volre1-volbu1)/(voltag-volbu1));\n", "disp('depletion capacitance = '+string((capac1))+'farad');\n", "//(2) capacitance\n", "capac1=i1*durmin/(0.026);\n", "\n", "disp('capacitance = '+string((capac1))+'farad');\n", "\n", "\n", "\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.24: example_24.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 116 example 24\n", "quantg=4*10^22;//atoms per cubic centimetre\n", "quants=5*10^22;//atoms per cubic centimetre\n", "w=2.5*10^13;//per cubic centimetre\n", "w1=1.5*10^10;//per cubic centimetre\n", "for q=[quantg quants]\n", " na=2*q/(10^8);\n", " nd=500*na;\n", " if q==quantg then\n", " w=w;\n", " voltag=0.026*log(na*nd/w^2);\n", " disp('potential germanium = '+string((voltag))+'volt');\n", " end\n", " if q==quants then\n", " w=w1;\n", " voltag=0.026*log(na*nd/w^2);\n", " disp('potential silicon = '+string((voltag))+'volt');\n", " end\n", "\n", "end" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.25: example_25.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 117 example 25\n", "clear\n", "u=0.05;//metre square per velocity second correction in the book\n", "un=0.13;//metre square per velocity second\n", "condun=20;//second per metre conductivity of n region\n", "condup=1000;//second per metre conductivity of p region\n", "p=condup/(1.6*10^-19*u);\n", "no=condun/(1.6*10^-19*un);\n", "disp('electrons density = '+string((no))+'per cubic metre');\n", "disp('holes density = '+string((p))+'per cubic metre');//others to find is not in the book\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.2: example_2.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 100 example 2\n", "clear\n", "sigma1=0.01;//ohm centimetre inverse\n", "area11=4*10^-3;//metre square\n", "q=0.01*10^-2;//metre\n", "un=1300;\n", "up=500;\n", "ni=1.5*10^15;//per cubic centimetre\n", "sigma1=(un+up)*1.6*10^-19*ni;\n", "iratio=(4*10^-10*0.026*sigma1^2*2.6*2/10^-4)/3.6^2;\n", "disp('reverse current ratio = '+string((iratio)));//correction in the book" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.3: example_3.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 100 example 3\n", "clear\n", "a=4*10^-4;//metre square\n", "sigmap=1;\n", "sigman=0.1;\n", "de=0.15;\n", "vtem=26*10^-3;\n", "i=(a*vtem*((2.11)*(0.224))/((3.22)^(2)))*((1/de*sigman)+(1/de*sigmap));\n", "disp('reverse saturation current = '+string(i)+'ampere');//correction in the book\n", "\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.4: example_4.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 101 example 4\n", "clear\n", "w=0.9;\n", "voltaf=0.05;//volt\n", "revcur=10*10^-6;//ampere\n", "//(1) voltage\n", "volrev=0.026*(log((-w+1)));//voltage at which the reverse saturation current at saturate\n", "resacu=((exp(voltaf/0.026)-1)/((exp(-voltaf/0.026)-1)));//reverse saturation current\n", "disp('voltage at which the reverse saturation current at saturate = '+string((volrev))+'volt');\n", "disp('reverse saturation current = '+string((resacu))+'ampere');\n", "u=0.1;\n", "for q=1:3\n", " reverc=revcur*(exp((u/0.026))-1)\n", " disp('reverse saturation current '+string((u))+' = '+string((reverc))+'ampere');\n", " u=u+0.1;\n", "end\n", "\n", "\n", "\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.6: example_6.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 103 example 6\n", "clear\n", "a=1*10^-6;//metre square\n", "w=2*10^-6;//thick centimetre\n", "re=16;\n", "eo=8.854*10^-12;\n", "c=(eo*re*a)/w;\n", "disp('capacitance = '+string(c)+'farad');\n", "\n", "\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.7: example_7.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 105 example 7\n", "volbar=0.2;//barrier voltage for germanium volt\n", "na=3*10^20;//atoms per metre\n", "//(1) width of depletion layer at 10 and 0.1 volt\n", "\n", "for q=[-10 -0.1 0.1]\n", " w=2.42*10^-6*sqrt((0.2-(q)));\n", " disp('width of depletion layer at '+string((q))+' = '+string((w))+'metre');//for -0.1volt correction in the book\n", "end\n", "//(d) capacitance\n", "for q=[-10 -0.1]\n", " capaci=0.05*10^-9/sqrt(0.2-q);\n", " disp('capacitance at '+string((q))+' = '+string((capaci))+'farad');\n", "end\n", "" ] } , { "cell_type": "markdown", "metadata": {}, "source": [ "## Example 2.8: example_8.sce" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "//pagenumber 104 example 8\n", "clear\n", "p=2;//watts\n", "voltaf=900*10^-3;//volt\n", "i1=p/voltaf;\n", "r1=voltaf/i1;\n", "disp('maximum forward current = '+string(i1)+'ampere');\n", "\n", "\n", "disp('forward diode resistance = '+string(r1)+'ohm');\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 }