23#ifndef __PETSC_LINEAR_OPERATOR_H
24#define __PETSC_LINEAR_OPERATOR_H
29#include <dolfin/common/types.h>
30#include "PETScBaseMatrix.h"
31#include "GenericLinearOperator.h"
55 virtual std::size_t
size(std::size_t dim)
const;
65 virtual std::string
str(
bool verbose)
const;
Definition GenericLinearOperator.h:43
This class defines a common interface for vectors.
Definition GenericVector.h:48
Definition PETScBaseMatrix.h:50
std::pair< std::int64_t, std::int64_t > size() const
Definition PETScBaseMatrix.cpp:79
MPI_Comm mpi_comm() const
Return the MPI communicator.
Definition PETScBaseMatrix.cpp:141
PETSc version of the GenericLinearOperator.
Definition PETScLinearOperator.h:46
virtual MPI_Comm mpi_comm() const
Return MPI communicator.
Definition PETScLinearOperator.h:61
PETScLinearOperator(MPI_Comm comm)
Constructor.
Definition PETScLinearOperator.cpp:63
virtual void mult(const GenericVector &x, GenericVector &y) const
Compute matrix-vector product y = Ax.
Definition PETScLinearOperator.cpp:76
virtual std::string str(bool verbose) const
Return informal string representation (pretty-print)
Definition PETScLinearOperator.cpp:81
virtual const GenericLinearOperator * wrapper() const
Return pointer to wrapper (const version)
Definition PETScLinearOperator.cpp:100
void init_layout(const GenericVector &x, const GenericVector &y, GenericLinearOperator *wrapper)
Definition PETScLinearOperator.cpp:110