Mujtaba's design study

From CSSEMediaWiki
(Difference between revisions)
Jump to: navigation, search
(Initial Design)
Line 45: Line 45:
 
[[Image:JEA1.jpg]]
 
[[Image:JEA1.jpg]]
  
 +
== Draft Final Design ==
 +
 +
Here is a draft version of what should be the final design. It has gone through lots and lots of iterations and refinements and is now as such I don't expect any major changes to it.
 +
A detailed write up and explanations should follow soon along with some diagrams of older versions.
 +
[[Image:JEA11.jpg]]
  
 
'''Thoughts:'''
 
'''Thoughts:'''

Revision as of 20:08, 24 September 2010

Java Ephemerides API (JEA): A project to design a java API library that provides ephemeris info of celestial bodies.

Contents

What is it about?

Well, as the title says, I will be working on designing a java API library that can provide ephemerides information of celestial bodies to its users. So, yes... what are ephemerides? Who are the users? And what is it all about?


Ephemerides:

As concise as it could be, ephemeris is a piece of information that tells the positional coordinates of a celestial body in the sky (relative to the user’s location on earth), at a given time and date. But that is a poor definition though; ephemerides can actually describe various other useful information about celestial bodies like distance, velocity, apparent diameter... etc. Here are some insightful excerpts from Wikipedia’s Ephemerides page:

  • An ephemeris (plural: ephemerides; from the Greek word ἐφήμερος ephemeros "daily") is a table of values that gives the positions of astronomical objects in the sky at a given time or times.
  • The position is given to astronomers in a spherical polar coordinate system of right ascension and declination
  • Scientific ephemerides for sky observers mostly contain the position of the mentioned celestial body in right ascension and declination, because these coordinates are the most often used on star maps and telescopes.
  • Scientific ephemerides often contain further useful data about the moon, planet, asteroid, or comet beyond the pure coordinates in the sky, such as elongation to the sun, brightness, distance, velocity, apparent diameter in the sky, phase angle, times of rise, transit, and set, etc.

--“source: Wikipedia


---If you are a math fanatic then you might want to enjoy reading the formulae used to calculate some of the ephemerides. Formulae


Users:

The API will obviously be most useful for astronomers and amateur sky observers. They can use it to exactly locate and pinpoint any celestial object of interest in the sky. Nowadays observers are well equipped with electronic and computerized telescopes that can automatically navigate to any object in the sky with the press of a button. All of that is done by internally looking up the object's ephemeris data in the device's internal database. In fact, any kind of spacecraft can't navigate in space without being equipped with some means to calculate ephemerides information.

Still, the users of this API are not limited to astronomers only. Many scientific disciplines do require such ephemerides information, especially those of the Sun's and Moon's since they are close to our planet and impose various effects on our planet that different scientific disciplines might be interested in. For example, a scientist studying how the Sun's position in the sky help birds finding their way during long distance migration, will find such a tool invaluable.


JPL's HORIZON System

-- to do

Initial Design

Here is my initial design up to now. I think it is quite simple now, but this is just the beginning :) This is right now only an overview of how I imagine the api to be. I expect to actually implement The JPL's Telnet Service Adapter (or maybe the CD-ROM?) so that should also have its own design!!

Please feel free to add any comments below or any questions. Comments and ideas will be greatly appreciated.

Class Diagram- Phase 1 (2 August, 2010) JEA1.jpg

Draft Final Design

Here is a draft version of what should be the final design. It has gone through lots and lots of iterations and refinements and is now as such I don't expect any major changes to it. A detailed write up and explanations should follow soon along with some diagrams of older versions. JEA11.jpg

Thoughts:

  • Right now I'm thinking of having the Response be in XML format. And of course I will have then to develop a schema for that.

Comments

 Please add your comments here!!

Questions

 Please add your questions here!!
Personal tools