{
 "metadata": {
  "name": "AKmaini"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "heading",
     "level": 1,
     "metadata": {},
     "source": "Chapter 11: Satellites and Satellite Communications\n"
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 1, Pg No: 567"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math\n\n# Variable Declaration\nh       = 150;              # height of satellite from earth in km\nG       = 6.67*10**-11;      # Gravitational constant\nM       = 5.98*10**24;       # mass of the earth in kg\nRe      = 6370;             # radius of earth in km\n\n# Calculations\nu       = G*M\nV       = math.sqrt(u/((Re + h)*10**3))  # orbital velocity\nV1      = V/1000;                  # orbital velocity in km/s\n\n# Result\nprint 'Orbital velocity = %3.3f'%V1,'km/s';",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Orbital velocity = 7.821 km/s\n"
      }
     ],
     "prompt_number": 2
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 2, Pg No: 568"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\nAp_Pe_diff  = 30000;        # difference between apogee and perigee in Km\na           = 16000;        # semi major axis of orbit\n\n# Calculations\ne           =  Ap_Pe_diff/float(2*a);    # Eccentricity\n\n# Result\nprint 'Eccentricity = %3.2f'%e;",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Eccentricity = 0.94\n"
      }
     ],
     "prompt_number": 5
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 3, Pg No:568"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Decalaration\na1      = 18000;            # semi major axis of the elliptical orbits of satellite 1\na2      = 24000;            # semi major axis of the elliptical orbits of satellite 2\n\n# Calculations\n#T    = 2*%pi*sqrt(a^3/u);\n#let K = T2/T1;\nK       = (float(a2)/a1)**(3/float(2));    # Ratio of orbital periods\n\n# Result\nprint 'The orbital period of satellite-2 is %3.2f' %K,' times the orbital period of satellite-1';\n",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "The orbital period of satellite-2 is 1.54  times the orbital period of satellite-1\n"
      }
     ],
     "prompt_number": 14
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 4, Pg No:569"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\n\nh       = 35800;            # height of satellite orbit from earth in km\nG       = 6.67*10**-11;      # Gravitational constant\nM       = 5.98*10**24;       # mass of the earth in kg\nRe      = 6364;             # radius of earth in km\ni       = 2;                # inclination angle\n\n# Calculations\nu       = G*M\nr       = Re+h\nVi      = math.sqrt(u/r*10**3)* math.tan(i*math.pi/180);     # magnitude of velocity impulse\nV       = Vi/1000;                                      # magnitude of velocity impulse in m/s\n\n#Result\nprint 'Magnitude of velocity impulse = %d' %V,' m/s';",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Magnitude of velocity impulse = 107  m/s\n"
      }
     ],
     "prompt_number": 20
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 5, Pg No: 571"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\nh       = float(13622);        # ht of circular orbit from earth's surface\nRe      = 6378;         #  Radius of earth in km\n\n# Calculations\nR       = Re+h;         # Radius of circular orbit\npimax   = 180 - (2*math.acos(Re/R))*(180/math.pi);   # Maximum shadow angle\neclipmax_time = (pimax/360)*24;             # maximum daily eclipse duration\n\n# Result\nprint ' Maximum shadow angle = %3.1f\u00b0' %pimax\nprint ' Maximum daily eclipse duration = %3.2f'%eclipmax_time,' hours';",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": " Maximum shadow angle = 37.2\u00b0\n Maximum daily eclipse duration = 2.48  hours\n"
      }
     ],
     "prompt_number": 22
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 6, Pg No:572"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math\n\n# Variable Declaration\n\nh       = 35786;        # ht of geo.stationary orbit above earth surface\nT       = 365;          # time in days\nr       = 6378          # radius of earth in km\n\n# ie(t) = 23.4*sin(2*%pi*t/T)\n# for a circular orbit of 20000 km radius ,phi = 37.4\u00b0 ,Therefore, the time from first day of eclipse to equinox is given by substituting ie(t) = 37.4/2 = 18.7\u00b0\nphi     = 37.4\nie      = (phi/2)*(math.pi/180)\nk       = 23.4*(math.pi/180)\nt       = (365/(2*math.pi))*math.asin((ie/k)) \n# for geostationary orbit\nphimax  = 180 - 2*(math.acos(r/(r+h)))*(180/math.pi)\nt_geo   = (365/(2*math.pi))*math.asin((8.7*math.pi/180)/k)\n\n# Result\nprint 'Total time from first day of eclipse to last day of eclipse = %3.1f' %t,' days';\nprint 'Total time from first day of eclipse to last day of eclipse for geostationary orbit = %3.2f' %t_geo, 'days'",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Total time from first day of eclipse to last day of eclipse = 53.8  days\nTotal time from first day of eclipse to last day of eclipse for geostationary orbit = 22.13 days\n"
      }
     ],
     "prompt_number": 24
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 7, Pg No:600"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\nm       = 100;      # mass of satellite\nV       = 8000;     # orbital velocity in m/s\nRe      = 6370;     # radius of earth in Km\nH       = 200;      # satellite height above earth surface\n\n# Calculations\nCF      = (m*V**2)/((Re+H)*10**3);       #centrifugal force\n\n# Result\nprint 'Centrifugal Force = %d' %CF,' Newtons';",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Centrifugal Force = 974  Newtons\n"
      }
     ],
     "prompt_number": 25
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 8, Pg No:601"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\n\nApogee  = 30000;        # Apogee pt of satellite elliptical orbit\nPerige  = 1000;         # perigee pt of satellite elliptical orbit\n\n# Calculations\na       = (Apogee + Perige)/2;  # semi major axis\n\n# Result\nprint 'Semi-major axis = %d' %a,' Km';",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Semi-major axis = 15500  Km\n"
      }
     ],
     "prompt_number": 26
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 9, Pg No:603"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math\n\n# Variable Declaration\nfarth   = 30000;        # farthest point in satellite elliptic eccentric orbit\nclosest = 200;          # closest point in satellite elliptic eccentric orbit\nRe      = float(6370);         # Radius of earth in km\n\n# Calculations\nApogee  = farth + Re;   # Apogee in km\nPerigee = closest + Re; # perigee in km\na       = (Apogee + Perigee)/(2);       # semi-major axis\ne       = (Apogee - Perigee)/(2*a);     # orbit eccentricity\n\n# Result\nprint 'Apogee = %d' %Apogee,' km';\nprint 'Perigee = %d' %Perigee,' km';\nprint 'Orbit eccentricity = %3.3f' %e;",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Apogee = 36370  km\nPerigee = 6570  km\nOrbit eccentricity = 0.694\n"
      }
     ],
     "prompt_number": 29
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 10, Pg No:604"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\ne       = 0.5;      # orbit eccentricity\nae      = 14000;    # from fig. the distance from center of ellipse to the centre of earth\n\n# Calculations\na       = ae/(e);         # semi major axis\napogee  = a*(1 + e);    # Apogee in km\nperige  = a*(1 - e);    # perigee in km\n\n# Result\nprint 'Apogee = %d' %apogee,' km'\nprint 'Perigee = %d' %perige,' km'",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Apogee = 42000  km\nPerigee = 14000  km\n"
      }
     ],
     "prompt_number": 34
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 11, Pg No:604"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\nG       = 6.67*10**-11;      # Gravitational constant\nM       = 5.98*10**24;       # mass of the earth in kg\nRe      = 6370*10**3;        # radius of earth in m\n\n# Calculations\nu       = G*M\nVesc    = math.sqrt(2*u/Re);\nVes     = Vesc/1000;    # escape velocity in km/s\n\n# Result\nprint 'Escape velocity = %3.1f' %Ves,' km/s';",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Escape velocity = 11.2  km/s\n"
      }
     ],
     "prompt_number": 36
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 12, Pg No:605"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# variable Declartion\na       = 25000*10**3;      # semimajor axis in m from fig\nG       = 6.67*10**-11;     # Gravitational constant\nM       = 5.98*10**24;      # mass of the earth in kg\nh = 0\n\n# Calculations\nu       = G*M;\nT       = 2*math.pi*math.sqrt((a**3)/u)\nhr          = T/3600                        # conv. from sec to hrs and min\nt           = T%3600               # conv. from sec to hrs and min\nmi          = t/60                          # conv. from sec to hrs and min\n\n# Result\nprint 'Orbital time period = %d' %hr,' Hours',' %d'%mi, 'minutes'",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Orbital time period = 10  Hours  55 minutes\n"
      }
     ],
     "prompt_number": 41
    },
    {
     "cell_type": "heading",
     "level": 2,
     "metadata": {},
     "source": "Example 13, Pg No:605"
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": "import math;\n\n# Variable Declaration\napogee  = float(35000);        # farthest point in kms\nperigee = 500;          # closest point in kms\nr       = float(6360);         # radius of earth in kms\nG       = 6.67*10**-11   # gravitational constant\nM       = 5.98*10**24;   # mass of earth in kgs\n\n# calculations\n#funcprot(0)\napogee_dist = apogee + r       # apogee distance in kms\nperigee_dist= perigee+r ;      # perigee distance in kms\na           = (apogee_dist + perigee_dist)/2;   # semi-major axis of elliptical orbit\nT           = (2*math.pi)*math.sqrt((a*10**3)**3/(G*M));          # orbital time period\nhr          = T/3600                        # conv. from sec to hrs and min\nt           = (T%3600)                # conv. from sec to hrs and min\nmi          = t/60                          # conv. from sec to hrs and min\nu           = G*M\nVapogee     = math.sqrt(u*((2/(apogee_dist*10**3)) - (1/(a*10**3))))/1000;      # velocity at apogee point\nVperigee    = math.sqrt((G*M)*((2/(perigee_dist*10**3)-(1/(a*10**3)))))/1000    # velocity at perigee point\n\n#Result\nprint 'Orbital Time Period = %d'%hr,' Hrs'' %d'%mi,' min'\nprint 'Velocity at apogee = %3.3f' %Vapogee,' Km/s'\nprint'Velocity at perigee = %3.3f' %Vperigee,' Km/s'\nprint'Note: Calculation mistake in textbook in finding velocity at apogee point'\n",
     "language": "python",
     "metadata": {},
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": "Orbital Time Period = 10  Hrs 20  min\nVelocity at apogee = 1.656  Km/s\nVelocity at perigee = 9.987  Km/s\nNote: Calculation mistake in textbook in finding velocity at apogee point\n"
      }
     ],
     "prompt_number": 57
    }
   ],
   "metadata": {}
  }
 ]
}