Trait MatMul

Source
pub trait MatMul<Rhs: MatrixKind>: MatrixKind {
    type Output: MatrixKind;

    // Required method
    fn mat_mul<E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>>(
        lhs: <Self as MatrixKind>::Ref<'_, LhsE>,
        rhs: <Rhs as MatrixKind>::Ref<'_, RhsE>,
    ) -> <Self::Output as MatrixKind>::Own<E>;
}
Expand description

Matrix multiplication.

Required Associated Types§

Source

type Output: MatrixKind

Result matrix type.

Required Methods§

Source

fn mat_mul<E: ComplexField, LhsE: Conjugate<Canonical = E>, RhsE: Conjugate<Canonical = E>>( lhs: <Self as MatrixKind>::Ref<'_, LhsE>, rhs: <Rhs as MatrixKind>::Ref<'_, RhsE>, ) -> <Self::Output as MatrixKind>::Own<E>

Returns lhs * rhs.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl MatMul<Dense> for Dense

Source§

impl MatMul<Dense> for DenseRow

Source§

impl MatMul<Dense> for Diag

Source§

impl MatMul<Dense> for Scale

Source§

impl MatMul<DenseCol> for Dense

Source§

impl MatMul<DenseCol> for DenseRow

Source§

impl MatMul<DenseCol> for Diag

Source§

impl MatMul<DenseCol> for Scale

Source§

impl MatMul<DenseRow> for DenseCol

Source§

impl MatMul<DenseRow> for Scale

Source§

impl MatMul<Diag> for Dense

Source§

impl MatMul<Diag> for DenseRow

Source§

impl MatMul<Diag> for Diag

Source§

impl MatMul<Scale> for Dense

Source§

impl MatMul<Scale> for DenseCol

Source§

impl MatMul<Scale> for DenseRow

Source§

impl MatMul<Scale> for Scale

Source§

impl<I: Index> MatMul<Dense> for Perm<I>

Source§

impl<I: Index> MatMul<Dense> for SparseColMat<I>

Source§

impl<I: Index> MatMul<Dense> for SparseRowMat<I>

Source§

impl<I: Index> MatMul<DenseCol> for Perm<I>

Source§

impl<I: Index> MatMul<DenseCol> for SparseColMat<I>

Source§

impl<I: Index> MatMul<DenseCol> for SparseRowMat<I>

Source§

impl<I: Index> MatMul<Perm<I>> for Dense

Source§

impl<I: Index> MatMul<Perm<I>> for DenseRow

Source§

impl<I: Index> MatMul<Perm<I>> for Perm<I>

Source§

impl<I: Index> MatMul<SparseColMat<I>> for Dense

Source§

impl<I: Index> MatMul<SparseColMat<I>> for DenseRow

Source§

impl<I: Index> MatMul<SparseRowMat<I>> for Dense

Source§

impl<I: Index> MatMul<SparseRowMat<I>> for DenseRow