summaryrefslogtreecommitdiff
path: root/Satellite_Communications_by_D_Roddy/3-The_Geostationary_orbit.ipynb
diff options
context:
space:
mode:
authorPrashant S2020-04-14 10:25:32 +0530
committerGitHub2020-04-14 10:25:32 +0530
commit06b09e7d29d252fb2f5a056eeb8bd1264ff6a333 (patch)
tree2b1df110e24ff0174830d7f825f43ff1c134d1af /Satellite_Communications_by_D_Roddy/3-The_Geostationary_orbit.ipynb
parentabb52650288b08a680335531742a7126ad0fb846 (diff)
parent476705d693c7122d34f9b049fa79b935405c9b49 (diff)
downloadall-scilab-tbc-books-ipynb-06b09e7d29d252fb2f5a056eeb8bd1264ff6a333.tar.gz
all-scilab-tbc-books-ipynb-06b09e7d29d252fb2f5a056eeb8bd1264ff6a333.tar.bz2
all-scilab-tbc-books-ipynb-06b09e7d29d252fb2f5a056eeb8bd1264ff6a333.zip
Merge pull request #1 from prashantsinalkar/masterHEADmaster
Initial commit
Diffstat (limited to 'Satellite_Communications_by_D_Roddy/3-The_Geostationary_orbit.ipynb')
-rw-r--r--Satellite_Communications_by_D_Roddy/3-The_Geostationary_orbit.ipynb197
1 files changed, 197 insertions, 0 deletions
diff --git a/Satellite_Communications_by_D_Roddy/3-The_Geostationary_orbit.ipynb b/Satellite_Communications_by_D_Roddy/3-The_Geostationary_orbit.ipynb
new file mode 100644
index 0000000..f8ded12
--- /dev/null
+++ b/Satellite_Communications_by_D_Roddy/3-The_Geostationary_orbit.ipynb
@@ -0,0 +1,197 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 3: The Geostationary orbit"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.1: Calculate_the_azimuth_angle_for_an_earth_station_antenna.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Variable Declaration\n",
+"Pss=-90 //Location of geostationary satellite(degrees)\n",
+"PE=-100 //Longitude of the earth station antenna(degrees)\n",
+"LE=35 //Latitude of the earth station antenna(degrees)\n",
+"//Calculation\n",
+"B=PE-Pss //Angle between planes containing a and c(degrees)\n",
+"b=acos(cos(B)*cos(LE)) //Angle of plane containing b(radians)\n",
+"A=asin(sin(abs(B*3.142/180))/sin(b)) //Angle between planes containing b and c (radians)\n",
+"A=A*180/3.142 //Converting A into degrees\n",
+"//LE>0 and B<0 by observation\n",
+"Az= 180-A //Azimuth angle(degrees)\n",
+"//Result\n",
+"printf('The azimuth angle for the given earth station antenna is %.2f degrees',Az)"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.2: Find_the_range_and_antenna_elevation_angle.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Variable Declaration\n",
+"R=6371 //Radius of earth (km)\n",
+"aGSO= 42164 //Circumference of earth(km)\n",
+"b=0.632 //values of b from Example 3.1 (radians)\n",
+"//Calculation\n",
+"d=sqrt(R**2+aGSO**2-2*R*aGSO*cos(b)) //Range of earth station antenna (km)\n",
+"El=acos(aGSO*sin(b)/d)*180/%pi //Elevation angle(degrees)\n",
+"//Results\n",
+"printf('The range of earth station antenna is %.0f km',d)\n",
+"printf('Elevation angle is %.0f degrees',El)"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.3: Determine_the_angle.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Variable Declaration\n",
+"LE=49 //Latitude of earth station(degrees)\n",
+"aGSO=42164 //Circumference of earth(km)\n",
+"R=6371 //Radius of earth(km)\n",
+"//Calculation\n",
+"d=(R**2+aGSO**2-2*R*aGSO*cos(LE*3.142/180))**0.5 //Range of earth station antenna\n",
+"El0=acos(aGSO*sin(LE*3.142/180)/d) //Elevation angle(radians)\n",
+"El0=El0*180/3.142 //Converting El0 to degrees\n",
+"delta=round(90-El0-LE) //Angle of tilt required for polar mount\n",
+"//Results\n",
+"printf('The Angle of tilt required for polar mount is %d degrees',delta)"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.4: Determine_the_limits_of_visibility.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Variable Declaration\n",
+"LE=48.42 //Latitude of earth station(degrees)\n",
+"PE=-89.26 //Longitute of earth station(degrees)\n",
+"Elmin=5 //Minimum angle of elevation(degrees)\n",
+"aGSO=42164 //Circumference of earth(km)\n",
+"R=6371 //Radius of earth(km)\n",
+"//Calculation\n",
+"Smin=90+Elmin\n",
+"S=asin(R*sin(Smin*3.142/180)/aGSO)*180/%pi //Angle subtended at the satellite(degrees)\n",
+"b=180-Smin-S //Angle of plane containing b(degrees)\n",
+"B=acos(cos(b*3.142/180)/cos(LE*3.142/180))*180/%pi//Angle between the planes containing a and c(degrees)\n",
+"//Results\n",
+"printf('The satellite limit east of the earth station is at %d Degrees approximately',round(PE+B))\n",
+"printf('The satellite limit west of the earth station is at %d Degrees approximately',round(PE-B))"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 3.5: calculate_the_longitude.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Variable Declaration\n",
+"y=2000 //year\n",
+"d=223.153 //day\n",
+"n=1.002716 //mean motion(1/day)\n",
+"w=272.5299 //rate of regression of nodes(degrees)\n",
+"e=0.000352 //Eccentricity\n",
+"W=247.9161 //Rate of regression of line of apsides(degrees)\n",
+"M=158.0516 //Mean Anomaly at given time\n",
+"JD00=2451543.5 //Julian days for Jan 0.0 2000\n",
+"//Calculation\n",
+"JD=JD00+d //Julian days for given day\n",
+"JDref=2415020 //Reference Julian days\n",
+"JC=36525\n",
+"T=(JD-JDref)/JC //Time in julian Centuries\n",
+"UT=d-223 //Universal Time, fraction of the day\n",
+"GST=(99.6910+36000.7689*T+0.004*T**2)*3.142/180 //GST(radians)\n",
+"UT=2*%pi*UT //Universal time converted to fraction of earth rotation (radians)\n",
+"GST=(GST+UT)*180/3.1421\n",
+"GST=(modulo(GST,360))//using fmod multiplr revolutions are removed (degrees)\n",
+"v=M+2*e*M //True Anomaly(degrees)\n",
+"Pssmean=W+w+M-GST //longitude for INTELSAT(degrees)\n",
+"Pssmean=modulo(Pssmean,360) //fmod removes multiple revolutions\n",
+"Pss=w+W+v-GST//longitude for INTELSAT(degrees)\n",
+"Pss=modulo(Pss,360)//fmod removes multiple revolutions\n",
+"//Results\n",
+"printf('The longitude of INTELSAT 805 is %.3f Degrees',Pss)\n",
+"printf('The average longitude of INTELSAT 805 is %.3f Degrees',Pssmean)\n",
+"// Note : Answers may be different because of rounding error. Please check by calculating all variables."
+ ]
+ }
+],
+"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
+}