From: Daniel Arndt Date: Sat, 16 Jun 2018 23:53:54 +0000 (+0200) Subject: Reinsert dofs/function_map.h includes X-Git-Tag: v9.1.0-rc1~1019^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F6787%2Fhead;p=dealii.git Reinsert dofs/function_map.h includes --- diff --git a/include/deal.II/dofs/deprecated_function_map.h b/include/deal.II/dofs/deprecated_function_map.h new file mode 100644 index 0000000000..045a72fb59 --- /dev/null +++ b/include/deal.II/dofs/deprecated_function_map.h @@ -0,0 +1,91 @@ +// --------------------------------------------------------------------- +// +// Copyright (C) 2018 by the deal.II authors +// +// This file is part of the deal.II library. +// +// The deal.II library is free software; you can use it, redistribute +// it, and/or modify it under the terms of the GNU Lesser General +// Public License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// The full text of the license can be found in the file LICENSE.md at +// the top level directory of deal.II. +// +// --------------------------------------------------------------------- + +#ifndef dealii_deprecated_function_map_h +#define dealii_deprecated_function_map_h + +#include + +#include + +DEAL_II_NAMESPACE_OPEN + +template +class Function; + + + +/** + * This class declares a local typedef that denotes a mapping between a + * boundary indicator (see + * @ref GlossBoundaryIndicator) + * that is used to describe what kind of boundary condition holds on a + * particular piece of the boundary, and the function describing the actual + * function that provides the boundary values on this part of the boundary. + * This type is required in many functions in the library where, for example, + * we need to know about the functions $h_i(\mathbf x)$ used in boundary + * conditions + * @f{align*}{ + * \mathbf n \cdot \nabla u = h_i \qquad \qquad + * \text{on}\ \Gamma_i\subset\partial\Omega. + * @f} + * An example is the function KellyErrorEstimator::estimate() that allows us + * to provide a set of functions $h_i$ for all those boundary indicators $i$ + * for which the boundary condition is supposed to be of Neumann type. Of + * course, the same kind of principle can be applied to cases where we care + * about Dirichlet values, where one needs to provide a map from boundary + * indicator $i$ to Dirichlet function $h_i$ if the boundary conditions are + * given as + * @f{align*}{ + * u = h_i \qquad \qquad \text{on}\ \Gamma_i\subset\partial\Omega. + * @f} + * This is, for example, the case for the VectorTools::interpolate() + * functions. + * + * Tutorial programs step-6, step-7 and step-8 show examples of how to use + * function arguments of this type in situations where we actually have an + * empty map (i.e., we want to describe that no part of the boundary is + * a Neumann boundary). step-16 actually uses it in a case where one of the + * parts of the boundary uses a boundary indicator for which we want to use a + * function object. + * + * It seems odd at first to declare this typedef inside a class, rather than + * declaring a typedef at global scope. The reason is that C++ does not allow + * to define templated typedefs, where here in fact we want a typedef that + * depends on the space dimension. (Defining templated typedefs is something + * that is possible starting with the C++11 standard, but that wasn't possible + * within the C++98 standard in place when this programming pattern was + * conceived.) + * + * @ingroup functions + * @author Wolfgang Bangerth, Ralf Hartmann, 2001 + */ +template +struct DEAL_II_DEPRECATED FunctionMap +{ + /** + * Declare the type as discussed above. Since we can't name it FunctionMap + * (as that would ambiguate a possible constructor of this class), name it + * in the fashion of the standard container local typedefs. + * + * @deprecated Use the alias type directly. + */ + DEAL_II_DEPRECATED + typedef std::map *> type; +}; + +DEAL_II_NAMESPACE_CLOSE + +#endif diff --git a/include/deal.II/dofs/dof_handler.h b/include/deal.II/dofs/dof_handler.h index 557abd90b6..bc214020d6 100644 --- a/include/deal.II/dofs/dof_handler.h +++ b/include/deal.II/dofs/dof_handler.h @@ -27,6 +27,7 @@ #include #include +#include #include #include #include diff --git a/include/deal.II/dofs/function_map.h b/include/deal.II/dofs/function_map.h index 3d48930f8e..acc9b88154 100644 --- a/include/deal.II/dofs/function_map.h +++ b/include/deal.II/dofs/function_map.h @@ -1,6 +1,6 @@ // --------------------------------------------------------------------- // -// Copyright (C) 2001 - 2017 by the deal.II authors +// Copyright (C) 2001 - 2018 by the deal.II authors // // This file is part of the deal.II library. // @@ -15,78 +15,11 @@ #ifndef dealii_function_map_h #define dealii_function_map_h -#warning This file is deprecated. #include -#include +#include -DEAL_II_NAMESPACE_OPEN - -template -class Function; - - - -/** - * This class declares a local typedef that denotes a mapping between a - * boundary indicator (see - * @ref GlossBoundaryIndicator) - * that is used to describe what kind of boundary condition holds on a - * particular piece of the boundary, and the function describing the actual - * function that provides the boundary values on this part of the boundary. - * This type is required in many functions in the library where, for example, - * we need to know about the functions $h_i(\mathbf x)$ used in boundary - * conditions - * @f{align*}{ - * \mathbf n \cdot \nabla u = h_i \qquad \qquad - * \text{on}\ \Gamma_i\subset\partial\Omega. - * @f} - * An example is the function KellyErrorEstimator::estimate() that allows us - * to provide a set of functions $h_i$ for all those boundary indicators $i$ - * for which the boundary condition is supposed to be of Neumann type. Of - * course, the same kind of principle can be applied to cases where we care - * about Dirichlet values, where one needs to provide a map from boundary - * indicator $i$ to Dirichlet function $h_i$ if the boundary conditions are - * given as - * @f{align*}{ - * u = h_i \qquad \qquad \text{on}\ \Gamma_i\subset\partial\Omega. - * @f} - * This is, for example, the case for the VectorTools::interpolate() - * functions. - * - * Tutorial programs step-6, step-7 and step-8 show examples of how to use - * function arguments of this type in situations where we actually have an - * empty map (i.e., we want to describe that no part of the boundary is - * a Neumann boundary). step-16 actually uses it in a case where one of the - * parts of the boundary uses a boundary indicator for which we want to use a - * function object. - * - * It seems odd at first to declare this typedef inside a class, rather than - * declaring a typedef at global scope. The reason is that C++ does not allow - * to define templated typedefs, where here in fact we want a typedef that - * depends on the space dimension. (Defining templated typedefs is something - * that is possible starting with the C++11 standard, but that wasn't possible - * within the C++98 standard in place when this programming pattern was - * conceived.) - * - * @ingroup functions - * @author Wolfgang Bangerth, Ralf Hartmann, 2001 - */ -template -struct DEAL_II_DEPRECATED FunctionMap -{ - /** - * Declare the type as discussed above. Since we can't name it FunctionMap - * (as that would ambiguate a possible constructor of this class), name it - * in the fashion of the standard container local typedefs. - * - * @deprecated Use the alias type directly. - */ - DEAL_II_DEPRECATED - typedef std::map *> type; -}; - -DEAL_II_NAMESPACE_CLOSE +#warning "This file is deprecated." #endif diff --git a/include/deal.II/hp/dof_handler.h b/include/deal.II/hp/dof_handler.h index d2dbda18a2..3fc75a6343 100644 --- a/include/deal.II/hp/dof_handler.h +++ b/include/deal.II/hp/dof_handler.h @@ -26,6 +26,7 @@ #include #include +#include #include #include #include diff --git a/include/deal.II/numerics/error_estimator.h b/include/deal.II/numerics/error_estimator.h index 973ad4fe1c..7737b9b3aa 100644 --- a/include/deal.II/numerics/error_estimator.h +++ b/include/deal.II/numerics/error_estimator.h @@ -22,6 +22,8 @@ #include #include +#include + #include #include diff --git a/include/deal.II/numerics/matrix_tools.h b/include/deal.II/numerics/matrix_tools.h index 66b5686478..9ec667af1b 100644 --- a/include/deal.II/numerics/matrix_tools.h +++ b/include/deal.II/numerics/matrix_tools.h @@ -23,6 +23,8 @@ #include #include +#include + #include #include diff --git a/include/deal.II/numerics/vector_tools.h b/include/deal.II/numerics/vector_tools.h index 8053d63f4e..b813a0b49f 100644 --- a/include/deal.II/numerics/vector_tools.h +++ b/include/deal.II/numerics/vector_tools.h @@ -24,6 +24,7 @@ #include #include +#include #include #include