LinearOperator

class dolfin.cpp.la.LinearOperator(*args)

Bases: dolfin.cpp.la.GenericLinearOperator

This class defines an interface for linear operators defined only in terms of their action (matrix-vector product) and can be used for matrix-free solution of linear systems. The linear algebra backend is decided at run-time based on the present value of the “linear_algebra_backend” parameter.

To define a linear operator, users need to inherit from this class and overload the function mult(x, y) which defines the action of the matrix on the vector x as y = Ax.

Create linear operator

init_layout()
mult()

Compute matrix-vector product y = Ax

shared_instance()

Overloaded versions

  • shared_instance()

    Return concrete instance / unwrap (const shared pointer version)

  • shared_instance()

    Return concrete instance / unwrap (shared pointer version)

size()

Return size of given dimension

str()

Return informal string representation (pretty-print)

thisown

The membership flag