Skip to main content

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}