Flow123d  release_2.2.0-914-gf1a3a4f
Public Types | Public Member Functions | Protected Attributes | List of all members
DOFHandlerBase Class Referenceabstract

#include <dofhandler.hh>

Inheritance diagram for DOFHandlerBase:
Inheritance graph
[legend]
Collaboration diagram for DOFHandlerBase:
Collaboration graph
[legend]

Public Types

typedef ElementFullIter CellIterator
 Alias for iterator over cells. More...
 

Public Member Functions

 DOFHandlerBase (Mesh &_mesh)
 Constructor. More...
 
const unsigned int n_global_dofs () const
 Getter for the number of all mesh dofs required by the given finite element. More...
 
const unsigned int offset () const
 Returns the number of the first global dof handled by this DOFHandler. More...
 
const unsigned int lsize () const
 Returns the number of dofs on the current process. More...
 
const unsigned int loffset () const
 Returns the offset of the local part of dofs. More...
 
const unsigned int max_elem_dofs () const
 Returns max. number of dofs on one element. More...
 
Distributiondistr () const
 Returns the parallel distribution of dofs. More...
 
Meshmesh () const
 Returns the mesh. More...
 
virtual unsigned int get_dof_indices (const CellIterator &cell, std::vector< IdxInt > &indices) const =0
 Fill vector of the global indices of dofs associated to the cell. More...
 
virtual unsigned int get_loc_dof_indices (const CellIterator &cell, std::vector< IdxInt > &indices) const =0
 Fill vector of the indices of dofs associated to the cell on the local process. More...
 
virtual void get_dof_values (const CellIterator &cell, const Vec &values, double local_values[]) const =0
 Returns the dof values associated to the cell. More...
 
virtual std::size_t hash () const =0
 Compute hash value of DOF handler. More...
 
virtual ~DOFHandlerBase ()
 Destructor. More...
 

Protected Attributes

unsigned int global_dof_offset
 Index of first global dof. More...
 
unsigned int n_dofs
 Number of global dofs assigned by the handler. More...
 
unsigned int lsize_
 Number of dofs associated to local process. More...
 
unsigned int loffset_
 Index of the first dof on the local process. More...
 
unsigned int max_elem_dofs_
 Max. number of dofs per element. More...
 
Meshmesh_
 Pointer to the mesh to which the dof handler is associated. More...
 
Distributionds_
 Distribution of dofs associated to local process. More...
 

Detailed Description

Class DOFHandlerBase provides an abstract interface for various dof handlers:

Definition at line 40 of file dofhandler.hh.

Member Typedef Documentation

Alias for iterator over cells.

TODO: Notation to be fixed: element or cell TODO: Iterator goes through cells of all dimensions, but should go only through dim-dimensional ones.

Definition at line 47 of file dofhandler.hh.

Constructor & Destructor Documentation

DOFHandlerBase::DOFHandlerBase ( Mesh _mesh)
inline

Constructor.

Parameters
_meshThe mesh.

Definition at line 47 of file dofhandler.hh.

virtual DOFHandlerBase::~DOFHandlerBase ( )
inlinevirtual

Destructor.

Definition at line 127 of file dofhandler.hh.

Member Function Documentation

Distribution* DOFHandlerBase::distr ( ) const
inline

Returns the parallel distribution of dofs.

Definition at line 88 of file dofhandler.hh.

virtual unsigned int DOFHandlerBase::get_dof_indices ( const CellIterator cell,
std::vector< IdxInt > &  indices 
) const
pure virtual

Fill vector of the global indices of dofs associated to the cell.

Parameters
cellThe cell.
indicesVector of dof indices on the cell.

Implemented in DOFHandlerMultiDim.

Here is the caller graph for this function:

virtual void DOFHandlerBase::get_dof_values ( const CellIterator cell,
const Vec &  values,
double  local_values[] 
) const
pure virtual

Returns the dof values associated to the cell.

Parameters
cellThe cell.
valuesThe global vector of values.
local_valuesArray of values at local dofs.

Implemented in DOFHandlerMultiDim.

Here is the caller graph for this function:

virtual unsigned int DOFHandlerBase::get_loc_dof_indices ( const CellIterator cell,
std::vector< IdxInt > &  indices 
) const
pure virtual

Fill vector of the indices of dofs associated to the cell on the local process.

Parameters
cellThe cell.
indicesVector of dof indices on the cell.

Implemented in DOFHandlerMultiDim.

Here is the caller graph for this function:

virtual std::size_t DOFHandlerBase::hash ( ) const
pure virtual

Compute hash value of DOF handler.

Implemented in DOFHandlerMultiDim.

Here is the caller graph for this function:

const unsigned int DOFHandlerBase::loffset ( ) const
inline

Returns the offset of the local part of dofs.

Definition at line 78 of file dofhandler.hh.

const unsigned int DOFHandlerBase::lsize ( ) const
inline

Returns the number of dofs on the current process.

Definition at line 73 of file dofhandler.hh.

const unsigned int DOFHandlerBase::max_elem_dofs ( ) const
inline

Returns max. number of dofs on one element.

Definition at line 83 of file dofhandler.hh.

Mesh* DOFHandlerBase::mesh ( ) const
inline

Returns the mesh.

Definition at line 93 of file dofhandler.hh.

const unsigned int DOFHandlerBase::n_global_dofs ( ) const
inline

Getter for the number of all mesh dofs required by the given finite element.

Definition at line 62 of file dofhandler.hh.

const unsigned int DOFHandlerBase::offset ( ) const
inline

Returns the number of the first global dof handled by this DOFHandler.

Definition at line 68 of file dofhandler.hh.

Here is the caller graph for this function:

Member Data Documentation

Distribution* DOFHandlerBase::ds_
protected

Distribution of dofs associated to local process.

Definition at line 166 of file dofhandler.hh.

unsigned int DOFHandlerBase::global_dof_offset
protected

Index of first global dof.

Positive value indicates that the first global_dof_offset entries in the global dof vector are reserved for a different DOFHandler.

Definition at line 127 of file dofhandler.hh.

unsigned int DOFHandlerBase::loffset_
protected

Index of the first dof on the local process.

Definition at line 153 of file dofhandler.hh.

unsigned int DOFHandlerBase::lsize_
protected

Number of dofs associated to local process.

Definition at line 148 of file dofhandler.hh.

unsigned int DOFHandlerBase::max_elem_dofs_
protected

Max. number of dofs per element.

Definition at line 156 of file dofhandler.hh.

Mesh* DOFHandlerBase::mesh_
protected

Pointer to the mesh to which the dof handler is associated.

Definition at line 161 of file dofhandler.hh.

unsigned int DOFHandlerBase::n_dofs
protected

Number of global dofs assigned by the handler.

Definition at line 143 of file dofhandler.hh.


The documentation for this class was generated from the following file: