Trait gad::matrix::MatrixAlgebra [−][src]
pub trait MatrixAlgebra<Value> { fn matmul(
&mut self,
v1: &Value,
v2: &Value,
prop1: MatProp,
prop2: MatProp
) -> Result<Value>; fn transpose(&mut self, v: &Value, conjugate: bool) -> Result<Value>; fn matmul_nn(&mut self, v1: &Value, v2: &Value) -> Result<Value> { ... } }
Matric operations such as multiplication and transposition.
Required methods
fn matmul(
&mut self,
v1: &Value,
v2: &Value,
prop1: MatProp,
prop2: MatProp
) -> Result<Value>
[src]
&mut self,
v1: &Value,
v2: &Value,
prop1: MatProp,
prop2: MatProp
) -> Result<Value>
Multiplication of two matrices after some optional transpositions.
fn transpose(&mut self, v: &Value, conjugate: bool) -> Result<Value>
[src]
Transpose (and optionally conjuguate) a matrix.
Provided methods
fn matmul_nn(&mut self, v1: &Value, v2: &Value) -> Result<Value>
[src]
Non-transposed multiplication of two matrices.
Implementors
impl MatrixAlgebra<Dim4> for Check
[src]
fn matmul(
&mut self,
v1: &Dim4,
v2: &Dim4,
prop1: MatProp,
prop2: MatProp
) -> Result<Dim4>
[src]
&mut self,
v1: &Dim4,
v2: &Dim4,
prop1: MatProp,
prop2: MatProp
) -> Result<Dim4>
fn transpose(&mut self, v: &Dim4, _conjugate: bool) -> Result<Dim4>
[src]
impl<D, E, Dims> MatrixAlgebra<Value<D>> for Graph<Config1<E>> where
E: Default + Clone + CoreAlgebra<D, Value = D> + LinkedAlgebra<Value<D>, D> + MatrixAlgebra<D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
[src]
E: Default + Clone + CoreAlgebra<D, Value = D> + LinkedAlgebra<Value<D>, D> + MatrixAlgebra<D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
fn matmul(
&mut self,
v1: &Value<D>,
v2: &Value<D>,
prop1: MatProp,
prop2: MatProp
) -> Result<Value<D>>
[src]
&mut self,
v1: &Value<D>,
v2: &Value<D>,
prop1: MatProp,
prop2: MatProp
) -> Result<Value<D>>
fn transpose(&mut self, v: &Value<D>, conjugate: bool) -> Result<Value<D>>
[src]
impl<D, E, Dims> MatrixAlgebra<Value<D>> for Graph<ConfigN<E>> where
E: Default + Clone + CoreAlgebra<D, Value = D> + LinkedAlgebra<Value<D>, D> + MatrixAlgebra<D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
[src]
E: Default + Clone + CoreAlgebra<D, Value = D> + LinkedAlgebra<Value<D>, D> + MatrixAlgebra<D>,
D: HasDims<Dims = Dims> + Clone + 'static + Send + Sync,
Dims: PartialEq + Debug + Clone + 'static + Send + Sync,
fn matmul(
&mut self,
v1: &Value<D>,
v2: &Value<D>,
prop1: MatProp,
prop2: MatProp
) -> Result<Value<D>>
[src]
&mut self,
v1: &Value<D>,
v2: &Value<D>,
prop1: MatProp,
prop2: MatProp
) -> Result<Value<D>>
fn transpose(&mut self, v: &Value<D>, conjugate: bool) -> Result<Value<D>>
[src]
impl<T> MatrixAlgebra<Array<T>> for Eval where
T: Float,
[src]
T: Float,