UNPKG

astronomy-bundle

Version:

Bundle for astronomical calculations such as position of moon, sun and planets, sunrise, sunset or solar eclipses. Most of the calculations are based on Jean Meeus 'Astronomical Algorithms' book and the VSOP87 theory.

44 lines (43 loc) 2.08 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const loadBesselianElements_1 = __importDefault(require("./besselianElements/loadBesselianElements")); function createBesselianElements(toi) { return __awaiter(this, void 0, void 0, function* () { const jd0 = toi.getJulianDay0(); const besselianElementsArray = (0, loadBesselianElements_1.default)(jd0); if (!besselianElementsArray) { throw new Error(`No besselian elements found for ${jd0}`); } return _getBesselianElements(besselianElementsArray); }); } exports.default = createBesselianElements; function _getBesselianElements(besselianElementsArray) { return { tMax: besselianElementsArray[0], t0: besselianElementsArray[1], dT: besselianElementsArray[2], x: besselianElementsArray[3], y: besselianElementsArray[4], d: besselianElementsArray[5], l1: besselianElementsArray[6], l2: besselianElementsArray[7], mu: besselianElementsArray[8], tanF1: besselianElementsArray[9], tanF2: besselianElementsArray[10], latGreatestEclipse: besselianElementsArray[11], lonGreatestEclipse: besselianElementsArray[12], }; }