Giter Site home page Giter Site logo

vsr83 / orbits.js Goto Github PK

View Code? Open in Web Editor NEW
10.0 1.0 1.0 17.29 MB

Javascript library for positional astronomy

License: MIT License

JavaScript 92.27% CSS 1.50% HTML 2.24% MATLAB 3.67% Python 0.32%
astronomical-algorithms astronomy astronomy-library astrophysics elp2000 hipparcos javascript meeus solar-eclipse solar-system vsop87

orbits.js's Introduction

orbits.js

Javascript library for positional astronomy.

The library has been implemented mainly to facilitate my hobby with Javascript visualizations and positional astronomy. The code is somewhat poorly organized into relatively stand-alone methods but is completely self-contained and written in pure Javascript.

The library implements:

  • Time Correlations between TT, UT1 and TAI.
  • Coordinate transformations between the following frames:
    • Heliocentric Ecliptic
    • Geocentric Ecliptic
    • J2000 (equal to ICRS/FK5)
    • Mean-of-Date (MoD)
    • True-of-Date (ToD)
    • Pseudo-Earth-Fixed (PEF)
    • Earth-Fixed (EFI) (equal to ITRS)
    • Local Tangent Plane - East, North, Up (ENU)
    • Perifocal frame.
  • Extended Hipparcos Compilation (XHIP) stars with configurable magnitude limit.
  • VSOP87A for the computation of positions of planets.
  • ELP2000-82B for accurate computation of the position of the Moon with configurable truncation.
  • Computation of Stellar aberration.
  • Keplerian elements:
    • Solution of Kepler's equation and Perifocal positions.
    • Approximate positions of planets.
    • Osculating Keplerian elements.
    • Keplerian propagation of orbits.
  • Solar Eclipses.
  • Planetary satellites of Mars, Jupiter, Saturn and Uranus.

The planetary computations should match JPL Horizons with an average error of 60-300 mas depending on the planet. The error in position of the Moon w.r.t. JPL Horizons should be below 200 meters between 1900-2100.

The JSON files are generated as follows:

  • VSOP87A : npm run vsop87a
  • Hipparcos : npm run xhip
  • Constellation boundaries : npm run cbnd
  • ELP2000-82B : npm run elp2000

Click below to execute an example of a simple application using most features of the library. Screenshot.

Click below for an example drawing constellations. Screenshot.

Click below for an example for visualization of Solar Eclipses. Screenshot.

Click below to execute an example of a simple application drawing visual appearance of planets. Screenshot.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.