{
 "metadata": {
  "name": "chapter 3(s)"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": "Chapter 3: Fibre Optics And Applications"
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 1, Page No: 3.40"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# Finding Numerical aperture\n\nimport math;\n\n# Variable Declaration\nn1      = 1.6;      # Refractive index of core\nn2      = 1.5;      # Refractive index of cladding\n\n# Calculations\nNA      = math.sqrt(n1**2 - n2**2);        # Numerical Aperture of optical fiber\n\n# Result\nprint 'Numerical Aperture of the optical fiber = %3.4f' %NA;",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Numerical Aperture of the optical fiber = 0.5568\n"
      }
     ],
     "prompt_number": 1
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 2, Page No: 3.40"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# Finding Numerical aperture and acceptance Angle\n\nimport math;\n\n# Variable declaration\nn1      = 1.55;      # Refractive index of core\nn2      = 1.5;       # Refractive index of cladding\n\n# Calculations\nNA      = math.sqrt(n1**2 - n2**2);        # Numerical Aperture of optical fiber\nim      = math.asin(NA);                   # Acceptance angle\nim_d    = im*180/math.pi                   # radian to degree conversion\n\n# Result\nprint 'Numerical Aperture of the optical fiber = %3.4f'%NA,' Acceptance angle = %3.2f' %im_d,'degrees ';\n",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Numerical Aperture of the optical fiber = 0.3905  Acceptance angle = 22.99 degrees \n"
      }
     ],
     "prompt_number": 6
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": " Example 3, Page No: 3.41"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# Finding Refractive index of cladding\n\nimport math;\n\n# Variable declaration\nNA      = 0.26;      # Numerical aperture \nn1      = 1.5 ;      # Refractive index of core\nd       = 100*10^-6; # diameter of the core in m\n\n# Calculations\nn2      = math.sqrt( n1**2 - NA**2);       # Refractive index of cladding\n\n# Result\nprint 'Refractive index of cladding = %3.4f' %n2;",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Refractive index of cladding = 1.4773\n"
      }
     ],
     "prompt_number": 9
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 4, Page No: 3.41"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# Finding Numerical aperture\n\nimport math;\n\n# variable Declaration\nn1      = 1.54;      # Refractive index of core\nn2      = 1.5;      # Refractive index of cladding\n\n# Calculations\nNA      = math.sqrt(n1**2 - n2**2);        # Numerical Aperture of optical fiber\n\n# Result\nprint 'Numerical Aperture of the optical fiber = %3.4f' %NA",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Numerical Aperture of the optical fiber = 0.3487\n"
      }
     ],
     "prompt_number": 10
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Addl_Example 1, Page No: 3.42"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# Finding Refractive index, Acceptance angle, Maximum number of modes that fibre allows\n\nimport math;\n\n# Variable Declaration\nn1      = 1.5;       # Refractive index of core\nNA      = float(0.26);      # Numerical aperture \nd       = 100*10**-6  # core diameter\nlamda   = float(10**-6);     # wavelength in m\n\n# Calculations\nn2      = math.sqrt( n1**2 - NA**2);       # Refractive index of cladding\nim      = math.asin(NA);                   # Acceptance angle\nim_d    = im*180/math.pi                   # radian to degree conversion\nN       = 4.9*(d*NA/lamda)**2;              # maximum no of modes\n\n# Result\nprint ' Refractive index of cladding n2 = %3.4f' %n2,'\\n Acceptance angle = %3.2f' %im_d, 'degrees','\\n Maximum number of modes that fibre allows = %d '%N;\n",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": " Refractive index of cladding n2 = 1.4773 \n Acceptance angle = 15.07 degrees \n Maximum number of modes that fibre allows = 3312 \n"
      }
     ],
     "prompt_number": 19
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Addl_Example 2, Page No: 3.43"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": " # Finding Numerical aperture and Critical angle\n\nimport math;\n\n# Varible Declaration\ndelta       = 0.02;         # relative refractive index\nn1          = 1.48;         # refractive index of core\n\n# Calculations\nNA          = n1*(2*delta)**0.5;           # Numerical aperture\nn2          = math.sqrt( n1**2 - NA**2);   # Refractive index of cladding\ncri_ang     = math.asin(n2/n1);            # critical angle\ncri_ang_d   = cri_ang*180/math.pi;         # critical angle in degrees\n\n# Result\nprint ' Numerical Aperture = %3.3f'%NA,'\\n The Critical angle = %3.2f' %cri_ang_d,' degrees';",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": " Numerical Aperture = 0.296 \n The Critical angle = 78.46  degrees\n"
      }
     ],
     "prompt_number": 22
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Addl_Example 3, Page No: 3.43"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# Finding Refractive Index\n\nimport math\n\n# Variable declaration\ndelta       = 0.015;        # relative refractive index\nNA          = 0.27;         # Numerical aperture\n\n# Calculations\n# we know that NA = n1*sqrt(2*\u0394)\nn1          = NA/math.sqrt(2*delta)          # refractive index of core\nn2          = math.sqrt( n1**2 - NA**2);     #  Refractive index of cladding\n\n# Result\nprint ' Refractive index of the core = %3.3f' %n1,'\\n Refractive index of the cladding = %3.3f\\n' %n2;",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": " Refractive index of the core = 1.559 \n Refractive index of the cladding = 1.535\n\n"
      }
     ],
     "prompt_number": 24
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Addl_Example 4, Page No: 3.44"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# No. of total modes propagating in a multimode step index fibre\n\nimport math;\n\n# variable Declaration\nNA      = 0.25;        # Numerical aperture \nd       = 60*10**-6       # core diameter\nlamda   = 2.7*10**-6;     # wavelength in m\n\n# calculations\nN       = 4.9*(d*NA/lamda)**2;       # no of modes for step index fibre\n\n# Result\nprint 'No. of total modes propagating in a multimode step index fibre = %d' %N;",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "No. of total modes propagating in a multimode step index fibre = 151\n"
      }
     ],
     "prompt_number": 26
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Addl_Example 5, Page No: 3.44"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "# Finding No. of total modes propagating in the fibre\nimport math;\n\n# Variable Declaration\nNA      = 0.25;          # Numerical aperture \nd       = 6*10**-6        # core diameter\nlamda   = 1.5*10**-6;     # wavelength of laser source\nn1      = 1.47;          # refractive index of core\nn2      = 1.43           # refractive index of cladding\n\n# calculations\nNA      = math.sqrt( n1**2 - n2**2);       # Numerical Aperture\nN       = 4.9*(d*NA/lamda)**2;      # no of modes for step index fibre\n\n# Result\nprint 'No. of total modes propagating in the fibre = %d' %N;",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "No. of total modes propagating in the fibre = 9\n"
      }
     ],
     "prompt_number": 30
    }
   ],
   "metadata": {}
  }
 ]
}