Reference documentation for deal.II version Git 58efed1 2018-02-20 08:43:45 -0500
internal::DoFHandler::NumberCache Struct Reference

#include <deal.II/dofs/number_cache.h>

## Public Member Functions

NumberCache ()

NumberCache (const NumberCache &)=default

NumberCache (NumberCache &&)=default

NumberCache (const types::global_dof_index n_global_dofs)

NumberCache (const std::vector< IndexSet > &locally_owned_dofs_per_processor, const unsigned int my_rank)

NumberCacheoperator= (const NumberCache &)=default

NumberCacheoperator= (NumberCache &&)=default

std::size_t memory_consumption () const

void clear ()

template<class Archive >
void serialize (Archive &ar, const unsigned int version)

## Public Attributes

types::global_dof_index n_global_dofs

types::global_dof_index n_locally_owned_dofs

IndexSet locally_owned_dofs

std::vector< types::global_dof_indexn_locally_owned_dofs_per_processor

std::vector< IndexSetlocally_owned_dofs_per_processor

## Detailed Description

A structure used by the DoFHandler classes to store information about the degrees of freedom they deal with.

Definition at line 35 of file number_cache.h.

## Constructor & Destructor Documentation

 internal::DoFHandler::NumberCache::NumberCache ( )

Default constructor.

Definition at line 28 of file number_cache.cc.

 internal::DoFHandler::NumberCache::NumberCache ( const NumberCache & )
default

Copy constructor. Simply copy all members of the referenced object to the current object.

 internal::DoFHandler::NumberCache::NumberCache ( NumberCache && )
default

Move constructor. Simply move all members of the referenced object to the current object.

 internal::DoFHandler::NumberCache::NumberCache ( const types::global_dof_index n_global_dofs )

Create a NumberCache object that corresponds to a sequential DoFHandler object in which a single processor stores all degrees of freedom. (Here, "sequential" means that either the whole program does not use MPI, or that it uses MPI but only uses a single MPI process, or that there are multiple MPI processes but the Triangulation on which this DoFHandler builds works only on one MPI process.)

Definition at line 36 of file number_cache.cc.

 internal::DoFHandler::NumberCache::NumberCache ( const std::vector< IndexSet > & locally_owned_dofs_per_processor, const unsigned int my_rank )

Create a NumberCache object that corresponds to a parallel DoFHandler object with as many processors as the size of the given argument, in which each processor stores the degrees of freedom indicated in the corresponding element of the vector passed as first argument. The second argument indicates the rank among all participating processors the current processor has, so that we can set the locally_owned_dofs and n_locally_owned_dofs fields.

All other fields stored by the current object can be and are computed from the argument.

Definition at line 47 of file number_cache.cc.

## Member Function Documentation

 NumberCache& internal::DoFHandler::NumberCache::operator= ( const NumberCache & )
default

Copy operator. Simply copy all members of the referenced object to the current object.

 NumberCache& internal::DoFHandler::NumberCache::operator= ( NumberCache && )
default

Move assignment operator. Simply move all members of the referenced object to the current object.

 std::size_t internal::DoFHandler::NumberCache::memory_consumption ( ) const

Determine an estimate for the memory consumption (in bytes) of this object.

Definition at line 83 of file number_cache.cc.

 void internal::DoFHandler::NumberCache::clear ( )

This function resets all the stored information.

Definition at line 73 of file number_cache.cc.

template<class Archive >
 void internal::DoFHandler::NumberCache::serialize ( Archive & ar, const unsigned int version )

Read or write the data of this object to or from a stream for the purpose of serialization

Definition at line 166 of file number_cache.h.

## Member Data Documentation

 types::global_dof_index internal::DoFHandler::NumberCache::n_global_dofs

Total number of dofs, accumulated over all processors that may participate on this mesh.

Definition at line 109 of file number_cache.h.

 types::global_dof_index internal::DoFHandler::NumberCache::n_locally_owned_dofs

Number of dofs owned by this MPI process. If this is a sequential computation, then this equals n_global_dofs. (Here, "sequential" means that either the whole program does not use MPI, or that it uses MPI but only uses a single MPI process, or that there are multiple MPI processes but the Triangulation on which this DoFHandler builds works only on one MPI process.)

Definition at line 119 of file number_cache.h.

 IndexSet internal::DoFHandler::NumberCache::locally_owned_dofs

An index set denoting the set of locally owned dofs. If this is a sequential computation, then it contains the entire range [0,n_global_dofs). (Here, "sequential" means that either the whole program does not use MPI, or that it uses MPI but only uses a single MPI process, or that there are multiple MPI processes but the Triangulation on which this DoFHandler builds works only on one MPI process.)

Definition at line 130 of file number_cache.h.

 std::vector internal::DoFHandler::NumberCache::n_locally_owned_dofs_per_processor

The number of dofs owned by each of the various MPI processes. If this is a sequential computation, then the vector contains a single element equal to n_global_dofs. (Here, "sequential" means that either the whole program does not use MPI, or that it uses MPI but only uses a single MPI process, or that there are multiple MPI processes but the Triangulation on which this DoFHandler builds works only on one MPI process.)

Definition at line 141 of file number_cache.h.

 std::vector internal::DoFHandler::NumberCache::locally_owned_dofs_per_processor

The dofs owned by each of the various MPI processes. If this is a sequential DoFHandler, then the vector has a single element equal to locally_owned_dofs. (Here, "sequential" means that either the whole program does not use MPI, or that it uses MPI but only uses a single MPI process, or that there are multiple MPI processes but the Triangulation on which this DoFHandler builds works only on one MPI process.)

Definition at line 152 of file number_cache.h.

The documentation for this struct was generated from the following files: