Struct cvode_wrap::SolverSensi [−][src]
pub struct SolverSensi<UserData, F, FS, const N: usize, const N_SENSI: usize> { /* fields omitted */ }
Expand description
The ODE solver with sensitivities.
Type Arguments
-
F
is the type of the right-hand side function -
FS
is the type of the sensitivities right-hand side function -
UserData
is the type of the supplementary arguments for the right-hand-side. If unused, should be()
. -
N
is the “problem size”, that is the dimension of the state space. -
N_SENSI
is the number of sensitivities computed
Implementations
impl<UserData, F, FS, const N: usize, const N_SENSI: usize> Solver<UserData, F, FS, N, N_SENSI> where
F: Fn(Realtype, &[Realtype; N], &mut [Realtype; N], &UserData) -> RhsResult,
FS: Fn(Realtype, &[Realtype; N], &[Realtype; N], [&[Realtype; N]; N_SENSI], [&mut [Realtype; N]; N_SENSI], &UserData) -> RhsResult,
[src]
impl<UserData, F, FS, const N: usize, const N_SENSI: usize> Solver<UserData, F, FS, N, N_SENSI> where
F: Fn(Realtype, &[Realtype; N], &mut [Realtype; N], &UserData) -> RhsResult,
FS: Fn(Realtype, &[Realtype; N], &[Realtype; N], [&[Realtype; N]; N_SENSI], [&mut [Realtype; N]; N_SENSI], &UserData) -> RhsResult,
[src]pub fn new(
method: LinearMultistepMethod,
f: F,
f_sens: FS,
t0: Realtype,
y0: &[Realtype; N],
y_s0: &[[Realtype; N]; N_SENSI],
rtol: Realtype,
atol: AbsTolerance<N>,
atol_sens: SensiAbsTolerance<N, N_SENSI>,
user_data: UserData
) -> Result<Self>
[src]
pub fn new(
method: LinearMultistepMethod,
f: F,
f_sens: FS,
t0: Realtype,
y0: &[Realtype; N],
y_s0: &[[Realtype; N]; N_SENSI],
rtol: Realtype,
atol: AbsTolerance<N>,
atol_sens: SensiAbsTolerance<N, N_SENSI>,
user_data: UserData
) -> Result<Self>
[src]Creates a new solver.
Takes a step according to step_kind
(see StepKind
).
Returns a tuple (t_out,&y(t_out),[&dy_dp(tout)])
where t_out
is the time
reached by the solver as dictated by step_kind
, y(t_out)
is an
array of the state variables at that time, and the i-th dy_dp(tout)
is an array
of the sensitivities of all variables with respect to parameter i.
Trait Implementations
Auto Trait Implementations
impl<UserData, F, FS, const N: usize, const N_SENSI: usize> RefUnwindSafe for Solver<UserData, F, FS, N, N_SENSI> where
F: RefUnwindSafe,
FS: RefUnwindSafe,
UserData: RefUnwindSafe,
impl<UserData, F, FS, const N: usize, const N_SENSI: usize> !Send for Solver<UserData, F, FS, N, N_SENSI>
impl<UserData, F, FS, const N: usize, const N_SENSI: usize> !Sync for Solver<UserData, F, FS, N, N_SENSI>
impl<UserData, F, FS, const N: usize, const N_SENSI: usize> Unpin for Solver<UserData, F, FS, N, N_SENSI>
impl<UserData, F, FS, const N: usize, const N_SENSI: usize> UnwindSafe for Solver<UserData, F, FS, N, N_SENSI> where
F: UnwindSafe,
FS: UnwindSafe,
UserData: UnwindSafe,