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
TypeScript
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;