[][src]Struct ndarray_einsum_beta::contractors::pair_contractors::MatrixScalarProductGeneral

pub struct MatrixScalarProductGeneral {
    lhs_permutation: Permutation,
    matrix_scalar_product: MatrixScalarProduct,
}

Permutes the axes of the LHS tensor to the output order and multiply all elements by the single scalar in the 0-d RHS tensor.

This contraction can arise when the simplification of the RHS tensor results in all the axes being summed before the two tensors are contracted. For example, in the contraction ij,k->ji, the output matrix is equal to the LHS matrix, transposed and then scalar-multiplied by the sum of the elements of the RHS tensor.

Fields

lhs_permutation: Permutationmatrix_scalar_product: MatrixScalarProduct

Methods

impl MatrixScalarProductGeneral[src]

pub fn new(sc: &SizedContraction) -> Self[src]

pub fn from_indices(input_indices: &[char], output_indices: &[char]) -> Self[src]

Trait Implementations

impl<A> PairContractor<A> for MatrixScalarProductGeneral[src]

fn contract_and_assign_pair<'a, 'b, 'c, 'd, 'e, 'f>(
    &self,
    lhs: &'b ArrayViewD<'a, A>,
    rhs: &'d ArrayViewD<'c, A>,
    out: &'f mut ArrayViewMutD<'e, A>
) where
    'a: 'b,
    'c: 'd,
    'e: 'f,
    A: Clone + LinalgScalar
[src]

impl Clone for MatrixScalarProductGeneral[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for MatrixScalarProductGeneral[src]

Auto Trait Implementations

Blanket Implementations

impl<T> From<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]