Trait bacon_sci::ivp::AdamsSolver [−][src]
This trait allows a struct to be used in the Adams Predictor-Corrector solver
Things implementing AdamsSolver should have an AdamsInfo to handle the actual IVP solving.
Examples
See struct Adams for an example of implementing this trait
Required methods
fn predictor_coefficients() -> VectorN<N::RealField, O>[src]
The polynomial interpolation coefficients for the predictor. Should start with the coefficient for n - 1
fn corrector_coefficients() -> VectorN<N::RealField, O>[src]
The polynomial interpolation coefficients for the corrector. Must be the same length as predictor_coefficients. Should start with the implicit coefficient.
fn error_coefficient() -> N::RealField[src]
Coefficient for multiplying error by.
fn solve_ivp<T: Clone, F: FnMut(N::RealField, &[N], &mut T) -> Result<VectorN<N, S>, String>>(
self,
f: F,
params: &mut T
) -> Result<Vec<(N::RealField, VectorN<N, S>)>, String>[src]
self,
f: F,
params: &mut T
) -> Result<Vec<(N::RealField, VectorN<N, S>)>, String>
Use AdamsInfo to solve an initial value problem
fn with_tolerance(self, tol: N::RealField) -> Result<Self, String>[src]
Set the error tolerance for this solver.
fn with_dt_max(self, max: N::RealField) -> Result<Self, String>[src]
Set the maximum time step for this solver.
fn with_dt_min(self, min: N::RealField) -> Result<Self, String>[src]
Set the minimum time step for this solver.
fn with_start(self, t_initial: N::RealField) -> Result<Self, String>[src]
Set the initial time for this solver.
fn with_end(self, t_final: N::RealField) -> Result<Self, String>[src]
Set the end time for this solver.
fn with_initial_conditions(self, start: &[N]) -> Result<Self, String>[src]
Set the initial conditions for this solver.
fn build(self) -> Self[src]
Build this solver.
Implementors
impl<N: ComplexField, S: DimName> AdamsSolver<N, S, U3> for Adams2<N, S> where
DefaultAllocator: Allocator<N, S>,
DefaultAllocator: Allocator<N::RealField, U3>,
DefaultAllocator: Allocator<N, U3>, [src]
DefaultAllocator: Allocator<N, S>,
DefaultAllocator: Allocator<N::RealField, U3>,
DefaultAllocator: Allocator<N, U3>,
fn predictor_coefficients() -> VectorN<N::RealField, U3>[src]
fn corrector_coefficients() -> VectorN<N::RealField, U3>[src]
fn error_coefficient() -> N::RealField[src]
fn solve_ivp<T: Clone, F: FnMut(N::RealField, &[N], &mut T) -> Result<VectorN<N, S>, String>>(
self,
f: F,
params: &mut T
) -> Result<Vec<(N::RealField, VectorN<N, S>)>, String>[src]
self,
f: F,
params: &mut T
) -> Result<Vec<(N::RealField, VectorN<N, S>)>, String>
fn with_tolerance(mut self: Self, tol: N::RealField) -> Result<Self, String>[src]
fn with_dt_max(mut self: Self, max: N::RealField) -> Result<Self, String>[src]
fn with_dt_min(mut self: Self, min: N::RealField) -> Result<Self, String>[src]
fn with_start(mut self: Self, t_initial: N::RealField) -> Result<Self, String>[src]
fn with_end(mut self: Self, t_final: N::RealField) -> Result<Self, String>[src]
fn with_initial_conditions(mut self: Self, start: &[N]) -> Result<Self, String>[src]
fn build(mut self: Self) -> Self[src]
impl<N: ComplexField, S: DimName> AdamsSolver<N, S, U5> for Adams<N, S> where
DefaultAllocator: Allocator<N, S>,
DefaultAllocator: Allocator<N::RealField, U5>,
DefaultAllocator: Allocator<N, U5>, [src]
DefaultAllocator: Allocator<N, S>,
DefaultAllocator: Allocator<N::RealField, U5>,
DefaultAllocator: Allocator<N, U5>,
fn predictor_coefficients() -> VectorN<N::RealField, U5>[src]
fn corrector_coefficients() -> VectorN<N::RealField, U5>[src]
fn error_coefficient() -> N::RealField[src]
fn solve_ivp<T: Clone, F: FnMut(N::RealField, &[N], &mut T) -> Result<VectorN<N, S>, String>>(
self,
f: F,
params: &mut T
) -> Result<Vec<(N::RealField, VectorN<N, S>)>, String>[src]
self,
f: F,
params: &mut T
) -> Result<Vec<(N::RealField, VectorN<N, S>)>, String>