pub trait FlightStep {
// Required methods
fn phase(&self) -> Phase;
fn start_s(&self) -> f64;
fn end_s(&self) -> f64;
fn state_at(&self, t_s: f64) -> State;
fn sample(&self, t_s: f64) -> Result<Sample, SimError>;
fn stability(&self, t_s: f64) -> Result<Stability, SimError>;
}Expand description
One accepted integration step of a flight, with its dense output.
Required Methods§
Sourcefn state_at(&self, t_s: f64) -> State
fn state_at(&self, t_s: f64) -> State
The state at t in [start_s, end_s], from the dense output.
Sourcefn sample(&self, t_s: f64) -> Result<Sample, SimError>
fn sample(&self, t_s: f64) -> Result<Sample, SimError>
The sample at t in [start_s, end_s]: the dense output’s state and one evaluation of
the equations of motion there.
§Errors
Whatever the evaluation returns (it succeeded at the step’s own stages).
Sourcefn stability(&self, t_s: f64) -> Result<Stability, SimError>
fn stability(&self, t_s: f64) -> Result<Stability, SimError>
The rocket’s stability at t in [start_s, end_s]: its static margin and its margin at
the flight’s Mach number there, both with the air along the axis, from the aerodynamic
model flying (the sustainer’s after a powered separation) and the center of mass at t
(crate::metrics::stability).
§Errors
Whatever the evaluation or the aerodynamic model returns.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".