#include <utils.h>
Public Types | |
using | value_type = number |
using | VectorizedArrayType = VectorizedArray<number> |
using | VectorType = LinearAlgebra::distributed::Vector<number> |
Public Member Functions | |
LaplaceOperatorDG () | |
void | reinit (const Mapping< dim > &mapping, const DoFHandler< dim > &dof_handler, const unsigned int level=numbers::invalid_unsigned_int) |
void | vmult (LinearAlgebra::distributed::Vector< number > &dst, const LinearAlgebra::distributed::Vector< number > &src) const |
void | Tvmult (LinearAlgebra::distributed::Vector< number > &dst, const LinearAlgebra::distributed::Vector< number > &src) const |
void | Tvmult_add (LinearAlgebra::distributed::Vector< number > &dst, const LinearAlgebra::distributed::Vector< number > &src) const |
void | vmult_add (LinearAlgebra::distributed::Vector< number > &dst, const LinearAlgebra::distributed::Vector< number > &src) const |
types::global_dof_index | m () const |
types::global_dof_index | n () const |
number | el (const unsigned int row, const unsigned int col) const |
void | initialize_dof_vector (LinearAlgebra::distributed::Vector< number > &vector) const |
const DoFHandler< dim > & | get_dof_handler () const |
const Triangulation< dim > & | get_triangulation () const |
const LinearAlgebra::distributed::Vector< number > & | get_matrix_diagonal_inverse () const |
const MatrixFree< dim, number > * | get_matrix_free () const |
const TrilinosWrappers::SparseMatrix & | get_system_matrix () const |
void | get_system_matrix (TrilinosWrappers::SparseMatrix &mg_matrix) const |
void | rhs (LinearAlgebra::distributed::Vector< number > &b) const |
void | compute_inverse_diagonal () |
Public Member Functions inherited from Subscriptor | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) noexcept | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | serialize (Archive &ar, const unsigned int version) |
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 |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
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 |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
Private Member Functions | |
void | local_apply (const MatrixFree< dim, number > &data, LinearAlgebra::distributed::Vector< number > &dst, const LinearAlgebra::distributed::Vector< number > &src, const std::pair< unsigned int, unsigned int > &cell_range) const |
void | local_apply_face (const MatrixFree< dim, number > &data, LinearAlgebra::distributed::Vector< number > &dst, const LinearAlgebra::distributed::Vector< number > &src, const std::pair< unsigned int, unsigned int > &face_range) const |
void | local_apply_boundary (const MatrixFree< dim, number > &data, LinearAlgebra::distributed::Vector< number > &dst, const LinearAlgebra::distributed::Vector< number > &src, const std::pair< unsigned int, unsigned int > &face_range) const |
void | local_diagonal_cell (const MatrixFree< dim, number > &data, LinearAlgebra::distributed::Vector< number > &dst, const unsigned int &, const std::pair< unsigned int, unsigned int > &cell_range) const |
void | local_diagonal_face (const MatrixFree< dim, number > &data, LinearAlgebra::distributed::Vector< number > &dst, const unsigned int &, const std::pair< unsigned int, unsigned int > &face_range) const |
void | local_diagonal_boundary (const MatrixFree< dim, number > &data, LinearAlgebra::distributed::Vector< number > &dst, const unsigned int &, const std::pair< unsigned int, unsigned int > &face_range) const |
Private Attributes | |
MatrixFree< dim, number > | data |
LinearAlgebra::distributed::Vector< number > | inverse_diagonal_entries |
int | fe_degree |
TrilinosWrappers::SparseMatrix | system_matrix |
AffineConstraints< number > | constraints |
Additional Inherited Members | |
Static Public Member Functions inherited from Subscriptor | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
Class that implements the action of symmetric interior penalty operator on a vector.
using Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::value_type = number |
using Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::VectorizedArrayType = VectorizedArray<number> |
using Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::VectorType = LinearAlgebra::distributed::Vector<number> |
|
inline |
|
inline |
Definition at line 767 of file utils.h.
References std::abs(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, e(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::inverse_diagonal_entries, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_boundary(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_cell(), and Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_face().
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::reinit().
|
inline |
Definition at line 465 of file utils.h.
References AssertThrow.
|
inline |
Definition at line 483 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data.
|
inline |
Definition at line 496 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::inverse_diagonal_entries.
|
inline |
Definition at line 503 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data.
|
inline |
Definition at line 511 of file utils.h.
References std::abs(), TrilinosWrappers::SparsityPattern::compress(), MatrixFreeTools::compute_matrix(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::constraints, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::fe_degree, EvaluationFlags::gradients, numbers::invalid_unsigned_int, TrilinosWrappers::SparseMatrix::m(), DoFTools::make_flux_sparsity_pattern(), MGTools::make_flux_sparsity_pattern(), std::max(), TrilinosWrappers::SparseMatrix::n(), TrilinosWrappers::SparseMatrix::reinit(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::system_matrix, and EvaluationFlags::values.
|
inline |
Definition at line 619 of file utils.h.
References std::abs(), AssertThrow, MatrixFreeTools::compute_matrix(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::constraints, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, SparsityTools::distribute_sparsity_pattern(), DoFTools::extract_locally_relevant_dofs(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::fe_degree, EvaluationFlags::gradients, DoFHandler< int dim, int spacedim >::locally_owned_dofs(), TrilinosWrappers::SparseMatrix::m(), DoFTools::make_flux_sparsity_pattern(), std::max(), TrilinosWrappers::SparseMatrix::n(), DoFHandler< int dim, int spacedim >::n_dofs(), TrilinosWrappers::SparseMatrix::reinit(), and EvaluationFlags::values.
|
inline |
Definition at line 490 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, and Triangulation< int dim, int spacedim >::get_triangulation().
|
inline |
Definition at line 475 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data.
|
inlineprivate |
Definition at line 789 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, and EvaluationFlags::gradients.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult_add().
|
inlineprivate |
Definition at line 862 of file utils.h.
References std::abs(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::fe_degree, EvaluationFlags::gradients, std::max(), and EvaluationFlags::values.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult_add().
|
inlineprivate |
Definition at line 810 of file utils.h.
References std::abs(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::fe_degree, EvaluationFlags::gradients, std::max(), and EvaluationFlags::values.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult_add().
|
inlineprivate |
Definition at line 1024 of file utils.h.
References std::abs(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::fe_degree, EvaluationFlags::gradients, std::max(), and EvaluationFlags::values.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::compute_inverse_diagonal().
|
inlineprivate |
Definition at line 899 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, and EvaluationFlags::gradients.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::compute_inverse_diagonal().
|
inlineprivate |
Definition at line 932 of file utils.h.
References std::abs(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::fe_degree, EvaluationFlags::gradients, std::max(), and EvaluationFlags::values.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::compute_inverse_diagonal().
|
inline |
Definition at line 453 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data.
|
inline |
Definition at line 459 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data.
|
inline |
Definition at line 376 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::compute_inverse_diagonal(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::constraints, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, FiniteElement< int dim, int spacedim >::degree, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::fe_degree, DoFHandler< int dim, int spacedim >::get_fe(), level, MatrixFree::AdditionalData::mapping_update_flags_boundary_faces, MatrixFree::AdditionalData::mapping_update_flags_inner_faces, MatrixFree::AdditionalData::mg_level, MatrixFree::AdditionalData::tasks_block_size, MatrixFree::AdditionalData::tasks_parallel_scheme, update_gradients, and update_JxW_values.
|
inline |
Definition at line 724 of file utils.h.
References b(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, and EvaluationFlags::values.
|
inline |
Definition at line 408 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult_add().
|
inline |
Definition at line 416 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult_add().
|
inline |
Definition at line 400 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult_add().
|
inline |
Definition at line 423 of file utils.h.
References Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::data, Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply_boundary(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply_face(), LinearAlgebra::distributed::Vector< typename Number, typename MemorySpace >::partitioners_are_globally_compatible(), LinearAlgebra::distributed::Vector< typename Number, typename MemorySpace >::reinit(), LinearAlgebra::distributed::Vector< typename Number, typename MemorySpace >::swap(), swap(), and LinearAlgebra::distributed::Vector< typename Number, typename MemorySpace >::zero_out_ghost_values().
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::Tvmult(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::Tvmult_add(), and Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult().
|
private |
Definition at line 1078 of file utils.h.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_system_matrix(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_system_matrix(), and Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::reinit().
|
private |
Definition at line 1074 of file utils.h.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::compute_inverse_diagonal(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_dof_handler(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_matrix_free(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_system_matrix(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_system_matrix(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_triangulation(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::initialize_dof_vector(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply_boundary(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply_face(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_boundary(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_cell(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_face(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::m(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::n(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::reinit(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::rhs(), and Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::vmult_add().
|
private |
Definition at line 1076 of file utils.h.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_system_matrix(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_system_matrix(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply_boundary(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_apply_face(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_boundary(), Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::local_diagonal_face(), and Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::reinit().
|
private |
|
mutableprivate |
Definition at line 1077 of file utils.h.
Referenced by Utils::LaplaceOperatorDG< dim, degree, n_qpoints, n_components, number >::get_system_matrix().