pub trait LinearOperator {
    type Elem: Scalar;

    fn apply<S>(&self, a: &ArrayBase<S, Ix1>) -> Array1<S::Elem>
    where
        S: Data<Elem = Self::Elem>
, { ... } fn apply_mut<S>(&self, a: &mut ArrayBase<S, Ix1>)
    where
        S: DataMut<Elem = Self::Elem>
, { ... } fn apply_into<S>(&self, a: ArrayBase<S, Ix1>) -> ArrayBase<S, Ix1>
    where
        S: DataOwned<Elem = Self::Elem> + DataMut
, { ... } fn apply2<S>(&self, a: &ArrayBase<S, Ix2>) -> Array2<S::Elem>
    where
        S: Data<Elem = Self::Elem>
, { ... } fn apply2_mut<S>(&self, a: &mut ArrayBase<S, Ix2>)
    where
        S: DataMut<Elem = Self::Elem>
, { ... } fn apply2_into<S>(&self, a: ArrayBase<S, Ix2>) -> ArrayBase<S, Ix2>
    where
        S: DataOwned<Elem = Self::Elem> + DataMut
, { ... } }
Expand description

Abstracted linear operator as an action to vector (ArrayBase<S, Ix1>) and matrix (ArrayBase<S, Ix2)

Required Associated Types

Provided Methods

Apply operator out-place

Apply operator in-place

Apply operator with move

Apply operator to matrix out-place

Apply operator to matrix in-place

Apply operator to matrix with move

Implementations on Foreign Types

Implementors