UNPKG

keplerian-core

Version:

High-performance TypeScript library for orbital mechanics calculations, providing numerical integration, state propagation, and perturbation modeling for Keplerian orbits.

26 lines (25 loc) 1.31 kB
import { OrbitalState } from 'packages/Keplerian-core/src/types/physics'; import { Vector2D } from 'packages/Keplerian-core/src/types/math'; /** * Implements a simplified 2D orbit determination algorithm (e.g., using Gauss's method principles). * This is a placeholder for a more robust implementation. * For 2D, we can simplify by assuming a circular orbit or using a minimal set of observations. * * @param r1 - First position vector (2D). * @param r2 - Second position vector (2D). * @param r3 - Third position vector (2D). * @param dt1 - Time difference between r1 and r2. * @param dt2 - Time difference between r2 and r3. * @returns An estimated OrbitalState (position and velocity) at the time of r2. */ export declare function determineOrbitFromPositions2D(r1: Vector2D, r2: Vector2D, r3: Vector2D, dt1: number, dt2: number): OrbitalState; /** * Placeholder for a more advanced orbit determination method, e.g., a simple Kalman filter. * This function would take a series of observations and refine the orbital state over time. * @param observations - An array of observed position vectors with timestamps. * @returns A refined OrbitalState. */ export declare function kalmanFilterOrbitDetermination2D(observations: { position: Vector2D; timestamp: number; }[]): OrbitalState;