Reference documentation for deal.II version Git e12e976e47 2020-11-24 09:52:11 +0100
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
dof_faces.h
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2006 - 2018 by the deal.II authors
4 //
5 // This file is part of the deal.II library.
6 //
7 // The deal.II library is free software; you can use it, redistribute
8 // it, and/or modify it under the terms of the GNU Lesser General
9 // Public License as published by the Free Software Foundation; either
10 // version 2.1 of the License, or (at your option) any later version.
11 // The full text of the license can be found in the file LICENSE.md at
12 // the top level directory of deal.II.
13 //
14 // ---------------------------------------------------------------------
15 
16 #ifndef dealii_dof_faces_h
17 #define dealii_dof_faces_h
18 
19 
20 #include <deal.II/base/config.h>
21 
23 
25 
26 #include <vector>
27 
29 
30 namespace internal
31 {
38  namespace DoFHandlerImplementation
39  {
67  template <int dim>
68  class DoFFaces
69  {
70  public:
75  DoFFaces() = delete;
76  };
77 
82  template <>
83  class DoFFaces<1>
84  {
85  public:
90  std::size_t
91  memory_consumption() const;
92 
97  template <class Archive>
98  void
99  serialize(Archive &ar, const unsigned int version);
100  };
101 
106  template <>
107  class DoFFaces<2>
108  {
109  public:
114 
119  std::size_t
120  memory_consumption() const;
121 
126  template <class Archive>
127  void
128  serialize(Archive &ar, const unsigned int version);
129  };
130 
135  template <>
136  class DoFFaces<3>
137  {
138  public:
143 
148 
153  std::size_t
154  memory_consumption() const;
155 
160  template <class Archive>
161  void
162  serialize(Archive &ar, const unsigned int version);
163  };
164 
165 
166 
167  template <class Archive>
168  void
169  DoFFaces<1>::serialize(Archive &, const unsigned int)
170  {}
171 
172 
173  template <class Archive>
174  void
175  DoFFaces<2>::serialize(Archive &ar, const unsigned int)
176  {
177  ar &lines;
178  }
179 
180 
181  template <class Archive>
182  void
183  DoFFaces<3>::serialize(Archive &ar, const unsigned int)
184  {
185  ar &lines &quads;
186  }
187 
188  } // namespace DoFHandlerImplementation
189 } // namespace internal
190 
192 
193 #endif
internal::DoFHandlerImplementation::DoFObjects< 2 > quads
Definition: dof_faces.h:147
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:372
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:371
internal::DoFHandlerImplementation::DoFObjects< 1 > lines
Definition: dof_faces.h:142
internal::DoFHandlerImplementation::DoFObjects< 1 > lines
Definition: dof_faces.h:113
std::enable_if< std::is_fundamental< T >::value, std::size_t >::type memory_consumption(const T &t)