FEI Package Browser (Single Doxygen Collection)
Version of the Day
|
#include <fei_DofMapper.hpp>
Public Types | |
typedef std::map< Dof < LocalOrdinal, GlobalOrdinal > , GlobalOrdinal, DofOrder > | DofMap |
typedef std::map < GlobalOrdinal, const Dof < LocalOrdinal, GlobalOrdinal > * > | IdxMap |
typedef std::map< LocalOrdinal, LocalOrdinal > | FieldSizeMap |
Public Member Functions | |
DofMapper () | |
~DofMapper () | |
void | addDOF (LocalOrdinal rank, GlobalOrdinal id, LocalOrdinal field) |
void | setFieldSize (LocalOrdinal field, LocalOrdinal field_size) |
LocalOrdinal | getFieldSize (LocalOrdinal field) const |
GlobalOrdinal | getGlobalIndex (LocalOrdinal rank, GlobalOrdinal id, LocalOrdinal field) const |
std::pair< const Dof < LocalOrdinal, GlobalOrdinal > *, LocalOrdinal > | getDof (GlobalOrdinal global_index) const |
bool | maps_are_valid () const |
void | set_maps_are_valid (bool flag) |
DofMap::const_iterator | begin_dof () const |
DofMap::const_iterator | end_dof () const |
DofMap::iterator | begin_dof () |
DofMap::iterator | end_dof () |
IdxMap::const_iterator | begin_idx () const |
IdxMap::const_iterator | end_idx () const |
IdxMap::iterator | begin_idx () |
IdxMap::iterator | end_idx () |
const DofMap & | get_dof_idx_map () const |
DofMap & | get_dof_idx_map () |
const IdxMap & | get_idx_dof_map () const |
IdxMap & | get_idx_dof_map () |
const FieldSizeMap & | getFieldSizeMap () const |
Private Member Functions | |
DofMapper (const DofMapper< LocalOrdinal, GlobalOrdinal > &src) | |
DofMapper & | operator= (const DofMapper< LocalOrdinal, GlobalOrdinal > &src) |
Private Attributes | |
std::map< Dof< LocalOrdinal, GlobalOrdinal >, GlobalOrdinal, DofOrder > | m_dof_idx |
std::map< GlobalOrdinal, const Dof< LocalOrdinal, GlobalOrdinal > * > | m_idx_dof |
bool | m_maps_are_valid |
std::map< LocalOrdinal, LocalOrdinal > | m_field_sizes |
A mapping from mesh-degrees-of-freedom (dofs) to equation-numbers.
Mesh-dofs are represented by fei::Dof, see fei_Dof.hpp for details.
Equation numbers are also called global indices. They are globally-unique and zero-based.
A 'dof' may correspond to multiple global-indices if the dof's field has multiple scalar components, e.g. a vector field such as velocity in 3D.
Fields are assumed to be scalar fields (have 1 component) unless a field-size is set using the setFieldSize method.
Definition at line 42 of file fei_DofMapper.hpp.
typedef std::map<Dof<LocalOrdinal,GlobalOrdinal>,GlobalOrdinal,DofOrder> fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::DofMap |
Definition at line 74 of file fei_DofMapper.hpp.
typedef std::map<GlobalOrdinal,const Dof<LocalOrdinal,GlobalOrdinal>*> fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::IdxMap |
Definition at line 88 of file fei_DofMapper.hpp.
typedef std::map<LocalOrdinal,LocalOrdinal> fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::FieldSizeMap |
Definition at line 108 of file fei_DofMapper.hpp.
|
inline |
constructor
Definition at line 45 of file fei_DofMapper.hpp.
|
inline |
destructor
Definition at line 49 of file fei_DofMapper.hpp.
|
private |
|
inline |
void fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::setFieldSize | ( | LocalOrdinal | field, |
LocalOrdinal | field_size | ||
) |
Set the specified field to have the specified field_size. 'field' is added to the internal field map if not already present. If 'field' is already present, its field_size is reset to the new value.
Definition at line 124 of file fei_DofMapper.hpp.
LocalOrdinal fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::getFieldSize | ( | LocalOrdinal | field | ) | const |
Definition at line 137 of file fei_DofMapper.hpp.
Referenced by fei::set_dof_mappings().
GlobalOrdinal fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::getGlobalIndex | ( | LocalOrdinal | rank, |
GlobalOrdinal | id, | ||
LocalOrdinal | field | ||
) | const |
Definition at line 151 of file fei_DofMapper.hpp.
std::pair< const Dof< LocalOrdinal, GlobalOrdinal > *, LocalOrdinal > fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::getDof | ( | GlobalOrdinal | global_index | ) | const |
Definition at line 167 of file fei_DofMapper.hpp.
|
inline |
Definition at line 71 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_maps_are_valid.
|
inline |
Definition at line 72 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_maps_are_valid.
Referenced by fei::set_dof_mappings().
|
inline |
Definition at line 76 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_dof_idx.
Referenced by fei::set_dof_mappings().
|
inline |
Definition at line 79 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_dof_idx.
Referenced by fei::set_dof_mappings().
|
inline |
Definition at line 82 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_dof_idx.
|
inline |
Definition at line 85 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_dof_idx.
|
inline |
Definition at line 90 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_idx_dof.
|
inline |
Definition at line 93 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_idx_dof.
|
inline |
Definition at line 96 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_idx_dof.
|
inline |
Definition at line 99 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_idx_dof.
|
inline |
Definition at line 102 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_dof_idx.
|
inline |
Definition at line 103 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_dof_idx.
|
inline |
Definition at line 105 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_idx_dof.
Referenced by fei::set_dof_mappings().
|
inline |
Definition at line 106 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_idx_dof.
|
inline |
Definition at line 109 of file fei_DofMapper.hpp.
References fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::m_field_sizes.
|
private |
|
private |
Definition at line 112 of file fei_DofMapper.hpp.
Referenced by fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::addDOF(), fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::begin_dof(), fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::end_dof(), and fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::get_dof_idx_map().
|
private |
|
private |
|
private |
Definition at line 117 of file fei_DofMapper.hpp.
Referenced by fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::addDOF(), and fei::DofMapper< LocalOrdinal, GlobalOrdinal, DofOrder >::getFieldSizeMap().