|
virtual MoFEMErrorCode | add_broken_field (const std::string name, const FieldSpace space, const FieldApproximationBase base, const FieldCoefficientsNumber nb_of_coefficients, const std::vector< std::pair< EntityType, std::function< MoFEMErrorCode(BaseFunction::DofsSideMap &)>> > list_dof_side_map, const TagType tag_type=MB_TAG_SPARSE, const enum MoFEMTypes bh=MF_EXCL, int verb=DEFAULT_VERBOSITY)=0 |
| Add field. More...
|
|
virtual MoFEMErrorCode | add_field (const std::string name, const FieldSpace space, const FieldApproximationBase base, const FieldCoefficientsNumber nb_of_coefficients, const TagType tag_type=MB_TAG_SPARSE, const enum MoFEMTypes bh=MF_EXCL, int verb=DEFAULT_VERBOSITY)=0 |
| Add field. More...
|
|
virtual MoFEMErrorCode | delete_field (const std::string name, int verb=DEFAULT_VERBOSITY)=0 |
| Delete field. More...
|
|
virtual MoFEMErrorCode | add_ents_to_field_by_dim (const Range &ents, const int dim, const std::string &name, int verb=DEFAULT_VERBOSITY)=0 |
| Add entities to field meshset. More...
|
|
virtual MoFEMErrorCode | add_ents_to_field_by_type (const Range &ents, const EntityType type, const std::string &name, int verb=DEFAULT_VERBOSITY)=0 |
| Add entities to field meshset. More...
|
|
virtual MoFEMErrorCode | add_ents_to_field_by_dim (const EntityHandle meshset, const int dim, const std::string &name, const bool recursive=true, int verb=DEFAULT_VERBOSITY)=0 |
| Add entities to field meshset. More...
|
|
virtual MoFEMErrorCode | add_ents_to_field_by_type (const EntityHandle meshset, const EntityType type, const std::string &name, const bool recursive=true, int verb=DEFAULT_VERBOSITY)=0 |
| Add entities to field meshset. More...
|
|
virtual MoFEMErrorCode | create_vertices_and_add_to_field (const std::string name, const double coords[], int size, int verb=DEFAULT_VERBOSITY)=0 |
| Create a vertices and add to field object. More...
|
|
virtual MoFEMErrorCode | remove_ents_from_field_by_bit_ref (const BitRefLevel bit, const BitRefLevel mask, int verb=DEFAULT_VERBOSITY)=0 |
| remove entities from field More...
|
|
virtual MoFEMErrorCode | remove_ents_from_field (const std::string name, const EntityHandle meshset, const EntityType type, int verb=DEFAULT_VERBOSITY)=0 |
| remove entities from field More...
|
|
virtual MoFEMErrorCode | remove_ents_from_field (const std::string name, const Range ents, int verb=DEFAULT_VERBOSITY)=0 |
| remove entities from field More...
|
|
virtual MoFEMErrorCode | remove_ents_from_field (const Range ents, int verb=DEFAULT_VERBOSITY)=0 |
| remove entities from all fields More...
|
|
virtual MoFEMErrorCode | set_field_order (const EntityHandle meshset, const EntityType type, const std::string &name, const ApproximationOrder order, int verb=DEFAULT_VERBOSITY)=0 |
| Set order approximation of the entities in the field. More...
|
|
virtual MoFEMErrorCode | set_field_order (const Range &ents, const std::string &name, const ApproximationOrder order, int verb=DEFAULT_VERBOSITY)=0 |
| Set order approximation of the entities in the field. More...
|
|
virtual MoFEMErrorCode | set_field_order_by_entity_type_and_bit_ref (const BitRefLevel &bit, const BitRefLevel &mask, const EntityType type, const std::string &name, const ApproximationOrder order, int verb=DEFAULT_VERBOSITY)=0 |
| Set order approximation of the entities in the field. More...
|
|
virtual MoFEMErrorCode | list_fields () const =0 |
| list entities in the field More...
|
|
virtual MoFEMErrorCode | build_fields (int verb=DEFAULT_VERBOSITY)=0 |
|
virtual MoFEMErrorCode | build_field (const std::string field_name, int verb=DEFAULT_VERBOSITY)=0 |
| build field by name More...
|
|
virtual BitFieldId | get_field_id (const std::string &name) const =0 |
| Get field Id. More...
|
|
virtual FieldBitNumber | get_field_bit_number (const std::string name) const =0 |
| get field bit number More...
|
|
virtual std::string | get_field_name (const BitFieldId id) const =0 |
| get field name from id More...
|
|
virtual EntityHandle | get_field_meshset (const std::string name) const =0 |
| get field meshset More...
|
|
virtual MoFEMErrorCode | get_field_entities_by_dimension (const std::string name, int dim, Range &ents) const =0 |
| get entities in the field by dimension More...
|
|
virtual MoFEMErrorCode | get_field_entities_by_type (const std::string name, EntityType type, Range &ents) const =0 |
| get entities in the field by type More...
|
|
virtual MoFEMErrorCode | get_field_entities_by_handle (const std::string name, Range &ents) const =0 |
| get entities in the field by handle More...
|
|
virtual bool | check_field (const std::string &name) const =0 |
| check if field is in database More...
|
|
virtual const Field * | get_field_structure (const std::string &name, enum MoFEMTypes bh=MF_EXIST) const =0 |
| get field structure More...
|
|
|
virtual const FiniteElement * | get_finite_element_structure (const std::string &name, enum MoFEMTypes bh=MF_EXIST) const =0 |
| get finite element struture More...
|
|
virtual bool | check_finite_element (const std::string &name) const =0 |
| Check if finite element is in database. More...
|
|
virtual MoFEMErrorCode | add_finite_element (const std::string &fe_name, enum MoFEMTypes bh=MF_EXCL, int verb=DEFAULT_VERBOSITY)=0 |
| add finite element More...
|
|
virtual MoFEMErrorCode | modify_finite_element_adjacency_table (const std::string &fe_name, const EntityType type, ElementAdjacencyFunct function)=0 |
| modify finite element table, only for advanced user More...
|
|
virtual MoFEMErrorCode | modify_finite_element_add_field_data (const std::string &fe_name, const std::string name_field)=0 |
| set finite element field data More...
|
|
virtual MoFEMErrorCode | modify_finite_element_off_field_data (const std::string &fe_name, const std::string name_field)=0 |
| unset finite element field data More...
|
|
virtual MoFEMErrorCode | modify_finite_element_add_field_row (const std::string &fe_name, const std::string name_row)=0 |
| set field row which finite element use More...
|
|
virtual MoFEMErrorCode | modify_finite_element_off_field_row (const std::string &fe_name, const std::string name_row)=0 |
| unset field row which finite element use More...
|
|
virtual MoFEMErrorCode | modify_finite_element_add_field_col (const std::string &fe_name, const std::string name_row)=0 |
| set field col which finite element use More...
|
|
virtual MoFEMErrorCode | modify_finite_element_off_field_col (const std::string &fe_name, const std::string name_row)=0 |
| unset field col which finite element use More...
|
|
virtual MoFEMErrorCode | add_ents_to_finite_element_by_type (const EntityHandle entities, const EntityType type, const std::string &name, const bool recursive=true)=0 |
| add entities to finite element More...
|
|
virtual MoFEMErrorCode | add_ents_to_finite_element_by_dim (const EntityHandle entities, const int dim, const std::string &name, const bool recursive=true)=0 |
| add entities to finite element More...
|
|
virtual MoFEMErrorCode | add_ents_to_finite_element_by_type (const Range &ents, const EntityType type, const std::string &name)=0 |
| add entities to finite elements More...
|
|
virtual MoFEMErrorCode | add_ents_to_finite_element_by_dim (const Range &ents, const int dim, const std::string &name)=0 |
| add entities to finite elements More...
|
|
virtual MoFEMErrorCode | add_ents_to_finite_element_by_bit_ref (const BitRefLevel &bit, const BitRefLevel &mask, const std::string &name, EntityType type, int verb=DEFAULT_VERBOSITY)=0 |
| add TET entities from given refinement level to finite element database given by name More...
|
|
virtual EntityHandle | get_finite_element_meshset (const std::string name) const =0 |
|
virtual MoFEMErrorCode | get_finite_element_entities_by_dimension (const std::string name, int dim, Range &ents) const =0 |
| get entities in the finite element by dimension More...
|
|
virtual MoFEMErrorCode | get_finite_element_entities_by_type (const std::string name, EntityType type, Range &ents) const =0 |
| get entities in the finite element by type More...
|
|
virtual MoFEMErrorCode | get_finite_element_entities_by_handle (const std::string name, Range &ents) const =0 |
| get entities in the finite element by handle More...
|
|
virtual MoFEMErrorCode | remove_ents_from_finite_element_by_bit_ref (const BitRefLevel bit, const BitRefLevel mask, int verb=DEFAULT_VERBOSITY)=0 |
| remove elements from given refinement level to finite element database More...
|
|
virtual MoFEMErrorCode | remove_ents_from_finite_element (const std::string name, const EntityHandle meshset, const EntityType type, int verb=DEFAULT_VERBOSITY)=0 |
| remove entities from given refinement level to finite element database More...
|
|
virtual MoFEMErrorCode | remove_ents_from_finite_element (const std::string name, const Range ents, int verb=DEFAULT_VERBOSITY)=0 |
| remove entities from finite element database More...
|
|
virtual MoFEMErrorCode | remove_ents_from_finite_element (const Range ents, int verb=DEFAULT_VERBOSITY)=0 |
| remove entities from finite elements in database More...
|
|
virtual MoFEMErrorCode | add_ents_to_finite_element_by_MESHSET (const EntityHandle meshset, const std::string &name, const bool recursive=false)=0 |
| add MESHSET element to finite element database given by name More...
|
|
virtual MoFEMErrorCode | list_finite_elements () const =0 |
| list finite elements in database More...
|
|
|
virtual MoFEMErrorCode | add_problem (const std::string &name, enum MoFEMTypes bh=MF_EXCL, int verb=DEFAULT_VERBOSITY)=0 |
| Add problem. More...
|
|
virtual bool | check_problem (const std::string name)=0 |
| check if problem exist More...
|
|
virtual MoFEMErrorCode | delete_problem (const std::string name)=0 |
| Delete problem. More...
|
|
virtual MoFEMErrorCode | modify_problem_add_finite_element (const std::string name_problem, const std::string &fe_name)=0 |
| add finite element to problem, this add entities assigned to finite element to a particular problem More...
|
|
virtual MoFEMErrorCode | modify_problem_unset_finite_element (const std::string name_problem, const std::string &fe_name)=0 |
| unset finite element from problem, this remove entities assigned to finite element to a particular problem More...
|
|
virtual MoFEMErrorCode | modify_problem_ref_level_add_bit (const std::string &name_problem, const BitRefLevel &bit)=0 |
| add ref level to problem More...
|
|
virtual MoFEMErrorCode | modify_problem_mask_ref_level_add_bit (const std::string &name_problem, const BitRefLevel &bit)=0 |
| set dof mask ref level for problem More...
|
|
virtual MoFEMErrorCode | modify_problem_ref_level_set_bit (const std::string &name_problem, const BitRefLevel &bit)=0 |
| set ref level for problem More...
|
|
virtual MoFEMErrorCode | modify_problem_mask_ref_level_set_bit (const std::string &name_problem, const BitRefLevel &bit)=0 |
| set dof mask ref level for problem More...
|
|
virtual MoFEMErrorCode | list_problem () const =0 |
| list problems More...
|
|
virtual MoFEMErrorCode | clear_problem (const std::string name, int verb=DEFAULT_VERBOSITY)=0 |
| clear problem More...
|
|
virtual MoFEMErrorCode | clear_problems (int verb=DEFAULT_VERBOSITY)=0 |
| clear problems More...
|
|
virtual MoFEMErrorCode | get_problem_finite_elements_entities (const std::string name, const std::string &fe_name, const EntityHandle meshset)=0 |
| add finite elements to the meshset More...
|
|
|
virtual MoFEMErrorCode | problem_basic_method_preProcess (const Problem *problem_ptr, BasicMethod &method, int verb=DEFAULT_VERBOSITY)=0 |
| Set data for BasicMethod. More...
|
|
virtual MoFEMErrorCode | problem_basic_method_preProcess (const std::string &problem_name, BasicMethod &method, int verb=DEFAULT_VERBOSITY)=0 |
| Set data for BasicMethod. More...
|
|
virtual MoFEMErrorCode | problem_basic_method_postProcess (const Problem *problem_ptr, BasicMethod &method, int verb=DEFAULT_VERBOSITY)=0 |
| Set data for BasicMethod. More...
|
|
virtual MoFEMErrorCode | problem_basic_method_postProcess (const std::string &problem_name, BasicMethod &method, int verb=DEFAULT_VERBOSITY)=0 |
| Set data for BasicMethod. More...
|
|
virtual MoFEMErrorCode | cache_problem_entities (const std::string prb_name, CacheTupleWeakPtr cache_ptr)=0 |
| Cache variables. More...
|
|
virtual MoFEMErrorCode | loop_finite_elements (const std::string problem_name, const std::string &fe_name, FEMethod &method, boost::shared_ptr< NumeredEntFiniteElement_multiIndex > fe_ptr=nullptr, MoFEMTypes bh=MF_EXIST, CacheTupleWeakPtr cache_ptr=CacheTupleSharedPtr(), int verb=DEFAULT_VERBOSITY)=0 |
| Make a loop over finite elements. More...
|
|
virtual MoFEMErrorCode | loop_finite_elements (const Problem *problem_ptr, const std::string &fe_name, FEMethod &method, int lower_rank, int upper_rank, boost::shared_ptr< NumeredEntFiniteElement_multiIndex > fe_ptr=nullptr, MoFEMTypes bh=MF_EXIST, CacheTupleWeakPtr cache_ptr=CacheTupleSharedPtr(), int verb=DEFAULT_VERBOSITY)=0 |
| Make a loop over finite elements on partitions from upper to lower rank. More...
|
|
virtual MoFEMErrorCode | loop_finite_elements (const std::string problem_name, const std::string &fe_name, FEMethod &method, int lower_rank, int upper_rank, boost::shared_ptr< NumeredEntFiniteElement_multiIndex > fe_ptr=nullptr, MoFEMTypes bh=MF_EXIST, CacheTupleWeakPtr cache_ptr=CacheTupleSharedPtr(), int verb=DEFAULT_VERBOSITY)=0 |
| Make a loop over finite elements on partitions from upper to lower rank. More...
|
|
virtual MoFEMErrorCode | loop_dofs (const Problem *problem_ptr, const std::string &field_name, RowColData rc, DofMethod &method, int lower_rank, int upper_rank, int verb=DEFAULT_VERBOSITY)=0 |
| Make a loop over dofs. More...
|
|
virtual MoFEMErrorCode | loop_dofs (const std::string &problem_name, const std::string &field_name, RowColData rc, DofMethod &method, int lower_rank, int upper_rank, int verb=DEFAULT_VERBOSITY)=0 |
| Make a loop over dofs. More...
|
|
virtual MoFEMErrorCode | loop_dofs (const std::string &problem_name, const std::string &field_name, RowColData rc, DofMethod &method, int verb=DEFAULT_VERBOSITY)=0 |
| Make a loop over dofs. More...
|
|
virtual MoFEMErrorCode | loop_dofs (const std::string &field_name, DofMethod &method, int verb=DEFAULT_VERBOSITY)=0 |
| Make a loop over dofs. More...
|
|
virtual MoFEMErrorCode | loop_entities (const std::string field_name, EntityMethod &method, Range const *const ents=nullptr, int verb=DEFAULT_VERBOSITY)=0 |
| Loop over field entities. More...
|
|
virtual MoFEMErrorCode | loop_entities (const Problem *problem_ptr, const std::string field_name, RowColData rc, EntityMethod &method, int lower_rank, int upper_rank, int verb=DEFAULT_VERBOSITY)=0 |
| Loop over field entities in the problem. More...
|
|
virtual MoFEMErrorCode | loop_entities (const std::string problem_name, const std::string field_name, RowColData rc, EntityMethod &method, int lower_rank, int upper_rank, int verb=DEFAULT_VERBOSITY)=0 |
| Loop over field entities in the problem. More...
|
|
virtual MoFEMErrorCode | loop_entities (const std::string problem_name, const std::string field_name, RowColData rc, EntityMethod &method, int verb=DEFAULT_VERBOSITY)=0 |
| Loop over field entities in the problem. More...
|
|
|
virtual const Field_multiIndex * | get_fields () const =0 |
| Get the fields object. More...
|
|
virtual const RefEntity_multiIndex * | get_ref_ents () const =0 |
| Get the ref ents object. More...
|
|
virtual const RefElement_multiIndex * | get_ref_finite_elements () const =0 |
| Get the ref finite elements object. More...
|
|
virtual const FiniteElement_multiIndex * | get_finite_elements () const =0 |
| Get the finite elements object. More...
|
|
virtual const EntFiniteElement_multiIndex * | get_ents_finite_elements () const =0 |
| Get the ents finite elements object. More...
|
|
virtual const FieldEntity_multiIndex * | get_field_ents () const =0 |
| Get the field ents object. More...
|
|
virtual const DofEntity_multiIndex * | get_dofs () const =0 |
| Get the dofs object. More...
|
|
virtual const Problem * | get_problem (const std::string problem_name) const =0 |
| Get the problem object. More...
|
|
virtual const Problem_multiIndex * | get_problems () const =0 |
| Get the problems object. More...
|
|
virtual MoFEMErrorCode | get_ents_elements_adjacency (const FieldEntityEntFiniteElementAdjacencyMap_multiIndex **dofs_elements_adjacency) const =0 |
| Get the dofs elements adjacency object. More...
|
|
virtual const FieldEntityEntFiniteElementAdjacencyMap_multiIndex * | get_ents_elements_adjacency () const =0 |
| Get the dofs elements adjacency object. More...
|
|
virtual MoFEMErrorCode | get_fields (const Field_multiIndex **fields_ptr) const =0 |
| Get fields multi-index from database. More...
|
|
virtual MoFEMErrorCode | get_ref_ents (const RefEntity_multiIndex **refined_ents_ptr) const =0 |
| Get ref entities multi-index from database. More...
|
|
virtual MoFEMErrorCode | get_ref_finite_elements (const RefElement_multiIndex **refined_finite_elements_ptr) const =0 |
| Get ref finite elements multi-index form database. More...
|
|
virtual MoFEMErrorCode | get_finite_elements (const FiniteElement_multiIndex **fe_ptr) const =0 |
| Get finite elements multi-index. More...
|
|
virtual MoFEMErrorCode | get_ents_finite_elements (const EntFiniteElement_multiIndex **fe_ent_ptr) const =0 |
| Get entities finite elements multi-index. More...
|
|
virtual MoFEMErrorCode | get_problem (const std::string &problem_name, const Problem **problem_ptr) const =0 |
| Get problem database (data structure) More...
|
|
virtual MoFEMErrorCode | get_problems (const Problem_multiIndex **problems_ptr) const =0 |
| Get pointer to problems multi-index. More...
|
|
virtual MoFEMErrorCode | get_field_ents (const FieldEntity_multiIndex **field_ents) const =0 |
| Get field multi index. More...
|
|
virtual MoFEMErrorCode | get_dofs (const DofEntity_multiIndex **dofs_ptr) const =0 |
| Get dofs multi index. More...
|
|
virtual FieldEntityByUId::iterator | get_ent_field_by_name_begin (const std::string &field_name) const =0 |
| get begin iterator of field ents of given name (instead you can use IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT) More...
|
|
virtual FieldEntityByUId::iterator | get_ent_field_by_name_end (const std::string &field_name) const =0 |
| get begin iterator of field dofs of given name (instead you can use IT_GET_ENT_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT) More...
|
|
virtual DofEntityByUId::iterator | get_dofs_by_name_begin (const std::string &field_name) const =0 |
| get begin iterator of field dofs of given name (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT) More...
|
|
virtual DofEntityByUId::iterator | get_dofs_by_name_end (const std::string &field_name) const =0 |
| get begin iterator of field dofs of given name (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,IT) More...
|
|
virtual DofEntityByUId::iterator | get_dofs_by_name_and_ent_begin (const std::string &field_name, const EntityHandle ent) const =0 |
| get begin iterator of field dofs of given name and ent(instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,ENT,IT) More...
|
|
virtual DofEntityByUId::iterator | get_dofs_by_name_and_ent_end (const std::string &field_name, const EntityHandle ent) const =0 |
| get begin iterator of field dofs of given name and ent (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,ENT,IT) More...
|
|
virtual DofEntityByUId::iterator | get_dofs_by_name_and_type_begin (const std::string &field_name, const EntityType type) const =0 |
| get begin iterator of field dofs of given name and ent type (instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,TYPE,IT) More...
|
|
virtual DofEntityByUId::iterator | get_dofs_by_name_and_type_end (const std::string &field_name, const EntityType type) const =0 |
| get begin iterator of field dofs of given name end ent type(instead you can use IT_GET_DOFS_FIELD_BY_NAME_FOR_LOOP(MFIELD,NAME,TYPE,IT) More...
|
|
virtual EntFiniteElement_multiIndex::index< Unique_mi_tag >::type::iterator | 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) More...
|
|
virtual EntFiniteElement_multiIndex::index< Unique_mi_tag >::type::iterator | 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) More...
|
|
Interface.
This interface is used by user to:
- create approximation fields,
- declare elements,
declare problems,
- Todo:
- Clean interface, organize groups outsource some functions to independent interface
- Examples
- mesh_cut.cpp.
Definition at line 27 of file Interface.hpp.