pylops_distributed.signalprocessing.Fredholm1¶
-
class
pylops_distributed.signalprocessing.
Fredholm1
(G, nz=1, saveGt=True, compute=(False, False), chunks=(None, None), todask=(None, None), dtype='float64')[source]¶ Fredholm integral of first kind.
Implement a multi-dimensional Fredholm integral of first kind. Note that if the integral is two dimensional, this can be directly implemented using
pylops.basicoperators.MatrixMult
. A multi-dimensional Fredholm integral can be performed as apylops.basicoperators.BlockDiag
operator of a series ofpylops.basicoperators.MatrixMult
. However, here we take advantage of the structure of the kernel and perform it in a more efficient manner.Parameters: - G :
numpy.ndarray
Multi-dimensional convolution kernel of size \([n_{slice} \times n_x \times n_y]\)
- nz :
numpy.ndarray
, optional Additional dimension of model
- saveGt :
bool
, optional Save
G
andG^H
to speed up the computation of adjoint (True
) or createG^H
on-the-fly (False
) Note thatsaveGt=True
will double the amount of required memory- compute :
tuple
, optional Compute the outcome of forward and adjoint or simply define the graph and return a
dask.array
- chunks :
tuple
, optional Chunk size for model and data. If provided it will rechunk the model before applying the forward pass and the data before applying the adjoint pass
- todask :
tuple
, optional Apply
dask.array.from_array
to model and data before applying forward and adjoint respectively- dtype :
str
, optional Type of elements in input array.
Notes
Refer to
pylops.signalprocessing.Identity
for implementation details.Attributes: Methods
__init__
(G[, nz, saveGt, compute, chunks, …])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-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. - G :