Trait nyx_space::md::trajectory::Interpolatable

source ·
pub trait Interpolatable: State
where Self: Sized, DefaultAllocator: Allocator<f64, Self::Size> + Allocator<f64, Self::Size, Self::Size> + Allocator<f64, Self::VecLength>,
{ // Required methods fn interpolate( self, epoch: Epoch, states: &[Self] ) -> Result<Self, InterpolationError>; fn frame(&self) -> Frame; fn set_frame(&mut self, frame: Frame); fn export_params() -> Vec<StateParameter>; fn orbit(&self) -> &Orbit; }
Expand description

States that can be interpolated should implement this trait.

Required Methods§

source

fn interpolate( self, epoch: Epoch, states: &[Self] ) -> Result<Self, InterpolationError>

Interpolates a new state at the provided epochs given a slice of states.

source

fn frame(&self) -> Frame

Returns the frame of this state

source

fn set_frame(&mut self, frame: Frame)

Sets the frame of this state

source

fn export_params() -> Vec<StateParameter>

List of state parameters that will be exported to a trajectory file in addition to the epoch (provided in this different formats).

source

fn orbit(&self) -> &Orbit

Returns the orbit

Object Safety§

This trait is not object safe.

Implementors§