Trait ParametricTimeSystem
pub trait ParametricTimeSystem: TimeSystem {
// Required methods
fn parameter_dimension(&self) -> usize;
fn parameters(&self) -> &[f64];
fn rhs_parameter_jvp(
&self,
time: f64,
state: &[f64],
parameter_direction: &[f64],
output: &mut [f64],
) -> Result<(), Diagnostic>;
fn initial_parameter_jvp(
&self,
time: f64,
parameter_direction: &[f64],
output: &mut [f64],
) -> Result<(), Diagnostic>;
// Provided method
fn mass_parameter_dependence(&self) -> MassParameterDependence { ... }
}Description
Parameter actions required to integrate continuous forward sensitivities.
This extends the same lowered primal/JVP system rather than introducing a
dual-number simulator or a backend-specific derivative model. Parameters
are fixed at one linearization point; the two methods provide f_p dp and
y0_p dp actions for arbitrary parameter directions.
Required Methods§
fn parameter_dimension(&self) -> usize
fn parameter_dimension(&self) -> usize
Number of scalar model parameters at this linearization point.
fn parameters(&self) -> &[f64]
fn parameters(&self) -> &[f64]
Finite parameter values defining the primal linearization point.
fn rhs_parameter_jvp(
&self,
time: f64,
state: &[f64],
parameter_direction: &[f64],
output: &mut [f64],
) -> Result<(), Diagnostic>
fn rhs_parameter_jvp( &self, time: f64, state: &[f64], parameter_direction: &[f64], output: &mut [f64], ) -> Result<(), Diagnostic>
Evaluate f_p(t, y) parameter_direction.
§Errors
Returns a stable diagnostic when the parameter action cannot be evaluated.
fn initial_parameter_jvp(
&self,
time: f64,
parameter_direction: &[f64],
output: &mut [f64],
) -> Result<(), Diagnostic>
fn initial_parameter_jvp( &self, time: f64, parameter_direction: &[f64], output: &mut [f64], ) -> Result<(), Diagnostic>
Evaluate y0_p parameter_direction.
§Errors
Returns a stable diagnostic when the initial-state action cannot be evaluated.
Provided Methods§
fn mass_parameter_dependence(&self) -> MassParameterDependence
fn mass_parameter_dependence(&self) -> MassParameterDependence
State whether the mass action is proven independent of parameters.
Explicit ODE sensitivity does not consult this value. The fail-closed
default prevents a missing M_p y_dot term from silently becoming
zero for a mass-matrix system.