Trait ndarray_einsum_beta::contractors::PairContractor [−][src]
let new_array = obj.contract_pair(lhs_view, rhs_view);
All pair contractions should implement this trait. It returns a new owned ArrayD
. The trait
also has a method with a default implementation, obj.contract_and_assign_pair(lhs_view: &ArrayViewD, rhs_view: &ArrayViewD, out: &mut ArrayViewD) -> ()
.
Required methods
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
Provided methods
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]
&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,
Implementors
impl<A> PairContractor<A> for BroadcastProductGeneral
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for HadamardProduct
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for HadamardProductGeneral
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for MatrixScalarProduct
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for MatrixScalarProductGeneral
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for ScalarMatrixProduct
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for ScalarMatrixProductGeneral
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for StackedTensordotGeneral
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for TensordotFixedPosition
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for TensordotGeneral
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
impl<A> PairContractor<A> for PairContraction<A>
[src]
fn contract_pair<'a, 'b, 'c, 'd>(
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,
[src]
&self,
lhs: &'b ArrayViewD<'a, A>,
rhs: &'d ArrayViewD<'c, A>
) -> ArrayD<A> where
'a: 'b,
'c: 'd,
A: Clone + LinalgScalar,