cupyx.scipy.sparse.linalg.LinearOperator

class cupyx.scipy.sparse.linalg.LinearOperator(shape, matvec, rmatvec=None, matmat=None, dtype=None, rmatmat=None)[source]

Common interface for performing matrix vector products

To construct a concrete LinearOperator, either pass appropriate callables to the constructor of this class, or subclass it.

Parameters
  • shape (tuple) – Matrix dimensions (M, N).

  • matvec (callable f(v)) – Returns returns A * v.

  • rmatvec (callable f(v)) – Returns A^H * v, where A^H is the conjugate transpose of A.

  • matmat (callable f(V)) – Returns A * V, where V is a dense matrix with dimensions (N, K).

  • dtype (dtype) – Data type of the matrix.

  • rmatmat (callable f(V)) – Returns A^H * V, where V is a dense matrix with dimensions (M, K).

Methods

__call__(x)[source]

Call self as a function.

adjoint()[source]

Hermitian adjoint.

dot(x)[source]

Matrix-matrix or matrix-vector multiplication.

matmat(X)[source]

Matrix-matrix multiplication.

matvec(x)[source]

Matrix-vector multiplication.

rmatmat(X)[source]

Adjoint matrix-matrix multiplication.

rmatvec(x)[source]

Adjoint matrix-vector multiplication.

transpose()[source]

Transpose this linear operator.

__eq__(value, /)

Return self==value.

__ne__(value, /)

Return self!=value.

__lt__(value, /)

Return self<value.

__le__(value, /)

Return self<=value.

__gt__(value, /)

Return self>value.

__ge__(value, /)

Return self>=value.

Attributes

H

Hermitian adjoint.

T

Transpose this linear operator.

ndim = 2