pub struct Midpoint;Expand description
Explicit midpoint (Runge-Kutta 2) integrator.
k1_v = a_n, k1_q = v_n
k2_v = a_n, k2_q = v_n + k1_v * dt/2
v_{n+1} = v_n + k2_v * dt
q_{n+1} = q_n + k2_q * dtFor constant forces this gives the same result as the explicit Euler update for velocity but uses the midpoint velocity for position.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Midpoint
impl RefUnwindSafe for Midpoint
impl Send for Midpoint
impl Sync for Midpoint
impl Unpin for Midpoint
impl UnsafeUnpin for Midpoint
impl UnwindSafe for Midpoint
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.