{
 "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
}