pub trait SolverBase: Sized + HasStates {
// Required methods
fn reset_derivs(&mut self);
fn update_derivs(&mut self);
fn step_time(&mut self, dt: &f64);
fn sc(&self) -> Option<&AdaptiveSolverConfig>;
fn sc_mut(&mut self) -> Option<&mut AdaptiveSolverConfig>;
fn state(&self) -> &SystemState;
}
Required Methods§
Sourcefn reset_derivs(&mut self)
fn reset_derivs(&mut self)
reset all time derivatives to zero for start of solve_step
Sourcefn update_derivs(&mut self)
fn update_derivs(&mut self)
Updates time derivatives of states. This method must be user defined.
Sourcefn sc(&self) -> Option<&AdaptiveSolverConfig>
fn sc(&self) -> Option<&AdaptiveSolverConfig>
Returns solver_conf
, if applicable
Sourcefn sc_mut(&mut self) -> Option<&mut AdaptiveSolverConfig>
fn sc_mut(&mut self) -> Option<&mut AdaptiveSolverConfig>
Returns mut solver_conf
, if applicable
Sourcefn state(&self) -> &SystemState
fn state(&self) -> &SystemState
Returns Self::state
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.