UNPKG

ootk

Version:

Orbital Object Toolkit including Multiple Propagators, Initial Orbit Determination, and Maneuver Calculations.

44 lines (43 loc) 1.95 kB
/** * @author @thkruz Theodore Kruczek * @license AGPL-3.0-or-later * @copyright (c) 2025 Kruczek Labs LLC * * Orbital Object ToolKit is free software: you can redistribute it and/or modify it under the * terms of the GNU Affero General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later version. * * Orbital Object ToolKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * See the GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License along with * Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>. */ import { EpochUTC, EpochWindow, J2000 } from '../main.js'; import { CubicSplineInterpolator } from './CubicSplineInterpolator.js'; import { LagrangeInterpolator } from './LagrangeInterpolator.js'; import { StateInterpolator } from './StateInterpolator.js'; /** * Two-body Velocity Verlet Blend interpolator. * * The [VerletBlendInterpolator] retains the original ephemerides, so the * original _"truth"_ states can be retrieved if needed without imparting any * additional error, so this can be used to build other interpolator types. * The implementation is simple and very tolerant when working with sparse * ephemerides. */ export declare class VerletBlendInterpolator extends StateInterpolator { ephemeris: J2000[]; constructor(ephemeris: J2000[]); get sizeBytes(): number; window(): EpochWindow; private static getClosest_; private matchState_; private static _gravity; private static integrate_; interpolate(epoch: EpochUTC): J2000 | null; getCachedState(epoch: EpochUTC): J2000 | null; toCubicSpline(): CubicSplineInterpolator; toLagrange(order?: number): LagrangeInterpolator; }