Back to Eqiora docs Skip to main content

DiscreteStepLinearization

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>]

Canonical state coordinate order shared by previous and next states.

fn model_parameter_fields(&self) -> &[Id<Parameter>]

Canonical model Parameter order following the previous-state block.

fn model_parameter_values(&self) -> &[f64]

Revision-local model Parameter point.

fn previous_state(&self) -> &[f64]

Accepted previous state at this step boundary.

fn next_state(&self) -> &[f64]

Accepted next state at this step boundary.

fn start_time(&self) -> f64

Frozen start time of this discrete relation.

fn end_time(&self) -> f64

Frozen end time of this discrete relation.

fn previous_state_parameter_dimension(&self) -> usize

Number of leading Parameter coordinates occupied by previous state.

Implementors§