Struct vecmat::Matrix [−][src]
Expand description
Matrix with fixed dimensions.
Implementations
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]pub fn from_vector_of_vectors(a: Vector<Vector<T, N>, M>) -> Self
[src]
pub fn from_array_of_vectors(a: [Vector<T, N>; M]) -> Self
[src]
pub fn from_array_of_arrays(a: [[T; N]; M]) -> Self
[src]
pub fn into_vector_of_vectors(self) -> Vector<Vector<T, N>, M>
[src]
pub fn into_array_of_vectors(self) -> [Vector<T, N>; M]
[src]
pub fn into_array_of_arrays(self) -> [[T; N]; M]
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]pub fn as_vector_of_vectors(&self) -> &Vector<Vector<T, N>, M>
[src]
pub fn as_mut_vector_of_vectors(&mut self) -> &mut Vector<Vector<T, N>, M>
[src]
pub fn as_array_of_vectors(&self) -> &[Vector<T, N>; M]
[src]
pub fn as_mut_array_of_vectors(&mut self) -> &mut [Vector<T, N>; M]
[src]
pub fn as_array_of_arrays(&self) -> &[[T; N]; M]
[src]
pub fn as_mut_array_of_arrays(&mut self) -> &mut [[T; N]; M]
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]pub fn try_from_iter_of_vectors<I>(i: I) -> Option<Self> where
I: Iterator<Item = Vector<T, N>>,
[src]
I: Iterator<Item = Vector<T, N>>,
pub fn try_from_iter<I>(i: I) -> Option<Self> where
I: Iterator<Item = T>,
[src]
I: Iterator<Item = T>,
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]pub fn uninit() -> Matrix<MaybeUninit<T>, M, N>
[src]
pub fn uninit() -> Matrix<MaybeUninit<T>, M, N>
[src]Create a matrix with uninitialized content.
impl<T, const M: usize, const N: usize> Matrix<MaybeUninit<T>, M, N>
[src]
impl<T, const M: usize, const N: usize> Matrix<MaybeUninit<T>, M, N>
[src]pub unsafe fn assume_init(self) -> Matrix<T, M, N>
[src]
pub unsafe fn assume_init(self) -> Matrix<T, M, N>
[src]Assume that matrix content is initialized.
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N>
[src]pub fn sum(self) -> T where
T: Add<Output = T>,
[src]
T: Add<Output = T>,
pub fn max(self) -> T where
T: PartialOrd,
[src]
T: PartialOrd,
pub fn min(self) -> T where
T: PartialOrd,
[src]
T: PartialOrd,
impl<T, const M: usize, const N: usize> Matrix<T, M, N> where
T: PartialOrd,
[src]
impl<T, const M: usize, const N: usize> Matrix<T, M, N> where
T: PartialOrd,
[src]Trait Implementations
impl<T, const M: usize, const N: usize> AbsDiffEq<Matrix<T, M, N>> for Matrix<T, M, N> where
T: AbsDiffEq<Epsilon = T> + Copy,
[src]
impl<T, const M: usize, const N: usize> AbsDiffEq<Matrix<T, M, N>> for Matrix<T, M, N> where
T: AbsDiffEq<Epsilon = T> + Copy,
[src]type Epsilon = T
type Epsilon = T
Used for specifying relative comparisons.
fn default_epsilon() -> Self::Epsilon
[src]
fn default_epsilon() -> Self::Epsilon
[src]The default tolerance to use when testing values that are close together. Read more
fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool
[src]
fn abs_diff_eq(&self, other: &Self, epsilon: Self::Epsilon) -> bool
[src]A test for equality that uses the absolute difference to compute the approximate equality of two numbers. Read more
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
[src]
fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
[src]The inverse of AbsDiffEq::abs_diff_eq
.
impl<T, const M: usize, const N: usize> Add<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Add<Output = T>,
[src]
impl<T, const M: usize, const N: usize> Add<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Add<Output = T>,
[src]impl<T, const M: usize, const N: usize> AddAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: AddAssign,
[src]
impl<T, const M: usize, const N: usize> AddAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: AddAssign,
[src]fn add_assign(&mut self, vec: Matrix<T, M, N>)
[src]
fn add_assign(&mut self, vec: Matrix<T, M, N>)
[src]Performs the +=
operation. Read more
impl<T, const M: usize, const N: usize> BitAnd<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitAnd<Output = T>,
[src]
impl<T, const M: usize, const N: usize> BitAnd<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitAnd<Output = T>,
[src]impl<T, const M: usize, const N: usize> BitAndAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitAndAssign,
[src]
impl<T, const M: usize, const N: usize> BitAndAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitAndAssign,
[src]fn bitand_assign(&mut self, other: Matrix<T, M, N>)
[src]
fn bitand_assign(&mut self, other: Matrix<T, M, N>)
[src]Performs the &=
operation. Read more
impl<T, const M: usize, const N: usize> BitOr<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitOr<Output = T>,
[src]
impl<T, const M: usize, const N: usize> BitOr<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitOr<Output = T>,
[src]impl<T, const M: usize, const N: usize> BitOrAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitOrAssign,
[src]
impl<T, const M: usize, const N: usize> BitOrAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitOrAssign,
[src]fn bitor_assign(&mut self, other: Matrix<T, M, N>)
[src]
fn bitor_assign(&mut self, other: Matrix<T, M, N>)
[src]Performs the |=
operation. Read more
impl<T, const M: usize, const N: usize> BitXor<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitXor<Output = T>,
[src]
impl<T, const M: usize, const N: usize> BitXor<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitXor<Output = T>,
[src]impl<T, const M: usize, const N: usize> BitXorAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitXorAssign,
[src]
impl<T, const M: usize, const N: usize> BitXorAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: BitXorAssign,
[src]fn bitxor_assign(&mut self, other: Matrix<T, M, N>)
[src]
fn bitxor_assign(&mut self, other: Matrix<T, M, N>)
[src]Performs the ^=
operation. Read more
impl<D: Distribution<T>, T, const M: usize, const N: usize> Distribution<Matrix<T, M, N>> for MatrixDistribution<D, T, M, N>
[src]
impl<D: Distribution<T>, T, const M: usize, const N: usize> Distribution<Matrix<T, M, N>> for MatrixDistribution<D, T, M, N>
[src]fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Matrix<T, M, N>
[src]
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Matrix<T, M, N>
[src]Generate a random value of T
, using rng
as the source of randomness.
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
[src]
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
[src]Create an iterator that generates random values of T
, using rng
as
the source of randomness. Read more
impl<T, const M: usize, const N: usize> Distribution<Matrix<T, M, N>> for Normal where
Normal: Distribution<T>,
[src]
impl<T, const M: usize, const N: usize> Distribution<Matrix<T, M, N>> for Normal where
Normal: Distribution<T>,
[src]fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Matrix<T, M, N>
[src]
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Matrix<T, M, N>
[src]Generate a random value of T
, using rng
as the source of randomness.
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
[src]
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
[src]Create an iterator that generates random values of T
, using rng
as
the source of randomness. Read more
impl<T, const N: usize> Distribution<Matrix<T, N, N>> for Invertible where
Normal: Distribution<Matrix<T, N, N>>,
T: Neg<Output = T> + Num + NormL1 + Copy,
<T as NormL1>::Output: Epsilon,
[src]
impl<T, const N: usize> Distribution<Matrix<T, N, N>> for Invertible where
Normal: Distribution<Matrix<T, N, N>>,
T: Neg<Output = T> + Num + NormL1 + Copy,
<T as NormL1>::Output: Epsilon,
[src]fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Matrix<T, N, N>
[src]
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Matrix<T, N, N>
[src]Generate a random value of T
, using rng
as the source of randomness.
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
[src]
fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T> where
R: Rng,
[src]Create an iterator that generates random values of T
, using rng
as
the source of randomness. Read more
impl<T, const M: usize, const N: usize> Div<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Div<Output = T>,
[src]
impl<T, const M: usize, const N: usize> Div<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Div<Output = T>,
[src]impl<T, const M: usize, const N: usize> Div<T> for Matrix<T, M, N> where
T: Div<Output = T> + Copy,
[src]
impl<T, const M: usize, const N: usize> Div<T> for Matrix<T, M, N> where
T: Div<Output = T> + Copy,
[src]impl<T, const M: usize, const N: usize> DivAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: DivAssign,
[src]
impl<T, const M: usize, const N: usize> DivAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: DivAssign,
[src]fn div_assign(&mut self, vec: Matrix<T, M, N>)
[src]
fn div_assign(&mut self, vec: Matrix<T, M, N>)
[src]Performs the /=
operation. Read more
impl<T, const M: usize, const N: usize> DivAssign<T> for Matrix<T, M, N> where
T: DivAssign + Copy,
[src]
impl<T, const M: usize, const N: usize> DivAssign<T> for Matrix<T, M, N> where
T: DivAssign + Copy,
[src]fn div_assign(&mut self, a: T)
[src]
fn div_assign(&mut self, a: T)
[src]Performs the /=
operation. Read more
impl<T, const M: usize, const N: usize> Dot<Matrix<T, M, N>> for Vector<T, M> where
T: Mul<Output = T> + Add<Output = T> + Copy,
[src]
impl<T, const M: usize, const N: usize> Dot<Matrix<T, M, N>> for Vector<T, M> where
T: Mul<Output = T> + Add<Output = T> + Copy,
[src]impl<T, const L: usize, const M: usize, const N: usize> Dot<Matrix<T, M, N>> for Matrix<T, L, M> where
T: Mul<Output = T> + Add<Output = T> + Copy,
[src]
impl<T, const L: usize, const M: usize, const N: usize> Dot<Matrix<T, M, N>> for Matrix<T, L, M> where
T: Mul<Output = T> + Add<Output = T> + Copy,
[src]impl<T, const M: usize, const N: usize> Dot<Vector<T, N>> for Matrix<T, M, N> where
T: Mul<Output = T> + Add<Output = T> + Copy,
[src]
impl<T, const M: usize, const N: usize> Dot<Vector<T, N>> for Matrix<T, M, N> where
T: Mul<Output = T> + Add<Output = T> + Copy,
[src]impl<T, const M: usize, const N: usize> From<&'_ [[T; N]; M]> for Matrix<T, M, N> where
T: Copy,
[src]
impl<T, const M: usize, const N: usize> From<&'_ [[T; N]; M]> for Matrix<T, M, N> where
T: Copy,
[src]impl<T, const M: usize, const N: usize> From<&'_ [Vector<T, N>; M]> for Matrix<T, M, N> where
T: Copy,
[src]
impl<T, const M: usize, const N: usize> From<&'_ [Vector<T, N>; M]> for Matrix<T, M, N> where
T: Copy,
[src]impl<T, const M: usize, const N: usize> From<&'_ Vector<Vector<T, N>, M>> for Matrix<T, M, N> where
T: Copy,
[src]
impl<T, const M: usize, const N: usize> From<&'_ Vector<Vector<T, N>, M>> for Matrix<T, M, N> where
T: Copy,
[src]impl<'a, T, const M: usize, const N: usize> From<&'a Matrix<T, M, N>> for &'a Vector<Vector<T, N>, M>
[src]
impl<'a, T, const M: usize, const N: usize> From<&'a Matrix<T, M, N>> for &'a Vector<Vector<T, N>, M>
[src]impl<'a, T, const M: usize, const N: usize> From<&'a mut Matrix<T, M, N>> for &'a mut Vector<Vector<T, N>, M>
[src]
impl<'a, T, const M: usize, const N: usize> From<&'a mut Matrix<T, M, N>> for &'a mut Vector<Vector<T, N>, M>
[src]impl<T, const M: usize, const N: usize> IntoIterator for Matrix<T, M, N>
[src]
impl<T, const M: usize, const N: usize> IntoIterator for Matrix<T, M, N>
[src]impl<'a, T, const M: usize, const N: usize> IntoIterator for &'a Matrix<T, M, N>
[src]
impl<'a, T, const M: usize, const N: usize> IntoIterator for &'a Matrix<T, M, N>
[src]impl<'a, T, const M: usize, const N: usize> IntoIterator for &'a mut Matrix<T, M, N>
[src]
impl<'a, T, const M: usize, const N: usize> IntoIterator for &'a mut Matrix<T, M, N>
[src]impl<T, const M: usize, const N: usize> Mul<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Mul<Output = T>,
[src]
impl<T, const M: usize, const N: usize> Mul<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Mul<Output = T>,
[src]impl<T, const M: usize, const N: usize> Mul<T> for Matrix<T, M, N> where
T: Mul<Output = T> + Copy,
[src]
impl<T, const M: usize, const N: usize> Mul<T> for Matrix<T, M, N> where
T: Mul<Output = T> + Copy,
[src]impl<T, const M: usize, const N: usize> MulAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: MulAssign,
[src]
impl<T, const M: usize, const N: usize> MulAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: MulAssign,
[src]fn mul_assign(&mut self, vec: Matrix<T, M, N>)
[src]
fn mul_assign(&mut self, vec: Matrix<T, M, N>)
[src]Performs the *=
operation. Read more
impl<T, const M: usize, const N: usize> MulAssign<T> for Matrix<T, M, N> where
T: MulAssign + Copy,
[src]
impl<T, const M: usize, const N: usize> MulAssign<T> for Matrix<T, M, N> where
T: MulAssign + Copy,
[src]fn mul_assign(&mut self, a: T)
[src]
fn mul_assign(&mut self, a: T)
[src]Performs the *=
operation. Read more
impl<T, const M: usize, const N: usize> NormL1 for Matrix<T, M, N> where
T: NormL1<Output = T> + Add<Output = T>,
[src]
impl<T, const M: usize, const N: usize> NormL1 for Matrix<T, M, N> where
T: NormL1<Output = T> + Add<Output = T>,
[src]impl<T, const M: usize, const N: usize> NormL2 for Matrix<T, M, N> where
T: Float,
[src]
impl<T, const M: usize, const N: usize> NormL2 for Matrix<T, M, N> where
T: Float,
[src]impl<T, const M: usize, const N: usize> NormLInf for Matrix<T, M, N> where
T: NormLInf<Output = T> + PartialOrd,
[src]
impl<T, const M: usize, const N: usize> NormLInf for Matrix<T, M, N> where
T: NormLInf<Output = T> + PartialOrd,
[src]impl<T: PartialEq, const M: usize, const N: usize> PartialEq<Matrix<T, M, N>> for Matrix<T, M, N>
[src]
impl<T: PartialEq, const M: usize, const N: usize> PartialEq<Matrix<T, M, N>> for Matrix<T, M, N>
[src]impl<T, const M: usize, const N: usize> Rem<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Rem<Output = T>,
[src]
impl<T, const M: usize, const N: usize> Rem<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Rem<Output = T>,
[src]impl<T, const M: usize, const N: usize> Rem<T> for Matrix<T, M, N> where
T: Rem<Output = T> + Copy,
[src]
impl<T, const M: usize, const N: usize> Rem<T> for Matrix<T, M, N> where
T: Rem<Output = T> + Copy,
[src]impl<T, const M: usize, const N: usize> RemAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: RemAssign,
[src]
impl<T, const M: usize, const N: usize> RemAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: RemAssign,
[src]fn rem_assign(&mut self, vec: Matrix<T, M, N>)
[src]
fn rem_assign(&mut self, vec: Matrix<T, M, N>)
[src]Performs the %=
operation. Read more
impl<T, const M: usize, const N: usize> RemAssign<T> for Matrix<T, M, N> where
T: RemAssign + Copy,
[src]
impl<T, const M: usize, const N: usize> RemAssign<T> for Matrix<T, M, N> where
T: RemAssign + Copy,
[src]fn rem_assign(&mut self, a: T)
[src]
fn rem_assign(&mut self, a: T)
[src]Performs the %=
operation. Read more
impl<T, const M: usize, const N: usize> Sub<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Sub<Output = T>,
[src]
impl<T, const M: usize, const N: usize> Sub<Matrix<T, M, N>> for Matrix<T, M, N> where
T: Sub<Output = T>,
[src]impl<T, const M: usize, const N: usize> SubAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: SubAssign,
[src]
impl<T, const M: usize, const N: usize> SubAssign<Matrix<T, M, N>> for Matrix<T, M, N> where
T: SubAssign,
[src]fn sub_assign(&mut self, vec: Matrix<T, M, N>)
[src]
fn sub_assign(&mut self, vec: Matrix<T, M, N>)
[src]Performs the -=
operation. Read more
impl<'a, T, const M: usize, const N: usize> TryFrom<&'a [T]> for Matrix<T, M, N> where
T: Copy,
[src]
impl<'a, T, const M: usize, const N: usize> TryFrom<&'a [T]> for Matrix<T, M, N> where
T: Copy,
[src]impl<'a, T, const M: usize, const N: usize> TryFrom<&'a [Vector<T, N>]> for Matrix<T, M, N> where
T: Copy,
[src]
impl<'a, T, const M: usize, const N: usize> TryFrom<&'a [Vector<T, N>]> for Matrix<T, M, N> where
T: Copy,
[src]impl<T: Copy, const M: usize, const N: usize> Copy for Matrix<T, M, N>
[src]
impl<T, const M: usize, const N: usize> StructuralPartialEq for Matrix<T, M, N>
[src]
Auto Trait Implementations
impl<T, const M: usize, const N: usize> RefUnwindSafe for Matrix<T, M, N> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, const M: usize, const N: usize> Send for Matrix<T, M, N> where
T: Send,
T: Send,
impl<T, const M: usize, const N: usize> Sync for Matrix<T, M, N> where
T: Sync,
T: Sync,
impl<T, const M: usize, const N: usize> Unpin for Matrix<T, M, N> where
T: Unpin,
T: Unpin,
impl<T, const M: usize, const N: usize> UnwindSafe for Matrix<T, M, N> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> ToOwned for T where
T: Clone,
[src]
impl<T> ToOwned for T where
T: Clone,
[src]type Owned = T
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn to_owned(&self) -> T
[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)
[src]
pub fn clone_into(&self, target: &mut T)
[src]🔬 This is a nightly-only experimental API. (toowned_clone_into
)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub fn vzip(self) -> V
impl<T, Rhs> NumAssignOps<Rhs> for T where
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
[src]
T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,
impl<T, Rhs, Output> NumOps<Rhs, Output> for T where
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,
[src]
T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,