v0.14.0
Loading...
Searching...
No Matches
Pointers to multi-indices

Get direct access to multi-indices in database. More...

Collaboration diagram for Pointers to multi-indices:

Get pointers to multi-index database

virtual const Field_multiIndexMoFEM::CoreInterface::get_fields () const =0
 Get the fields object.
 
virtual const RefEntity_multiIndexMoFEM::CoreInterface::get_ref_ents () const =0
 Get the ref ents object.
 
virtual const RefElement_multiIndexMoFEM::CoreInterface::get_ref_finite_elements () const =0
 Get the ref finite elements object.
 
virtual const FiniteElement_multiIndexMoFEM::CoreInterface::get_finite_elements () const =0
 Get the finite elements object.
 
virtual const EntFiniteElement_multiIndexMoFEM::CoreInterface::get_ents_finite_elements () const =0
 Get the ents finite elements object.
 
virtual const FieldEntity_multiIndexMoFEM::CoreInterface::get_field_ents () const =0
 Get the field ents object.
 
virtual const DofEntity_multiIndexMoFEM::CoreInterface::get_dofs () const =0
 Get the dofs object.
 
virtual const ProblemMoFEM::CoreInterface::get_problem (const std::string problem_name) const =0
 Get the problem object.
 
virtual const Problem_multiIndexMoFEM::CoreInterface::get_problems () const =0
 Get the problems object.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_fields (const Field_multiIndex **fields_ptr) const =0
 Get fields multi-index from database.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_ref_ents (const RefEntity_multiIndex **refined_ents_ptr) const =0
 Get ref entities multi-index from database.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_ref_finite_elements (const RefElement_multiIndex **refined_finite_elements_ptr) const =0
 Get ref finite elements multi-index form database.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_finite_elements (const FiniteElement_multiIndex **fe_ptr) const =0
 Get finite elements multi-index.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_ents_finite_elements (const EntFiniteElement_multiIndex **fe_ent_ptr) const =0
 Get entities finite elements multi-index.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_problem (const std::string &problem_name, const Problem **problem_ptr) const =0
 Get problem database (data structure)
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_problems (const Problem_multiIndex **problems_ptr) const =0
 Get pointer to problems multi-index.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_field_ents (const FieldEntity_multiIndex **field_ents) const =0
 Get field multi index.
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_dofs (const DofEntity_multiIndex **dofs_ptr) const =0
 Get dofs multi index.
 
virtual EntFiniteElement_multiIndex::index< Unique_mi_tag >::type::iterator MoFEM::CoreInterface::get_fe_by_name_begin (const std::string &fe_name) const =0
 get begin iterator of finite elements of given name (instead you can use IT_GET_FES_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)
 
virtual EntFiniteElement_multiIndex::index< Unique_mi_tag >::type::iterator MoFEM::CoreInterface::get_fe_by_name_end (const std::string &fe_name) const =0
 get end iterator of finite elements of given name (instead you can use IT_GET_FES_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)
 
virtual MoFEMErrorCode MoFEM::CoreInterface::get_ents_elements_adjacency (const FieldEntityEntFiniteElementAdjacencyMap_multiIndex **dofs_elements_adjacency) const =0
 Get the dofs elements adjacency object.
 
virtual const FieldEntityEntFiniteElementAdjacencyMap_multiIndexMoFEM::CoreInterface::get_ents_elements_adjacency () const =0
 Get the dofs elements adjacency object.
 
virtual FieldEntityByUId::iterator MoFEM::CoreInterface::get_ent_field_by_name_begin (const std::string &field_name) const =0
 get begin iterator of filed ents of given name (instead you can use IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)
 
virtual FieldEntityByUId::iterator MoFEM::CoreInterface::get_ent_field_by_name_end (const std::string &field_name) const =0
 get begin iterator of filed dofs of given name (instead you can use IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)
 
virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_begin (const std::string &field_name) const =0
 get begin iterator of filed dofs of given name (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)
 
virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_end (const std::string &field_name) const =0
 get begin iterator of filed dofs of given name (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)
 
virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_ent_begin (const std::string &field_name, const EntityHandle ent) const =0
 get begin iterator of filed dofs of given name and ent(instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,ENT,IT)
 
virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_ent_end (const std::string &field_name, const EntityHandle ent) const =0
 get begin iterator of filed dofs of given name and ent (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,ENT,IT)
 
virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_type_begin (const std::string &field_name, const EntityType type) const =0
 get begin iterator of filed dofs of given name and ent type (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,TYPE,IT)
 
virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_type_end (const std::string &field_name, const EntityType type) const =0
 get begin iterator of filed dofs of given name end ent type(instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,TYPE,IT)
 
#define _IT_GET_DOFS_FIELD_BY_NAME_AND_ENT_FOR_LOOP_(MFIELD, NAME, ENT, IT)
 loop over all dofs from a moFEM field and particular field
 
#define _IT_GET_FES_BY_NAME_FOR_LOOP_(MFIELD, NAME, IT)
 loop over all finite elements from a moFEM field and FE
 
#define _IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP_(MFIELD, NAME, IT)
 loop over all dofs from a moFEM field and particular field
 
#define _IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP_(MFIELD, NAME, IT)
 
#define _IT_GET_DOFS_FIELD_BY_NAME_AND_TYPE_FOR_LOOP_(MFIELD, NAME, TYPE, IT)
 loop over all dofs from a moFEM field and particular field
 

Detailed Description

Get direct access to multi-indices in database.

Macro Definition Documentation

◆ _IT_GET_DOFS_FIELD_BY_NAME_AND_ENT_FOR_LOOP_

#define _IT_GET_DOFS_FIELD_BY_NAME_AND_ENT_FOR_LOOP_ ( MFIELD,
NAME,
ENT,
IT )
Value:
DofEntityByUId::iterator IT = \
(MFIELD).get_dofs_by_name_and_ent_begin(NAME, ENT); \
IT != (MFIELD).get_dofs_by_name_and_ent_end(NAME, ENT); \
IT++
constexpr IntegrationType IT
Definition plastic.cpp:47

loop over all dofs from a moFEM field and particular field

Definition at line 1882 of file Interface.hpp.

1882#define _IT_GET_DOFS_FIELD_BY_NAME_AND_ENT_FOR_LOOP_(MFIELD, NAME, ENT, IT) \
1883 DofEntityByUId::iterator IT = \
1884 (MFIELD).get_dofs_by_name_and_ent_begin(NAME, ENT); \
1885 IT != (MFIELD).get_dofs_by_name_and_ent_end(NAME, ENT); \
1886 IT++

◆ _IT_GET_DOFS_FIELD_BY_NAME_AND_TYPE_FOR_LOOP_

#define _IT_GET_DOFS_FIELD_BY_NAME_AND_TYPE_FOR_LOOP_ ( MFIELD,
NAME,
TYPE,
IT )
Value:
DofEntityByUId::iterator IT = \
(MFIELD).get_dofs_by_name_and_type_begin(NAME, TYPE); \
IT != (MFIELD).get_dofs_by_name_and_type_end(NAME, TYPE); \
IT++

loop over all dofs from a moFEM field and particular field

Definition at line 1925 of file Interface.hpp.

1925#define _IT_GET_DOFS_FIELD_BY_NAME_AND_TYPE_FOR_LOOP_(MFIELD, NAME, TYPE, IT) \
1926 DofEntityByUId::iterator IT = \
1927 (MFIELD).get_dofs_by_name_and_type_begin(NAME, TYPE); \
1928 IT != (MFIELD).get_dofs_by_name_and_type_end(NAME, TYPE); \
1929 IT++

◆ _IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP_

#define _IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP_ ( MFIELD,
NAME,
IT )
Value:
DofEntityByUId::iterator IT = (MFIELD).get_dofs_by_name_begin(NAME); \
IT != (MFIELD).get_dofs_by_name_end(NAME); \
IT++

loop over all dofs from a moFEM field and particular field

Definition at line 1843 of file Interface.hpp.

1843#define _IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP_(MFIELD, NAME, IT) \
1844 DofEntityByUId::iterator IT = (MFIELD).get_dofs_by_name_begin(NAME); \
1845 IT != (MFIELD).get_dofs_by_name_end(NAME); \
1846 IT++

◆ _IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP_

#define _IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP_ ( MFIELD,
NAME,
IT )
Value:
auto IT = (MFIELD).get_ent_field_by_name_begin(NAME); \
IT != (MFIELD).get_ent_field_by_name_end(NAME); \
IT++

loop over all dofs from a moFEM field and particular field

Examples
mesh_smoothing.cpp.

Definition at line 1807 of file Interface.hpp.

1807#define _IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP_(MFIELD, NAME, IT) \
1808 auto IT = (MFIELD).get_ent_field_by_name_begin(NAME); \
1809 IT != (MFIELD).get_ent_field_by_name_end(NAME); \
1810 IT++

◆ _IT_GET_FES_BY_NAME_FOR_LOOP_

#define _IT_GET_FES_BY_NAME_FOR_LOOP_ ( MFIELD,
NAME,
IT )
Value:
auto IT = (MFIELD).get_fe_by_name_begin(NAME); \
IT != (MFIELD).get_fe_by_name_end(NAME); \
IT++

loop over all finite elements from a moFEM field and FE

Definition at line 1964 of file Interface.hpp.

1964#define _IT_GET_FES_BY_NAME_FOR_LOOP_(MFIELD, NAME, IT) \
1965 auto IT = (MFIELD).get_fe_by_name_begin(NAME); \
1966 IT != (MFIELD).get_fe_by_name_end(NAME); \
1967 IT++

Function Documentation

◆ get_dofs() [1/2]

virtual const DofEntity_multiIndex * MoFEM::CoreInterface::get_dofs ( ) const
pure virtual

Get the dofs object.

Returns
const DofEntity_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

Examples
field_blas.cpp, and free_surface.cpp.

◆ get_dofs() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_dofs ( const DofEntity_multiIndex ** dofs_ptr) const
pure virtual

Get dofs multi index.

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_dofs_by_name_and_ent_begin()

virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_ent_begin ( const std::string & field_name,
const EntityHandle ent ) const
pure virtual

get begin iterator of filed dofs of given name and ent(instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,ENT,IT)

for(IT_GET_DOFS_FIELD_BY_NAME_AND_ENT_FOR_LOOP(MFIELD,NAME,ENT,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_dofs_by_name_and_ent_end()

virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_ent_end ( const std::string & field_name,
const EntityHandle ent ) const
pure virtual

get begin iterator of filed dofs of given name and ent (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,ENT,IT)

for(IT_GET_DOFS_FIELD_BY_NAME_AND_ENT_FOR_LOOP(MFIELD,NAME,ENT,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_dofs_by_name_and_type_begin()

virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_type_begin ( const std::string & field_name,
const EntityType type ) const
pure virtual

get begin iterator of filed dofs of given name and ent type (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,TYPE,IT)

for(IT_GET_DOFS_FIELD_BY_NAME_AND_TYPE_FOR_LOOP(MFIELD,NAME,TYPE,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_dofs_by_name_and_type_end()

virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_and_type_end ( const std::string & field_name,
const EntityType type ) const
pure virtual

get begin iterator of filed dofs of given name end ent type(instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,TYPE,IT)

for(IT_GET_DOFS_FIELD_BY_NAME_AND_TYPE_FOR_LOOP(MFIELD,NAME,TYPE,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_dofs_by_name_begin()

virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_begin ( const std::string & field_name) const
pure virtual

get begin iterator of filed dofs of given name (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)

for(IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_dofs_by_name_end()

virtual DofEntityByUId::iterator MoFEM::CoreInterface::get_dofs_by_name_end ( const std::string & field_name) const
pure virtual

get begin iterator of filed dofs of given name (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)

for(IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ent_field_by_name_begin()

virtual FieldEntityByUId::iterator MoFEM::CoreInterface::get_ent_field_by_name_begin ( const std::string & field_name) const
pure virtual

get begin iterator of filed ents of given name (instead you can use IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)

for(IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ent_field_by_name_end()

virtual FieldEntityByUId::iterator MoFEM::CoreInterface::get_ent_field_by_name_end ( const std::string & field_name) const
pure virtual

get begin iterator of filed dofs of given name (instead you can use IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)

for(IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)) { ... }

Parameters
field_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ents_elements_adjacency() [1/2]

virtual const FieldEntityEntFiniteElementAdjacencyMap_multiIndex * MoFEM::CoreInterface::get_ents_elements_adjacency ( ) const
pure virtual

Get the dofs elements adjacency object.

Returns
const FieldEntityEntFiniteElementAdjacencyMap_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ents_elements_adjacency() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_ents_elements_adjacency ( const FieldEntityEntFiniteElementAdjacencyMap_multiIndex ** dofs_elements_adjacency) const
pure virtual

Get the dofs elements adjacency object.

Parameters
dofs_elements_adjacency
Returns
MoFEMErrorCode

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ents_finite_elements() [1/2]

virtual const EntFiniteElement_multiIndex * MoFEM::CoreInterface::get_ents_finite_elements ( ) const
pure virtual

Get the ents finite elements object.

Returns
const EntFiniteElement_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ents_finite_elements() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_ents_finite_elements ( const EntFiniteElement_multiIndex ** fe_ent_ptr) const
pure virtual

Get entities finite elements multi-index.

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_fe_by_name_begin()

virtual EntFiniteElement_multiIndex::index< Unique_mi_tag >::type::iterator MoFEM::CoreInterface::get_fe_by_name_begin ( const std::string & fe_name) const
pure virtual

get begin iterator of finite elements of given name (instead you can use IT_GET_FES_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)

for(IT_GET_FES_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)) { ... }

Parameters
fe_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_fe_by_name_end()

virtual EntFiniteElement_multiIndex::index< Unique_mi_tag >::type::iterator MoFEM::CoreInterface::get_fe_by_name_end ( const std::string & fe_name) const
pure virtual

get end iterator of finite elements of given name (instead you can use IT_GET_FES_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)

for(IT_GET_FES_BY_NAME_FOR_LOOP(MFIELD,NAME,IT)) { ... }

Parameters
fe_name

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_field_ents() [1/2]

virtual const FieldEntity_multiIndex * MoFEM::CoreInterface::get_field_ents ( ) const
pure virtual

Get the field ents object.

Returns
const FieldEntity_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

Examples
continuity_check_on_skeleton_3d.cpp, dm_build_partitioned_mesh.cpp, and dm_partitioned_no_field.cpp.

◆ get_field_ents() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_field_ents ( const FieldEntity_multiIndex ** field_ents) const
pure virtual

Get field multi index.

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_fields() [1/2]

virtual const Field_multiIndex * MoFEM::CoreInterface::get_fields ( ) const
pure virtual

Get the fields object.

Returns
const Field_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

Examples
field_to_vertices.cpp.

◆ get_fields() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_fields ( const Field_multiIndex ** fields_ptr) const
pure virtual

Get fields multi-index from database.

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_finite_elements() [1/2]

virtual const FiniteElement_multiIndex * MoFEM::CoreInterface::get_finite_elements ( ) const
pure virtual

Get the finite elements object.

Returns
const FiniteElement_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_finite_elements() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_finite_elements ( const FiniteElement_multiIndex ** fe_ptr) const
pure virtual

Get finite elements multi-index.

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_problem() [1/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_problem ( const std::string & problem_name,
const Problem ** problem_ptr ) const
pure virtual

Get problem database (data structure)

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_problem() [2/2]

virtual const Problem * MoFEM::CoreInterface::get_problem ( const std::string problem_name) const
pure virtual

Get the problem object.

Parameters
problem_name
Returns
const Problem*

Implemented in MoFEM::CoreTmp< 0 >.

Examples
cell_forces.cpp, eigen_elastic.cpp, heat_method.cpp, nonlinear_dynamics.cpp, remove_entities_from_problem.cpp, and remove_entities_from_problem_not_partitioned.cpp.

◆ get_problems() [1/2]

virtual const Problem_multiIndex * MoFEM::CoreInterface::get_problems ( ) const
pure virtual

Get the problems object.

Returns
const Problem_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_problems() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_problems ( const Problem_multiIndex ** problems_ptr) const
pure virtual

Get pointer to problems multi-index.

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ref_ents() [1/2]

virtual const RefEntity_multiIndex * MoFEM::CoreInterface::get_ref_ents ( ) const
pure virtual

Get the ref ents object.

Returns
const RefEntity_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ref_ents() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_ref_ents ( const RefEntity_multiIndex ** refined_ents_ptr) const
pure virtual

Get ref entities multi-index from database.

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ref_finite_elements() [1/2]

virtual const RefElement_multiIndex * MoFEM::CoreInterface::get_ref_finite_elements ( ) const
pure virtual

Get the ref finite elements object.

Returns
const RefElement_multiIndex*

Implemented in MoFEM::CoreTmp< 0 >.

◆ get_ref_finite_elements() [2/2]

virtual MoFEMErrorCode MoFEM::CoreInterface::get_ref_finite_elements ( const RefElement_multiIndex ** refined_finite_elements_ptr) const
pure virtual

Get ref finite elements multi-index form database.

Implemented in MoFEM::CoreTmp< 0 >.