summaryrefslogtreecommitdiff
path: root/Optical_Fiber_Communication_by_V._S._Bagad/Chapter4.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Optical_Fiber_Communication_by_V._S._Bagad/Chapter4.ipynb')
-rwxr-xr-xOptical_Fiber_Communication_by_V._S._Bagad/Chapter4.ipynb644
1 files changed, 644 insertions, 0 deletions
diff --git a/Optical_Fiber_Communication_by_V._S._Bagad/Chapter4.ipynb b/Optical_Fiber_Communication_by_V._S._Bagad/Chapter4.ipynb
new file mode 100755
index 00000000..9dca6b9e
--- /dev/null
+++ b/Optical_Fiber_Communication_by_V._S._Bagad/Chapter4.ipynb
@@ -0,0 +1,644 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:e29ad753b5f2886d343bb74ecb0ecc91fcb2a9898826cbfcabd7e953e57d2f63"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter04: Optical Detectors and Receivers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.1:Pg-4.5"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "Eg= 1.1 \n",
+ "lamda_c = 1.24/Eg \n",
+ "print \"The cut off wavelength in um= \",round(lamda_c,2) \n",
+ "\n",
+ "Eg_ger =0.67 \n",
+ "lamda_ger= 1.24/Eg_ger \n",
+ "print \" \\nThe cut off wavelength for Germanium in um= \",round(lamda_ger,2) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The cut off wavelength in um= 1.13\n",
+ " \n",
+ "The cut off wavelength for Germanium in um= 1.85\n"
+ ]
+ }
+ ],
+ "prompt_number": 3
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.2:Pg-4.5"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given \n",
+ "Eg = 1.43 \n",
+ "lamda = 1.24/Eg \n",
+ "lamda=lamda*1000 # converting in nm\n",
+ "print \"The cut off wavelength in nm =\",round(lamda,2) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The cut off wavelength in nm = 867.13\n"
+ ]
+ }
+ ],
+ "prompt_number": 6
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.3:Pg-4.5"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "P = 6*10**6 \n",
+ "Eh_pair= 5.4*10**6 \n",
+ "n= Eh_pair/P*100 \n",
+ "print \" The quantum efficiency in % = \",n \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The quantum efficiency in % = 90.0\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.4:Pg-4.6"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "R= 0.65 \n",
+ "P0= 10*10**-6 \n",
+ "Ip= R*P0 \n",
+ "Ip=Ip*10**6 # convertinf in uA...\n",
+ "print \" The generated photocurrent in uA = \",Ip \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The generated photocurrent in uA = 6.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.5:Pg-4.6"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "\n",
+ "Ec= 1.2*10**11 \n",
+ "P= 3*10**11 \n",
+ "lamda = 0.85*10**-6 \n",
+ "n= Ec/P*100 \n",
+ "print \"The efficiency in % =\",n \n",
+ "\n",
+ "q= 1.602*10**-19 \n",
+ "h= 6.625*10**-34 \n",
+ "c= 3*10**8 \n",
+ "n= n/100 \n",
+ "R= n*q*lamda/(h*c) \n",
+ "print \" \\n\\nThe Responsivity of the photodiode in A/W=\",round(R ,4)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The efficiency in % = 40.0\n",
+ " \n",
+ "\n",
+ "The Responsivity of the photodiode in A/W= 0.2741\n"
+ ]
+ }
+ ],
+ "prompt_number": 12
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.6:Pg-4.7"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "\n",
+ "n= 0.65 \n",
+ "E= 1.5*10**-19 \n",
+ "Ip= 2.5*10**-6 \n",
+ "h= 6.625*10**-34 \n",
+ "c= 3*10**8 \n",
+ "lamda= h*c/E \n",
+ "lamda=lamda*10**6 # converting in um for displaying...\n",
+ "print \"The wavelength in um =\",lamda \n",
+ "lamda=lamda*10**-6 \n",
+ "q= 1.602*10**-19 \n",
+ "R= n*q*lamda/(h*c) \n",
+ "print \"\\nThe Responsivity in A/W =\",R \n",
+ "Pin= Ip/R \n",
+ "Pin=Pin*10**6 # converting in uW for displaying/..\n",
+ "print \" \\nThe incidnt power in uW= \",round(Pin,1) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength in um = 1.325\n",
+ "\n",
+ "The Responsivity in A/W = 0.6942\n",
+ " \n",
+ "The incidnt power in uW= 3.6\n"
+ ]
+ }
+ ],
+ "prompt_number": 5
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.7:Pg-4.8"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "Iin= 1 \n",
+ "lamda= 1550*10**-9 \n",
+ "q= 1.602*10**-19 \n",
+ "h= 6.625*10**-34 \n",
+ "c= 3*10**8 \n",
+ "n=0.65 \n",
+ "Ip=n*q*lamda*Iin/(h*c) \n",
+ "Ip=Ip*1000 # converting in mA for displaying...\n",
+ "print \" The average photon current in mA= \",int(Ip)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The average photon current in mA= 812\n"
+ ]
+ }
+ ],
+ "prompt_number": 7
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.1.8:Pg-4.9"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "\n",
+ "n= 0.70 \n",
+ "Ip= 4*10**-6 \n",
+ "e= 1.602*10**-19 \n",
+ "h= 6.625*10**-34 \n",
+ "c= 3*10**8 \n",
+ "E= 1.5*10**-19\n",
+ "lamda = h*c/E \n",
+ "lamda=lamda*10**6 # converting um for displaying...\n",
+ "print \"The wavelength in um =\",round(lamda,3) \n",
+ "R= n*e/E \n",
+ "Po= Ip/R \n",
+ "Po=Po*10**6 # converting um for displaying...\n",
+ "print \" \\nIncident optical Power in uW =\",round(Po,2) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The wavelength in um = 1.325\n",
+ " \n",
+ "Incident optical Power in uW = 5.35\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.2.1:Pg-4.14"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "Ct= 7*10.0**-12\n",
+ "Rt= 50*1*10.0**6/(50+(1*10**6))\n",
+ "B= 1/(2*math.pi*Rt*Ct)\n",
+ "B=B*10**-6 #converting in mHz for displaying...\n",
+ "print \"The bandwidth of photodetector in MHz =\",round(B,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The bandwidth of photodetector in MHz = 454.75\n"
+ ]
+ }
+ ],
+ "prompt_number": 43
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.2.2:Pg-4.15"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "W= 25*10**-6 \n",
+ "Vd= 3*10**4 \n",
+ "Bm= Vd/(2*math.pi*W) \n",
+ "RT= 1/Bm \n",
+ "RT=RT*10**9 # converting ns for displaying...\n",
+ "print \" The maximum response time in ns =\",round(RT,2) "
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The maximum response time in ns = 5.24\n"
+ ]
+ }
+ ],
+ "prompt_number": 45
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "\n",
+ "Ex4.2.3:Pg-4.15"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "e= 1.602*10**-19 \n",
+ "h= 6.625*10**-34 \n",
+ "v= 3*10**8 \n",
+ "n=0.65 \n",
+ "I= 10*10**-6 \n",
+ "lamda= 900*10**-9 \n",
+ "R= n*e*lamda/(h*v) \n",
+ "Po= 0.5*10**-6 \n",
+ "Ip= Po*R \n",
+ "M= I/Ip \n",
+ "print \" The multiplication factor =\",round(M,2) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The multiplication factor = 42.41\n"
+ ]
+ }
+ ],
+ "prompt_number": 48
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.3.1:Pg-4.18"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "n=0.65 \n",
+ "lamda = 900*10**-9 \n",
+ "Pin= 0.5*10**-6 \n",
+ "Im= 10*10**-6 \n",
+ "q= 1.602*10**-19 \n",
+ "h= 6.625*10**-34 \n",
+ "c= 3*10**8 \n",
+ "R= n*q*lamda/(h*c) \n",
+ "Ip= R*Pin \n",
+ "M= Im/Ip \n",
+ "print \" The multiplication factor =\",round(M,2)\n",
+ "print \"\\n***NOTE-Answer wrong in textbook...\""
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The multiplication factor = 42.41\n",
+ "\n",
+ "***NOTE-Answer wrong in textbook...\n"
+ ]
+ }
+ ],
+ "prompt_number": 51
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.6.1:Pg-4.34"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "lamda = 1300*10**-9 \n",
+ "Id= 4*10**-9 \n",
+ "n=0.9 \n",
+ "Rl= 1000 \n",
+ "Pincident= 300*10**-9 \n",
+ "BW= 20*10**6 \n",
+ "q= 1.602*10**-19 \n",
+ "h= 6.625*10**-34 \n",
+ "v= 3*10**8 \n",
+ "Iq= math.sqrt((q*Pincident*n*lamda)/(h*v)) \n",
+ "Iq= math.sqrt(Iq) \n",
+ "Iq=Iq*100 # converting in proper format for displaying...\n",
+ "print \"Mean square quantum noise current in Amp*10^11 =\",round(Iq,2)\n",
+ "I_dark= 2*q*BW*Id \n",
+ "I_dark=I_dark*10**19 # converting in proper format for displaying...\n",
+ "print \" \\nMean square dark current in Amp*10^-19 =\",round(I_dark,3) \n",
+ "k= 1.38*10**-23 \n",
+ "T= 25+273 \n",
+ "It= 4*k*T*BW/Rl \n",
+ "It=It*10**16 # converting in proper format for displaying...\n",
+ "print \" \\nMean square thermal nise current in Amp*10^-16 =\",round(It,2)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "Mean square quantum noise current in Amp*10^11 = 2.31\n",
+ " \n",
+ "Mean square dark current in Amp*10^-19 = 0.256\n",
+ " \n",
+ "Mean square thermal nise current in Amp*10^-16 = 3.29\n"
+ ]
+ }
+ ],
+ "prompt_number": 61
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.8.1:Pg-4.39"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "\n",
+ "lamda = 850*10**-9 # meters\n",
+ "BER= 1*10**-9 \n",
+ "N_bar = 9*log(10) \n",
+ "h= 6.625*10**-34 # joules-sec\n",
+ "v= 3*10**8 # meters/sec\n",
+ "n= 0.65 # assumption\n",
+ "E=N_bar*h*v/(n*lamda) \n",
+ "E=E*10**18 # /converting in proper format for displaying...\n",
+ "print \" The Energy received in Joules*10^-18 =\",round(E,2)\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The Energy received in Joules*10^-18 = 7.45\n"
+ ]
+ }
+ ],
+ "prompt_number": 64
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.8.2:Pg-4.39"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "lamda = 850*10**-9 \n",
+ "BER = 1*10**-9 \n",
+ "BT=10*10**6 \n",
+ "h= 6.625*10**-34 \n",
+ "c= 3*10**8 \n",
+ "Ps= 36*h*c*BT/lamda \n",
+ "Ps=Ps*10**12 # /converting in proper format for displaying...\n",
+ "print \"The minimum incidental optical power required id in pW =\",round(Ps,2) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "The minimum incidental optical power required id in pW = 84.18\n"
+ ]
+ }
+ ],
+ "prompt_number": 67
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Ex4.8.3:Pg-4.40"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Given\n",
+ "import math\n",
+ "C= 5*10**-12 \n",
+ "B =50*10**6 \n",
+ "Ip= 1*10**-7 \n",
+ "e= 1.602*10**-19 \n",
+ "k= 1.38*10**-23 \n",
+ "T= 18+273 \n",
+ "M= 1 \n",
+ "Rl= 1/(2*math.pi*C*B) \n",
+ "S_N= Ip**2/((2*e*B*Ip)+(4*k*T*B/Rl)) \n",
+ "S_N = 10*math.log10(S_N) # in db\n",
+ "print \" The S/N ratio in dB =\",round(S_N,2) \n",
+ "M=41.54 \n",
+ "S_N_new= (M**2*Ip**2)/((2*e*B*Ip*M**2.3)+(4*k*T*B/Rl)) \n",
+ "S_N_new = 10*math.log10(S_N_new) # in db\n",
+ "print \" \\n\\nThe new S/N ratio in dB =\",round(S_N_new,2)\n",
+ "print \" \\n\\nImprovement over M=1 in dB =\",round(S_N_new-S_N,1) \n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ " The S/N ratio in dB = 8.99\n",
+ " \n",
+ "\n",
+ "The new S/N ratio in dB = 32.49\n",
+ " \n",
+ "\n",
+ "Improvement over M=1 in dB = 23.5\n"
+ ]
+ }
+ ],
+ "prompt_number": 70
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file