16 #ifndef dealii_block_info_h 17 #define dealii_block_info_h 19 #include <deal.II/base/subscriptor.h> 20 #include <deal.II/base/memory_consumption.h> 21 #include <deal.II/lac/block_indices.h> 25 DEAL_II_NAMESPACE_OPEN
109 template <
int dim,
int spacedim>
116 template <
int dim,
int spacedim>
160 print(OS &stream)
const;
172 template <
class Archive>
174 const unsigned int );
265 for (
unsigned int i=0; i<
global().
size(); ++i)
269 if (
local().size() == 0)
271 os <<
"local dofs not initialized" << std::endl;
275 os <<
"local dofs " << std::setw(5) <<
local().
total_size() <<
" blocks";
276 for (
unsigned int i=0; i<
local().
size(); ++i)
281 for (
unsigned int l=0; l<
levels.size(); ++l)
283 os <<
"level " << std::setw(2) << l <<
" dofs " << std::setw(5) <<
level(l).
total_size() <<
" blocks";
284 for (
unsigned int i=0; i<
level(l).
size(); ++i)
302 template <
class Archive>
314 DEAL_II_NAMESPACE_CLOSE
const BlockIndices & local() const
std::vector< types::global_dof_index > local_renumbering
#define AssertIndexRange(index, range)
size_type block_size(const unsigned int i) const
unsigned int base_element(const unsigned int i) const
size_type total_size() const
const BlockIndices & level(unsigned int level) const
void print(OS &stream) const
std::size_t memory_consumption() const
unsigned int global_dof_index
unsigned int n_base_elements() const
BlockIndices bi_global
The block structure of the global system.
void initialize(const DoFHandler< dim, spacedim > &, bool levels_only=false, bool active_only=false)
Fill the object with values describing block structure of the DoFHandler.
void serialize(Archive &ar, const unsigned int)
void initialize_local(const DoFHandler< dim, spacedim > &)
Initialize block structure on cells and compute renumbering between cell dofs and block cell dofs...
std::vector< BlockIndices > levels
The multilevel block structure.
types::global_dof_index renumber(const unsigned int i) const
A small class collecting the different BlockIndices involved in global, multilevel and local computat...
unsigned int size() const
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)