pub trait MultirateSystem<F: IntegrateFloat> {
// Required methods
fn slow_rhs(
&self,
t: F,
y_slow: ArrayView1<'_, F>,
yfast: ArrayView1<'_, F>,
) -> Array1<F>;
fn fast_rhs(
&self,
t: F,
y_slow: ArrayView1<'_, F>,
yfast: ArrayView1<'_, F>,
) -> Array1<F>;
fn slow_dim(&self) -> usize;
fn fast_dim(&self) -> usize;
}Expand description
Multirate ODE system with fast and slow components
Required Methods§
Sourcefn slow_rhs(
&self,
t: F,
y_slow: ArrayView1<'_, F>,
yfast: ArrayView1<'_, F>,
) -> Array1<F>
fn slow_rhs( &self, t: F, y_slow: ArrayView1<'_, F>, yfast: ArrayView1<'_, F>, ) -> Array1<F>
Evaluate slow component: dy_slow/dt = f_slow(t, y_slow, y_fast)
Sourcefn fast_rhs(
&self,
t: F,
y_slow: ArrayView1<'_, F>,
yfast: ArrayView1<'_, F>,
) -> Array1<F>
fn fast_rhs( &self, t: F, y_slow: ArrayView1<'_, F>, yfast: ArrayView1<'_, F>, ) -> Array1<F>
Evaluate fast component: dy_fast/dt = f_fast(t, y_slow, y_fast)