deal.II version GIT relicensing-2287-g6548a49e0a 2024-12-20 18:30:00+00:00
|
#include <deal.II/matrix_free/constraint_info.h>
Public Member Functions | |
ConstraintInfo () | |
void | set_locally_owned_indices (const IndexSet &locally_owned_indices) |
void | reinit (const DoFHandler< dim > &dof_handler, const unsigned int n_cells, const bool use_fast_hanging_node_algorithm=true) |
void | read_dof_indices (const unsigned int cell_no, const unsigned int mg_level, const TriaIterator< DoFCellAccessor< dim, dim, false > > &cell, const ::AffineConstraints< typename Number::value_type > &constraints, const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner) |
void | reinit (const unsigned int n_cells) |
void | read_dof_indices (const unsigned int cell_no, const std::vector< types::global_dof_index > &dof_indices, const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner) |
void | finalize () |
std::shared_ptr< const Utilities::MPI::Partitioner > | finalize (const MPI_Comm comm) |
template<typename T , typename VectorType > | |
void | read_write_operation (const T &operation, VectorType &global_vector, Number *local_vector, const unsigned int first_cell, const unsigned int n_cells, const unsigned int n_dofs_per_cell, const bool apply_constraints) const |
void | apply_hanging_node_constraints (const unsigned int first_cell, const unsigned int n_lanes_filled, const bool transpose, AlignedVector< Number > &evaluation_data_coarse) const |
std::size_t | memory_consumption () const |
Public Attributes | |
std::vector< unsigned int > | dof_indices |
std::vector< std::pair< unsigned short, unsigned short > > | constraint_indicator |
std::vector< std::pair< unsigned int, unsigned int > > | row_starts |
std::vector< unsigned int > | plain_dof_indices |
std::vector< unsigned int > | row_starts_plain_indices |
std::vector< typename Number::value_type > | constraint_pool_data |
std::vector< unsigned int > | constraint_pool_row_index |
std::vector< ShapeInfo< typename Number::value_type > > | shape_infos |
std::vector< compressed_constraint_kind > | hanging_node_constraint_masks |
std::vector< unsigned int > | active_fe_indices |
Private Member Functions | |
const Number::value_type * | constraint_pool_begin (const unsigned int row) const |
const Number::value_type * | constraint_pool_end (const unsigned int row) const |
Private Attributes | |
ConstraintValues< double > | constraint_values |
std::vector< std::vector< unsigned int > > | dof_indices_per_cell |
std::vector< std::vector< unsigned int > > | plain_dof_indices_per_cell |
std::vector< std::vector< std::pair< unsigned short, unsigned short > > > | constraint_indicator_per_cell |
std::unique_ptr< HangingNodes< dim > > | hanging_nodes |
std::vector< std::vector< unsigned int > > | lexicographic_numbering |
std::vector< types::global_dof_index > | local_dof_indices |
std::vector< types::global_dof_index > | local_dof_indices_lex |
std::vector< ConstraintKinds > | mask |
IndexSet | locally_owned_indices |
std::pair< types::global_dof_index, types::global_dof_index > | local_range |
A helper class to apply constraints in matrix-free loops in user code. It combines constraint related functionalities from MatrixFree and FEEvaluation.
Definition at line 84 of file constraint_info.h.
internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::ConstraintInfo | ( | ) |
Constructor.
Definition at line 273 of file constraint_info.h.
void internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::set_locally_owned_indices | ( | const IndexSet & | locally_owned_indices | ) |
Set locally owned indices to accelerate the conversion of global to local indices.
Definition at line 281 of file constraint_info.h.
|
inline |
Version 1: indices are extracted from DoFCellAccessor and constraints are resolved with the help of AffineConstraints.
Definition at line 298 of file constraint_info.h.
|
inline |
Definition at line 359 of file constraint_info.h.
|
inline |
Version 2: no constraints, indices are user-provided.
Definition at line 348 of file constraint_info.h.
|
inline |
Definition at line 492 of file constraint_info.h.
|
inline |
Definition at line 549 of file constraint_info.h.
|
inline |
Definition at line 636 of file constraint_info.h.
|
inline |
Definition at line 770 of file constraint_info.h.
|
inline |
Definition at line 854 of file constraint_info.h.
|
inline |
Return the memory consumption of the allocated memory in this class.
Definition at line 932 of file constraint_info.h.
|
inlineprivate |
Definition at line 906 of file constraint_info.h.
|
inlineprivate |
Definition at line 919 of file constraint_info.h.
|
private |
Definition at line 160 of file constraint_info.h.
|
private |
Definition at line 161 of file constraint_info.h.
|
private |
Definition at line 162 of file constraint_info.h.
|
private |
Definition at line 164 of file constraint_info.h.
|
private |
Definition at line 166 of file constraint_info.h.
|
private |
Definition at line 167 of file constraint_info.h.
|
private |
Definition at line 169 of file constraint_info.h.
|
private |
Definition at line 170 of file constraint_info.h.
|
private |
Definition at line 171 of file constraint_info.h.
|
private |
Definition at line 173 of file constraint_info.h.
|
private |
Definition at line 174 of file constraint_info.h.
std::vector<unsigned int> internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::dof_indices |
Definition at line 178 of file constraint_info.h.
std::vector<std::pair<unsigned short, unsigned short> > internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::constraint_indicator |
Definition at line 180 of file constraint_info.h.
std::vector<std::pair<unsigned int, unsigned int> > internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::row_starts |
Definition at line 181 of file constraint_info.h.
std::vector<unsigned int> internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::plain_dof_indices |
Definition at line 183 of file constraint_info.h.
std::vector<unsigned int> internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::row_starts_plain_indices |
Definition at line 184 of file constraint_info.h.
std::vector<typename Number::value_type> internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::constraint_pool_data |
Definition at line 187 of file constraint_info.h.
std::vector<unsigned int> internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::constraint_pool_row_index |
Definition at line 188 of file constraint_info.h.
std::vector<ShapeInfo<typename Number::value_type> > internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::shape_infos |
Definition at line 190 of file constraint_info.h.
std::vector<compressed_constraint_kind> internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::hanging_node_constraint_masks |
Definition at line 191 of file constraint_info.h.
std::vector<unsigned int> internal::MatrixFreeFunctions::ConstraintInfo< dim, Number, IndexType >::active_fe_indices |
Definition at line 192 of file constraint_info.h.