pub struct Problem<'a, T, C, const NX: usize, const NU: usize, const HX: usize, const HU: usize, XProj = (), UProj = ()>where
T: Scalar + RealField + Copy,
C: Policy<T, NX, NU>,
XProj: ProjectMulti<T, NX, HX>,
UProj: ProjectMulti<T, NU, HU>,{ /* private fields */ }Implementations§
Source§impl<'a, T, C, XProj, UProj, const NX: usize, const NU: usize, const HX: usize, const HU: usize> Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>where
T: Scalar + RealField + Copy,
C: Policy<T, NX, NU>,
XProj: ProjectMulti<T, NX, HX>,
UProj: ProjectMulti<T, NU, HU>,
impl<'a, T, C, XProj, UProj, const NX: usize, const NU: usize, const HX: usize, const HU: usize> Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>where
T: Scalar + RealField + Copy,
C: Policy<T, NX, NU>,
XProj: ProjectMulti<T, NX, HX>,
UProj: ProjectMulti<T, NU, HU>,
Sourcepub fn x_reference(self, x_ref: &'a SMatrix<T, NX, HX>) -> Self
pub fn x_reference(self, x_ref: &'a SMatrix<T, NX, HX>) -> Self
Set the reference for state variables
Sourcepub fn u_reference(self, u_ref: &'a SMatrix<T, NU, HU>) -> Self
pub fn u_reference(self, u_ref: &'a SMatrix<T, NU, HU>) -> Self
Set the reference for input variables
Sourcepub fn x_constraints<Proj: ProjectMulti<T, NX, HX>>(
self,
x_con: &'a mut [Constraint<T, Proj, NX, HX>],
) -> Problem<'a, T, C, NX, NU, HX, HU, Proj, UProj>
pub fn x_constraints<Proj: ProjectMulti<T, NX, HX>>( self, x_con: &'a mut [Constraint<T, Proj, NX, HX>], ) -> Problem<'a, T, C, NX, NU, HX, HU, Proj, UProj>
Set constraints on the state variables
Sourcepub fn u_constraints<Proj: ProjectMulti<T, NU, HU>>(
self,
u_con: &'a mut [Constraint<T, Proj, NU, HU>],
) -> Problem<'a, T, C, NX, NU, HX, HU, XProj, Proj>
pub fn u_constraints<Proj: ProjectMulti<T, NU, HU>>( self, u_con: &'a mut [Constraint<T, Proj, NU, HU>], ) -> Problem<'a, T, C, NX, NU, HX, HU, XProj, Proj>
Set constraints on the input variables
Auto Trait Implementations§
impl<'a, T, C, const NX: usize, const NU: usize, const HX: usize, const HU: usize, XProj, UProj> Freeze for Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>where
T: Freeze,
impl<'a, T, C, const NX: usize, const NU: usize, const HX: usize, const HU: usize, XProj, UProj> RefUnwindSafe for Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>
impl<'a, T, C, const NX: usize, const NU: usize, const HX: usize, const HU: usize, XProj, UProj> Send for Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>
impl<'a, T, C, const NX: usize, const NU: usize, const HX: usize, const HU: usize, XProj, UProj> Sync for Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>
impl<'a, T, C, const NX: usize, const NU: usize, const HX: usize, const HU: usize, XProj, UProj> Unpin for Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>where
T: Unpin,
impl<'a, T, C, const NX: usize, const NU: usize, const HX: usize, const HU: usize, XProj = (), UProj = ()> !UnwindSafe for Problem<'a, T, C, NX, NU, HX, HU, XProj, UProj>
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
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.