pylops.MatrixMult¶
- class pylops.MatrixMult(A, otherdims=None, forceflat=None, dtype='float64', name='M')[source]¶
Matrix multiplication.
Simple wrapper to
numpy.dotandnumpy.vdotfor an input matrix \(\mathbf{A}\).- Parameters:
- A
numpy.ndarrayorscipy.sparsematrix Matrix.
- otherdims
tuple, optional Number of samples for each other dimension of model (model/data will be reshaped and
Aapplied multiple times to each column of the model/data).- forceflat
bool, optional Added in version 2.2.0.
Force an array to be flattened after matvec and rmatvec. Note that this is only required when otherdims=None, otherwise pylops will detect whether to return a 1d or nd array.
- dtype
str, optional Type of elements in input array.
- name
str, optional Added in version 2.0.0.
Name of operator (to be used by
pylops.utils.describe.describe).
- A
- Attributes:
- dimsflatten
tuple Same as
dimsbut with first dimension flattened (i.e., defined as the product ofotherdims).- dimsdflatten
tuple Same as
dimsdbut with first dimension flattened (i.e., defined as the product ofotherdims).- reshape
bool Whether to reshape the input prior to applying the matrix
A(whenotherdimsis provided) or not (whenotherdims=None).- complex
bool Matrix has complex numbers (
True) or not (False).- dims
tuple Shape of the array after the adjoint, but before flattening.
For example,
x_reshaped = (Op.H * y.ravel()).reshape(Op.dims).- dimsd
tuple Shape of the array after the forward, but before flattening.
For example,
y_reshaped = (Op * x.ravel()).reshape(Op.dimsd).- shape
tuple Operator shape.
- explicit
bool Operator contains a matrix that can be solved explicitly (
True) or not (False).
- dimsflatten
Methods
__init__(A[, otherdims, forceflat, dtype, name])adjoint()apply_columns(cols)Apply subset of columns of operator
cond([uselobpcg])Condition number of linear operator.
conj()Complex conjugate operator
div(y[, niter, densesolver])Solve the linear problem \(\mathbf{y}=\mathbf{A}\mathbf{x}\).
dot(x)Matrix-matrix or matrix-vector multiplication.
eigs([neigs, symmetric, niter, uselobpcg])Most significant eigenvalues of linear operator.
inv()Return the inverse of \(\mathbf{A}\).
matmat(X)Matrix-matrix multiplication.
matvec(x)Matrix-vector multiplication.
reset_count()Reset counters
rmatmat(X)Matrix-matrix multiplication.
rmatvec(x)Adjoint matrix-vector multiplication.
todense([backend])Return dense matrix.
toimag([forw, adj])Imag operator
toreal([forw, adj])Real operator
tosparse()Return sparse matrix.
trace([neval, method, backend])Trace of linear operator.
transpose()