[−][src]Struct nyx_space::dynamics::celestial::CelestialDynamics
CelestialDynamics
provides the equations of motion for any celestial dynamic, without state transition matrix computation.
Fields
state: State
Current state of these dynamics
accel_models: Vec<Box<dyn AccelModel + 'a>>
Methods
impl<'a> CelestialDynamics<'a>
[src]
pub fn new(state: State, bodies: Vec<i32>, cosm: &'a Cosm) -> Self
[src]
Initialize third body dynamics given the EXB IDs and a Cosm
pub fn two_body(state: State) -> Self
[src]
Initializes a CelestialDynamics which does not simulate the gravity pull of other celestial objects but the primary one.
pub fn add_model(&mut self, accel_model: Box<dyn AccelModel + 'a>)
[src]
pub fn state_ctor(&self, rel_time: f64, state_vec: &Vector6<f64>) -> State
[src]
Trait Implementations
impl<'a> Dynamics for CelestialDynamics<'a>
[src]
type StateSize = U6
Defines the state size for these dynamics. It must be imported from nalgebra
.
type StateType = State
Defines the type which will be published on the propagator channel
fn time(&self) -> f64
[src]
Returns the relative time to the propagator. Use prop.dynamics.state.dt for absolute time
fn state_vector(&self) -> VectorN<f64, Self::StateSize>
[src]
fn set_state(&mut self, new_t: f64, new_state: &VectorN<f64, Self::StateSize>)
[src]
fn state(&self) -> State
[src]
fn eom(
&self,
t: f64,
state: &VectorN<f64, Self::StateSize>
) -> VectorN<f64, Self::StateSize>
[src]
&self,
t: f64,
state: &VectorN<f64, Self::StateSize>
) -> VectorN<f64, Self::StateSize>
Auto Trait Implementations
impl<'a> !RefUnwindSafe for CelestialDynamics<'a>
impl<'a> !Send for CelestialDynamics<'a>
impl<'a> !Sync for CelestialDynamics<'a>
impl<'a> Unpin for CelestialDynamics<'a>
impl<'a> !UnwindSafe for CelestialDynamics<'a>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn is_in_subset(&self) -> bool
unsafe fn to_subset_unchecked(&self) -> SS
fn from_subset(element: &SS) -> SP
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,