21#ifndef __GENERIC_LINEAR_OPERATOR_H
22#define __GENERIC_LINEAR_OPERATOR_H
24#include "LinearAlgebraObject.h"
50 virtual std::size_t
size(std::size_t dim)
const = 0;
56 virtual std::string
str(
bool verbose)
const = 0;
60 friend class LinearOperator;
69 "initialize backend implementation of linear operator",
70 "Missing init_layout() function for backend");
Base class for LinearAlgebra factories.
Definition GenericLinearAlgebraFactory.h:47
Definition GenericLinearOperator.h:43
virtual std::string str(bool verbose) const =0
Return informal string representation (pretty-print).
virtual void mult(const GenericVector &x, GenericVector &y) const =0
Compute matrix-vector product y = Ax.
virtual void init_layout(const GenericVector &x, const GenericVector &y, GenericLinearOperator *wrapper)
Definition GenericLinearOperator.h:64
virtual std::size_t size(std::size_t dim) const =0
Return size of given dimension.
This class defines a common interface for vectors.
Definition GenericVector.h:48
Definition LinearAlgebraObject.h:37
void dolfin_error(std::string location, std::string task, std::string reason,...)
Definition log.cpp:129