16 #ifndef dealii_block_info_h 17 #define dealii_block_info_h 32 template <
int dim,
int spacedim>
36 template <
int dim,
int spacedim>
115 template <
int dim,
int spacedim>
118 bool levels_only =
false,
119 bool active_only =
false);
126 template <
int dim,
int spacedim>
129 bool levels_only =
false,
130 bool active_only =
false);
136 template <
int dim,
int spacedim>
145 template <
int dim,
int spacedim>
177 renumber(
const unsigned int i)
const;
183 n_base_elements()
const;
189 base_element(
const unsigned int i)
const;
196 print(OS &stream)
const;
209 template <
class Archive>
211 serialize(Archive &ar,
const unsigned int );
270 return local_renumbering[i];
279 return base_elements[i];
286 return base_elements.size();
295 os <<
"global dofs " << std::setw(5) << global().total_size() <<
" blocks";
296 for (
unsigned int i = 0; i < global().size(); ++i)
297 os <<
' ' << std::setw(5) << global().block_size(i);
300 if (local().size() == 0)
302 os <<
"local dofs not initialized" << std::endl;
306 os <<
"local dofs " << std::setw(5) << local().total_size()
308 for (
unsigned int i = 0; i < local().size(); ++i)
309 os <<
' ' << std::setw(5) << local().block_size(i);
313 for (
unsigned int l = 0;
l < levels.size(); ++
l)
315 os <<
"level " << std::setw(2) <<
l <<
" dofs " << std::setw(5)
316 <<
level(
l).total_size() <<
" blocks";
317 for (
unsigned int i = 0; i <
level(
l).size(); ++i)
318 os <<
' ' << std::setw(5) <<
level(
l).block_size(i);
334 template <
class Archive>
342 ar &local_renumbering;
const BlockIndices & local() const
std::vector< types::global_dof_index > local_renumbering
#define AssertIndexRange(index, range)
unsigned int base_element(const unsigned int i) const
const BlockIndices & level(unsigned int level) const
void print(OS &stream) const
std::size_t memory_consumption() const
#define DEAL_II_NAMESPACE_CLOSE
unsigned int n_base_elements() const
BlockIndices bi_global
The block structure of the global system.
void serialize(Archive &ar, const unsigned int)
std::vector< BlockIndices > levels
The multilevel block structure.
#define DEAL_II_NAMESPACE_OPEN
types::global_dof_index renumber(const unsigned int i) const
A small class collecting the different BlockIndices involved in global, multilevel and local computat...
BlockIndices bi_local
The block structure of the cell systems.
const BlockIndices & global() const
std::vector< unsigned int > base_elements
std::enable_if< std::is_fundamental< T >::value, std::size_t >::type memory_consumption(const T &t)
Tensor< 2, dim, Number > l(const Tensor< 2, dim, Number > &F, const Tensor< 2, dim, Number > &dF_dt)