pylops_gpu.Identity¶
-
class
pylops_gpu.Identity(N, M=None, inplace=True, complex=False, device='cpu', togpu=(False, False), tocpu=(False, False), dtype=torch.float32)[source]¶ Identity operator.
Simply move model to data in forward model and viceversa in adjoint mode if \(M = N\). If \(M > N\) removes last \(M - N\) elements from model in forward and pads with \(0\) in adjoint. If \(N > M\) removes last \(N - M\) elements from data in adjoint and pads with \(0\) in forward.
Parameters: - N :
int Number of samples in data (and model, if
Mis not provided).- M :
int, optional Number of samples in model.
- inplace :
bool, optional Work inplace (
True) or make a new copy (False). By default, data is a reference to the model (in forward) and model is a reference to the data (in adjoint).- complex :
bool, optional Input model and data are complex arrays
- device :
str, optional Device to be used
- togpu :
tuple, optional Move model and data from cpu to gpu prior to applying
matvecandrmatvec, respectively (only whendevice='gpu')- tocpu :
tuple, optional Move data and model from gpu to cpu after applying
matvecandrmatvec, respectively (only whendevice='gpu')- dtype :
torch.dtype, optional Type of elements in input array (if
complex=True, provide the type of the real component of the array)
Notes
Refer to
pylops.basicoperators.Identityfor implementation details.Attributes: Methods
__init__(N[, M, inplace, complex, device, …])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, tol])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[, kfirst])Matrix-matrix multiplication. matvec(x)Matrix-vector multiplication. rmatmat(X[, kfirst])Adjoint 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. transpose()Transpose this linear operator. - N :