18 #ifndef LIBMESH_LUMPED_MASS_MATRIX_H 19 #define LIBMESH_LUMPED_MASS_MATRIX_H 21 #include "libmesh/diagonal_matrix.h" 58 libmesh_not_implemented();
62 virtual std::unique_ptr<SparseMatrix<T>>
zero_clone()
const override;
64 virtual std::unique_ptr<SparseMatrix<T>>
clone()
const override;
68 const T
value)
override;
72 const T
value)
override;
89 #endif // LIBMESH_LUMPED_MASS_MATRIX_H LumpedMassMatrix(const Parallel::Communicator &comm)
Constructor; initializes the matrix to be empty, without any structure, i.e.
virtual void add(const numeric_index_type i, const numeric_index_type j, const T value) override
Add value to the element (i,j).
Provides a uniform interface to vector storage schemes for different linear algebra libraries...
const Parallel::Communicator & comm() const
The libMesh namespace provides an interface to certain functionality in the library.
virtual SparseMatrix< T > & operator=(const SparseMatrix< T > &) override
This looks like a copy assignment operator, but note that, unlike normal copy assignment operators...
dof_id_type numeric_index_type
Diagonal matrix class whose underlying storage is a vector.
virtual std::unique_ptr< SparseMatrix< T > > clone() const override
LumpedMassMatrix & operator=(LumpedMassMatrix &&)=default
Template class used to construct a lumped mass matrix.
virtual std::unique_ptr< SparseMatrix< T > > zero_clone() const override