pub struct ControlSystem {
pub state_dim: usize,
pub control_dim: usize,
pub dynamics: String,
}Expand description
A control system: dx/dt = f(x, u, t) with state x ∈ R^n, control u ∈ R^m.
Fields§
§state_dim: usizeDimension of the state space.
control_dim: usizeDimension of the control input.
dynamics: StringString description of the dynamics f(x, u, t).
Implementations§
Source§impl ControlSystem
impl ControlSystem
Sourcepub fn new(state_dim: usize, control_dim: usize) -> Self
pub fn new(state_dim: usize, control_dim: usize) -> Self
Create a new control system with state dimension n and control dimension m.
Sourcepub fn is_controllable(&self) -> bool
pub fn is_controllable(&self) -> bool
A system is (approximately) controllable if control_dim ≥ 1 and state_dim ≥ 1.
Sourcepub fn is_observable(&self) -> bool
pub fn is_observable(&self) -> bool
A system is (approximately) observable when the state dimension is positive.
Trait Implementations§
Source§impl Clone for ControlSystem
impl Clone for ControlSystem
Source§fn clone(&self) -> ControlSystem
fn clone(&self) -> ControlSystem
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ControlSystem
impl RefUnwindSafe for ControlSystem
impl Send for ControlSystem
impl Sync for ControlSystem
impl Unpin for ControlSystem
impl UnsafeUnpin for ControlSystem
impl UnwindSafe for ControlSystem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more