Permutation

Struct Permutation 

Source
pub struct Permutation<D>{ /* private fields */ }
Expand description

describes an orthogonal permutation matrix P that can be used to permute the rows or columns of an appropriately shaped matrix. Due to LAPACK internals, an instance must be mutably borrowed when applying the permutation, but the permutation itself will remain unchanged on success.

Note: the associated functions take Self by mutable reference due to the LAPACK internal implementation of the permutation logic.

Implementations§

Source§

impl<'a, D> Permutation<D>

Source

pub fn permute_cols_mut<T, R, S>( &mut self, mat: &mut Matrix<T, R, D, S>, ) -> Result<(), Error>
where R: Dim, S: RawStorageMut<T, R, D> + IsContiguous, T: QrScalar,

Apply the column permutation to a matrix A, equivalent to P A.

Source

pub fn inv_permute_cols_mut<T, R, S>( &mut self, mat: &mut Matrix<T, R, D, S>, ) -> Result<(), Error>
where R: Dim, S: RawStorageMut<T, R, D> + IsContiguous, T: QrScalar,

Apply the inverse column permutation to a matrix A, equivalent to P^T A.

Source

pub fn permute_rows_mut<T, C, S>( &mut self, mat: &mut Matrix<T, D, C, S>, ) -> Result<(), Error>
where C: Dim, S: RawStorageMut<T, D, C> + IsContiguous, T: QrScalar,

Apply the row permutation to a matrix A, equivalent to P A.

Source

pub fn inv_permute_rows_mut<T, C, S>( &mut self, mat: &mut Matrix<T, D, C, S>, ) -> Result<(), Error>
where C: Dim, S: RawStorageMut<T, D, C> + IsContiguous, T: QrScalar,

Apply the inverse row permutation to a matrix A, equivalent to P^T A.

Trait Implementations§

Source§

impl<D> Clone for Permutation<D>

Source§

fn clone(&self) -> Permutation<D>

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<D> Debug for Permutation<D>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<D> PartialEq for Permutation<D>

Source§

fn eq(&self, other: &Permutation<D>) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<D> Eq for Permutation<D>
where D: Dim + Eq, DefaultAllocator: Allocator<D>,

Source§

impl<D> StructuralPartialEq for Permutation<D>

Auto Trait Implementations§

§

impl<D> !Freeze for Permutation<D>

§

impl<D> !RefUnwindSafe for Permutation<D>

§

impl<D> !Send for Permutation<D>

§

impl<D> !Sync for Permutation<D>

§

impl<D> !Unpin for Permutation<D>

§

impl<D> !UnwindSafe for Permutation<D>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

Source§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
Source§

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

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
Source§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Scalar for T
where T: 'static + Clone + PartialEq + Debug,