deal.II version GIT relicensing-2250-g88cb8ba3cb 2024-12-13 12:20:00+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
dof_renumbering.h File Reference
#include <deal.II/base/config.h>
#include <deal.II/base/exceptions.h>
#include <deal.II/base/point.h>
#include <deal.II/dofs/dof_handler.h>
#include <vector>

Go to the source code of this file.

Classes

struct  DoFRenumbering::CompareDownstream< Iterator, dim >
 
struct  DoFRenumbering::ComparePointwiseDownstream< dim >
 

Namespaces

namespace  DoFRenumbering
 
namespace  DoFRenumbering::boost
 

Functions

template<int dim, int spacedim>
void DoFRenumbering::boost::Cuthill_McKee (DoFHandler< dim, spacedim > &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false)
 
template<int dim, int spacedim>
void DoFRenumbering::boost::compute_Cuthill_McKee (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &, const bool reversed_numbering=false, const bool use_constraints=false)
 
template<int dim, int spacedim>
void DoFRenumbering::boost::king_ordering (DoFHandler< dim, spacedim > &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false)
 
template<int dim, int spacedim>
void DoFRenumbering::boost::compute_king_ordering (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &, const bool reversed_numbering=false, const bool use_constraints=false)
 
template<int dim, int spacedim>
void DoFRenumbering::boost::minimum_degree (DoFHandler< dim, spacedim > &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false)
 
template<int dim, int spacedim>
void DoFRenumbering::boost::compute_minimum_degree (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &, const bool reversed_numbering=false, const bool use_constraints=false)
 
template<int dim, int spacedim>
void DoFRenumbering::Cuthill_McKee (DoFHandler< dim, spacedim > &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false, const std::vector< types::global_dof_index > &starting_indices=std::vector< types::global_dof_index >())
 
template<int dim, int spacedim>
void DoFRenumbering::compute_Cuthill_McKee (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &, const bool reversed_numbering=false, const bool use_constraints=false, const std::vector< types::global_dof_index > &starting_indices=std::vector< types::global_dof_index >(), const unsigned int level=numbers::invalid_unsigned_int)
 
template<int dim, int spacedim>
void DoFRenumbering::Cuthill_McKee (DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, const bool reversed_numbering=false, const std::vector< types::global_dof_index > &starting_indices=std::vector< types::global_dof_index >())
 
static ::ExceptionBaseDoFRenumbering::ExcDoFHandlerNotInitialized ()
 
static ::ExceptionBaseDoFRenumbering::ExcInvalidComponentOrder ()
 
static ::ExceptionBaseDoFRenumbering::ExcNotDGFEM ()
 
Component-wise numberings
template<int dim, int spacedim>
void DoFRenumbering::component_wise (DoFHandler< dim, spacedim > &dof_handler, const std::vector< unsigned int > &target_component=std::vector< unsigned int >())
 
template<int dim, int spacedim>
void DoFRenumbering::component_wise (DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, const std::vector< unsigned int > &target_component=std::vector< unsigned int >())
 
template<int dim, int spacedim, typename CellIterator >
types::global_dof_index DoFRenumbering::compute_component_wise (std::vector< types::global_dof_index > &new_dof_indices, const CellIterator &start, const std_cxx20::type_identity_t< CellIterator > &end, const std::vector< unsigned int > &target_component, const bool is_level_operation)
 
Block-wise numberings
template<int dim, int spacedim>
void DoFRenumbering::block_wise (DoFHandler< dim, spacedim > &dof_handler)
 
template<int dim, int spacedim>
void DoFRenumbering::block_wise (DoFHandler< dim, spacedim > &dof_handler, const unsigned int level)
 
template<int dim, int spacedim, class IteratorType , class EndIteratorType >
types::global_dof_index DoFRenumbering::compute_block_wise (std::vector< types::global_dof_index > &new_dof_indices, const IteratorType &start, const EndIteratorType &end, const bool is_level_operation)
 
Various cell-wise numberings
template<int dim, int spacedim>
void DoFRenumbering::hierarchical (DoFHandler< dim, spacedim > &dof_handler)
 
template<int dim, int spacedim>
void DoFRenumbering::cell_wise (DoFHandler< dim, spacedim > &dof_handler, const std::vector< typename DoFHandler< dim, spacedim >::active_cell_iterator > &cell_order)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_cell_wise (std::vector< types::global_dof_index > &renumbering, std::vector< types::global_dof_index > &inverse_renumbering, const DoFHandler< dim, spacedim > &dof_handler, const std::vector< typename DoFHandler< dim, spacedim >::active_cell_iterator > &cell_order)
 
template<int dim, int spacedim>
void DoFRenumbering::cell_wise (DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, const std::vector< typename DoFHandler< dim, spacedim >::level_cell_iterator > &cell_order)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_cell_wise (std::vector< types::global_dof_index > &renumbering, std::vector< types::global_dof_index > &inverse_renumbering, const DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, const std::vector< typename DoFHandler< dim, spacedim >::level_cell_iterator > &cell_order)
 
Directional numberings
template<int dim, int spacedim>
void DoFRenumbering::downstream (DoFHandler< dim, spacedim > &dof_handler, const Tensor< 1, spacedim > &direction, const bool dof_wise_renumbering=false)
 
template<int dim, int spacedim>
void DoFRenumbering::downstream (DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, const Tensor< 1, spacedim > &direction, const bool dof_wise_renumbering=false)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandler< dim, spacedim > &dof_handler, const Tensor< 1, spacedim > &direction, const bool dof_wise_renumbering)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, const Tensor< 1, spacedim > &direction, const bool dof_wise_renumbering)
 
template<int dim, int spacedim>
void DoFRenumbering::clockwise_dg (DoFHandler< dim, spacedim > &dof_handler, const Point< spacedim > &center, const bool counter=false)
 
template<int dim, int spacedim>
void DoFRenumbering::clockwise_dg (DoFHandler< dim, spacedim > &dof_handler, const unsigned int level, const Point< spacedim > &center, const bool counter=false)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_clockwise_dg (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &dof_handler, const Point< spacedim > &center, const bool counter)
 
Selective and random numberings
template<int dim, int spacedim>
void DoFRenumbering::sort_selected_dofs_back (DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs)
 
template<int dim, int spacedim>
void DoFRenumbering::sort_selected_dofs_back (DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level)
 
template<int dim, int spacedim>
void DoFRenumbering::random (DoFHandler< dim, spacedim > &dof_handler)
 
template<int dim, int spacedim>
void DoFRenumbering::random (DoFHandler< dim, spacedim > &dof_handler, const unsigned int level)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &dof_handler)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &dof_handler, const unsigned int level)
 
Numberings based on cell attributes
template<int dim, int spacedim>
void DoFRenumbering::subdomain_wise (DoFHandler< dim, spacedim > &dof_handler)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_subdomain_wise (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &dof_handler)
 
Numberings based on properties of the finite element space
template<int dim, int spacedim>
void DoFRenumbering::support_point_wise (DoFHandler< dim, spacedim > &dof_handler)
 
template<int dim, int spacedim>
void DoFRenumbering::compute_support_point_wise (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandler< dim, spacedim > &dof_handler)
 
Numberings for better performance with the MatrixFree infrastructure
template<int dim, int spacedim, typename Number , typename VectorizedArrayType >
void DoFRenumbering::matrix_free_data_locality (DoFHandler< dim, spacedim > &dof_handler, const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free)
 
template<int dim, int spacedim, typename Number , typename AdditionalDataType >
void DoFRenumbering::matrix_free_data_locality (DoFHandler< dim, spacedim > &dof_handler, const AffineConstraints< Number > &constraints, const AdditionalDataType &matrix_free_additional_data)
 
template<int dim, int spacedim, typename Number , typename VectorizedArrayType >
std::vector< types::global_dof_indexDoFRenumbering::compute_matrix_free_data_locality (const DoFHandler< dim, spacedim > &dof_handler, const MatrixFree< dim, Number, VectorizedArrayType > &matrix_free)
 
template<int dim, int spacedim, typename Number , typename AdditionalDataType >
std::vector< types::global_dof_indexDoFRenumbering::compute_matrix_free_data_locality (const DoFHandler< dim, spacedim > &dof_handler, const AffineConstraints< Number > &constraints, const AdditionalDataType &matrix_free_additional_data)