pylops_mpi.MPIStackedLinearOperator#

class pylops_mpi.MPIStackedLinearOperator(shape=None, dtype=None, base_comm=<mpi4py.MPI.Intracomm object>)[source]#

Common interface for performing matrix-vector products in distributed fashion for StackedLinearOperators.

This class provides methods to perform matrix-vector product and adjoint matrix-vector products on a stack of pylops_mpi.MPILinearOperator objects.

Note

End users of pylops-mpi should not use this class directly but simply use operators that are already implemented. This class is meant for developers only, it has to be used as the parent class of any new operator developed within pylops-mpi.

Parameters:
shapetuple(int, int), optional

Shape of the MPIStackedLinearOperator. Defaults to None.

dtypestr, optional

Type of elements in input array. Defaults to None.

base_commmpi4py.MPI.Comm, optional

MPI Base Communicator. Defaults to mpi4py.MPI.COMM_WORLD.

Methods

__init__([shape, dtype, base_comm])

adjoint()

Adjoint MPIStackedLinearOperator

conj()

Complex conjugate operator

dot(x)

Matrix Vector Multiplication

matvec(x)

Matrix-vector multiplication.

rmatvec(x)

Adjoint Matrix-vector multiplication.

transpose()

Transposition of MPIStackedLinearOperator

Examples using pylops_mpi.MPIStackedLinearOperator#

Derivatives

Derivatives

Stacked Array

Stacked Array

Post Stack Inversion - 3D

Post Stack Inversion - 3D