deal.II version GIT relicensing-2287-g6548a49e0a 2024-12-20 18:30:00+00:00
|
Namespaces | |
namespace | boosttypes |
namespace | internal |
Functions | |
template<int dim, int spacedim> | |
void | Cuthill_McKee (DoFHandler< dim, spacedim > &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false) |
template<int dim, int spacedim> | |
void | 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 | king_ordering (DoFHandler< dim, spacedim > &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false) |
template<int dim, int spacedim> | |
void | 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 | minimum_degree (DoFHandler< dim, spacedim > &dof_handler, const bool reversed_numbering=false, const bool use_constraints=false) |
template<int dim, int spacedim> | |
void | 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) |
A namespace for the implementation of some renumbering algorithms based on algorithms implemented in the Boost Graph Library (BGL) by Jeremy Siek and others.
While often slightly slower to compute, the algorithms using BOOST often lead to matrices with smaller bandwidths and sparse ILUs based on this numbering are therefore more efficient.
For a comparison of these algorithms with the ones defined in DoFRenumbering, see the comparison section in the documentation of the DoFRenumbering namespace.
|
private |
Renumber the degrees of freedom according to the Cuthill-McKee method, eventually using the reverse numbering scheme.
See the general documentation of the parent class for details on the different methods.
As an example of the results of this algorithm, take a look at the comparison of various algorithms in the documentation of the DoFRenumbering namespace.
Definition at line 129 of file dof_renumbering.cc.
|
private |
Compute the renumbering vector needed by the Cuthill_McKee() function. Does not perform the renumbering on the DoFHandler dofs but returns the renumbering vector.
Definition at line 149 of file dof_renumbering.cc.
|
private |
Renumber the degrees of freedom based on the BOOST implementation of the King algorithm. This often results in slightly larger (by a few percent) bandwidths than the Cuthill-McKee algorithm, but sparse ILUs are often slightly (also by a few percent) better preconditioners.
As an example of the results of this algorithm, take a look at the comparison of various algorithms in the documentation of the DoFRenumbering namespace.
This algorithm is used in step-22.
Definition at line 191 of file dof_renumbering.cc.
|
private |
Compute the renumbering for the King algorithm but do not actually renumber the degrees of freedom in the DoF handler argument.
Definition at line 211 of file dof_renumbering.cc.
|
private |
Renumber the degrees of freedom based on the BOOST implementation of the minimum degree algorithm. Unlike the Cuthill-McKee algorithm, this algorithm does not attempt to minimize the bandwidth of a matrix but to minimize the amount of fill-in when doing an LU decomposition. It may sometimes yield better ILUs because of this property.
As an example of the results of this algorithm, take a look at the comparison of various algorithms in the documentation of the DoFRenumbering namespace.
Definition at line 247 of file dof_renumbering.cc.
|
private |
Compute the renumbering for the minimum degree algorithm but do not actually renumber the degrees of freedom in the DoF handler argument.
Definition at line 267 of file dof_renumbering.cc.