v0.14.0
Loading...
Searching...
No Matches
TagMultiIndices.hpp
Go to the documentation of this file.
1/** \file TagMultiIndices.hpp
2 * \brief Tags for Multi-index containers
3 */
4
5
6#ifndef __TAGMULTIINDICES_HPP__
7#define __TAGMULTIINDICES_HPP__
8
9namespace MoFEM {
10
11/// MultiIndex Tag for field id
16
18struct Unique_mi_tag {};
21struct Ent_mi_tag {};
22struct FEEnt_mi_tag {};
29struct Space_mi_tag {};
30
31struct Idx_mi_tag {
32 static const bool IamNotPartitioned;
33 /// extract dof index from iterator
34 template <class IT> static inline DofIdx get_index(const IT &it) {
35 return (*it)->getDofIdx();
36 }
37};
39 static const bool IamNotPartitioned;
40 /// extract global dof index from iterator
41 template <class IT> static inline DofIdx get_index(const IT &it) {
42 return (*it)->getPetscGlobalDofIdx();
43 }
44};
46 static const bool IamNotPartitioned;
47 /// extract global dof index from iterator
48 template <class IT> static inline DofIdx get_index(const IT &it) {
49 return (*it)->getPetscLocalDofIdx();
50 }
51};
52
53struct Part_mi_tag {};
54
57
62
63/// MultiIndex Tag for field order
64struct Order_mi_tag {};
65
66/// MultiIndex Tag for field name
71
73struct Proc_mi_tag {};
74
90
96
97} // namespace MoFEM
98
99#endif // __TAGMULTIINDICES_HPP__
int DofIdx
Index of DOF.
Definition Types.hpp:18
implementation of Data Operators for Forces and Sources
Definition Common.hpp:10
constexpr IntegrationType IT
Definition plastic.cpp:47
MultiIndex Tag for field id.
MultiIndex Tag for field name.
static DofIdx get_index(const IT &it)
extract dof index from iterator
static const bool IamNotPartitioned
MultiIndex Tag for field order.
static const bool IamNotPartitioned
static DofIdx get_index(const IT &it)
extract global dof index from iterator
static const bool IamNotPartitioned
static DofIdx get_index(const IT &it)
extract global dof index from iterator