Reference documentation for deal.II version 8.1.0
Public Types | Public Member Functions | Private Attributes | List of all members
MGConstrainedDoFs Class Reference

#include <mg_constrained_dofs.h>

Inheritance diagram for MGConstrainedDoFs:
[legend]

Public Types

typedef std::vector< std::set< types::global_dof_index > >::size_type size_dof
 

Public Member Functions

template<int dim, int spacedim>
void initialize (const DoFHandler< dim, spacedim > &dof)
 
template<int dim, int spacedim>
void initialize (const DoFHandler< dim, spacedim > &dof, const typename FunctionMap< dim >::type &function_map, const ComponentMask &component_mask=ComponentMask())
 
void clear ()
 
bool is_boundary_index (const unsigned int level, const types::global_dof_index index) const
 
bool non_refinement_edge_index (const unsigned int level, const types::global_dof_index index) const
 
bool at_refinement_edge (const unsigned int level, const types::global_dof_index index) const
 
bool at_refinement_edge_boundary (const unsigned int level, const types::global_dof_index index) const
 
const std::vector< std::set< types::global_dof_index > > & get_boundary_indices () const
 
const std::vector< std::set< types::global_dof_index > > & get_non_refinement_edge_indices () const
 
const std::vector< std::vector< bool > > & get_refinement_edge_indices () const
 
const std::vector< std::vector< bool > > & get_refinement_edge_boundary_indices () const
 
bool set_boundary_values () const
 
bool continuity_across_refinement_edges () const
 
- Public Member Functions inherited from Subscriptor
 Subscriptor ()
 
 Subscriptor (const Subscriptor &)
 
virtual ~Subscriptor ()
 
Subscriptoroperator= (const Subscriptor &)
 
void subscribe (const char *identifier=0) const
 
void unsubscribe (const char *identifier=0) const
 
unsigned int n_subscriptions () const
 
void list_subscribers () const
 
 DeclException3 (ExcInUse, int, char *, std::string &,<< "Object of class "<< arg2<< " is still used by "<< arg1<< " other objects.\n"<< "(Additional information: "<< arg3<< ")\n"<< "Note the entry in the Frequently Asked Questions of "<< "deal.II (linked to from http://www.dealii.org/) for "<< "more information on what this error means.")
 
 DeclException2 (ExcNoSubscriber, char *, char *,<< "No subscriber with identifier \""<< arg2<< "\" did subscribe to this object of class "<< arg1)
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

std::vector< std::set< types::global_dof_index > > boundary_indices
 
std::vector< std::set< types::global_dof_index > > non_refinement_edge_indices
 
std::vector< std::vector< bool > > refinement_edge_indices
 
std::vector< std::vector< bool > > refinement_edge_boundary_indices
 

Detailed Description

Collection of boundary constraints and refinement edge constraints for level vectors.

Definition at line 40 of file mg_constrained_dofs.h.

Member Function Documentation

template<int dim, int spacedim>
void MGConstrainedDoFs::initialize ( const DoFHandler< dim, spacedim > &  dof)
inline

Fill the internal data structures with values extracted from the dof handler.

This function leaves boundary_indices empty, since no boundary values are provided.

Definition at line 182 of file mg_constrained_dofs.h.

template<int dim, int spacedim>
void MGConstrainedDoFs::initialize ( const DoFHandler< dim, spacedim > &  dof,
const typename FunctionMap< dim >::type &  function_map,
const ComponentMask component_mask = ComponentMask() 
)
inline

Fill the internal data structures with values extracted from the dof handler, applying the boundary values provided.

Definition at line 203 of file mg_constrained_dofs.h.

void MGConstrainedDoFs::clear ( )
inline

Reset the data structures.

Definition at line 230 of file mg_constrained_dofs.h.

bool MGConstrainedDoFs::is_boundary_index ( const unsigned int  level,
const types::global_dof_index  index 
) const
inline

Determine whether a dof index is subject to a boundary constraint. (is on boundary of domain)

Definition at line 248 of file mg_constrained_dofs.h.

bool MGConstrainedDoFs::non_refinement_edge_index ( const unsigned int  level,
const types::global_dof_index  index 
) const
inline

Determine whether a dof index is at an edge that is not a refinement edge.

Definition at line 260 of file mg_constrained_dofs.h.

bool MGConstrainedDoFs::at_refinement_edge ( const unsigned int  level,
const types::global_dof_index  index 
) const
inline

Determine whether a dof index is at the refinement edge.

Definition at line 273 of file mg_constrained_dofs.h.

bool MGConstrainedDoFs::at_refinement_edge_boundary ( const unsigned int  level,
const types::global_dof_index  index 
) const
inline

Determine whether a dof index is at the refinement edge and subject to a boundary constraint . = is_boundary_index() && at_refinement_edge()

Definition at line 285 of file mg_constrained_dofs.h.

const std::vector< std::set< types::global_dof_index > > & MGConstrainedDoFs::get_boundary_indices ( ) const
inline

Return the indices of dofs for each level that lie on the boundary of the domain.

Definition at line 296 of file mg_constrained_dofs.h.

const std::vector< std::set< types::global_dof_index > > & MGConstrainedDoFs::get_non_refinement_edge_indices ( ) const
inline

Return the indices of dofs for each level that lie on the boundary of the domain.

Definition at line 303 of file mg_constrained_dofs.h.

const std::vector< std::vector< bool > > & MGConstrainedDoFs::get_refinement_edge_indices ( ) const
inline

Return the indices of dofs for each level that lie on the refinement edge (i.e. are on faces between cells of this level and cells on the level below).

Definition at line 310 of file mg_constrained_dofs.h.

const std::vector< std::vector< bool > > & MGConstrainedDoFs::get_refinement_edge_boundary_indices ( ) const
inline

Return the indices of dofs for each level that are in the intersection of the sets returned by get_boundary_indices() and get_refinement_edge_indices().

Definition at line 317 of file mg_constrained_dofs.h.

bool MGConstrainedDoFs::set_boundary_values ( ) const
inline

Return if boundary_indices need to be set or not.

Definition at line 324 of file mg_constrained_dofs.h.

bool MGConstrainedDoFs::continuity_across_refinement_edges ( ) const
inline

Return if the finite element requires continuity across refinement edges.

Definition at line 333 of file mg_constrained_dofs.h.

Member Data Documentation

std::vector<std::set<types::global_dof_index> > MGConstrainedDoFs::boundary_indices
private

The indices of boundary dofs for each level.

Definition at line 155 of file mg_constrained_dofs.h.

std::vector<std::set<types::global_dof_index> > MGConstrainedDoFs::non_refinement_edge_indices
private

The degrees of freedom on egdges that are not a refinement edge between a level and coarser cells.

Definition at line 161 of file mg_constrained_dofs.h.

std::vector<std::vector<bool> > MGConstrainedDoFs::refinement_edge_indices
private

The degrees of freedom on the refinement edge between a level and coarser cells.

Definition at line 167 of file mg_constrained_dofs.h.

std::vector<std::vector<bool> > MGConstrainedDoFs::refinement_edge_boundary_indices
private

The degrees of freedom on the refinement edge between a level and coarser cells, which are also on the boundary.

This is a subset of refinement_edge_indices.

Definition at line 175 of file mg_constrained_dofs.h.


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