From 4c4d1e16ff9db428a3e311440cb8b846d4f9686a Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Fri, 22 May 1998 07:38:35 +0000 Subject: [PATCH] Doc updates. git-svn-id: https://svn.dealii.org/trunk@329 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/deal.II/include/fe/fe.h | 17 ++++++++++++++++- deal.II/deal.II/include/numerics/matrices.h | 15 +++++++++------ deal.II/deal.II/include/numerics/vectors.h | 16 +++++++++++++--- 3 files changed, 38 insertions(+), 10 deletions(-) diff --git a/deal.II/deal.II/include/fe/fe.h b/deal.II/deal.II/include/fe/fe.h index 2514f1c50e..6e3fad1ca8 100644 --- a/deal.II/deal.II/include/fe/fe.h +++ b/deal.II/deal.II/include/fe/fe.h @@ -408,7 +408,7 @@ struct FiniteElementBase : public FiniteElementData { * the present library). * * Both these assumptions are used when interpolation of a continuous - * function to the finite element space is applied. At present, only two + * function to the finite element space is applied. At present, only few * places where this is used in the library come to mind to the author, * namely the treating of boundary values in the #ProblemBase# class and * the interpolation in the #VectorCreator# collection. You should also @@ -416,6 +416,21 @@ struct FiniteElementBase : public FiniteElementData { * made if you want to use elements of other classes. A hint may be the * use of the #get_ansatz_points# and #get_face_ansatz_points# functions * of this class. + * + * \item Vanishing of basis functions on faces: when projecting a function + * to the boundary, use if made of the assumption that all basis functions + * on a cell adjacent to the boundary vanish on the boundary except for those + * on the boundary face itself. For Lagrange elements this is true, but it + * may or may not be true in other cases. + * + * This assumption is used in the #VectorTools::project_boundary_values#, + * #MatrixCreator::create_boundary_mass_matrix#, + * #DoFHandler::make_boundary_sparsity_pattern#, + * #DoFHandler::map_dof_to_boundary_indices# and may be a few other places. + * The places in the #DoFHandler# class are probably not that dangerous, + * since wrong results will most likely lead to internal errors through + * the #Assert# mechanism, but the first places will lead to undiscovered + * errors if not thought of properly. * \end{itemize} * * @author Wolfgang Bangerth, 1998 diff --git a/deal.II/deal.II/include/numerics/matrices.h b/deal.II/deal.II/include/numerics/matrices.h index c61dccc150..692df0603b 100644 --- a/deal.II/deal.II/include/numerics/matrices.h +++ b/deal.II/deal.II/include/numerics/matrices.h @@ -8,7 +8,6 @@ #include #include -#include template class Triangulation; template class DoFHandler; @@ -231,6 +230,15 @@ class MatrixCreator { const Function &rhs, dVector &rhs_vector, const Function *a = 0); + + /** + * Exception + */ + DeclException0 (ExcNotImplemented); + /** + * Exception + */ + DeclException0 (ExcInternalError); }; @@ -318,11 +326,6 @@ class MatrixTools : public MatrixCreator { dSMatrix &matrix, dVector &solution, dVector &right_hand_side); - - /** - * Exception - */ - DeclException0 (ExcNotImplemented); }; diff --git a/deal.II/deal.II/include/numerics/vectors.h b/deal.II/deal.II/include/numerics/vectors.h index c5a7ff36db..81c4812ae6 100644 --- a/deal.II/deal.II/include/numerics/vectors.h +++ b/deal.II/deal.II/include/numerics/vectors.h @@ -121,7 +121,7 @@ enum NormType { * Within this function, boundary values are interpolated, i.e. a node is given * the point value of the boundary function. In some cases, it may be necessary * to use the L2-projection of the boundary function or any other method. For - * this purpose other functions refer to the #VectorTools::project_boundary_values# + * this purpose to the #VectorTools::project_boundary_values# * function below. * * You should be aware that the boundary function may be evaluated at nodes @@ -259,7 +259,12 @@ class VectorTools { * to Dirichlet boundary conditions * and the values they are to be * assigned, by interpolation around - * the boundary. + * the boundary. If the + * #boundary_values# contained values + * before, the new ones are added, or + * the old one overwritten if a node + * of the boundary part to be prjected + * on already was in the variable. * * See the general doc for more * information. @@ -273,7 +278,12 @@ class VectorTools { /** * Project #function# to the boundary * of the domain, using the given quadrature - * formula for the faces. + * formula for the faces. If the + * #boundary_values# contained values + * before, the new ones are added, or + * the old one overwritten if a node + * of the boundary part to be prjected + * on already was in the variable. * * See the general documentation of this * class for further information. -- 2.39.5