diff options
Diffstat (limited to 'Optical_Communiation_by_Anasuya_Kalavar')
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter1.ipynb | 128 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter10.ipynb | 96 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter2.ipynb | 886 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter4.ipynb | 413 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter5.ipynb | 281 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter6.ipynb | 252 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter7.ipynb | 716 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter8.ipynb | 272 | ||||
-rwxr-xr-x | Optical_Communiation_by_Anasuya_Kalavar/chapter9.ipynb | 99 |
9 files changed, 0 insertions, 3143 deletions
diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter1.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter1.ipynb deleted file mode 100755 index a271cc5c..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter1.ipynb +++ /dev/null @@ -1,128 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:985ad452c65fa6c321f3f5a416b2ee95d94eb6cba2ef0da1eac4d7b73a848422" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "chapter1 - Overview of optical fiber communications" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 1.6.1, page 1-15" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "Bit_rate = 2*10**9 # bit rate of channel\n", - "# Given sequence is 010111101110\n", - "Shortest_duration = 1*(1/Bit_rate) # shortest duration is '1'\n", - "Widest_duration = 4*(1/Bit_rate) #widest duration is '1111'\n", - "Shortest_duration = Shortest_duration # seconds\n", - "Widest_duration = Widest_duration # seconds\n", - "print \"Shortest duration is %.1g seconds.\" %Shortest_duration\n", - "print \"Widest duration is %.1g seconds.\" %Widest_duration" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Shortest duration is 5e-10 seconds.\n", - "Widest duration is 2e-09 seconds.\n" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 1.12.1, page 1-28" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import log2\n", - "Bandwidth = 2*10**6 #Bandwidth of channel\n", - "Signal_to_Noise_ratio = 1 #Signal to Noise ratio of channel\n", - "Capacity = Bandwidth * log2(1 + Signal_to_Noise_ratio) #computing capacity\n", - "Capacity=Capacity/10**6 \n", - "print \"Maximum capacity of channel is %d Mb/sec.\" %Capacity" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Maximum capacity of channel is 2 Mb/sec.\n" - ] - } - ], - "prompt_number": 8 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Question 10, page 1-31" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "Bit_rate = 2*10**9 # bit rate of channel\n", - "# Given sequence is 010111101110\n", - "Shortest_duration = 1*(1/Bit_rate) # shortest duration is '1'\n", - "Widest_duration = 4*(1/Bit_rate) #widest duration is '1111'\n", - "Shortest_duration = Shortest_duration # seconds\n", - "Widest_duration = Widest_duration # seconds\n", - "print \"Shortest duration is %.1g seconds.\" %Shortest_duration\n", - "print \"Widest duration is %.1g seconds.\" %Widest_duration" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Shortest duration is 5e-10 seconds.\n", - "Widest duration is 2e-09 seconds.\n" - ] - } - ], - "prompt_number": 9 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter10.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter10.ipynb deleted file mode 100755 index 6479ba9e..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter10.ipynb +++ /dev/null @@ -1,96 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:0e6d6451a42a64c2f14a17049d585a97e1d159d84d0a7abf55f333e84dfeeece" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "chapter10 - Performance measurement and monitoring" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 10.5.1, page 10-24" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import sqrt\n", - "from __future__ import division\n", - "To=12.6 #width of output pulse\n", - "Ti=0.3 #width of input pulse\n", - "l=1.2 #length of measurement\n", - "Pulse_dispersion = sqrt(To**2 - Ti**2) #computing pulse dispersion\n", - "PDKM=Pulse_dispersion/l #computing pulse dispersion per Kilometer\n", - "BW=0.44/PDKM #computing optical bandwidth\n", - "BW=BW*1000 \n", - "print \"Pulse broadning is %.1f ns/km.\\nOptical bandwidth is %.1f MHz.Km.\" %(PDKM,BW) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Pulse broadning is 10.5 ns/km.\n", - "Optical bandwidth is 41.9 MHz.Km.\n" - ] - } - ], - "prompt_number": 1 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 10.6.1, page 10-28" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import log10\n", - "V2=12 \n", - "V1=2.5 \n", - "L2=3 \n", - "L1=0.004 \n", - "alpha_dB = 10* log10(V2/V1)/(L2-L1) \n", - "un = 0.2/(L2-L1) \n", - "print \"Attenuation is %.2f dB/km\\nUncertainity +/- %.3f dB.\" %(alpha_dB,un) \n", - "#answer for attenuation in the book is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Attenuation is 2.27 dB/km\n", - "Uncertainity +/- 0.067 dB.\n" - ] - } - ], - "prompt_number": 2 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter2.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter2.ipynb deleted file mode 100755 index 934feb4e..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter2.ipynb +++ /dev/null @@ -1,886 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:94ac7a20c62e9612d243d85d9b1b3699e50dc46a0975e66ae373ce7747106bc9" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "Chapter2 - Optical Fibers" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.4.1 page 2-10" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import arcsin, sqrt, pi\n", - "#Numerical Aperture and critical angle\n", - "n1=1.46 #refractive index\n", - "d=0.01 #difference\n", - "na=n1*sqrt(2*d) #numerical aperture\n", - "x=1-d #\n", - "oc=arcsin(x)*180/pi #in degree\n", - "print \"numerical aperture = \",round(na,2)\n", - "print \"critical angle at core cladding interface =\",round(oc,1),\" degree\"" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "numerical aperture = 0.21\n", - "critical angle at core cladding interface = 81.9 degree\n" - ] - } - ], - "prompt_number": 3 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.5.1, page 2-11" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import arcsin, sqrt, pi\n", - "#Numerical Aperture ,critical angle and acceptance angle\n", - "n2=1.45 #core refrative index\n", - "n1=1.49 #cladding refrative index\n", - "oc=arcsin(n2/n1)*180/pi #in degree\n", - "na=sqrt(n1**2-n2**2) #numerical aperture\n", - "pc=arcsin(na)*180/pi #degree\n", - "print \"critical angle is =\",round(oc,2),\" degree\"\n", - "print \"numerical aperture =\",round(na,3)\n", - "print \"acceptance angle is\",round(pc,2),\" degree\"\n", - "# Answer in the book are not accurate." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "critical angle is = 76.69 degree\n", - "numerical aperture = 0.343\n", - "acceptance angle is 20.06 degree\n" - ] - } - ], - "prompt_number": 4 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.5.2, page 2-11" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import arcsin, sqrt, pi\n", - "delta = 1.2/100 # Relative refractive difference index\n", - "n1=1.45 # Core refractive index \n", - "NA= n1*sqrt(2*delta) #computing numerical aperture\n", - "Acceptance_angle = arcsin(NA)*180/pi #computing acceptance angle\n", - "si = pi*NA**2 #computing solid acceptance angle\n", - "print \"Numerical aperture is %.3f.\\nAcceptance angle is %.2f degree.\\nSolid acceptance angle is %.3f radians.\" %(NA,Acceptance_angle,si) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Numerical aperture is 0.225.\n", - "Acceptance angle is 12.98 degree.\n", - "Solid acceptance angle is 0.159 radians.\n" - ] - } - ], - "prompt_number": 5 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.5.3, page 2-12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "NA = 0.45 # Numerical Aperture\n", - "Acceptance_angle = arcsin(NA)*180/pi #computing acceptance angle.\n", - "print \"Acceptance angle is %.1f degree.\" %Acceptance_angle" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Acceptance angle is 26.7 degree.\n" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.5.4, page 2-12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import arctan\n", - "diameter = 1 #Diameter in centimeter\n", - "Focal_length = 10 #Focal length in centimeter\n", - "radius=diameter/2 #computing radius\n", - "Acceptance_angle = arctan(radius/Focal_length)*180/pi #computing acceptance angle\n", - "Conical_full_angle = 2*Acceptance_angle #computing conical angle\n", - "Solid_acceptance_angle = pi*Acceptance_angle**2 #computing solid acceptance angle\n", - "NA = sqrt(Solid_acceptance_angle/pi) #computing Numerical aperture\n", - "print \"Numerical aperture is %.2f.\\nConical full angle is %.2f degree.\" %(NA,Conical_full_angle) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Numerical aperture is 2.86.\n", - "Conical full angle is 5.72 degree.\n" - ] - } - ], - "prompt_number": 7 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.6.1, page 2-16" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import cos\n", - "NA = 0.45 #Numerical aperture\n", - "betaB = 45 # Skew ray change direction by 90 degree at each reflection\n", - "Meridional_theta = arcsin(NA)*180/pi #computing acceptacne angle for meridoinal ray\n", - "Skew_theta = arcsin(NA/cos(betaB*pi/180))*180/pi #computing acceptacne angle for skew ray\n", - "print \"Acceptacne angle for Meridoinal ray is %.2f degree.\\nAcceptance angle for Skew ray %.1f degree.\" %(Meridional_theta,Skew_theta) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Acceptacne angle for Meridoinal ray is 26.74 degree.\n", - "Acceptance angle for Skew ray 39.5 degree.\n" - ] - } - ], - "prompt_number": 8 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.1, page 2-21" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "core_diameter=78*10**-6 #core diameter\n", - "delta=1.4/100 #relative index difference\n", - "lamda=0.8*10**-6 #operating wavelength\n", - "n1=1.47 #core refractive index\n", - "a=core_diameter/2 #computing core radius\n", - "v= 2*3.14*a*n1*sqrt(2*delta)/lamda #computing normalized frequency\n", - "M=(v)**2/2 #computing guided modes\n", - "print \"Normalized Frequency is %.3f.\\nTotal number of guided modes are %.1f\" %(v,M)\n", - "#answer in the book are incorrect." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Normalized Frequency is 75.306.\n", - "Total number of guided modes are 2835.5\n" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.2, page 2-23" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=1.47 #refractive index of core\n", - "a=4.3*10**-6 #radius of core\n", - "delta=0.2/100 #relative index difference\n", - "lamda= 2*3.14*a*n1*sqrt(2*delta)/2.405 #computing wavelength\n", - "lamda=lamda*10**9 \n", - "print \"Wavelength of fiber is %d nm.\" %lamda\n", - "#answer in the book is given as 1230nm which is incorrect." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Wavelength of fiber is 1043 nm.\n" - ] - } - ], - "prompt_number": 10 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.3, page 2-23" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=1.482 #refractive index of core\n", - "n2=1.474 #refractive index of cladding\n", - "lamda=820*10**-9 #Wavelength\n", - "NA=sqrt(n1**2 - n2**2) #computing Numerical aperture\n", - "theta= arcsin(NA)*180/pi #computing acceptance angle\n", - "solid_angle=pi*(NA)**2 #computing solid angle\n", - "a=2.405*lamda/(2*3.14*NA) #computing core radius\n", - "a=a*10**6 \n", - "print \"Numerical aperture is %.3f.\\nAcceptance angle is %.1f degrees.\\nSolid angle is %.3f radians.\\nCore radius is %.2f micrometer.\" %(NA,theta,solid_angle,a) \n", - "#answer in the book are not accurate." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Numerical aperture is 0.154.\n", - "Acceptance angle is 8.8 degrees.\n", - "Solid angle is 0.074 radians.\n", - "Core radius is 2.04 micrometer.\n" - ] - } - ], - "prompt_number": 11 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.4, page 2-24" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import ceil\n", - "NA=0.16 #Numerical aperture\n", - "n1=1.45 #core refractive index\n", - "d=60*10**-6 #core diameter\n", - "lamda=0.82*10**-6 #wavelength\n", - "a=d/2 #core radius\n", - "v=2*3.14*a*NA/lamda #computing normalized frequency\n", - "M=v**2/2 #computing guided modes\n", - "print \"if normalized frequency is taken as %d, then there are %d guided modes.\" %(ceil(v),M) \n", - "#Answer given in the textbook is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "if normalized frequency is taken as 37, then there are 675 guided modes.\n" - ] - } - ], - "prompt_number": 12 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.5, page 2-26" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "NA=0.2 #Numericla aperture\n", - "d=50*10**-6 #Diameter of core\n", - "lamda=1*10**-6 #Wavelength\n", - "a=d/2 #computing radius\n", - "v=2*3.14*a*NA/lamda #computing normalized frequency\n", - "Mg=v**2/4 #computing mode volume for parabollic profile\n", - "Mg=round(Mg) \n", - "print \"Normalized Frequency is %.1f.\\nTotal number of guided modes are %.d.\" %(v,Mg) \n", - "#answer in the book is wrong" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Normalized Frequency is 31.4.\n", - "Total number of guided modes are 246.\n" - ] - } - ], - "prompt_number": 13 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.6, page 2-27" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "delta=0.015 #relative refractive index\n", - "n1=1.48 #core refractive index\n", - "lamda=0.85*10**-6 #wavelength\n", - "a=(2.4*lamda)/(2*3.14*n1*sqrt(2*delta)) #computing radius of core\n", - "d=2*a #computing diameter of core\n", - "a=a*10**7 \n", - "a=round(a,2) \n", - "a=a/10\n", - "d=d*10**6 \n", - "print \"Core radius is %.1f micrometer.\\nCore diameter is %.1f micrometer.\" %(a,2*a) \n", - "print \"When delta is reduced by 10 percent-\"\n", - "delta=0.0015 \n", - "a=(2.4*lamda)/(2*3.14*n1*sqrt(2*delta)) #computing radius of core\n", - "d=2*a #computing diameter of core\n", - "a=a*10**7 \n", - "a=round(a) \n", - "a=a/10\n", - "d=d*10**6 \n", - "print \"Core radius is %.1f micrometer.\\nCore diameter is %.1f micrometer.\" %(a,2*a) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Core radius is 1.3 micrometer.\n", - "Core diameter is 2.5 micrometer.\n", - "When delta is reduced by 10 percent-\n", - "Core radius is 4.0 micrometer.\n", - "Core diameter is 8.0 micrometer.\n" - ] - } - ], - "prompt_number": 14 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.7, page 2-28" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "NA=0.25 #Numericla aperture\n", - "d=45*10**-6 #Diameter of core\n", - "lamda=1.5*10**-6 #Wavelength\n", - "a=d/2 #computing radius\n", - "v=2*3.14*a*NA/lamda #computing normalized frequency\n", - "Mg=v**2/4 #computing mode volume for parabollic profile\n", - "Mg=round(Mg,2) \n", - "print \"Normalized Frequency is %.2f.\\nTotal number of guided modes are %.d.\" %(v,ceil(Mg) )\n", - "#answer in the book for normalized frequency is 23.55, deviation 0.05" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Normalized Frequency is 23.55.\n", - "Total number of guided modes are 139.\n" - ] - } - ], - "prompt_number": 15 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.8, page 2-28" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "NA=0.25 #Numericla aperture\n", - "d=45*10**-6 #Diameter of core\n", - "lamda=1.2*10**-6 #Wavelength\n", - "a=d/2 #computing radius\n", - "v=2*3.14*a*NA/lamda #computing normalized frequency\n", - "Mg=v**2/4 #computing mode volume for parabollic profile\n", - "Mg=round(Mg,2) \n", - "print \"Normalized Frequency is %.1f.\\nTotal number of guided modes are %.d.\" %(v,Mg) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Normalized Frequency is 29.4.\n", - "Total number of guided modes are 216.\n" - ] - } - ], - "prompt_number": 16 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.8.9, page 2-28" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=1.54 #refractive index of core\n", - "n2=1.5 #refractive index of cladding\n", - "a=25*10**-6 #Radius of core in um\n", - "lamda=1.3*10**-6 #Wavelength in m\n", - "NA=sqrt(n1**2-n2**2) \n", - "v=2*3.14*a*NA/lamda #computing normalized frequency\n", - "Mg=v**2/4 #computing mode volume for parabollic profile\n", - "lamda_cut_off=v*lamda/2.405 #computing cut off wavelength\n", - "lamda_cut_off=lamda_cut_off*10**6 \n", - "print \"Normalized Frequency is %0.f.\\nTotal number of guided modes are %.d.\\nCut off wavelength is %.1f micrometer.\" %(v,Mg,lamda_cut_off) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Normalized Frequency is 42.\n", - "Total number of guided modes are 443.\n", - "Cut off wavelength is 22.8 micrometer.\n" - ] - } - ], - "prompt_number": 19 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.9.1 page 2-30" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "L_BL=8*10**-2 #beat length\n", - "Br=2*3.14/L_BL #computing modal briefringence\n", - "print \"Modal briefringence is %.1f per meter.\" %Br" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Modal briefringence is 78.5 per meter.\n" - ] - } - ], - "prompt_number": 21 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.9.2, page 2-33" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import log10\n", - "Pin=500*10**-6 #input power\n", - "L=200 #length of fiber\n", - "loss=2 #loss associated with fiber\n", - "Pin_dbm=10*log10(Pin/(10**-3)) #computing input power in dBm\n", - "Pin_dbm=round(Pin_dbm) \n", - "Pout_dbm=Pin_dbm-L*loss #computing output power level\n", - "Pout= 10**(Pout_dbm/10) \n", - "print \"Output power is %.2e mW.\" %Pout" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Output power is 5.01e-41 mW.\n" - ] - } - ], - "prompt_number": 23 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.12.1, page 2-37" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "a=4.5*10**-6 #core diameter\n", - "delta=0.25/100 #relative index difference\n", - "lamda=0.85*10**-6 #operating wavelength\n", - "n1=1.46 #core refractive index\n", - "v= 2*pi*a*n1*sqrt(2*delta)/lamda #computing normalized frequency\n", - "lamda_cut_off=v*lamda/2.405 #computing cut off wavelength\n", - "lamda_cut_off=lamda_cut_off*10**9 \n", - "print \"Cut off wavelength is %.d nanometer.\" %(lamda_cut_off)\n", - "print \"When delta is 1.25 percent-\" \n", - "delta=1.25/100 \n", - "v= 2*pi*a*n1*sqrt(2*delta)/lamda #computing normalized frequency\n", - "lamda_cut_off=v*lamda/2.405 #computing cut off wavelength\n", - "lamda_cut_off=lamda_cut_off*10**7 \n", - "lamda_cut_off=round(lamda_cut_off) \n", - "lamda_cut_off=lamda_cut_off*100 \n", - "print \"Cut off wavelength is %.d nanometer.\" %(lamda_cut_off) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Cut off wavelength is 1213 nanometer.\n", - "When delta is 1.25 percent-\n", - "Cut off wavelength is 2700 nanometer.\n" - ] - } - ], - "prompt_number": 25 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.12.2, page 2-38" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "a=50*10**-6 #core radius\n", - "lamda=1500*10**-9 #operating wavelength\n", - "n1=2.53 #core refractive index\n", - "n2=1.5 #cladding refractive index\n", - "delta=(n1-n2)/n1 #computing delta\n", - "v= 2*3.14*a*n1*sqrt(2*delta)/lamda #computing normalized frequency\n", - "M=(v)**2/2 #computing guided modes\n", - "print \"Normalized Frequency is %.1f\\nTotal number of guided modes are %.d\" %(v,M) \n", - "\n", - "#Calculation error in book. Answer in the book is wrong" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Normalized Frequency is 477.9\n", - "Total number of guided modes are 114191\n" - ] - } - ], - "prompt_number": 26 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.12.3, page 2-38" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "core_diameter=8*10**-6 #core diameter\n", - "delta=0.92/100 #relative index difference\n", - "lamda=1550*10**-9 #operating wavelength\n", - "n1=1.45 #core refractive index\n", - "a=core_diameter/2 #computing core radius\n", - "v= 2*pi*a*n1*sqrt(2*delta)/lamda #computing normalized frequency\n", - "M=(v)**2/2 #computing guided modes\n", - "print \"Normalized Frequency is %.1f.\\nTotal number of guided modes are %.d.\" %(v,M) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Normalized Frequency is 3.2.\n", - "Total number of guided modes are 5.\n" - ] - } - ], - "prompt_number": 27 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.12.4, page 2-39 " - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "delta=1/100 #relative index difference\n", - "n1=1.5 #core refractive index\n", - "c=3*10**8 \n", - "L=6 \n", - "n2=sqrt(n1**2-2*delta*n1**2) #computing refractive index of cladding\n", - "delta_T=L*n1**2*delta/(c*n2) #computing pulse broadning\n", - "delta_T=delta_T*10**11 \n", - "delta_T=round(delta_T) \n", - "print \"Delay difference between slowest and fastest mode is %d ns/km.\" %delta_T \n", - "print \"This means that a pulse broadnes by %d ns after travel time a distance of %d km.\" %(delta_T,L)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Delay difference between slowest and fastest mode is 30 ns/km.\n", - "This means that a pulse broadnes by 30 ns after travel time a distance of 6 km.\n" - ] - } - ], - "prompt_number": 30 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 2.17.1, page 2-60" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=1.48 #core refractive index\n", - "n2=1.46 #cladding refractive index\n", - "phi = arcsin(n2/n1)*180/pi #computing critical angle\n", - "NA = sqrt(n1**2 - n2**2) #computing numericla aperture\n", - "theta= arcsin(NA)*180/pi #computing acceptance angle\n", - "print \"Critical angle is %.2f degrees.\\nNumerical aperture is %.3f.\\nAcceptance angle is %.2f degree.\" %(phi,NA,theta) \n", - "#answers in the book are wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Critical angle is 80.57 degrees.\n", - "Numerical aperture is 0.242.\n", - "Acceptance angle is 14.03 degree.\n" - ] - } - ], - "prompt_number": 33 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Question 4, page 2-61 " - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "L_BL=8*10**-2 #beat length\n", - "Br=2*3.14/L_BL #computing modal briefringence\n", - "print \"Modal briefringence is %.1f per meter.\" %Br " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Modal briefringence is 78.5 per meter.\n" - ] - } - ], - "prompt_number": 35 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Question 5, page 2-62 " - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "L_BL=0.6*10**-3 #beat length\n", - "lamda=1.4*10**-6 #wavelength\n", - "L_BL1=70 \n", - "Bh=lamda/L_BL #computing high briefringence\n", - "Bl=lamda/L_BL1 #computing low briefringence\n", - "print \"High briefringence is %.2e.\\nLow briefringence is %.1e.\"%(Bh,Bl)" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "High briefringence is 2.33e-03.\n", - "Low briefringence is 2.0e-08.\n" - ] - } - ], - "prompt_number": 38 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter4.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter4.ipynb deleted file mode 100755 index 408746a4..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter4.ipynb +++ /dev/null @@ -1,413 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:c80be9ee73d5adb979ad6bf2343ea3cff1243505e35fc82560bd445f960931b7" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "Chapter4 - Signal Degradation in fibers" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.3.1, page 4-4" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import sqrt, pi, log10\n", - "L=10 #fiber length in km\n", - "Pin=150*10**-6 #input power\n", - "Pout=5*10**-6 #output power\n", - "ln=20 #length of optical link\n", - "interval=1 #splices after interval of 1 km\n", - "l=1.2 #loss due to 1 splice\n", - "attenuation=10*log10(Pin/Pout) \n", - "alpha=attenuation/L \n", - "attenuation_loss=alpha*20 \n", - "splices_loss=(ln-interval)*l \n", - "total_loss=attenuation_loss+splices_loss \n", - "power_ratio=10**(total_loss/10) \n", - "print \"Signal attenuation is %.2f dBs.\\nSignal attenuation is %.3f dB/Km.\\nTotal loss in 20 Km fiber is %.2f dbs.\\nTotal attenuation is %.2f dBs.\\ninput/output ratio is %0.e.\" %(attenuation,alpha,attenuation_loss,total_loss,power_ratio) \n", - "# Answer wrong for last part." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Signal attenuation is 14.77 dBs.\n", - "Signal attenuation is 1.477 dB/Km.\n", - "Total loss in 20 Km fiber is 29.54 dbs.\n", - "Total attenuation is 52.34 dBs.\n", - "input/output ratio is 2e+05.\n" - ] - } - ], - "prompt_number": 32 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.6.1, page 4-12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import exp\n", - "beta_c=8*10**-11 #isothermal compressibility\n", - "n=1.46 #refractive index\n", - "P=0.286 #photoelastic constat\n", - "k=1.38*10**-23 #Boltzmnn constant\n", - "T=1500 #temperature\n", - "L=1000 #length\n", - "lamda=1000*10**-9 #wavelength\n", - "gamma_r = 8*(3.14**3)*(P**2)*(n**8)*beta_c*k*T/(3*(lamda**4)) #computing coefficient\n", - "attenuation=exp(-gamma_r*L) #computing attenuation\n", - "print \"Attenuation due to Rayleigh scattering is %.3f.\" %(attenuation) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Attenuation due to Rayleigh scattering is 0.794.\n" - ] - } - ], - "prompt_number": 10 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.6.2, page 4-12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "beta_c=7*10**-11 #isothermal compressibility\n", - "n=1.46 #refractive index\n", - "P=0.29 #photoelastic constat\n", - "k=1.38*10**-23 #Boltzmnn constant\n", - "T=1400 #temperature\n", - "L=1000 #length\n", - "lamda=0.7*10**-6 #wavelength\n", - "gamma_r = 8*(3.14**3)*(P**2)*(n**8)*beta_c*k*T/(3*(lamda**4)) #computing coefficient\n", - "attenuation=exp(-gamma_r*L) #computing attenuation\n", - "gamma_r=gamma_r\n", - "print \"Raleigh Scattering corfficient is %.3e per meter\" %(gamma_r) \n", - "#Attenuation is not calcualted in textbook\"\n", - "print \"Attenuation due to Rayleigh scattering is %.3f\" %(attenuation) \n", - "#answer for Raleigh Scattering corfficient in the book is given as 0.804d-3, deviation of 0.003d-3" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Raleigh Scattering corfficient is 8.074e-04 per meter\n", - "Attenuation due to Rayleigh scattering is 0.446\n" - ] - } - ], - "prompt_number": 17 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.7.1, page 4-17" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "d=5 #core diameter\n", - "alpha=0.4 #attenuation\n", - "B=0.5 #Bandwidth\n", - "lamda=1.4 #wavelength\n", - "PB=4.4*10**-3*d**2*lamda**2*alpha*B #computing threshold power for SBS\n", - "PR=5.9*10**-2*d**2*lamda*alpha #computing threshold power for SRS\n", - "PB=PB*10**3 \n", - "PR=PR*10**3 \n", - "print \"Threshold power for SBS is %.1f mW.\\nThreshold power for SRS is %.3f mW.\" %(PB,PR) \n", - "#NOTE - Calculation error in the book while calculating threshold for SBS.\n", - "#Also, while calculating SRS, formula is taken incorrectly, \n", - "#Bandwidth is multiplied in second step, which is not in the formula.\") " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Threshold power for SBS is 43.1 mW.\n", - "Threshold power for SRS is 826.000 mW.\n" - ] - } - ], - "prompt_number": 19 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.8.1, page 4-18" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=1.5 #refractive index of core\n", - "delta=0.03/100 #relative refractive index\n", - "lamda=0.82*10**-6 #wavelength\n", - "n2=sqrt(n1**2-2*delta*n1**2) #computing cladding refractive index\n", - "Rc=(3*n1**2*lamda)/(4*3.14*(n1**2-n2**2)**1.5) #computing critical radius\n", - "Rc=Rc*10**3 \n", - "print \"Critical radius is %.f micrometer.\" %(Rc) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Critical radius is 9 micrometer.\n" - ] - } - ], - "prompt_number": 22 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.8.2, page 4-20" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=1.45 #refractive index of core\n", - "delta=3.0/100 #relative refractive index\n", - "lamda=1.5*10**-6 #wavelength\n", - "a=5*10**-6 #core radius\n", - "n2=sqrt(n1**2-2*delta*n1**2) #computing cladding refractive index\n", - "Rc=(3*n1**2*lamda)/(4*3.14*(n1**2-n2**2)**0.5) #computing critical radius for single mode\n", - "Rc=Rc*10**6 \n", - "print \"Critical radius is %.2f micrometer\" %(Rc) \n", - "lamda_cut_off= 2*3.14*a*n1*sqrt(2*delta)/2.405 \n", - "RcSM= (20*lamda/(n1-n2)**1.5)*(2.748-0.996*lamda/lamda_cut_off)**-3 #computing critical radius for single mode\n", - "RcSM=RcSM*10**6 \n", - "print \"Critical radius for single mode fiber is %.2f micrometer.\" %(RcSM) \n", - "#Calculation error in the book.(2.748-0.996*lamda/lamda_cut_off)**-3 in this term raised to -3 is not taken in the book." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Critical radius is 2.12 micrometer\n", - "Critical radius for single mode fiber is 226.37 micrometer.\n" - ] - } - ], - "prompt_number": 24 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.13.1, page 4-28" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=1550*10**-9 \n", - "lamda0=1.3*10**-6 \n", - "s0=0.095 \n", - "Dt=lamda*s0/4*(1-(lamda0/lamda)**4) #computing material dispersion\n", - "Dt=Dt*10**9 \n", - "print \"Material dispersion at 1550 nm is %.1f ps/nm/km\" %Dt\n", - "#answer in the book is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Material dispersion at 1550 nm is 18.6 ps/nm/km\n" - ] - } - ], - "prompt_number": 26 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.14.1, page 4-33" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "tau=0.1*10**-6 #pulse broadning\n", - "dist=20*10**3 #distance\n", - "Bopt=1/(2*tau) #computing optical bandwidth\n", - "Bopt=Bopt*10**-6 \n", - "dispertion=tau/dist #computing dispersion\n", - "dispertion=dispertion*10**12 \n", - "BLP=Bopt*dist #computing Bandwidth length product\n", - "BLP=BLP*10**-3 \n", - "print \"optical bandwidth is %d MHz.\\nDispersion per unit length is %d ns/km.\\nBandwidth length product is %d MHz.km.\" %(Bopt,dispertion,BLP) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "optical bandwidth is 5 MHz.\n", - "Dispersion per unit length is 5 ns/km.\n", - "Bandwidth length product is 100 MHz.km.\n" - ] - } - ], - "prompt_number": 27 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.15.1, page 4-34" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "RSW=0.0012 #relative spectral width\n", - "lamda=0.90*10**-6 #wavelength\n", - "L=1 #distance in km (assumed)\n", - "P=0.025 #material dispersion parameter\n", - "c=3*10**5 #speed of light in km/s\n", - "M=10**3*P/(c*lamda) #computing material dispersion\n", - "sigma_lamda=RSW*lamda \n", - "sigmaM=sigma_lamda*L*M*10**7 #computing RMS pulse broadning\n", - "sigmaB=25*L*M*10**-3 \n", - "print \"Material dispersion parameter is %.2f ps/nm/km.\\nRMS pulsr broadning when sigma_lamda is 25 is %.1f ns/km.\\nRMS pulse broadning is %.2f ns/km.\" %(M,sigmaB,sigmaM) \n", - "#answer in the book for RMS pulse broadning is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Material dispersion parameter is 92.59 ps/nm/km.\n", - "RMS pulsr broadning when sigma_lamda is 25 is 2.3 ns/km.\n", - "RMS pulse broadning is 1.00 ns/km.\n" - ] - } - ], - "prompt_number": 29 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 4.17.1, page 4-37" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "L=10 #length of optical link\n", - "n1=1.49 #refractive index\n", - "c=3*10**8 #speed of light\n", - "delta=1.0/100 #relative refractive index\n", - "delTS=L*n1*delta/c #computing delay difference\n", - "delTS=delTS*10**12 \n", - "sigmaS=L*n1*delta/(2*sqrt(3)*c) #computing rms pulse broadning\n", - "sigmaS=sigmaS*10**12 \n", - "B=1/(2*delTS) #computing maximum bit rate\n", - "B=B*10**3 \n", - "B_acc=0.2/(sigmaS) #computing accurate bit rate\n", - "B_acc=B_acc*10**3 \n", - "BLP=B_acc*L #computing Bandwidth length product\n", - "print \"Delay difference is %d ns.\\nRMS pulse broadning is %.1f ns.\\nBit rate is %.1f Mbit/s.\\nAccurate bit rate is %.3f Mbits/s.\\nBandwidth length product is %.1f MHz.km\" %(delTS,sigmaS,B,B_acc,BLP) \n", - "#answer for maximum bit rate is given as 1.008 Mb/s, deviation of 0.008 Mb/s." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Delay difference is 496 ns.\n", - "RMS pulse broadning is 143.4 ns.\n", - "Bit rate is 1.0 Mbit/s.\n", - "Accurate bit rate is 1.395 Mbits/s.\n", - "Bandwidth length product is 13.9 MHz.km\n" - ] - } - ], - "prompt_number": 31 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter5.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter5.ipynb deleted file mode 100755 index 1c8edfa4..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter5.ipynb +++ /dev/null @@ -1,281 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:69c313bd7e7f4ca84b1b5e5f091a7854a8c80d86bc1470f5cbc9e6d39211d1ba" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "chapter5 - Optical fiber connection : splicing" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 5.2.1, page 5-2" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import sqrt, pi, log10\n", - "n1=1.47 #refractive index of fiber\n", - "n=1 #refractive index of air\n", - "r=((n1-n)/(n1+n))**2 #computing fraction of light reflected\n", - "loss=-10*log10(1-r) #loss\n", - "total_loss=2*loss \n", - "print \"r = %.3f, which means %.1f percent of the transimitted light is reflected at one interface\" %(r,r*100) \n", - "print \"Total loss is %.3f dB\" %(total_loss) \n", - "#answer in the book for total loss of fiber is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "r = 0.036, which means 3.6 percent of the transimitted light is reflected at one interface\n", - "Total loss is 0.320 dB\n" - ] - } - ], - "prompt_number": 3 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 5.2.2, page 5-4" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import arccos\n", - "n1=1.47 #refractive index of fiber\n", - "n=1 #refractive index of air\n", - "d=40*10**-6 #core diameter\n", - "y=4*10**-6 #lateral dispalcement\n", - "a=d/2 #computing core radius\n", - "eta_lateral = (16*(n1/n)**2)/(pi*(1+(n1/n))**4)*(2*arccos(y/(2*a))-(y/a)*(1-(y/(2*a))**2)**0.5) #computing eta_lateral with air gap\n", - "loss=-10*log10(eta_lateral) #computing loss when air gap is present\n", - "eta_lateral1=(2*arccos(y/(2*a))-(y/a)*(1-(y/(2*a))**2)**0.5)/pi #computing eta_lateral without air gap\n", - "loss1=-10*log10(eta_lateral1) #computing loss when air gap is not present\n", - "print \"loss with air gap is %.2f dB.\\nloss with no air gap is %.2f dB.\" %(loss,loss1) \n", - "#answer in the book for loss with air gap is wrong" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "loss with air gap is 0.91 dB.\n", - "loss with no air gap is 0.59 dB.\n" - ] - } - ], - "prompt_number": 8 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 5.2.3, page 5-5" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=1.48 #refractive index of fiber\n", - "n=1 #refractive index of air\n", - "theta=10 #angle in degree\n", - "NA1=0.3 \n", - "NA2=0.6\n", - "eta_angular1= (16*(n1/n)**2)/((1+(n1/n))**4)*(1-((n*theta*pi/180)/(pi*NA1))) #computing eta angular\n", - "eta_angular2= (16*(n1/n)**2)/((1+(n1/n))**4)*(1-((n*theta*pi/180)/(pi*NA2))) #computing eta angular\n", - "loss1=-10*log10(eta_angular1) #computing loss\n", - "loss2=-10*log10(eta_angular2) #computing loss\n", - "print \"\\nLoss when NA is %.1f is %.2f dB.\\nLoss when NA is %.1f is %.2f dB.\" %(NA1,loss1,NA2,loss2) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "\n", - "Loss when NA is 0.3 is 1.22 dB.\n", - "Loss when NA is 0.6 is 0.75 dB.\n" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 5.4.1, page 5-15" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import exp\n", - "d=1*10**-6 #lateral displacement\n", - "W=4.95*10**-6 #MFD\n", - "Lsm_lat= -10*log10(exp(-(d/W)**2)) #computing loss\n", - "print \"Insertion loss is %.2f dB.\" %(Lsm_lat) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Insertion loss is 0.18 dB.\n" - ] - } - ], - "prompt_number": 10 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 5.4.2, page 5-15 " - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=1.3*10**-6 #wavelength\n", - "theta=1 #angle in degree\n", - "n2=1.465 #cladding refractive index\n", - "W=4.95*10**-6 #MFD\n", - "Lsm_ang= -10*log10(exp(-(pi*n2*W*(theta*pi/180)/lamda)**2)) #computing loss\n", - "print \"Insertion loss is %.2f dB.\" %(Lsm_ang) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Insertion loss is 0.41 dB.\n" - ] - } - ], - "prompt_number": 13 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 5.6.1, page 5-28 " - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "p1=50*10**-6 \n", - "p2=0.003*10**-6 \n", - "p3=25*10**-6 \n", - "p4=26.5*10**-6\n", - "EL=10*log10(p1/(p3+p4)) #computing excess loss\n", - "IL13=10*log10(p1/p3) #computing insertion loss\n", - "IL14=10*log10(p1/p4) #computing insertion loss\n", - "ct=10*log10(p2/p1) #computing cross talk\n", - "sr=(p3/(p3+p4))*100 #computing split ratio\n", - "print \"\"\"Excess loss is %.2f dB.\n", - "Insertion loss from port 1 to port 3 is %.2f dB.\n", - "Insertion loss from port 1 to port 4 is %.2f dB.\n", - "cross talk is %.2f dB.\\nSplit ratio is %.2f percent\"\"\" %(EL,IL13,IL14,ct,sr ) \n", - "#Printing and calculation error in the book.Minus sign is not printed in the answer of excess loss.\n", - "#P1 is taken 25 instead of 50 while calculating cross talk. " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Excess loss is -0.13 dB.\n", - "Insertion loss from port 1 to port 3 is 3.01 dB.\n", - "Insertion loss from port 1 to port 4 is 2.76 dB.\n", - "cross talk is -42.22 dB.\n", - "Split ratio is 48.54 percent\n" - ] - } - ], - "prompt_number": 14 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 5.6.2, page 5-29" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "N=16 #Number of ports\n", - "Pin=1*10**-3 #input power\n", - "Pout=12*10**-6 #output power\n", - "split_loss=10*log10(N) #computing split loss\n", - "excess_loss=10*log10(Pin/(Pout*N)) #computing excess loss\n", - "total_loss=split_loss+excess_loss #computing total loss\n", - "insertion_loss= 10*log10(Pin/Pout) #computing insertion loss\n", - "print \"Total loss is %.2f dB.\\nInsertion loss is %.2f dB.\" %(total_loss,insertion_loss) \n", - "#answer in the book for Total loss & insertion loss are wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Total loss is 19.21 dB.\n", - "Insertion loss is 19.21 dB.\n" - ] - } - ], - "prompt_number": 15 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter6.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter6.ipynb deleted file mode 100755 index 2383415f..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter6.ipynb +++ /dev/null @@ -1,252 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:1a1f7133700fa452f49cfaeb319a776f69d7e64235d3f11f1abd2825b262e6e8" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "chapter6 - Optical sources" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 6.3.1, page 6-7 " - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "x=0.07 \n", - "Eg=1.424+1.266*x+0.266*x**2 \n", - "lamda=1.24/Eg #computing wavelength\n", - "print \"Wavlength is %.3f micrometer.\" %lamda " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Wavlength is 0.819 micrometer.\n" - ] - } - ], - "prompt_number": 7 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 6.3.2, page 6.12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n=1.7 #refractive index\n", - "L=5*10**-2 #distance between mirror\n", - "c=3*10**8 #speed of light\n", - "lamda=0.45*10**-6 #wavelength\n", - "k=2*n*L/lamda #computing number of modes\n", - "delf=c/(2*n*L) #computing mode separation\n", - "delf=delf*10**-9 \n", - "print \"Number of modes are %.2e.\\nFrequency separation is %.2f GHz.\"%(k,delf) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Number of modes are 3.78e+05.\n", - "Frequency separation is 1.76 GHz.\n" - ] - } - ], - "prompt_number": 2 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 6.7.1, page 6-26" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "tr=50 #radiative recombination lifetime\n", - "tnr=85 #non-radiative recombination lifetime\n", - "h=6.624*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "i=35*10**-3 #current\n", - "lamda=0.85*10**-6 #wavelength\n", - "t=tr*tnr/(tr+tnr) #computing total recombination time\n", - "eta=t/tr #computing internal quantum efficiency\n", - "Pint=eta*h*c*i/(q*lamda) #computing internally generated power\n", - "Pint=Pint*10**3\n", - "print \"Total recombinaiton time is %.2f ns.\\nInternal quantum efficiency is %.3f.\\nInternally generated power is %.2f mW.\" %(t,eta,Pint) \n", - "#answer in the book for Internal quantum efficiency & Internally generated power is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Total recombinaiton time is 31.48 ns.\n", - "Internal quantum efficiency is 0.630.\n", - "Internally generated power is 32.20 mW.\n" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 6.8.1, page 6-34" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import sqrt, pi\n", - "f1=10*10**6 #frequency\n", - "f2=100*10**6\n", - "t=4*10**-9 \n", - "Pdc=280*10**-6 #optincal output power\n", - "w1=2*pi*f1 #computing omega\n", - "Pout1=Pdc*10**6/(sqrt(1+(w1*t)**2)) #computing output power\n", - "w2=2*pi*f2 #computing omega\n", - "Pout2=Pdc*10**6/(sqrt(1+(w2*t)**2)) #computing output power\n", - "print \"\"\"Ouput power at 10 MHz is %.2f microwatt.\n", - "Ouput power at 100 MHz is %.2f microwatt.\n", - "Conclusion when device is drive at higher frequency the optical power reduces.\"\"\" %(Pout1,Pout2) \n", - "BWopt = sqrt(3)/(2*pi*t) \n", - "BWelec = BWopt/sqrt(2) \n", - "BWopt=BWopt*10**-6 \n", - "BWelec=BWelec*10**-6 \n", - "print \"3 dB optical power is %.2f MHz.\\n3 dB electrical power is %.2f MHz.\" %(BWopt,BWelec) \n", - "#calculation error. In the book square term in the denominater is not taken.\n", - "#answers in the book are wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Ouput power at 10 MHz is 271.55 microwatt.\n", - "Ouput power at 100 MHz is 103.52 microwatt.\n", - "Conclusion when device is drive at higher frequency the optical power reduces.\n", - "3 dB optical power is 68.92 MHz.\n", - "3 dB electrical power is 48.73 MHz.\n" - ] - } - ], - "prompt_number": 8 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 6.8.2, page 6-35" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "n1=3.5 #refractive index\n", - "n=1 #refractive index of air\n", - "F=0.69 #transmission factor\n", - "eta = 100*(n1*(n1+1)**2)**-1 #computing eta\n", - "print \"eta external is %.1f percent i.e. small fraction of intrnally generated opticalpower is emitted from the device.\" %eta \n", - "r= 100*F*n**2/(4*n1**2) #computing ratio of Popt/Pint\n", - "print \"Popt/Pint is %.1f percent\" %r\n", - "#printing mistake at final answer." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "eta external is 1.4 percent i.e. small fraction of intrnally generated opticalpower is emitted from the device.\n", - "Popt/Pint is 1.4 percent\n" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 6.8.3, page 6-39" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import log, exp\n", - "beta0=1.85*10**7 \n", - "T=293 #temperature\n", - "k=1.38*10**-23 #Boltzman constant\n", - "Ea=0.9*1.6*10**-19 \n", - "theta=0.65 #thershold\n", - "betar=beta0*exp(-Ea/(k*T)) \n", - "t=-log(theta)/betar \n", - "print \"Degradation rate is %.1e per hour.\\nOperating lifetime is %.1e hour.\" %(betar,t) \n", - "#answer in the book for Degradation rate & Operating lifetime is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Degradation rate is 6.3e-09 per hour.\n", - "Operating lifetime is 6.8e+07 hour.\n" - ] - } - ], - "prompt_number": 12 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter7.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter7.ipynb deleted file mode 100755 index 59a13011..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter7.ipynb +++ /dev/null @@ -1,716 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:7b09bc4939eefcfd52ab3af51ad805d4dcc13501d36382e73f4451d0d172843b" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "Chapter7 - Source to fiber power launching and photodetectors" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.2.1, page 7-11" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import pi, sqrt, log10\n", - "n1=3.4 #refractive index of optical source\n", - "n=1.46 #refractive index of silica fiber\n", - "r=((n1-n)/(n1+n))**2 #computing Frensel reflection\n", - "L=-10*log10(1-r) #computing loss\n", - "print \"Frensel reflection is %.3f.\\nPower loss is %.2f dB.\" %(r,L) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Frensel reflection is 0.159.\n", - "Power loss is 0.75 dB.\n" - ] - } - ], - "prompt_number": 2 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.2.2, page 7-11" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "r=35*10**-6 #radius\n", - "R=150 #Lambertian emission pattern\n", - "NA=0.2 #Numerical aperture\n", - "Pled = pi**2*r**2*R*NA**2 \n", - "Pled=Pled*10**7 \n", - "print \"Optical power for larger core of 35 micrometer is %.3f mW.\" %(Pled) \n", - "r1=25*10**-6 \n", - "Pled1=(r1/r)**2*Pled \n", - "print \"Optical power for smaller core of 25 micrometer is %.2f mW.\" %(Pled1) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Optical power for larger core of 35 micrometer is 0.725 mW.\n", - "Optical power for smaller core of 25 micrometer is 0.37 mW.\n" - ] - } - ], - "prompt_number": 3 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.2.3, page 7-12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "r=25*10**-6 #radius\n", - "R=39 #Lambertian emission pattern\n", - "NA=0.25 #numerical aperture\n", - "a=35*10**-6 #area\n", - "Pc1= pi**2*a**2*R*NA**2 #computing coupled power when r<a\n", - "Pc1=Pc1*10**7 \n", - "Pc= pi**2*r**2*R*NA**2 #computing coupled power when r>a\n", - "Pc=Pc*10**7 \n", - "print \"Optical power when r>a is %.2f mW.\\nOptical power when r<a is %.3f mW.\" %(Pc,Pc1) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Optical power when r>a is 0.15 mW.\n", - "Optical power when r<a is 0.295 mW.\n" - ] - } - ], - "prompt_number": 4 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.1, page 7-23" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "e=1.6*10**-19 #charge of electron\n", - "q=1.43 #Bandgap energy\n", - "lamda=h*c/(q*e)*10**9 #computing wavelength\n", - "print \"Wavelength is %d nm\" %(lamda) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Wavelength is 868 nm\n" - ] - } - ], - "prompt_number": 6 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.2, page 7-23" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "R=0.6 #responsivity\n", - "Pin=15 #optical power in microwatt\n", - "Ip=R*Pin #computing photocurrent\n", - "print \"Photocurrent generated is %d microAmpere.\" %Ip " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Photocurrent generated is 9 microAmpere.\n" - ] - } - ], - "prompt_number": 7 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.3, page 7-23" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda1=1300*10**-9 \n", - "lamda2=1600*10**-9 \n", - "h=6.625*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=90/100 #quantum efficiency\n", - "E=0.73 #energy gap in eV\n", - "R1=eta*q*lamda1/(h*c) \n", - "R2=eta*q*lamda2/(h*c) \n", - "lamdac=1.24/E \n", - "print \"Responsivity at 1300nm is %.2f A/W.\\nResponsivity at 1600nm is %.2f A/W.\\nCut-off wavelength is %.1f micrometer.\" %(R1,R2,lamdac) \n", - "#R1 is calculated wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Responsivity at 1300nm is 0.94 A/W.\n", - "Responsivity at 1600nm is 1.16 A/W.\n", - "Cut-off wavelength is 1.7 micrometer.\n" - ] - } - ], - "prompt_number": 8 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.4, page 7-24" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=0.8*10**-6 \n", - "h=6.625*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "ne=1.8*10**11 #electrons collected\n", - "np=4*10**11 #photons incident\n", - "eta=ne/np #computing quantum efficiency\n", - "R=eta*q*lamda/(h*c) #computing responsivity\n", - "print \"Responsivity of photodiode at 0.8 micrometer is %.3f A/W.\" %R \n", - "#answer in the book is wrong. " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Responsivity of photodiode at 0.8 micrometer is 0.290 A/W.\n" - ] - } - ], - "prompt_number": 10 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.5, page 7-24" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "E=1.8*10**-19 # Energy of photon\n", - "nq=70/100 # Quantum\n", - "Ip=3 # current in uA\n", - "h=6.625*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "lamda=h*c/E*10**6 # wavelength in micro meter\n", - "print \"Photodiode operates at %0.2f micro meter\" %lamda\n", - "q=1.6*10**-19 #charge of electron\n", - "R=nq*q/E #computing responsivity\n", - "Popt=Ip/R\n", - "print \"Incident optical power required = %.3f uW.\" %Popt " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Photodiode operates at 1.10 micro meter\n", - "Incident optical power required = 4.821 uW.\n" - ] - } - ], - "prompt_number": 17 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.6, page 7-25" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "E=1.35 #energy gap in eV\n", - "lamda=h*c/(q*E) #computing wavelength\n", - "lamda=lamda*10**6 \n", - "print \"The InP photodetector will stop operation above %.2f micrometer.\" %(lamda) \n", - "#calculation error in the book." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "The InP photodetector will stop operation above 0.92 micrometer.\n" - ] - } - ], - "prompt_number": 18 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.7, page 7-26" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "eta=65/100 #quantum efficiency\n", - "I=2.5*10**-6 #photocurrent \n", - "E=1.5*10**-19 #energy of photns\n", - "q=1.6*10**-19 #charge of electron\n", - "lamda=h*c/E #computing wavelength\n", - "R=eta*q*lamda/(h*c) #computing responsivity\n", - "Popt=I/R #computing optical power\n", - "lamda=lamda*10**6 \n", - "Popt=Popt*10**6 \n", - "print \"Wavelength is %.3f micrometer.\\nResponsivity is %.3f A/W.\\nIncident optical power required is %.1f microWatt.\" %(lamda,R,Popt) \n", - "#answer of R(responsivity) in the book is calculated as 0.694 A/W, deviation of 0.001." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Wavelength is 1.325 micrometer.\n", - "Responsivity is 0.693 A/W.\n", - "Incident optical power required is 3.6 microWatt.\n" - ] - } - ], - "prompt_number": 19 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.5.8, page 7-26" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "ne=3.9*10**6 #electrons collected\n", - "np=6*10**6 #photons incident\n", - "eta=100*ne/np #computing efficiency\n", - "print \"Quantum efficiency is %d percent.\" %(eta) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Quantum efficiency is 65 percent.\n" - ] - } - ], - "prompt_number": 20 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.8.1, page 7-37" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "w=25*10**-6 #width\n", - "v=1*10**5 #velocity\n", - "r=40*10**-6 #radius\n", - "eps=12.5*10**-13 \n", - "t=w/v #computing drift time\n", - "c=eps*3.14*(r)**2/w #computing junction capacitance\n", - "c=c*10**16 \n", - "print \"Drift time %.1e sec.\\nJunction capacitance %.1f pf.\" %(t,c) \n", - "#calculation error in drift time answer." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Drift time 2.5e-10 sec.\n", - "Junction capacitance 2.5 pf.\n" - ] - } - ], - "prompt_number": 21 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.8.2, page 7-38" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "w=20*10**-6 #width\n", - "v=4*10**4 #velocity\n", - "t=w/v #computing drift time\n", - "BW=(2*pi*t)**-1 #computing bandwidth\n", - "rt=1/BW #computing response time\n", - "rt=rt*10**9 \n", - "print \"Maximum response time is %.1f ns.\" %(rt)\n", - "#Calculation error in the book." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Maximum response time is 3.1 ns.\n" - ] - } - ], - "prompt_number": 22 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.9.1, page 7-43" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=1.4*10**-6 \n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=65/100 #quantum efficiency\n", - "I=10*10**-9 #current\n", - "NEP= h*c*sqrt(2*q*I)/(eta*q*lamda) \n", - "D=NEP**-1 \n", - "print \"Noise equivalent power is %.3e W.\\nSpecific directivity is %.2e.\" %(NEP,D) \n", - "#answers in the book for NEP & D is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Noise equivalent power is 7.723e-14 W.\n", - "Specific directivity is 1.29e+13.\n" - ] - } - ], - "prompt_number": 23 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.9.2, page 7-44" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=1300*10**-9 \n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=90/100 #quantum efficiency\n", - "P0=300*10**-9 #optical power\n", - "Id=4 #dark current\n", - "B=20*10**6 #bandwidth\n", - "K=1.39*10**-23 #Boltzman constant\n", - "T=298 #temperature\n", - "R=1000 #load resister\n", - "Ip= 10**9*eta*P0*q*lamda/(h*c) \n", - "Its=10**9*(2*q*B*(Ip+Id)) \n", - "Its=sqrt(Its) \n", - "print \"rms shot noise current is %.2f nA.\" %(Its) \n", - "It= 4*K*T*B/R \n", - "It=sqrt(It) \n", - "print \"Thermal noise is %.2e A.\" %(It) \n", - "#answer given in book for shot noise & Thermal noise are wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "rms shot noise current is 1.35 nA.\n", - "Thermal noise is 1.82e-08 A.\n" - ] - } - ], - "prompt_number": 24 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.10.1, page 7-51" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import floor\n", - "lamda=0.85*10**-6 \n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=75/100 #quantum efficiency\n", - "P0=0.6*10**-6 #incident optical power\n", - "Im=15*10**2 #avalanche gain\n", - "R= eta*q*lamda/(h*c) #computing responsivity\n", - "Ip=10**8*P0*R #computing photocurrent\n", - "Ip=floor(Ip) \n", - "M=Im/Ip #computing multiplication factor\n", - "print \"Multiplication factor is %d.\" %(M) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Multiplication factor is 50.\n" - ] - } - ], - "prompt_number": 27 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.10.2, page 7-51" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "lamda=900*10**-9 # Wavelength in m\n", - "P0=0.5 # Optical power\n", - "Im=10 # Photocurrent\n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=65.0/100 #quantum efficiency\n", - "R= eta*q*lamda/(h*c) #computing responsivity\n", - "Ip=P0*R #computing photocurrent \n", - "M=Im/Ip #computing multiplication factor\n", - "print \"Multiplication factor is %0.2f.\" %(M) \n", - "# Answer is wrong in the textbook." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Multiplication factor is 42.47.\n" - ] - } - ], - "prompt_number": 46 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.10.3, page 7-52" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=900*10**-9 \n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=65/100 #quantum efficiency\n", - "P0=0.5*10**-6 #incident optical power\n", - "Im=10*10**2 #avalanche gain\n", - "R= eta*q*lamda/(h*c) #computing responsivity\n", - "Ip=10**8*P0*R #computing photocurrent\n", - "M=Im/Ip #computing multiplication factor\n", - "print \"Multiplication factor is %d.\" %(M) \n", - "#answer in the book is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Multiplication factor is 42.\n" - ] - } - ], - "prompt_number": 47 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 7.10.3, page 7-52" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=900*10**-9 \n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=65/100 #quantum efficiency\n", - "P0=0.5*10**-6 #incident optical power\n", - "Im=10*10**2 #avalanche gain\n", - "R= eta*q*lamda/(h*c) #computong responsivity\n", - "Ip=10**8*P0*R #computing photocurrent\n", - "M=Im/Ip #computing multiplication factor\n", - "print \"Multiplication factor is %d.\" %M " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Multiplication factor is 42.\n" - ] - } - ], - "prompt_number": 48 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter8.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter8.ipynb deleted file mode 100755 index 11017e30..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter8.ipynb +++ /dev/null @@ -1,272 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:3deb63e976713f6e36585549e6b144389b0fc28fe2982a2838d929f3804cde18" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "chapter8 - Optical receiver operation" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 8.2.1, page 8-6" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "from numpy import log, sqrt, pi, log10\n", - "P=10**-9 #probability of error\n", - "eta=1 #ideal detector\n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "lamda=1*10**-6 #wavelength\n", - "B=10**7 #bit rate\n", - "Mn = -log(P) \n", - "print \"The quantum limit at the receiver to maintain bit error rate 10**-9 is (%.1f*h*f)/eta.\" %Mn\n", - "f=c/lamda\n", - "Popt= 0.5*Mn*h*f*B/eta #computing optical power\n", - "Popt_dB = 10 * log10(Popt) + 30 #optical power in dbm\n", - "Popt=Popt*10**12 \n", - "print \"Minimum incident optical power is %.1f W or %.1f dBm.\" %(Popt,Popt_dB) " - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "The quantum limit at the receiver to maintain bit error rate 10**-9 is (20.7*h*f)/eta.\n", - "Minimum incident optical power is 20.6 W or -76.9 dBm.\n" - ] - } - ], - "prompt_number": 5 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 8.2.2, page 8-8" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "SN_dB=60 #signal to noise ratio\n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "lamda=1.3*10**-6 #wavelength\n", - "eta=1 \n", - "B=6.5*10**6 #Bandwidth\n", - "SN=10**(SN_dB/10) \n", - "f=c/lamda\n", - "Popt= 2*SN*h*f*B/eta #computing optical power\n", - "Popt_dB = 10 * log10(Popt) + 30 #optical power in dbm\n", - "Popt=Popt*10**6 \n", - "print \"Incident power required to get an SNR of 60 dB at the receiver is %.4f microWatt or %.3f dBm\" %(Popt,Popt_dB)\n", - "#Calculation error in the book.They have take SN as 10**5 while calculating, which has lead to an error in final answer\n", - "#answer in the book 198.1nW and -37.71 dBm" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Incident power required to get an SNR of 60 dB at the receiver is 1.9878 microWatt or -27.016 dBm\n" - ] - } - ], - "prompt_number": 7 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 8.3.1, page 8-11" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=0.85*10**-6 \n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=65/100 #quantum efficiency\n", - "P0=300*10**-9 #optical power\n", - "Id=3.5 #dark current\n", - "B=6.5*10**6 #bandwidth\n", - "K=1.39*10**-23 #Boltzman constant\n", - "T=293 #temperature\n", - "R=5*10**3 #load resister\n", - "Ip= 10**9*eta*P0*q*lamda/(h*c) \n", - "Its=10**9*(2*q*B*(Ip+Id)) \n", - "Its=sqrt(Its) \n", - "print \"rms shot noise current is %.2f nA.\" %(Its) \n", - "It= 4*K*T*B/R \n", - "It=sqrt(It) \n", - "It=It*10**9 \n", - "print \"Thermal noise is %.2f nA.\" %(It) \n", - "#answer given in book for Thermal noise is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "rms shot noise current is 0.53 nA.\n", - "Thermal noise is 4.60 nA.\n" - ] - } - ], - "prompt_number": 9 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 8.3.2, page 8-12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "lamda=0.85*10**-6 \n", - "h=6.626*10**-34 #plank's constant\n", - "c=3*10**8 #speed of light\n", - "q=1.6*10**-19 #charge of electron\n", - "eta=65/100 #quantum efficiency\n", - "P0=300*10**-9 #optical power\n", - "Id=3.5 #dark current\n", - "B=6.5*10**6 #bandwidth\n", - "K=1.39*10**-23 #Boltzman constant\n", - "T=293 #temperature\n", - "R=5*10**3 #load resister\n", - "F_dB=3 #noise figure\n", - "F=10**(F_dB/10) \n", - "Ip=10**9*eta*P0*q*lamda/(h*c) \n", - "Its=10**9*(2*q*B*(Ip+Id)) \n", - "It1= 4*K*T*B*F/R \n", - "SN= Ip**2/(Its+It1) \n", - "SN_dB=10*log10(SN) \n", - "SN=SN\n", - "print \"SNR is %.2e or %.2f dB.\" %(SN,SN_dB) \n", - "#answer given in the book is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "SNR is 6.25e+04 or 47.96 dB.\n" - ] - } - ], - "prompt_number": 13 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 8.4.1, page 8-14" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "Cd=7*10**-12 \n", - "B=9*10**6 \n", - "Ca=7*10**-12 \n", - "R=(2*3.14*Cd*B)**-1 \n", - "B1=(2*3.14*R*(Cd+Ca))**-1 \n", - "R=R/1000 \n", - "B1=B1/10**6 \n", - "print \"\"\"Thus for 9MHz bandwidth maximum load resistance is %.2f Kohm\n", - "Now if we consider input capacitance of following amplifier Ca then Bandwidth is %.2fMHz\n", - "Maximum post detection bandwidth is half.\"\"\"%(R,B1) \n", - "#answer for resistance in the book is wrong" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Thus for 9MHz bandwidth maximum load resistance is 2.53 Kohm\n", - "Now if we consider input capacitance of following amplifier Ca then Bandwidth is 4.50MHz\n", - "Maximum post detection bandwidth is half.\n" - ] - } - ], - "prompt_number": 14 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Question 7, page 8.44" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "w=25*10**-6 #width\n", - "v=3*10**4 #velocity\n", - "t=w/v #computing drift time\n", - "BW=(2*pi*t)**-1 #computing bandwidth\n", - "rt=1/BW #response time\n", - "rt=rt*10**9 \n", - "print \"Maximum response time is %.2f ns.\" %(rt) \n", - "#Answer in the book is wrong." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Maximum response time is 5.24 ns.\n" - ] - } - ], - "prompt_number": 16 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file diff --git a/Optical_Communiation_by_Anasuya_Kalavar/chapter9.ipynb b/Optical_Communiation_by_Anasuya_Kalavar/chapter9.ipynb deleted file mode 100755 index ba8336a3..00000000 --- a/Optical_Communiation_by_Anasuya_Kalavar/chapter9.ipynb +++ /dev/null @@ -1,99 +0,0 @@ -{ - "metadata": { - "name": "", - "signature": "sha256:c071b41323ac94460e204090d265021c7f2c7744a035dad84fc7193e1854e444" - }, - "nbformat": 3, - "nbformat_minor": 0, - "worksheets": [ - { - "cells": [ - { - "cell_type": "heading", - "level": 1, - "metadata": {}, - "source": [ - "chapter9 - Link design" - ] - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 9.4.1, page 9-8" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from __future__ import division\n", - "output=13 #laser output\n", - "sensitivity=-31 #APD sensitivity\n", - "coupling_loss=0.5 \n", - "L=80 #length in km\n", - "sl=0.1 #loss correspond to one splice in dB\n", - "fl=0.35 #fiber loss in dB/km\n", - "noise=1.5 \n", - "allowed_loss=output-sensitivity \n", - "splices_loss=(L-1)*sl \n", - "fiber_loss=L*fl \n", - "margin=allowed_loss-(splices_loss+fiber_loss+coupling_loss+noise) \n", - "print \"Final margin is %.1f dB.\" %margin" - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Final margin is 6.1 dB.\n" - ] - } - ], - "prompt_number": 2 - }, - { - "cell_type": "heading", - "level": 2, - "metadata": {}, - "source": [ - "Example 9.6.1, page 9-12" - ] - }, - { - "cell_type": "code", - "collapsed": false, - "input": [ - "from numpy import sqrt\n", - "L=10 \n", - "ts=10 \n", - "tD=8 \n", - "tmod=L*6 \n", - "tt=L*2 \n", - "Tsys=1.1*sqrt(ts**2+tmod**2+tt**2+tD**2) \n", - "Bt=0.7/Tsys \n", - "Bt=Bt*10**3 \n", - "print \"Maximum bit rate for link using NRZ data format is %.2f Mbits/sec.\" %Bt \n", - "#calculation error in the book." - ], - "language": "python", - "metadata": {}, - "outputs": [ - { - "output_type": "stream", - "stream": "stdout", - "text": [ - "Maximum bit rate for link using NRZ data format is 9.86 Mbits/sec.\n" - ] - } - ], - "prompt_number": 6 - } - ], - "metadata": {} - } - ] -}
\ No newline at end of file |