ootk
Version:
Orbital Object Toolkit including Multiple Propagators, Initial Orbit Determination, and Maneuver Calculations.
51 lines (50 loc) • 2.3 kB
TypeScript
/**
* @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 { PositionVelocity, Seconds } from '../main.js';
export declare class ChebyshevCoefficients {
a: Seconds;
b: Seconds;
private readonly cx_;
private readonly cy_;
private readonly cz_;
cxd_: Float64Array;
cyd_: Float64Array;
czd_: Float64Array;
constructor(a: Seconds, b: Seconds, cx_: Float64Array, cy_: Float64Array, cz_: Float64Array);
/**
* Calculates the derivative of a polynomial represented by Chebyshev coefficients.
* @param a - The lower bound of the polynomial's domain.
* @param b - The upper bound of the polynomial's domain.
* @param c - The Chebyshev coefficients of the polynomial.
* @returns The derivative of the polynomial as an array of coefficients.
*/
private static _derivative;
get sizeBytes(): number;
/**
* Evaluates the Chebyshev polynomial represented by the given coefficients at the specified value.
* @param c - The coefficients of the Chebyshev polynomial.
* @param t - The value at which to evaluate the polynomial _(POSIX seconds)_.
* @returns The result of evaluating the polynomial at the specified value.
*/
evaluate(c: Float64Array, t: number): number;
/**
* Interpolates the position and velocity at a given time (km, km/s).
* @param t - The time value to interpolate at _(POSIX seconds)_.
* @returns An object containing the interpolated position and velocity.
*/
interpolate(t: number): PositionVelocity;
}