|
| MassOperator () |
|
virtual void | compute_diagonal () override |
|
| Base () |
|
virtual | ~Base () override=default |
|
virtual void | clear () |
|
void | initialize (std::shared_ptr< const MatrixFree< dim, value_type, VectorizedArray< typename LinearAlgebra::distributed::Vector< double > ::value_type > >> data, const std::vector< unsigned int > &selected_row_blocks=std::vector< unsigned int >(), const std::vector< unsigned int > &selected_column_blocks=std::vector< unsigned int >()) |
|
void | initialize (std::shared_ptr< const MatrixFree< dim, value_type, VectorizedArray< typename LinearAlgebra::distributed::Vector< double > ::value_type > >> data, const MGConstrainedDoFs &mg_constrained_dofs, const unsigned int level, const std::vector< unsigned int > &selected_row_blocks=std::vector< unsigned int >()) |
|
void | initialize (std::shared_ptr< const MatrixFree< dim, value_type, VectorizedArray< typename LinearAlgebra::distributed::Vector< double > ::value_type > >> data_, const std::vector< MGConstrainedDoFs > &mg_constrained_dofs, const unsigned int level, const std::vector< unsigned int > &selected_row_blocks=std::vector< unsigned int >()) |
|
size_type | m () const |
|
size_type | n () const |
|
void | vmult_interface_down (LinearAlgebra::distributed::Vector< double > &dst, const LinearAlgebra::distributed::Vector< double > &src) const |
|
void | vmult_interface_up (LinearAlgebra::distributed::Vector< double > &dst, const LinearAlgebra::distributed::Vector< double > &src) const |
|
void | vmult (LinearAlgebra::distributed::Vector< double > &dst, const LinearAlgebra::distributed::Vector< double > &src) const |
|
void | Tvmult (LinearAlgebra::distributed::Vector< double > &dst, const LinearAlgebra::distributed::Vector< double > &src) const |
|
void | vmult_add (LinearAlgebra::distributed::Vector< double > &dst, const LinearAlgebra::distributed::Vector< double > &src) const |
|
void | Tvmult_add (LinearAlgebra::distributed::Vector< double > &dst, const LinearAlgebra::distributed::Vector< double > &src) const |
|
value_type | el (const unsigned int row, const unsigned int col) const |
|
virtual std::size_t | memory_consumption () const |
|
void | initialize_dof_vector (LinearAlgebra::distributed::Vector< double > &vec) const |
|
std::shared_ptr< const MatrixFree< dim, value_type, VectorizedArray< typename LinearAlgebra::distributed::Vector< double > ::value_type > > > | get_matrix_free () const |
|
const std::shared_ptr< DiagonalMatrix< LinearAlgebra::distributed::Vector< double > > > & | get_matrix_diagonal_inverse () const |
|
const std::shared_ptr< DiagonalMatrix< LinearAlgebra::distributed::Vector< double > > > & | get_matrix_diagonal () const |
|
void | precondition_Jacobi (LinearAlgebra::distributed::Vector< double > &dst, const LinearAlgebra::distributed::Vector< double > &src, const value_type omega) const |
|
| Subscriptor () |
|
| Subscriptor (const Subscriptor &) |
|
| Subscriptor (Subscriptor &&) noexcept |
|
virtual | ~Subscriptor () |
|
Subscriptor & | operator= (const Subscriptor &) |
|
Subscriptor & | operator= (Subscriptor &&) noexcept |
|
void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
|
void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
|
unsigned int | n_subscriptions () const |
|
template<typename StreamType > |
void | list_subscribers (StreamType &stream) const |
|
void | list_subscribers () const |
|
template<class Archive > |
void | serialize (Archive &ar, const unsigned int version) |
|
template<int dim, int fe_degree, int n_q_points_1d = fe_degree + 1, int n_components = 1, typename VectorType = LinearAlgebra::distributed::Vector<double>, typename VectorizedArrayType = VectorizedArray<typename VectorType::value_type>>
class MatrixFreeOperators::MassOperator< dim, fe_degree, n_q_points_1d, n_components, VectorType, VectorizedArrayType >
This class implements the operation of the action of a mass matrix.
Note that this class only supports the non-blocked vector variant of the Base operator because only a single FEEvaluation object is used in the apply function.
- Author
- Daniel Arndt, 2016
Definition at line 747 of file operators.h.
template<int dim, int fe_degree, int n_q_points_1d = fe_degree + 1, int n_components = 1, typename VectorType = LinearAlgebra::distributed::Vector<double>, typename VectorizedArrayType = VectorizedArray<typename VectorType::value_type>>
size_type needed for preconditioner classes.
Definition at line 760 of file operators.h.
template<int dim, int fe_degree, int n_q_points_1d = fe_degree + 1, int n_components = 1, typename VectorType = LinearAlgebra::distributed::Vector<double>, typename VectorizedArrayType = VectorizedArray<typename VectorType::value_type>>
void MatrixFreeOperators::MassOperator< dim, fe_degree, n_q_points_1d, n_components, VectorType, VectorizedArrayType >::local_apply_cell |
( |
const MatrixFree< dim, value_type, VectorizedArrayType > & |
data, |
|
|
VectorType & |
dst, |
|
|
const VectorType & |
src, |
|
|
const std::pair< unsigned int, unsigned int > & |
cell_range |
|
) |
| const |
|
private |
For this operator, there is just a cell contribution.
Definition at line 1859 of file operators.h.