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
|
{
"metadata": {
"name": "Chapter3"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": "Fibre Optics and Applications"
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": "Example number 3.1, Page number 84"
},
{
"cell_type": "code",
"collapsed": false,
"input": "#To calculate the numerical aperture, critical angle,acceptance angle\n\n#importing modules\nimport math\n\n#Variable declaration\nn1 = 1.5; #refractive index of core\nn2 = 1.47; #refractive index of cladding\nn0 = 1; #refractive index of air\na = 180/math.pi; #conversion factor of radian to degree\n\n#Calculation\nNA = math.sqrt((n1**2)-(n2**2)); #numerical aperture\nNA=math.ceil(NA*10)/10; #rounding off to 1 decimal\nalpha_m = math.asin(NA/n0); #acceptance angle(radian)\nalpha_m = alpha_m*a; #acceptance angle(degrees)\nalpha_m=math.ceil(alpha_m*10**2)/10**2; #rounding off to 2 decimals\nphi_m = math.asin(NA/n1); #phase angle(radian)\nphi_m = phi_m*a; #phase angle(degrees)\nphi_m=math.ceil(phi_m*10**2)/10**2; #rounding off to 2 decimals\ntheta_c = math.asin(n2/n1); #critical angle(radian)\ntheta_c = theta_c*a; #critical angle(degrees)\ntheta_c=math.ceil(theta_c*10**3)/10**3; #rounding off to 3 decimals\n\n#Result\nprint \"numerical aperture is\",NA\nprint \"acceptance angle is\",alpha_m,\"degrees\"\nprint \"phase angle is\",phi_m,\"degrees\"\nprint \"critical angle is\",theta_c,\"degrees\"",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "numerical aperture is 0.3\nacceptance angle is 17.46 degrees\nphase angle is 11.54 degrees\ncritical angle is 78.522 degrees\n"
}
],
"prompt_number": 1
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": "Example number 3.2, Page number 85"
},
{
"cell_type": "code",
"collapsed": false,
"input": "#To calculate the pulse broadening \n\n#importing modules\nimport math\n\n#Variable declaration\nn1 = 1.5; #refractive index of core\nn2 = 1.47; #refractive index of cladding\nc = 3*10**8; #velocity of light(m/sec)\n\n#Calculation\ndeltatbyL = (n1/n2)*((n1-n2)/c);\n\n#Result\nprint \"pulse broadening per unit length is\",deltatbyL,\"s/m\"\n",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "pulse broadening per unit length is 1.02040816327e-10 s/m\n"
}
],
"prompt_number": 2
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": "Example number 3.3, Page number 85"
},
{
"cell_type": "code",
"collapsed": false,
"input": "#To calculate the minimum and maximum number of total internal reflections\n\n#importing modules\nimport math\n\n#Variable declaration\nphi_m = 11.54; #phase angle(degrees)\na = 0.5*10**-4;\nx = math.pi/180; #conversion factor from degrees to radians\n\n#Calculation\nphi_m = phi_m*x; #phase angle(radian)\nL = a/math.tan(phi_m); #length(m)\nn = 1/(2*L); #total number of internal reflections(m-1)\n\n#Result\nprint \"rays travelling with alpha = 0 suffer no reflection. therefore minimum number of reflections per metre is 0.\"\nprint \"for rays travelling with alpha = alpha_m, the total number of internal reflections for 1m is\",int(n),\"m-1\"",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "rays travelling with alpha = 0 suffer no reflection. therefore minimum number of reflections per metre is 0.\nfor rays travelling with alpha = alpha_m, the total number of internal reflections for 1m is 2041 m-1\n"
}
],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": "",
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
|