From 91fe6cfda27169dd95acd5c89cc0f5a86c749738 Mon Sep 17 00:00:00 2001 From: Martin Kronbichler Date: Sun, 6 Apr 2014 17:25:25 +0000 Subject: [PATCH] Update documentation git-svn-id: https://svn.dealii.org/trunk@32722 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/include/deal.II/dofs/dof_tools.h | 27 ++++++++++++++---------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/deal.II/include/deal.II/dofs/dof_tools.h b/deal.II/include/deal.II/dofs/dof_tools.h index 22a6a74efa..45f72ff92d 100644 --- a/deal.II/include/deal.II/dofs/dof_tools.h +++ b/deal.II/include/deal.II/dofs/dof_tools.h @@ -1656,18 +1656,23 @@ namespace DoFTools * works on algebraic properties of the respective matrix, it has no * chance to detect whether the matrix comes from a scalar or a * vector valued problem. However, a near null space supplies - * exactly the needed information about these components. The null - * space will consist of as many vectors as there are true arguments - * in component_mask (see @ref GlossComponentMask), each of - * which will be one in one vector component and zero in all - * others. We store this object in a vector of vectors, where the - * outer vector is of the size of the number of selected components, - * and each inner vector has as many components as there are - * (locally owned) degrees of freedom in the selected - * components. Note that any matrix associated with this null space + * exactly the needed information about the components placement of vector + * components within the matrix. The null space (or rather, the constant + * modes) is provided by the finite element underlying the given DoFHandler + * and for most elements, the null space will consist of as many vectors as + * there are true arguments in component_mask (see @ref + * GlossComponentMask), each of which will be one in one vector component + * and zero in all others. However, the representation of the constant + * function for e.g. FE_DGP is different (the first component on each + * element one, all other components zero), and some scalar elements may + * even have two constant modes (FE_Q_DG0). Therefore, we store this object + * in a vector of vectors, where the outer vector contains the collection of + * the actual constant modes on the DoFHandler. Each inner vector has as + * many components as there are (locally owned) degrees of freedom in the + * selected components. Note that any matrix associated with this null space * must have been constructed using the same component_mask - * argument, since the numbering of DoFs is done relative to the - * selected dofs, not to all dofs. + * argument, since the numbering of DoFs is done relative to the selected + * dofs, not to all dofs. * * The main reason for this program is the use of the null space * with the AMG preconditioner. -- 2.39.5