The document summarizes a project to create a system for sharing crowd-sourced asteroid imagery and visualizing asteroid data. The team developed a website with features to display asteroid imagery, plot the orbits of 4000 asteroids around the solar system by highlighting individual asteroids and showing planetary orbits. They used Node.js, Angular.js, and webGL for rendering. Due to time constraints, some planned features like 3D rendering and impact risk analysis had to be removed. All code was made open source.
2. What Challenge and Who?
We attempted two challenges simultaneously.
The main feature of our system was to enable
the sharing of crowd-sourced asteroid
imagery.
We also visualised asteroid data.
Our team is composed of Matthieu Rigolot,
Leon Pegg, Elias Khoury, Derek Jones, Freddie
Barr-Smith and Florian Rathgeber
3. Initial Project Scope
We attempted to implement a solution
to the challenges of asteroid imagery
sharing and asteroid data visualisation.
We also planned to implement asteroid
impact risk analysis.
Our initial plan was to enable users to
share imagery related to different
asteroids and also to visualise asteroid
orbits.
4. Ethos of Project
We have made all code produced during this
event open source in order to enable others
to work on our code or to use it for their own
related projects.
Our initial goals of displaying asteroid imagery
and plotting asteroid data were achieved.
5. Revision of Initial Scope
Due to the evolution of the software
throughout the project, several
initial goals had to be jettisoned,
particularly impact risk analysis.
Another feature that had to be
jettisoned was our initial prototype
for a unique 3d engine in webGL to
render the earth and orbital
trajectory of asteroids.
8. Design - Visualisation
This is perhaps the most impressive part of the system, where 4000
asteroids are currently plotted in their orbits around the solar system.
9. Design - Visualisation
The selected asteroid is highlighted with a red circle. Its
individual orbit is also plotted with a white dashed line.
11. Implementation
Frameworks Used
We used node.js with jade templating
and attempted to implement the MEAN
stack
We used angular.js
We also used webGL to render the
planetary objects and asteroids and the
entirety of the visualisation. We used
MongoDB also for temporary storage of
data and for future caching purposes
12. Calculation of Orbits
We calculated the orbit of individual
asteroids from the data provided by
asteranks API.
First we attempted to calculate the orbital
trajectory of an asteroid
Finally we used a parametric equation which
calculated the point that the asteroid is at
along an ellipse
14. Data Sources Used
Asterank We used the API for asterank,
which interfaces with the Minor Planet Centre
Database and elements of their visualisation
Jet Propulsion Laboratorys - Solar System
Dynamics Small-Body Database Browser
16. Future Plans
We would have liked to have implemented
asteroid impact risk analysis.
All code is available on github
After the event we plan to improve and
maintain the code
We hope our tool will be used by astronomers
worldwide