Trait alga::linear::SquareMatrix
[−]
[src]
pub trait SquareMatrix: Matrix<Row = Self::Vector, Column = Self::Vector, Transpose = Self> + MultiplicativeMonoid { type Vector: FiniteDimVectorSpace<Field = Self::Field>; fn diagonal(&self) -> Self::Vector; fn determinant(&self) -> Self::Field; fn try_inverse(&self) -> Option<Self>; fn dimension(&self) -> usize { ... } fn transpose_mut(&mut self) { ... } }
The monoid of all square matrices, including non-inversible ones.
Associated Types
type Vector: FiniteDimVectorSpace<Field = Self::Field>
The type of rows, column, and diagonal of this matrix.
Required Methods
fn diagonal(&self) -> Self::Vector
The diagonal of this matrix.
fn determinant(&self) -> Self::Field
The determinant of this matrix.
fn try_inverse(&self) -> Option<Self>
Attempts to inverse self
.
Provided Methods
fn dimension(&self) -> usize
The number of rows or column of this matrix.
fn transpose_mut(&mut self)
In-place transposition.