From db0855dbeb41ecb8a51dde8587d43e5d7e83620f Mon Sep 17 00:00:00 2001 From: Thomas Stephen Lee Date: Fri, 28 Aug 2015 16:53:23 +0530 Subject: add books --- .../Chapter3.ipynb | 826 +++++++++++++++++++++ 1 file changed, 826 insertions(+) create mode 100755 _Optical_Fiber_Communication_by_V._S._Bagad/Chapter3.ipynb (limited to '_Optical_Fiber_Communication_by_V._S._Bagad/Chapter3.ipynb') diff --git a/_Optical_Fiber_Communication_by_V._S._Bagad/Chapter3.ipynb b/_Optical_Fiber_Communication_by_V._S._Bagad/Chapter3.ipynb new file mode 100755 index 00000000..1e7a6431 --- /dev/null +++ b/_Optical_Fiber_Communication_by_V._S._Bagad/Chapter3.ipynb @@ -0,0 +1,826 @@ +{ + "metadata": { + "name": "", + "signature": "sha256:1c5868fa547e8a659e03148d4a7bf0c9a34282713a490e0b68c5b0aa98a2f7e8" + }, + "nbformat": 3, + "nbformat_minor": 0, + "worksheets": [ + { + "cells": [ + { + "cell_type": "heading", + "level": 1, + "metadata": {}, + "source": [ + "Chapter03:Optical Sources and Transmitters" + ] + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.1:Pg-3.10" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "x= 0.07 \n", + "Eg= 1.424+1.266*x+0.266*x**2 \n", + "lamda= 1.24/Eg \n", + "print \" The emitted wavelength in um =\",round(lamda,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The emitted wavelength in um = 0.82\n" + ] + } + ], + "prompt_number": 6 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.2:Pg-3.10" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "x= 0.26 \n", + "y=0.57 \n", + "Eg= 1.35-0.72*y+0.12*y**2 \n", + "lamda = 1.24/Eg \n", + "print \" The wavelength emitted in um =\",round(lamda,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The wavelength emitted in um = 1.27\n" + ] + } + ], + "prompt_number": 7 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.3:Pg-3.12" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "\n", + "Tr = 60*10**-9 # radiative recombination time\n", + "Tnr= 90*10**-9 # non radiative recomb time\n", + "I= 40*10**-3 # current\n", + "t = Tr*Tnr/(Tr+Tnr) # total recomb time\n", + "t=t*10**9 # Converting in nano secs...\n", + "print \" The total carrier recombination life time in ns =\",int(t) \n", + "t=t/10**9 \n", + "h= 6.625*10**-34 # plancks const\n", + "c= 3*10**8 \n", + "q=1.602*10**-19 \n", + "lamda= 0.87*10**-6 \n", + "Pint=(t/Tr)*((h*c*I)/(q*lamda)) \n", + "Pint=Pint*1000 # converting inmW...\n", + "print \" \\n\\nThe Internal optical power in mW =\",round(Pint,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The total carrier recombination life time in ns = 36\n", + " \n", + "\n", + "The Internal optical power in mW = 34.22\n" + ] + } + ], + "prompt_number": 8 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.4:Pg-3.13" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "lamda = 1310*10**-9 \n", + "Tr= 30*10**-9 \n", + "Tnr= 100*10**-9 \n", + "I= 40*10**-3 \n", + "t= Tr*Tnr/(Tr+Tnr) \n", + "t=t*10**9 # converting in nano secs...\n", + "print \" Bulk recombination life time in ns =\",round(t,2) \n", + "t=t/10**9 \n", + "n= t/Tr \n", + "print \" \\n\\nInternal quantum efficiency =\",round(n,3) \n", + "h= 6.625*10**-34 # plancks const\n", + "c= 3*10**8 \n", + "q=1.602*10**-19 \n", + "Pint=(0.769*h*c*I)/(q*lamda)*1000 \n", + "print \" \\n\\nThe internal power level in mW =\",round(Pint,3) \n", + "print \" \\n\\n***NOTE: Internal Power wrong in text book.. Calculation Error..\" \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " Bulk recombination life time in ns = 23.08\n", + " \n", + "\n", + "Internal quantum efficiency = 0.769\n", + " \n", + "\n", + "The internal power level in mW = 29.131\n", + " \n", + "\n", + "***NOTE: Internal Power wrong in text book.. Calculation Error..\n" + ] + } + ], + "prompt_number": 9 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.5:Pg-3.14" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "nx= 3.6 \n", + "TF= 0.68 \n", + "n= 0.3 \n", + " # Pe=Pint*TF*1/(4*nx**2) \n", + " # ne= Pe/Px*100 ..eq0\n", + " # Pe = 0.013*Pint # Eq 1\n", + " # Pint = n*P # Eq 2\n", + " # substitute eq2 and eq1 in eq0\n", + "ne = 0.013*0.3*100 \n", + "print \" The external Power efficiency in % =\",round(ne,3) \n", + " # Wrongly printed in textbook. it should be P instead of Pint in last step\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The external Power efficiency in % = 0.39\n" + ] + } + ], + "prompt_number": 11 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.6:Pg-3.15" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "\n", + "lamda= 0.85*10**-6 \n", + "Nint = 0.60 \n", + "I= 20*10**-3 \n", + "h= 6.625*10**-34 # plancks const\n", + "c= 3*10**8 \n", + "e=1.602*10**-19 \n", + "Pint = Nint*h*c*I/(e*lamda) \n", + "print \" The optical power emitted in W =\",round(Pint,4) \n", + "\n", + "TF= 0.68 \n", + "nx= 3.6 \n", + "Pe= Pint*TF/(4*nx**2)*1000000 \n", + "print \" \\n\\nPower emitted in the air in uW =\",round(Pe,1) \n", + "Pe=Pe/1000000 \n", + "Nep=Pe/Pint*100 \n", + "print \" \\n\\nExternal power efficiency in % =\",round(Nep,1) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The optical power emitted in W = 0.0175\n", + " \n", + "\n", + "Power emitted in the air in uW = 229.7\n", + " \n", + "\n", + "External power efficiency in % = 1.3\n" + ] + } + ], + "prompt_number": 12 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.7:Pg-3.16" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "\n", + "lamda = 0.87*10**-6 \n", + "Tr= 50*10**-9 \n", + "I= 0.04 \n", + "Tnr= 110*10**-9 \n", + "t= Tr*Tnr/(Tr+Tnr) \n", + "t=t*10**9 # converting in ns...\n", + "print \" Total carrier recombination life time in ns =\",round(t,2) \n", + "t=t/10**9 \n", + "h= 6.625*10**-34 # plancks const\n", + "c= 3*10**8 \n", + "q=1.602*10**-19 \n", + "n= t/Tr \n", + "print \" \\n\\nThe efficiency in % \",round(n,3) \n", + "Pint=(n*h*c*I)/(q*lamda)*1000 \n", + "print \" \\n\\nInternal power generated in mW =\",round(Pint,2) \n", + "print \" \\n\\n***NOTE- Internal Power wrong in book... \"\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " Total carrier recombination life time in ns = 34.38\n", + " \n", + "\n", + "The efficiency in % 0.688\n", + " \n", + "\n", + "Internal power generated in mW = 39.22\n", + " \n", + "\n", + "***NOTE- Internal Power wrong in book... \n" + ] + } + ], + "prompt_number": 15 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.2.8:Pg-3.16" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + " \n", + "\n", + "V= 2 \n", + "I= 100*10**-3 \n", + "Pc= 2*10**-3 \n", + "P= V*I \n", + "Npc= Pc/P*100 \n", + "print \" The overall power conversion efficiency in % =\",int(Npc) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The overall power conversion efficiency in % = 1\n" + ] + } + ], + "prompt_number": 16 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.3.1:Pg-3.25" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "import math\n", + "\n", + "r1= 0.32 \n", + "r2= 0.32 \n", + "alpha= 10 \n", + "L= 500*10**-4 \n", + "temp=math.log(1/(r1*r2)) \n", + "Tgth = alpha + (temp/(2*L)) \n", + "print \" The optical gain at threshold in /cm =\",round(Tgth,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The optical gain at threshold in /cm = 32.79\n" + ] + } + ], + "prompt_number": 17 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.3.2:Pg-3.27" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + " \n", + "n= 3.7 \n", + "lamda = 950*10**-9 \n", + "L= 500*10**-6 \n", + "c= 3*10**8 \n", + "DELv = c/(2*L*n)*10*10**-10 # converting in GHz...\n", + "print \" The frequency spacing in GHz =\",int(DELv) \n", + "DEL_lamda= lamda**2/(2*L*n)*10**9 # converting to nm..\n", + "print \" \\n\\nThe wavelength spacing in nm =\",round(DEL_lamda,2) \n", + "\n", + "print \" \\n\\n***NOTE- The value of wavelength taken wrongly in book\" \n", + " # value of lamda taken wrongly while soving for DEL_LAMDA inthe book..\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The frequency spacing in GHz = 81\n", + " \n", + "\n", + "The wavelength spacing in nm = 0.24\n", + " \n", + "\n", + "***NOTE- The value of wavelength taken wrongly in book\n" + ] + } + ], + "prompt_number": 18 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.3.3:Pg-3.30" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + " #Given\n", + " \n", + "L= 0.04 \n", + "n= 1.78 \n", + "lamda= 0.55*10**-6 \n", + "c= 3*10**8 \n", + "q= 2*n*L/lamda \n", + "q=q/10**5 \n", + "print \" Number of longitudinal modes =\",round(q,2),\"x 10^5\" \n", + "del_f= c/(2*n*L) \n", + "del_f=del_f*10**-9 \n", + "print \" \\n\\nThe frequency seperation in GHz =\",round(del_f,1) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " Number of longitudinal modes = 2.59 x 10^5\n", + " \n", + "\n", + "The frequency seperation in GHz = 2.1\n" + ] + } + ], + "prompt_number": 20 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.3.4:Pg-3.33" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "\n", + "Nt= 0.18 \n", + "V= 2.5 \n", + "Eg= 1.43 \n", + "Nep= Nt*Eg*100/V \n", + "print \" The total efficiency in % =\",round(Nep,3) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The total efficiency in % = 10.296\n" + ] + } + ], + "prompt_number": 22 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.3.5:Pg-3.33" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "\n", + "n= 3.6 \n", + "BETA= 21*10**-3 \n", + "alpha= 10 \n", + "L= 250*10**-4 \n", + "\n", + "r= (n-1)**2/(n+1)**2 \n", + "Jth= 1/BETA *( alpha + (math.log(1/r)/L)) \n", + "Jth=Jth/1000 # converting for displaying...\n", + "print \" The threshold current density =\",round(Jth,3),\"x 10**3\" \n", + "Jth=Jth*1000 \n", + "Ith =Jth*250*100*10**-8 \n", + "Ith=Ith*1000 # converting into mA...\n", + "print \" \\n\\nThe threshold current in mA =\",round(Ith,1) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The threshold current density = 2.65 x 10**3\n", + " \n", + "\n", + "The threshold current in mA = 662.4\n" + ] + } + ], + "prompt_number": 24 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.3.6:Pg-3.34" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "\n", + "T= 305.0 \n", + "T0 = 160.0 \n", + "T1= 373.0\n", + "\n", + "Jth_32 = exp(T/T0) \n", + "Jth_100 = exp(T1/T0) \n", + "R_j = Jth_100/Jth_32 \n", + "print \" Ratio of current densities at 160K is =\",round(R_j,2) \n", + "print \" \\n\\n***NOTE- Wrong in book...\\nJth(100) calculated wrongly...\" \n", + "To = 55 \n", + "Jth_32_new = exp(T/To) \n", + "Jth_100_new = exp(T1/To) \n", + "R_j_new = Jth_100_new/Jth_32_new \n", + "print \" \\n\\nRatio of current densities at 55K is \",round(R_j_new,2) \n", + " # wrong in book...\n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " Ratio of current densities at 160K is = 1.53\n", + " \n", + "\n", + "***NOTE- Wrong in book...\n", + "Jth(100) calculated wrongly...\n", + " \n", + "\n", + "Ratio of current densities at 55K is 3.44\n" + ] + } + ], + "prompt_number": 26 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.4.1:Pg-3.42" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "import math\n", + "\n", + "Bo= 150 \n", + "rs= 35*10**-4 \n", + "a1= 25*10**-6 \n", + "NA= 0.20 \n", + "a2= 50*10**-6 \n", + "\n", + "Pled = (a1/rs)**2 * (math.pi**2*rs**2*Bo*NA**2) \n", + "Pled=Pled*10**10 # converting in uW...\n", + "print \" The power coupled inthe fibre in uW =\",int(Pled) \n", + "Pled_new = (math.pi**2*rs**2*Bo*NA**2) \n", + "Pled_new=Pled_new*10**6 # converting in uW...\n", + "print \" \\n\\nThe Power coupled for case 2 in uW =\",round(Pled_new,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The power coupled inthe fibre in uW = 370\n", + " \n", + "\n", + "The Power coupled for case 2 in uW = 725.42\n" + ] + } + ], + "prompt_number": 27 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.4.2:Pg-3.43" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "import math\n", + "n= 1.48 \n", + "n1= 3.6 \n", + "R= (n1-n)**2/(n1+n)**2 \n", + "print \" The Fresnel Reflection is \",round(R,4) \n", + "L= -10*math.log10(1-R) \n", + "print \" \\n\\nPower loss in dB =\",round(L,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The Fresnel Reflection is 0.1742\n", + " \n", + "\n", + "Power loss in dB = 0.83\n" + ] + } + ], + "prompt_number": 28 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.4.3:Pg-3.44" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "import math\n", + "\n", + "NA= 0.20 \n", + "Bo= 150 \n", + "rs= 35*10**-6 \n", + "Pled = math.pi**2*rs**2*Bo*NA**2 \n", + "Pled=Pled*10**10 # convertin in uW for displaying...\n", + "print \" The optical power coupled in uW =\",round(Pled,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The optical power coupled in uW = 725.42\n" + ] + } + ], + "prompt_number": 29 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.4.4:Pg-3.44" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "import math\n", + "\n", + "n1= 1.5 \n", + "n=1 \n", + "R= (n1-n)**2/(n1+n)**2 \n", + "L= -10*math.log10(1-R) \n", + " # Total loss is twice due to reflection\n", + "L= L+L \n", + "print \" Total loss due to Fresnel Reflection in dB =\",round(L,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " Total loss due to Fresnel Reflection in dB = 0.35\n" + ] + } + ], + "prompt_number": 30 + }, + { + "cell_type": "heading", + "level": 2, + "metadata": {}, + "source": [ + "Ex3.4.5:Pg-3.51" + ] + }, + { + "cell_type": "code", + "collapsed": false, + "input": [ + "#Given\n", + "import math\n", + " \n", + "n1= 1.5 \n", + "n=1.0 \n", + "y=5.0 \n", + "a= 25.0 \n", + "temp1=(1-(y/(2*a)**2))**0.5 \n", + "temp1=temp1*(y/a) \n", + "temp=2*math.acos(0.9996708) # it should be acos(0.1) actually... due to approximations\n", + " \n", + " # answer varies a lot... \n", + "temp=math.degrees(temp)-temp1 \n", + " # temp=temp \n", + "tem= 16*(1.5**2)/(2.5**4) \n", + "tem=tem/math.pi \n", + "temp=temp*tem \n", + "Nlat= temp \n", + "print \" The Coupling efficiency is =\",round(Nlat,3) \n", + "L= -10*math.log10(Nlat) \n", + "print \" \\n\\nThe insertion loss in dB =\",round(L,2) \n", + "temp1=(1-(y/(2*a)**2))**0.5 \n", + "temp1=temp1*(y/a) \n", + "temp=2*math.acos(0.9996708) # it should be acos(0.1) actually... due to approximations\n", + " # answer varies a lot... \n", + "temp=math.degrees(temp)-temp1 \n", + "temp=temp/math.pi \n", + "N_new =temp \n", + "print \" \\n\\nEfficiency when joint index is matched =\",round(N_new,3) \n", + "L_new= -10*math.log10(N_new) \n", + "print \" \\n\\nThe new insertion loss in dB =\",round(L_new,2) \n" + ], + "language": "python", + "metadata": {}, + "outputs": [ + { + "output_type": "stream", + "stream": "stdout", + "text": [ + " The Coupling efficiency is = 0.804\n", + " \n", + "\n", + "The insertion loss in dB = 0.95\n", + " \n", + "\n", + "Efficiency when joint index is matched = 0.872\n", + " \n", + "\n", + "The new insertion loss in dB = 0.59\n" + ] + } + ], + "prompt_number": 39 + } + ], + "metadata": {} + } + ] +} \ No newline at end of file -- cgit