Reference documentation for deal.II version 9.2.0
\(\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_objects.cc
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 
18 
21 
22 #include <deal.II/fe/fe.h>
23 
25 
26 namespace internal
27 {
28  namespace DoFHandlerImplementation
29  {
30  template <int dim>
31  std::size_t
33  {
35  }
36 
37 
38 
39  template <int dim>
40  template <int dh_dim, int spacedim>
41  void
43  const ::DoFHandler<dh_dim, spacedim> &dof_handler,
44  const unsigned int obj_index,
45  const unsigned int fe_index,
46  const unsigned int local_index,
48  {
49  (void)fe_index;
50  Assert(
52  ExcMessage(
53  "Only the default FE index is allowed for non-hp DoFHandler objects"));
54  Assert(
55  local_index < dof_handler.get_fe().template n_dofs_per_object<dim>(),
56  ExcIndexRange(local_index,
57  0,
58  dof_handler.get_fe().template n_dofs_per_object<dim>()));
59  Assert(obj_index *
60  dof_handler.get_fe().template n_dofs_per_object<dim>() +
61  local_index <
62  dofs.size(),
64 
65  dofs[obj_index * dof_handler.get_fe().template n_dofs_per_object<dim>() +
66  local_index] = global_index;
67  }
68  } // namespace DoFHandlerImplementation
69 } // namespace internal
70 
71 
72 // explicit instantiations
73 namespace internal
74 {
75  namespace DoFHandlerImplementation
76  {
77 #include "dof_objects.inst"
78  }
79 } // namespace internal
80 
memory_consumption.h
dof_objects.h
internal::DoFHandlerImplementation::DoFObjects::memory_consumption
std::size_t memory_consumption() const
Definition: dof_objects.cc:32
DoFHandler
Definition: dof_handler.h:205
StandardExceptions::ExcIndexRange
static ::ExceptionBase & ExcIndexRange(int arg1, int arg2, int arg3)
StandardExceptions::ExcMessage
static ::ExceptionBase & ExcMessage(std::string arg1)
internal::DoFHandlerImplementation::DoFObjects::set_dof_index
void set_dof_index(const ::DoFHandler< dh_dim, spacedim > &dof_handler, const unsigned int obj_index, const unsigned int fe_index, const unsigned int local_index, const types::global_dof_index global_index)
Definition: dof_objects.cc:42
DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_OPEN
Definition: config.h:358
MemoryConsumption::memory_consumption
std::enable_if< std::is_fundamental< T >::value, std::size_t >::type memory_consumption(const T &t)
Definition: memory_consumption.h:268
fe.h
exceptions.h
unsigned int
StandardExceptions::ExcInternalError
static ::ExceptionBase & ExcInternalError()
Assert
#define Assert(cond, exc)
Definition: exceptions.h:1419
dof_handler.h
internal
Definition: aligned_vector.h:369
DEAL_II_NAMESPACE_CLOSE
#define DEAL_II_NAMESPACE_CLOSE
Definition: config.h:359
TrilinosWrappers::global_index
TrilinosWrappers::types::int_type global_index(const Epetra_BlockMap &map, const ::types::global_dof_index i)
Definition: trilinos_index_access.h:82