From: Guido Kanschat Date: Thu, 29 Sep 2005 12:43:49 +0000 (+0000) Subject: added more documentation X-Git-Tag: v8.0.0~13053 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7e8dec0f06763ae6ba46a4902c9abf8b3609ca2e;p=dealii.git added more documentation git-svn-id: https://svn.dealii.org/trunk@11550 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/deal.II/include/fe/fe.h b/deal.II/deal.II/include/fe/fe.h index 19040d23ed..440a9ab2ab 100644 --- a/deal.II/deal.II/include/fe/fe.h +++ b/deal.II/deal.II/include/fe/fe.h @@ -224,6 +224,8 @@ template class FECollection; * be performed for several space dimensions. Therefore, some * functions in FETools have been provided to help with these tasks. * + *
Computing the correct basis from "raw" basis functions
+ * * First, aready the basis of the shape function space may be * difficult to implement for arbitrary order and dimension. On the * other hand, if the @ref GlossNodes "node values" are given, then @@ -254,6 +256,45 @@ template class FECollection; * #generalized_support_points and implementation of interpolate() * with VectorSlice argument. * + * The piece of code in the constructor of a finite element + * responsible for this looks like + * @code + FullMatrix M(this->dofs_per_cell, this->dofs_per_cell); + FETools::compute_node_matrix(M, *this); + this->inverse_node_matrix.reinit(this->dofs_per_cell, this->dofs_per_cell); + this->inverse_node_matrix.invert(M); + * @endcode + * Don't forget to make sure that #unit_support_points or + * #generalized_support_points are initialized before this! + * + *
Computing the #prolongation matrices for multigrid
+ * + * Once the shape functions are set up, the grid transfer matrices for + * Multigrid accessed by get_prolongation_matrix() can be computed + * automatically, using FETools::compute_embedding_matrices(). + * + * This can be achieved by + * @code + for (unsigned int i=0; i::children_per_cell; ++i) + this->prolongation[i].reinit (this->dofs_per_cell, + this->dofs_per_cell); + FETools::compute_embedding_matrices (*this, &this->prolongation[0]); + * @endcode + * + *
Computing the #restriction matrices for error estimators
+ * + * missing... + * + *
Computing #interface_constraints
+ * + * Constraint matrices can be computed semi-automatically using + * FETools::compute_face_embedding_matrices(). This function computes + * the representation of the coarse mesh functions by fine mesh + * functions for each child of a face separately. These matrices must + * be convoluted into a single rectangular constraint matrix, + * eliminating degrees of freedom on common vertices and edges as well + * as on the coarse grid vertices. See the discussion above for details. + * * @author Wolfgang Bangerth, Guido Kanschat, Ralf Hartmann, 1998, 2000, 2001, 2005 */ template