pylops.HStack¶
-
class
pylops.
HStack
(ops, dtype=None)[source]¶ Horizontal stacking.
Stack a set of N linear operators horizontally.
Parameters: - ops :
list
Linear operators to be stacked. Alternatively,
numpy.ndarray
orscipy.sparse
matrices can be passed in place of one or more operators.- dtype :
str
, optional Type of elements in input array.
Raises: - ValueError
If
ops
have different number of columns
Notes
An horizontal stack of N linear operators is created such as its application in forward mode leads to
\[\begin{split}\begin{bmatrix} \mathbf{L}_{1} & \mathbf{L}_{2} & ... & \mathbf{L}_{N} \end{bmatrix} \begin{bmatrix} \mathbf{x}_{1} \\ \mathbf{x}_{2} \\ ... \\ \mathbf{x}_{N} \end{bmatrix} = \mathbf{L}_{1} \mathbf{x}_1 + \mathbf{L}_{2} \mathbf{x}_2 + ... + \mathbf{L}_{N} \mathbf{x}_N\end{split}\]while its application in adjoint mode leads to
\[\begin{split}\begin{bmatrix} \mathbf{L}_{1}^H \\ \mathbf{L}_{2}^H \\ ... \\ \mathbf{L}_{N}^H \end{bmatrix} \mathbf{y} = \begin{bmatrix} \mathbf{L}_{1}^H \mathbf{y} \\ \mathbf{L}_{2}^H \mathbf{y} \\ ... \\ \mathbf{L}_{N}^H \mathbf{y} \end{bmatrix} = \begin{bmatrix} \mathbf{x}_{1} \\ \mathbf{x}_{2} \\ ... \\ \mathbf{x}_{N} \end{bmatrix}\end{split}\]Attributes: Methods
__init__
(ops[, dtype])Initialize this LinearOperator. adjoint
()Hermitian adjoint. apply_columns
(cols)Apply subset of columns of operator cond
([uselobpcg])Condition number of linear operator. conj
()Complex conjugate operator div
(y[, niter])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. matmat
(X)Matrix-matrix multiplication. matvec
(x)Matrix-vector multiplication. rmatmat
(X)Adjoint matrix-matrix multiplication. rmatvec
(x)Adjoint matrix-vector multiplication. todense
()Return dense matrix. tosparse
()Return sparse matrix. transpose
()Transpose this linear operator. - ops :