Trait ndarray::linalg::Dot[][src]

pub trait Dot<Rhs> {
    type Output;
    fn dot(&self, rhs: &Rhs) -> Self::Output;
}
Expand description

Matrix Multiplication

For two-dimensional arrays, the dot method computes the matrix multiplication.

Associated Types

type Output[src]

Expand description

The result of the operation.

For two-dimensional arrays: a rectangular array.

Required methods

fn dot(&self, rhs: &Rhs) -> Self::Output[src]

Implementors

impl<A, S, S2> Dot<ArrayBase<S2, Dim<[usize; 1]>>> for ArrayBase<S, Ix1> where
    S: Data<Elem = A>,
    S2: Data<Elem = A>,
    A: LinalgScalar
[src]

fn dot(&self, rhs: &ArrayBase<S2, Ix1>) -> A[src]

Compute the dot product of one-dimensional arrays.

The dot product is a sum of the elementwise products (no conjugation of complex operands, and thus not their inner product).

Panics if the arrays are not of the same length.
Note: If enabled, uses blas dot for elements of f32, f64 when memory layout allows.

type Output = A

impl<A, S, S2> Dot<ArrayBase<S2, Dim<[usize; 1]>>> for ArrayBase<S, Ix2> where
    S: Data<Elem = A>,
    S2: Data<Elem = A>,
    A: LinalgScalar
[src]

Perform the matrix multiplication of the rectangular array self and column vector rhs.

The array shapes must agree in the way that if self is M × N, then rhs is N.

Return a result array with shape M.

Panics if shapes are incompatible.

type Output = Array<A, Ix1>

fn dot(&self, rhs: &ArrayBase<S2, Ix1>) -> Array<A, Ix1>[src]

impl<A, S, S2> Dot<ArrayBase<S2, Dim<[usize; 2]>>> for ArrayBase<S, Ix1> where
    S: Data<Elem = A>,
    S2: Data<Elem = A>,
    A: LinalgScalar
[src]

fn dot(&self, rhs: &ArrayBase<S2, Ix2>) -> Array<A, Ix1>[src]

Perform the matrix multiplication of the row vector self and rectangular matrix rhs.

The array shapes must agree in the way that if self is M, then rhs is M × N.

Return a result array with shape N.

Panics if shapes are incompatible.

type Output = Array<A, Ix1>

impl<A, S, S2> Dot<ArrayBase<S2, Dim<[usize; 2]>>> for ArrayBase<S, Ix2> where
    S: Data<Elem = A>,
    S2: Data<Elem = A>,
    A: LinalgScalar
[src]

type Output = Array2<A>

fn dot(&self, b: &ArrayBase<S2, Ix2>) -> Array2<A>[src]