20 #ifndef LIBMESH_SHELL_MATRIX_H 21 #define LIBMESH_SHELL_MATRIX_H 35 template <
typename T>
class NumericVector;
47 class ShellMatrix :
public ReferenceCountedObject<ShellMatrix<T>>,
54 ShellMatrix (
const Parallel::Communicator & comm_in);
78 const NumericVector<T> & arg)
const = 0;
84 const NumericVector<T> & arg)
const = 0;
89 virtual void get_diagonal (NumericVector<T> & dest)
const = 0;
104 template <
typename T>
113 #endif // LIBMESH_SHELL_MATRIX_H
virtual numeric_index_type m() const =0
virtual void vector_mult_add(NumericVector< T > &dest, const NumericVector< T > &arg) const =0
dof_id_type numeric_index_type
ShellMatrix(const Parallel::Communicator &comm_in)
An object whose state is distributed along a set of processors.
virtual numeric_index_type n() const =0
virtual void get_diagonal(NumericVector< T > &dest) const =0
virtual void vector_mult(NumericVector< T > &dest, const NumericVector< T > &arg) const =0