[][src]Trait freude::Stepper

pub trait Stepper {
    type State: Clone;
    fn do_step<Sy>(&mut self, system: &mut Sy, state: &mut Self::State)
    where
        Sy: Ode<State = Self::State>
;
fn timestep(&self) -> f64; fn integrate_n_steps<Sy>(
        &mut self,
        system: &mut Sy,
        state: &mut Self::State,
        n: usize
    ) -> f64
    where
        Sy: Ode<State = Self::State>
, { ... }
fn integrate_time<Sy>(
        &mut self,
        system: &mut Sy,
        state: &mut Self::State,
        t: f64
    ) -> (f64, usize)
    where
        Sy: Ode<State = Self::State>
, { ... } }

A trait defining the interface of an integration method.

Associated Types

type State: Clone

Loading content...

Required methods

fn do_step<Sy>(&mut self, system: &mut Sy, state: &mut Self::State) where
    Sy: Ode<State = Self::State>, 

fn timestep(&self) -> f64

Loading content...

Provided methods

fn integrate_n_steps<Sy>(
    &mut self,
    system: &mut Sy,
    state: &mut Self::State,
    n: usize
) -> f64 where
    Sy: Ode<State = Self::State>, 

fn integrate_time<Sy>(
    &mut self,
    system: &mut Sy,
    state: &mut Self::State,
    t: f64
) -> (f64, usize) where
    Sy: Ode<State = Self::State>, 

Loading content...

Implementors

impl Stepper for Euler<f64>[src]

type State = f64

impl Stepper for Heun<f64>[src]

type State = f64

impl Stepper for RungeKutta4<f64>[src]

type State = f64

impl<D, P: ZipMarker> Stepper for Euler<P> where
    P: Clone + Debug,
    D: Dimension,
    &'a P: IntoNdProducer<Dim = D, Item = &'a f64>,
    &'a mut P: IntoNdProducer<Dim = D, Item = &'a mut f64>, 
[src]

type State = P

impl<D, P: ZipMarker> Stepper for Heun<P> where
    P: Clone + Debug,
    D: Dimension,
    &'a P: IntoNdProducer<Dim = D, Item = &'a f64>,
    &'a mut P: IntoNdProducer<Dim = D, Item = &'a mut f64>, 
[src]

type State = P

impl<D, P: ZipMarker> Stepper for RungeKutta4<P> where
    P: Clone + Debug,
    D: Dimension,
    &'a P: IntoNdProducer<Dim = D, Item = &'a f64>,
    &'a mut P: IntoNdProducer<Dim = D, Item = &'a mut f64>, 
[src]

type State = P

Loading content...