DOLFIN
DOLFIN C++ interface
|
This class provides a generic interface for dof maps. More...
#include <GenericDofMap.h>
Public Member Functions | |
GenericDofMap () | |
Constructor. | |
virtual bool | is_view () const =0 |
True if dof map is a view into another map (is a sub-dofmap) | |
virtual std::size_t | global_dimension () const =0 |
std::size_t | cell_dimension (std::size_t index) const |
std::size_t | max_cell_dimension () const |
virtual std::size_t | num_element_dofs (std::size_t index) const =0 |
virtual std::size_t | max_element_dofs () const =0 |
virtual std::size_t | num_entity_dofs (std::size_t entity_dim) const =0 |
Return the number of dofs for a given entity dimension. | |
virtual std::size_t | num_entity_closure_dofs (std::size_t entity_dim) const =0 |
Return the number of dofs for closure of entity of given dimension. | |
virtual std::size_t | num_facet_dofs () const =0 |
Return number of facet dofs. | |
virtual std::pair< std::size_t, std::size_t > | ownership_range () const =0 |
virtual const std::vector< int > & | off_process_owner () const =0 |
virtual Eigen::Map< const Eigen::Array< dolfin::la_index, Eigen::Dynamic, 1 > > | cell_dofs (std::size_t cell_index) const =0 |
Local-to-global mapping of dofs on a cell. | |
virtual std::vector< dolfin::la_index > | entity_dofs (const Mesh &mesh, std::size_t entity_dim, const std::vector< std::size_t > &entity_indices) const =0 |
Return the dof indices associated with entities of given dimension and entity indices. | |
virtual std::vector< dolfin::la_index > | entity_dofs (const Mesh &mesh, std::size_t entity_dim) const =0 |
Return the dof indices associated with all entities of given dimension. | |
virtual std::vector< dolfin::la_index > | entity_closure_dofs (const Mesh &mesh, std::size_t entity_dim, const std::vector< std::size_t > &entity_indices) const =0 |
virtual std::vector< dolfin::la_index > | entity_closure_dofs (const Mesh &mesh, std::size_t entity_dim) const =0 |
virtual void | tabulate_facet_dofs (std::vector< std::size_t > &element_dofs, std::size_t cell_facet_index) const =0 |
Tabulate local-local facet dofs. | |
virtual void | tabulate_entity_dofs (std::vector< std::size_t > &element_dofs, std::size_t entity_dim, std::size_t cell_entity_index) const =0 |
virtual void | tabulate_entity_closure_dofs (std::vector< std::size_t > &element_dofs, std::size_t entity_dim, std::size_t cell_entity_index) const =0 |
virtual void | tabulate_global_dofs (std::vector< std::size_t > &dofs) const =0 |
Tabulate globally supported dofs. | |
virtual std::shared_ptr< GenericDofMap > | copy () const =0 |
Create a copy of the dof map. | |
virtual std::shared_ptr< GenericDofMap > | create (const Mesh &new_mesh) const =0 |
Create a new dof map on new mesh. | |
virtual std::shared_ptr< GenericDofMap > | extract_sub_dofmap (const std::vector< std::size_t > &component, const Mesh &mesh) const =0 |
Extract sub dofmap component. | |
virtual std::shared_ptr< GenericDofMap > | collapse (std::unordered_map< std::size_t, std::size_t > &collapsed_map, const Mesh &mesh) const =0 |
Create a "collapsed" a dofmap (collapses from a sub-dofmap view) | |
virtual std::vector< dolfin::la_index > | dofs (const Mesh &mesh, std::size_t dim) const =0 |
virtual std::vector< dolfin::la_index > | dofs () const =0 |
Return list of global dof indices on this process. | |
virtual void | set (GenericVector &x, double value) const =0 |
virtual const std::vector< std::size_t > & | local_to_global_unowned () const =0 |
virtual std::shared_ptr< const IndexMap > | index_map () const =0 |
Index map (const access) | |
virtual void | tabulate_local_to_global_dofs (std::vector< std::size_t > &local_to_global_map) const =0 |
Tabulate map between local (process) and global dof indices. | |
virtual std::size_t | local_to_global_index (int local_index) const =0 |
Return global dof index corresponding to a given local index. | |
virtual const std::unordered_map< int, std::vector< int > > & | shared_nodes () const =0 |
virtual const std::set< int > & | neighbours () const =0 |
Return set of processes that share dofs with the this process. | |
virtual void | clear_sub_map_data ()=0 |
virtual std::string | str (bool verbose) const =0 |
Return informal string representation (pretty-print) | |
virtual int | block_size () const =0 |
Get block size. | |
Public Member Functions inherited from dolfin::Variable | |
Variable () | |
Create unnamed variable. | |
Variable (const std::string name, const std::string label) | |
Create variable with given name and label. | |
Variable (const Variable &variable) | |
Copy constructor. | |
virtual | ~Variable () |
Destructor. | |
const Variable & | operator= (const Variable &variable) |
Assignment operator. | |
void | rename (const std::string name, const std::string label) |
Rename variable. | |
std::string | name () const |
Return name. | |
std::string | label () const |
Return label (description) | |
std::size_t | id () const |
Public Attributes | |
std::shared_ptr< const SubDomain > | constrained_domain |
Public Attributes inherited from dolfin::Variable | |
Parameters | parameters |
Parameters. | |
This class provides a generic interface for dof maps.
|
inline |
Return the dimension of the local finite element function space on a cell (deprecated API)
|
pure virtual |
Clear any data required to build sub-dofmaps (this is to reduce memory use)
Implemented in dolfin::DofMap.
|
pure virtual |
Return list of dof indices on this process that belong to mesh entities of dimension dim
Implemented in dolfin::DofMap.
|
pure virtual |
Return the dof indices associated with the closure of entities of given dimension and entity indices
Implemented in dolfin::DofMap.
|
pure virtual |
Return the dof indices associated with the closure of all entities of given dimension
Implemented in dolfin::DofMap.
|
pure virtual |
Return the dimension of the global finite element function space
Implemented in dolfin::DofMap.
|
pure virtual |
Return the map from unowned local dofmap nodes to global dofmap nodes. Dofmap node is dof index modulo block size.
Implemented in dolfin::DofMap.
|
inline |
Return the maximum dimension of the local finite element function space (deprecated API)
|
pure virtual |
Return the maximum dimension of the local finite element function space
Implemented in dolfin::DofMap.
|
pure virtual |
Return the dimension of the local finite element function space on a cell
Implemented in dolfin::DofMap.
|
pure virtual |
Return map from nonlocal-dofs (that appear in local dof map) to owning process
Implemented in dolfin::DofMap.
|
pure virtual |
Return the ownership range (dofs in this range are owned by this process)
Implemented in dolfin::DofMap.
|
pure virtual |
Set dof entries in vector to a specified value. Parallel layout of vector must be consistent with dof map range. This function is typically used to construct the null space of a matrix operator
Implemented in dolfin::DofMap.
|
pure virtual |
Return map from shared nodes to the processes (not including the current process) that share it.
Implemented in dolfin::DofMap.
|
pure virtual |
Tabulate the local-to-local mapping of dofs on closure of entity (dim, local_entity)
Implemented in dolfin::DofMap.
|
pure virtual |
Tabulate the local-to-local mapping of dofs on entity (dim, local_entity)
Implemented in dolfin::DofMap.
std::shared_ptr<const SubDomain> dolfin::GenericDofMap::constrained_domain |
Subdomain mapping constrained boundaries, e.g. periodic conditions