adjoint_linop_cdp Derived Type

type, public, extends(abstract_linop_cdp) :: adjoint_linop_cdp

Utility type to define an adjoint linear operator. The definition of matvec and rmatvec are directly inherited from those used to define A. Note that this utility does not compute the adjoint for you. It simply provides a utility to define a new operator with matvec and rmatvec being switched.


Components

Type Visibility Attributes Name Initial
class(abstract_linop_cdp), public, allocatable :: A

Linear operator whose adjoint needs to be defined.


Type-Bound Procedures

procedure, public, pass(self) :: matvec => adjoint_matvec_cdp

procedure, public, pass(self) :: rmatvec => adjoint_rmatvec_cdp