Trait DiscreteStepLinearization
pub trait DiscreteStepLinearization: LinearizedRelation<f64> {
// Required methods
fn state_fields(&self) -> &[Id<Field>];
fn model_parameter_fields(&self) -> &[Id<Parameter>];
fn model_parameter_values(&self) -> &[f64];
fn previous_state(&self) -> &[f64];
fn next_state(&self) -> &[f64];
fn start_time(&self) -> f64;
fn end_time(&self) -> f64;
fn previous_state_parameter_dimension(&self) -> usize;
}Description
One accepted discrete step with an explicit previous-state/model-Parameter direct-sum layout.
This metadata lets trajectory analyses validate state, time, and design coordinate continuity before composing any adjoint solves. It does not prescribe a time integration method.
Required Methods§
fn state_fields(&self) -> &[Id<Field>]
fn state_fields(&self) -> &[Id<Field>]
Canonical state coordinate order shared by previous and next states.
fn model_parameter_fields(&self) -> &[Id<Parameter>]
fn model_parameter_fields(&self) -> &[Id<Parameter>]
Canonical model Parameter order following the previous-state block.
fn model_parameter_values(&self) -> &[f64]
fn model_parameter_values(&self) -> &[f64]
Revision-local model Parameter point.
fn previous_state(&self) -> &[f64]
fn previous_state(&self) -> &[f64]
Accepted previous state at this step boundary.
fn next_state(&self) -> &[f64]
fn next_state(&self) -> &[f64]
Accepted next state at this step boundary.
fn start_time(&self) -> f64
fn start_time(&self) -> f64
Frozen start time of this discrete relation.
fn previous_state_parameter_dimension(&self) -> usize
fn previous_state_parameter_dimension(&self) -> usize
Number of leading Parameter coordinates occupied by previous state.