ImplicitDaeVariableStepExplicit

Trait ImplicitDaeVariableStepExplicit 

Source
pub trait ImplicitDaeVariableStepExplicit<Y, U>
where Self: VariableStepExplicit<Y, U>, Y: Tensor, U: TensorVec<Item = Y>, for<'a> &'a Y: Mul<Scalar, Output = Y> + Sub<&'a Y, Output = Y>,
{ // Provided methods fn integrate_implicit_dae_variable_step( &self, evolution: impl FnMut(Scalar, &Y, &Y) -> Result<Y, String>, time: &[Scalar], initial_condition: Y, ) -> Result<(Vector, U, U), IntegrationError> { ... } fn interpolate_implicit_dae_variable_step( &self, evolution: impl FnMut(Scalar, &Y, &Y) -> Result<Y, String>, time: &Vector, tp: &Vector, yp: &U, dydtp: &U, ) -> Result<(U, U), IntegrationError> { ... } }
Expand description

Variable-step explicit integrators for implicit differential-algebraic equations.

Provided Methods§

Source

fn integrate_implicit_dae_variable_step( &self, evolution: impl FnMut(Scalar, &Y, &Y) -> Result<Y, String>, time: &[Scalar], initial_condition: Y, ) -> Result<(Vector, U, U), IntegrationError>

Source

fn interpolate_implicit_dae_variable_step( &self, evolution: impl FnMut(Scalar, &Y, &Y) -> Result<Y, String>, time: &Vector, tp: &Vector, yp: &U, dydtp: &U, ) -> Result<(U, U), IntegrationError>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<I, Y, U> ImplicitDaeVariableStepExplicit<Y, U> for I
where Self: VariableStepExplicit<Y, U>, Y: Tensor, U: TensorVec<Item = Y>, for<'a> &'a Y: Mul<Scalar, Output = Y> + Sub<&'a Y, Output = Y>,