From 9fde419c3b1db19be153201d42e79324897127de Mon Sep 17 00:00:00 2001 From: bangerth Date: Thu, 6 Mar 2008 21:52:05 +0000 Subject: [PATCH] Add some documentation. git-svn-id: https://svn.dealii.org/trunk@15866 0785d39b-7218-0410-832d-ea1e28bc413d --- .../deal.II/include/dofs/dof_renumbering.h | 108 ++++++++++++++++-- .../reorder_sparsity_step_31_boost_cmk.png | Bin 0 -> 7014 bytes .../reorder_sparsity_step_31_boost_king.png | Bin 0 -> 5963 bytes .../reorder_sparsity_step_31_boost_md.png | Bin 0 -> 15280 bytes .../reorder_sparsity_step_31_deal_cmk.png | Bin 0 -> 8934 bytes .../reorder_sparsity_step_31_original.png | Bin 0 -> 7770 bytes .../reorder_sparsity_step_31_random.png | Bin 0 -> 8652 bytes 7 files changed, 98 insertions(+), 10 deletions(-) create mode 100644 deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_cmk.png create mode 100644 deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_king.png create mode 100644 deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_md.png create mode 100644 deal.II/doc/doxygen/images/reorder_sparsity_step_31_deal_cmk.png create mode 100644 deal.II/doc/doxygen/images/reorder_sparsity_step_31_original.png create mode 100644 deal.II/doc/doxygen/images/reorder_sparsity_step_31_random.png diff --git a/deal.II/deal.II/include/dofs/dof_renumbering.h b/deal.II/deal.II/include/dofs/dof_renumbering.h index b72a0344b8..275115c012 100644 --- a/deal.II/deal.II/include/dofs/dof_renumbering.h +++ b/deal.II/deal.II/include/dofs/dof_renumbering.h @@ -201,14 +201,69 @@ DEAL_II_NAMESPACE_OPEN * standard library to do its work. * * + *

A comparison of reordering strategies

+ * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
+ * @image html "reorder_sparsity_step_31_original.png" + * + * @image html "reorder_sparsity_step_31_random.png" + * + * @image html "reorder_sparsity_step_31_deal_cmk.png" + * + * @image html "reorder_sparsity_step_31_boost_cmk.png" + * + * @image html "reorder_sparsity_step_31_boost_king.png" + * + * @image html "reorder_sparsity_step_31_boost_md.png" + *
+ * Enumeration as produced by deal.II's DoFHandler::distribute_dofs function + * + * Random enumeration as produced by applying DoFRenumbering::random + * after calling DoFHandler::distribute_dofs. + * + * Cuthill-McKee enumeration as produced by calling the deal.II implementation + * of the algorithm provided by DoFRenumbering::Cuthill_McKee + * after DoFHandler::distribute_dofs. + * + * Cuthill-McKee enumeration as produced by calling the BOOST implementation + * of the algorithm provided by DoFRenumbering::boost::Cuthill_McKee + * after DoFHandler::distribute_dofs. + * + * King enumeration as produced by calling the BOOST implementation + * of the algorithm provided by DoFRenumbering::boost::king_ordering + * after DoFHandler::distribute_dofs. + * + * Minimum degree enumeration as produced by calling the BOOST implementation + * of the algorithm provided by DoFRenumbering::boost::minimum_degree + * after DoFHandler::distribute_dofs. + *
+ * + * *

Multigrid DoF numbering

* - * Most algorithms also work on multigrid degree of freedom + * Most of the algorithms listed above also work on multigrid degree of freedom * numberings. Refer to the actual function declarations to get more * information on this. * * @ingroup dofs - * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2000, 2004, 2007 + * @author Wolfgang Bangerth, Guido Kanschat, 1998, 1999, 2000, 2004, 2007, 2008 */ class DoFRenumbering { @@ -242,6 +297,14 @@ class DoFRenumbering * 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. */ template static void @@ -278,6 +341,14 @@ class DoFRenumbering * 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. */ template static void @@ -304,15 +375,25 @@ class DoFRenumbering * freedom based on the BOOST * implementation of the * minimum degree - * algorithm. This often - * results in slightly larger - * (by a few percent) - * bandwidths than the + * algorithm. Unlike the * Cuthill-McKee algorithm, - * but sparse ILUs are often - * slightly (also by a few - * percent) better - * preconditioners. + * 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. */ template static void @@ -346,6 +427,13 @@ class DoFRenumbering * See the general documentation * of this 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. */ template static void diff --git a/deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_cmk.png b/deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_cmk.png new file mode 100644 index 0000000000000000000000000000000000000000..f8f8642f58b0ec82400803cf035d0b35e2917698 GIT binary patch literal 7014 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 literal 0 HcmV?d00001 diff --git a/deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_king.png b/deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_king.png new file mode 100644 index 0000000000000000000000000000000000000000..f652457fd1a0c89128e30453eaa00ee40142be60 GIT binary patch literal 5963 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
Pz@LZ98T@a(c*$ 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 PKUMq9&ek=S?3DiltWx{h literal 0 HcmV?d00001 diff --git a/deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_md.png b/deal.II/doc/doxygen/images/reorder_sparsity_step_31_boost_md.png new file mode 100644 index 0000000000000000000000000000000000000000..31fa1930c32058153a143f2799bbe6f7421b7e0d GIT binary patch literal 15280 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%0As?(vQV`aggF-o6MAS(d78zWEpT_#y7rK4m+4< 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 literal 0 HcmV?d00001 diff --git a/deal.II/doc/doxygen/images/reorder_sparsity_step_31_deal_cmk.png b/deal.II/doc/doxygen/images/reorder_sparsity_step_31_deal_cmk.png new file mode 100644 index 0000000000000000000000000000000000000000..fec1eb7cd5d44befd831777f8e9cf7cc10b13c8a GIT binary patch literal 8934 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 VY2bkI+i8I1td7{5*O?KL{|g^k$Nm5S literal 0 HcmV?d00001 diff --git a/deal.II/doc/doxygen/images/reorder_sparsity_step_31_original.png b/deal.II/doc/doxygen/images/reorder_sparsity_step_31_original.png new file mode 100644 index 0000000000000000000000000000000000000000..b38137b4994e67bef2fa98695b5e07fb4a5f49ab GIT binary patch literal 7770 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 literal 0 HcmV?d00001 diff --git a/deal.II/doc/doxygen/images/reorder_sparsity_step_31_random.png b/deal.II/doc/doxygen/images/reorder_sparsity_step_31_random.png new file mode 100644 index 0000000000000000000000000000000000000000..1f16ec0c05294f082bdc33c575df1c97f44255ba GIT binary patch literal 8652 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

0Un5yQH2*X#BMR%ieQzzgwMu9D{R|Vo)Irn% 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 PP94xzH&ClnK}P)_3Ze6E literal 0 HcmV?d00001 -- 2.39.5