sidereon_core/astro/forces/trait.rs
1use crate::astro::error::PropagationError;
2use crate::astro::propagator::api::PropagationContext;
3use crate::astro::state::CartesianState;
4use nalgebra::Vector3;
5
6pub trait ForceModel: Send + Sync {
7 fn acceleration(
8 &self,
9 state: &CartesianState,
10 ctx: &PropagationContext,
11 ) -> Result<Vector3<f64>, PropagationError>;
12}