Reference documentation for deal.II version 9.2.0
|
#include <deal.II/base/quadrature_lib.h>
#include <deal.II/base/template_constraints.h>
#include <deal.II/base/types.h>
#include <deal.II/base/utilities.h>
#include <deal.II/distributed/tria.h>
#include <deal.II/dofs/dof_accessor.h>
#include <deal.II/dofs/dof_handler.h>
#include <deal.II/dofs/dof_renumbering.h>
#include <deal.II/dofs/dof_tools.h>
#include <deal.II/fe/fe.h>
#include <deal.II/grid/tria.h>
#include <deal.II/grid/tria_iterator.h>
#include <deal.II/hp/dof_handler.h>
#include <deal.II/hp/fe_collection.h>
#include <deal.II/hp/fe_values.h>
#include <deal.II/lac/affine_constraints.h>
#include <deal.II/lac/dynamic_sparsity_pattern.h>
#include <deal.II/lac/sparsity_pattern.h>
#include <deal.II/lac/sparsity_tools.h>
#include <deal.II/multigrid/mg_tools.h>
#include <boost/config.hpp>
#include <boost/graph/adjacency_list.hpp>
#include <boost/graph/bandwidth.hpp>
#include <boost/graph/cuthill_mckee_ordering.hpp>
#include <boost/graph/king_ordering.hpp>
#include <boost/graph/minimum_degree_ordering.hpp>
#include <boost/graph/properties.hpp>
#include <boost/random.hpp>
#include <boost/random/uniform_int_distribution.hpp>
#include <algorithm>
#include <cmath>
#include <functional>
#include <map>
#include <vector>
#include "dof_renumbering.inst"
Go to the source code of this file.
Classes | |
struct | DoFRenumbering::internal::ClockCells< dim > |
Namespaces | |
DoFRenumbering | |
DoFRenumbering::boost | |
DoFRenumbering::boost::boosttypes | |
DoFRenumbering::boost::internal | |
DoFRenumbering::internal | |
Macros | |
#define | BOOST_BIND_GLOBAL_PLACEHOLDERS |
Typedefs | |
using | DoFRenumbering::boost::boosttypes::Graph = adjacency_list< vecS, vecS, undirectedS, property< vertex_color_t, default_color_type, property< vertex_degree_t, int > >> |
using | DoFRenumbering::boost::boosttypes::Vertex = graph_traits< Graph >::vertex_descriptor |
using | DoFRenumbering::boost::boosttypes::size_type = graph_traits< Graph >::vertices_size_type |
using | DoFRenumbering::boost::boosttypes::Pair = std::pair< size_type, size_type > |
Functions | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::boost::internal::create_graph (const DoFHandlerType &dof_handler, const bool use_constraints, boosttypes::Graph &graph, boosttypes::property_map< boosttypes::Graph, boosttypes::vertex_degree_t >::type &graph_degree) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::boost::Cuthill_McKee (DoFHandlerType &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::boost::compute_Cuthill_McKee (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &, const bool reversed_numbering=false, const bool use_constraints=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::boost::king_ordering (DoFHandlerType &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::boost::compute_king_ordering (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &, const bool reversed_numbering=false, const bool use_constraints=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::boost::minimum_degree (DoFHandlerType &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::boost::compute_minimum_degree (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &, const bool reversed_numbering=false, const bool use_constraints=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::Cuthill_McKee (DoFHandlerType &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<typename DoFHandlerType > | |
void | DoFRenumbering::compute_Cuthill_McKee (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &, 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<typename DoFHandlerType > | |
void | DoFRenumbering::Cuthill_McKee (DoFHandlerType &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 >()) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_cell_wise (std::vector< types::global_dof_index > &new_indices, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof, const typename std::vector< typename DoFHandlerType::active_cell_iterator > &cells) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::cell_wise (DoFHandlerType &dof, const unsigned int level, const typename std::vector< typename DoFHandlerType::level_cell_iterator > &cells) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_cell_wise (std::vector< types::global_dof_index > &new_order, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof, const unsigned int level, const typename std::vector< typename DoFHandlerType::level_cell_iterator > &cells) |
Component-wise numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::component_wise (DoFHandlerType &dof_handler, const std::vector< unsigned int > &target_component=std::vector< unsigned int >()) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::component_wise (DoFHandlerType &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 typename identity< CellIterator >::type &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> | |
void | DoFRenumbering::block_wise (hp::DoFHandler< dim, spacedim > &dof_handler) |
template<int dim, int spacedim, class ITERATOR , class ENDITERATOR > | |
types::global_dof_index | DoFRenumbering::compute_block_wise (std::vector< types::global_dof_index > &new_dof_indices, const ITERATOR &start, const ENDITERATOR &end, bool is_level_operation) |
Directional numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::downstream (DoFHandlerType &dof_handler, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::downstream (DoFHandlerType &dof_handler, const unsigned int level, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof_handler, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof_handler, const unsigned int level, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::clockwise_dg (DoFHandlerType &dof_handler, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::clockwise_dg (DoFHandlerType &dof_handler, const unsigned int level, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_clockwise_dg (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter) |
Selective and random numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::sort_selected_dofs_back (DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::sort_selected_dofs_back (DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::random (DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::random (DoFHandlerType &dof_handler, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const unsigned int level) |
Numberings based on cell attributes | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::subdomain_wise (DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_subdomain_wise (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler) |
Component-wise numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::component_wise (DoFHandlerType &dof_handler, const std::vector< unsigned int > &target_component=std::vector< unsigned int >()) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::component_wise (DoFHandlerType &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 typename identity< CellIterator >::type &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 (hp::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 ITERATOR , class ENDITERATOR > | |
types::global_dof_index | DoFRenumbering::compute_block_wise (std::vector< types::global_dof_index > &new_dof_indices, const ITERATOR &start, const ENDITERATOR &end, bool is_level_operation) |
Various cell-wise numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::hierarchical (DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::cell_wise (DoFHandlerType &dof_handler, const std::vector< typename DoFHandlerType::active_cell_iterator > &cell_order) |
Selective and random numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::sort_selected_dofs_back (DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::sort_selected_dofs_back (DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::random (DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::random (DoFHandlerType &dof_handler, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const unsigned int level) |
Directional numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::downstream (DoFHandlerType &dof_handler, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof_handler, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::downstream (DoFHandlerType &dof_handler, const unsigned int level, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof_handler, const unsigned int level, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::clockwise_dg (DoFHandlerType &dof_handler, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_clockwise_dg (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::clockwise_dg (DoFHandlerType &dof_handler, const unsigned int level, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter=false) |
Numberings based on cell attributes | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::subdomain_wise (DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_subdomain_wise (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler) |
Component-wise numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::component_wise (DoFHandlerType &dof_handler, const std::vector< unsigned int > &target_component=std::vector< unsigned int >()) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::component_wise (DoFHandlerType &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 typename identity< CellIterator >::type &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> | |
void | DoFRenumbering::block_wise (hp::DoFHandler< dim, spacedim > &dof_handler) |
template<int dim, int spacedim, class ITERATOR , class ENDITERATOR > | |
types::global_dof_index | DoFRenumbering::compute_block_wise (std::vector< types::global_dof_index > &new_dof_indices, const ITERATOR &start, const ENDITERATOR &end, bool is_level_operation) |
Directional numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::downstream (DoFHandlerType &dof_handler, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::downstream (DoFHandlerType &dof_handler, const unsigned int level, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof_handler, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_downstream (std::vector< types::global_dof_index > &new_dof_indices, std::vector< types::global_dof_index > &reverse, const DoFHandlerType &dof_handler, const unsigned int level, const Tensor< 1, DoFHandlerType::space_dimension > &direction, const bool dof_wise_renumbering) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::clockwise_dg (DoFHandlerType &dof_handler, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::clockwise_dg (DoFHandlerType &dof_handler, const unsigned int level, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter=false) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_clockwise_dg (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const Point< DoFHandlerType::space_dimension > ¢er, const bool counter) |
Selective and random numberings | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::sort_selected_dofs_back (DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::sort_selected_dofs_back (DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_sort_selected_dofs_back (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const std::vector< bool > &selected_dofs, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::random (DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::random (DoFHandlerType &dof_handler, const unsigned int level) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_random (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler, const unsigned int level) |
Numberings based on cell attributes | |
template<typename DoFHandlerType > | |
void | DoFRenumbering::subdomain_wise (DoFHandlerType &dof_handler) |
template<typename DoFHandlerType > | |
void | DoFRenumbering::compute_subdomain_wise (std::vector< types::global_dof_index > &new_dof_indices, const DoFHandlerType &dof_handler) |
#define BOOST_BIND_GLOBAL_PLACEHOLDERS |
Definition at line 45 of file dof_renumbering.cc.