summaryrefslogtreecommitdiff
path: root/Optical_Fiber_Communication_by_A_Kalavar/6-Optical_Sources.ipynb
blob: 9f1e8308ef7dc204a8b4e70b09f25ec5f2849512 (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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
{
"cells": [
 {
		   "cell_type": "markdown",
	   "metadata": {},
	   "source": [
       "# Chapter 6: Optical Sources"
	   ]
	},
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.14_1: Single_longitudinal_mode.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.14.1  page 6.42\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"// This is example does not consist of any numerical computation\n",
"\n",
"printf('\nQuestion - What do you understand by single longitudinal mode laser or SLM? ')\n",
"printf('\nAnswer - \nIn laser operation optical gain alone is not sufficient for laser operation but a minimum amount of gain is also necessary.\nThis gain can be achieved when laser is pumped above threshold level.\nIn simplest laser structure we have p-n junction.Active layer is sandwitched between p and n type layers of higher bandgap material. Such broad area semiconductor laser need high threshold current and light confinement becomes difficult.\nGain guided semiconductor laser limit the current injection over a narrow stripe thus overcome the problem of light confinement.They are also called stripe geometry lasers.\nIn index guided laser an in index step is introduced to form waveguide.\nIn buried heterostructure laser the active region in buried by layers of lower refractive indices.\nWhen width and thickness of the active layer is controlled, light can be made to emerge in a single spatial mode, but the problem arises when such lasers oscillate in many longitudinal modes in Fabry Perot cavity.\nThe spectral width obtained is about 2-4 nm which can be tolerated for 1.3 micrometer operation, but for systems operating near 1.55 micrometer at higher bit rates such multimode lasers can not be used. At such times laser which emit light in a single longitudnal mode are required to give higher bit rates than 1 Gb/s. They are called Single Longitudinal Mode (SLM) lasers.');"
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.21_1: Determine_total_recombination_lifetime_and_internally_generated_power_emission.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.21.1  page 6.59\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"tr=50;      //radiative recombination lifetime\n",
"tnr=85;     //non-radiative recombination lifetime\n",
"h=6.624d-34;  //plank's constant\n",
"c=3d8;      //speed of light\n",
"q=1.6d-19;  //charge of electron\n",
"i=35d-3;    //current\n",
"lamda=0.85d-6;      //wavelength\n",
"\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",
"\n",
"printf('\nTotal recombinaiton time is %.2f ns.\nInternal quantum efficiency is %.3f.\nInternally generated power is %.1f mW.',t,eta,Pint);\n",
"\n",
"//answer in the book for Internal quantum efficiency is 0.629, deviation of 0.001.\n",
"//answer in the book for Internally generated power is 32.16 mW, deviation of 0.04 mW."
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.21_2: EX6_21_2.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.21.2  page 6.59\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"tr=30;      //radiative recombination lifetime\n",
"tnr=100;     //non-radiative recombination lifetime\n",
"h=6.624d-34;  //plank's constant\n",
"c=3d8;      //speed of light\n",
"q=1.6d-19;  //charge of electron\n",
"i=40d-3;    //current\n",
"lamda=1310d-9;      //wavelength\n",
"\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",
"\n",
"printf('\nTotal recombinaiton time is %.2f ns.\nInternal quantum efficiency is %.3f.\nInternally generated power is %.2f mW.',t,eta,Pint);\n",
"\n",
"//answer in the book for Total recombinaiton time is 23.07 ns, deviation of 0.01ns."
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.21_3: Determine_total_recombination_lifetime_and_internally_generated_power.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.21.3  page 6.60\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"tr=50;      //radiative recombination lifetime\n",
"tnr=110;     //non-radiative recombination lifetime\n",
"h=6.624d-34;  //plank's constant\n",
"c=3d8;      //speed of light\n",
"q=1.6d-19;  //charge of electron\n",
"i=40d-3;    //current\n",
"lamda=0.87d-6;      //wavelength\n",
"\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",
"\n",
"printf('\nTotal recombinaiton time is %.2f ns.\nInternal quantum efficiency is %.4f.\nInternally generated power is %.2f mW.',t,eta,Pint);\n",
"\n",
"//answers in the book with slight deviaitons\n",
"//Total recombinaiton time is 34.37 ns, deviation of 0.01ns.\n",
"//Internal quantum efficiency is 0.6874, deviaiton of 0.0001.\n",
"//Internally generated power is 39.24 mW, deviation of 0.02mW."
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.22_1: Determine_optical_power.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.22.1  page 6.68\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"f1=10d6;    //frequency\n",
"f2=100d6\n",
"t=4d-9;\n",
"Pdc=280d-6;     //optincal output power\n",
"\n",
"w1=2*%pi*f1;    //computing omega\n",
"Pout1=Pdc*10^6/(sqrt(1+(w1*t)^2));      //computing output power\n",
"\n",
"w2=2*%pi*f2;    //computing omega\n",
"Pout2=Pdc*10^6/(sqrt(1+(w2*t)^2));      //computing output power\n",
"\n",
"printf('Ouput power at 10 MHz is %.2f microwatt.\nOuput power at 100 MHz is %.2f microwatt.\nConclusion when device is drive at higher frequency the optical power reduces.\nNOTE - calculation error. In the book square term in the denominater is not taken.',Pout1,Pout2);\n",
"\n",
"BWopt = sqrt(3)/(2*%pi*t);\n",
"BWelec = BWopt/sqrt(2);\n",
"BWopt=BWopt*10^-6;\n",
"BWelec=BWelec*10^-6;\n",
"\n",
"printf('\n3 dB optical power is %.2f MHz.\n3 dB electrical power is %.2f MHz.',BWopt,BWelec);\n",
"\n",
"\n",
"//calculation error. In the book square term in the denominater is not taken.\n",
"//answers in the book - \n",
"//Ouput power at 10 MHz is 228.7 microwatt.(incorrect)\n",
"//Ouput power at 100 MHz is 175 microwatt.(incorrect)\n",
"//3 dB optical power is 68.8 MHz, deviation of 0.12\n",
"//3 dB electrical power is 48.79 MHz, deviation of 0.06 "
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.22_2: To_calculate_emitted_optical_power_as_percent_of_internal_optical_power.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.22.2  page 6.69\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"n1=3.5;  //refractive index\n",
"n=1;    //refractive index of air\n",
"F=0.69; //transmission factor\n",
"\n",
"eta = 100*(n1*(n1+1)^2)^-1;     //computing eta\n",
"\n",
"printf('\neta external is %.1f percent i.e. small fraction of intrnally generated opticalpower is emitted from the device.',eta);\n",
"printf('\n\n OR we can also arrive at solution,\n');\n",
"\n",
"r= 100*F*n^2/(4*n1^2);      //computing ratio of Popt/Pint\n",
"\n",
"printf('\n Popt/Pint is %.1f percent',r);\n",
"\n",
"printf('\nNOTE - printing mistake at final answer.\nThey have printed 40 percent it should be 1.4 percent');"
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.22_3: Find_operating_lifetime.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.22.3  page 6.73\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"beta0=1.85d7;\n",
"T=293;      //temperature\n",
"k=1.38d-23; //Boltzman constant\n",
"Ea=0.9*1.6d-19;\n",
"theta=0.65; //thershold\n",
"\n",
"betar=beta0*%e^(-Ea/(k*T));\n",
"t=-log(theta)/betar;\n",
"\n",
"printf('\nDegradation rate is %.2e per hour.\nOperating lifetime is %.1e hour.',betar,t);\n",
"\n",
"//answer in the book for Degradation rate is 6.4e-09 per hour, deviation of 0.08e-9\n",
"//answer in the book for Operating lifetime is 6.7e+07 hour, deviaiton of 0.1e1"
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.3_1: Find_operating_wavelength.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.3.1  page 6.7\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"x=0.07;\n",
"Eg=1.424+1.266*x+0.266*x^2;\n",
"lamda=1.24/Eg;      //computing wavelength\n",
"printf('\nWavlength is %.3f micrometer.',lamda);"
   ]
   }
,
{
		   "cell_type": "markdown",
		   "metadata": {},
		   "source": [
			"## Example 6.3_2: Find_out_number_of_longitudinal_modes_and_frequency_separation.sce"
		   ]
		  },
  {
"cell_type": "code",
	   "execution_count": null,
	   "metadata": {
	    "collapsed": true
	   },
	   "outputs": [],
"source": [
"// Example 6.3.2  page 6.12\n",
"\n",
"clc;\n",
"clear;\n",
"\n",
"n=1.7;      //refractive index\n",
"L=5d-2;     //distance between mirror\n",
"c=3d8;      //speed of light\n",
"lamda=0.45d-6;  //wavelength\n",
"\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",
"\n",
"printf('\nNumber of modes are %.2e.\nFrequency separation is %.2f GHz.',k,delf);\n",
""
   ]
   }
],
"metadata": {
		  "kernelspec": {
		   "display_name": "Scilab",
		   "language": "scilab",
		   "name": "scilab"
		  },
		  "language_info": {
		   "file_extension": ".sce",
		   "help_links": [
			{
			 "text": "MetaKernel Magics",
			 "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
			}
		   ],
		   "mimetype": "text/x-octave",
		   "name": "scilab",
		   "version": "0.7.1"
		  }
		 },
		 "nbformat": 4,
		 "nbformat_minor": 0
}