summaryrefslogtreecommitdiff
path: root/Fiber_Optics_and_Optoelectronics_by_R._P._Khare/Chapter11.ipynb
blob: 613347fe40465c494ea8a1484070304f0d234d56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Chapter11 - Wavelength-division multiplexing"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Example 11.1 : Page 277"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "interaction length = 0.785 \n"
     ]
    }
   ],
   "source": [
    "from __future__ import division\n",
    "from math import sqrt, pi, asin\n",
    "#interaction length \n",
    "po=1##assume\n",
    "p1=po/2##\n",
    "p2=p1##\n",
    "kl=asin(sqrt(p1))##in degree\n",
    "print \"interaction length = %0.3f \"%kl\n",
    "#answer is in the form of pi in the textbook"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Example 11.2 : Page 279"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "output port positioned at 0.7492  mm with respect to the input port will gather signals at h1=1310nm\n",
      "output port positioned at 0.6117  mm with respect to the input port will gather signals at h1=1550nm\n"
     ]
    }
   ],
   "source": [
    "#position \n",
    "a=8.2##in micro meter\n",
    "n1=1.45##\n",
    "n2=1.446##\n",
    "h1=1.31##in micro meter\n",
    "h2=1.55##/in micro meter\n",
    "v1=((2*pi*a*sqrt(n1**2-n2**2))/h1)##\n",
    "v2=((2*pi*a*sqrt(n1**2-n2**2))/h2)##\n",
    "db=2.439##\n",
    "Del=5.5096*10**-3##\n",
    "k1=1.0483##mm**-1##\n",
    "k2=1.2839#/m**-1\n",
    "l1=((pi)/(4*k1))##in mm\n",
    "l2=((pi)/(4*k2))##in mm\n",
    "print \"output port positioned at %0.4f\"%(l1),\" mm with respect to the input port will gather signals at h1=1310nm\"\n",
    "print \"output port positioned at %0.4f\"%(l2),\" mm with respect to the input port will gather signals at h1=1550nm\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Example 11.4 : Page 286"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "required order of the arrayed waveguide, =  121.0\n"
     ]
    }
   ],
   "source": [
    "# ARRAYED GUIDE\n",
    "#given data\n",
    "c=3*10**8#\n",
    "lamda_c=1.55*10**-6## in m\n",
    "vc=c/lamda_c#\n",
    "n=16## number of channel\n",
    "f=100*10**9## in Hz\n",
    "delV_FSR=n*f#\n",
    "m=round(vc/delV_FSR)#\n",
    "print \"required order of the arrayed waveguide, = \",m"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}