v0.8.16
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Attributes | Friends | List of all members
MoFEM::EntFiniteElement Struct Reference

Finite element data for entity. More...

#include <src/multi_indices/FEMultiIndices.hpp>

Inheritance diagram for MoFEM::EntFiniteElement:
[legend]
Collaboration diagram for MoFEM::EntFiniteElement:
[legend]

Public Types

typedef interface_RefEntity< RefElementinterface_type_RefEntity
 
typedef interface_RefElement< RefElementinterface_type_RefElement
 
typedef interface_FiniteElement< FiniteElementinterface_type_FiniteElement
 
- Public Types inherited from MoFEM::interface_RefElement< RefElement >
typedef interface_RefEntity< RefElementinterface_type_RefEntity
 
typedef interface_RefElement< RefElementinterface_type_RefElement
 

Public Member Functions

 EntFiniteElement (const boost::shared_ptr< RefElement > ref_finite_element, const boost::shared_ptr< FiniteElement > fe_ptr)
 
const UIdgetGlobalUniqueId () const
 Get unique UId for finite element entity. More...
 
UId getGlobalUniqueIdCalculate () const
 Generate UId for finite element entity. More...
 
EntityHandle getEnt () const
 Get element entity. More...
 
DofIdx getNbDofsRow () const
 Get number of DOFs on row. More...
 
DofIdx getNbDofsCol () const
 Get number of DOFs on col. More...
 
DofIdx getNbDofsData () const
 Get number of DOFs on data. More...
 
const FEDofEntity_multiIndexgetDataDofs () const
 Get data data dos multi-index structure. More...
 
MoFEMErrorCode getRowDofView (const DofEntity_multiIndex &dofs, DofEntity_multiIndex_active_view &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getColDofView (const DofEntity_multiIndex &dofs, DofEntity_multiIndex_active_view &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getDataDofView (const DofEntity_multiIndex &dofs, DofEntity_multiIndex_active_view &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getRowDofView (const DofEntity_multiIndex &dofs, DofEntity_multiIndex_uid_view &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getColDofView (const DofEntity_multiIndex &dofs, DofEntity_multiIndex_uid_view &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getRowDofView (const NumeredDofEntity_multiIndex &dofs, NumeredDofEntity_multiIndex_uid_view_ordered &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getColDofView (const NumeredDofEntity_multiIndex &dofs, NumeredDofEntity_multiIndex_uid_view_ordered &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getRowDofView (const NumeredDofEntity_multiIndex &dofs, NumeredDofEntity_multiIndex_idx_view_hashed &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getColDofView (const NumeredDofEntity_multiIndex &dofs, NumeredDofEntity_multiIndex_idx_view_hashed &dofs_view, const int operation_type=moab::Interface::UNION) const
 
MoFEMErrorCode getElementAdjacency (const boost::shared_ptr< Field > field_ptr, Range &adjacency)
 
boost::shared_ptr< RefElement > & getRefElement () const
 
boost::weak_ptr< std::vector< FEDofEntity > > & getDofsSequence () const
 Get weak_ptr reference to sequence/vector storing dofs on entity. More...
 
- Public Member Functions inherited from MoFEM::interface_FiniteElement< FiniteElement >
 interface_FiniteElement (const boost::shared_ptr< FiniteElement > &ptr)
 
const boost::shared_ptr< FiniteElement > & get_MoFEMFiniteElementPtr ()
 
BitFEId getId () const
 Get finite element id. More...
 
EntityHandle getMeshset () const
 Get meshset containing element entities. More...
 
boost::string_ref getNameRef () const
 Get finite element name. More...
 
std::string getName () const
 Get finite element name. More...
 
BitFieldId getBitFieldIdCol () const
 Get field ids on columns. More...
 
BitFieldId getBitFieldIdRow () const
 Get field ids on rows. More...
 
BitFieldId getBitFieldIdData () const
 Get field ids on data. More...
 
unsigned int getBitNumber () const
 Get bit identifying this element. More...
 
- Public Member Functions inherited from MoFEM::interface_RefElement< RefElement >
 interface_RefElement (const boost::shared_ptr< RefElement > &sptr)
 
int getBitRefEdgesUlong () const
 
SideNumber_multiIndexgetSideNumberTable () const
 
const boost::shared_ptr< SideNumber > & getSideNumberPtr (const EntityHandle ent) const
 
boost::shared_ptr< RefEntity > & getRefEntityPtr () const
 
const boost::shared_ptr< RefElement > & getRefElement () const
 
virtual ~interface_RefElement ()
 
- Public Member Functions inherited from MoFEM::interface_RefEntity< RefElement >
 interface_RefEntity (const boost::shared_ptr< RefElement > &sptr)
 
 interface_RefEntity (const interface_RefEntity< RefElement > &interface)
 
virtual ~interface_RefEntity ()
 
boost::shared_ptr< BasicEntityData > & getBasicDataPtr ()
 
const boost::shared_ptr< BasicEntityData > & getBasicDataPtr () const
 
EntityHandle getRefEnt () const
 
EntityType getParentEntType () const
 
EntityHandle getParentEnt () const
 
BitRefLevelgetBitRefLevelPtr () const
 
const BitRefLevelgetBitRefLevel () const
 
unsigned long int getBitRefLevelULong () const
 
EntityType getEntType () const
 
EntityID getEntId () const
 
EntityHandle getOwnerEnt () const
 
EntityHandlegetOwnerEnt ()
 
int getOwnerProc () const
 
intgetOwnerProc ()
 
int getPartProc () const
 
intgetPartProc ()
 
unsigned char getPStatus () const
 
intgetSharingProcsPtr () const
 
EntityHandlegetSharingHandlersPtr () const
 
boost::shared_ptr< RefElement > & getRefEntityPtr () const
 

Static Public Member Functions

static UId getGlobalUniqueIdCalculate (const EntityHandle ent, const int bit_number)
 Generate UId for finite element entity. More...
 

Public Attributes

boost::shared_ptr< DofEntity_multiIndex_uid_viewrow_dof_view
 
boost::shared_ptr< DofEntity_multiIndex_uid_viewcol_dof_view
 
boost::shared_ptr< FEDofEntity_multiIndexdata_dofs
 
UId globalUid
 
- Public Attributes inherited from MoFEM::interface_FiniteElement< FiniteElement >
boost::shared_ptr< FiniteElementsFePtr
 
- Public Attributes inherited from MoFEM::interface_RefEntity< RefElement >
boost::shared_ptr< RefElementsPtr
 

Private Attributes

boost::weak_ptr< std::vector< FEDofEntity > > dofsSequce
 

Friends

std::ostream & operator<< (std::ostream &os, const EntFiniteElement &e)
 

Detailed Description

Finite element data for entity.

Definition at line 460 of file FEMultiIndices.hpp.

Member Typedef Documentation

◆ interface_type_FiniteElement

Definition at line 465 of file FEMultiIndices.hpp.

◆ interface_type_RefElement

Definition at line 464 of file FEMultiIndices.hpp.

◆ interface_type_RefEntity

Definition at line 463 of file FEMultiIndices.hpp.

Constructor & Destructor Documentation

◆ EntFiniteElement()

MoFEM::EntFiniteElement::EntFiniteElement ( const boost::shared_ptr< RefElement ref_finite_element,
const boost::shared_ptr< FiniteElement fe_ptr 
)

Definition at line 1008 of file FEMultiIndices.cpp.

1011  : interface_FiniteElement<FiniteElement>(fe_ptr),
1012  interface_RefElement<RefElement>(ref_finite_element),
1013  row_dof_view(boost::shared_ptr<DofEntity_multiIndex_uid_view>(
1015  col_dof_view(boost::shared_ptr<DofEntity_multiIndex_uid_view>(
1017  data_dofs(boost::shared_ptr<FEDofEntity_multiIndex>(
1018  new FEDofEntity_multiIndex)) {
1019  // get finite element entity
1021  // add ents to meshset
1022  // EntityHandle meshset = getMeshset();
1023  // EntityHandle ent = getEnt();
1024  // ierr = moab.add_entities(meshset,&ent,1);
1025  // CHKERRABORT(PETSC_COMM_WORLD,ierr);
1026 }
multi_index_container< boost::shared_ptr< FEDofEntity >, indexed_by< ordered_unique< tag< Unique_mi_tag >, const_mem_fun< FEDofEntity::interface_type_DofEntity, const UId, &FEDofEntity::getGlobalUniqueId > >, ordered_non_unique< tag< Ent_mi_tag >, const_mem_fun< FEDofEntity::interface_type_DofEntity, EntityHandle, &FEDofEntity::getEnt > >, ordered_non_unique< tag< FieldName_mi_tag >, const_mem_fun< FEDofEntity::interface_type_Field, boost::string_ref, &FEDofEntity::getNameRef > >, ordered_non_unique< tag< EntType_mi_tag >, const_mem_fun< FEDofEntity::interface_type_RefEntity, EntityType, &FEDofEntity::getEntType > >, ordered_non_unique< tag< Composite_Name_And_Type_mi_tag >, composite_key< FEDofEntity, const_mem_fun< FEDofEntity::interface_type_Field, boost::string_ref, &FEDofEntity::getNameRef >, const_mem_fun< FEDofEntity::interface_type_RefEntity, EntityType, &FEDofEntity::getEntType > > >, ordered_non_unique< tag< Composite_Name_And_Ent_mi_tag >, composite_key< FEDofEntity, const_mem_fun< FEDofEntity::interface_type_Field, boost::string_ref, &FEDofEntity::getNameRef >, const_mem_fun< FEDofEntity::interface_type_DofEntity, EntityHandle, &FEDofEntity::getEnt > > >, ordered_non_unique< tag< Composite_Name_Type_And_Side_Number_mi_tag >, composite_key< FEDofEntity, const_mem_fun< FEDofEntity::interface_type_Field, boost::string_ref, &FEDofEntity::getNameRef >, const_mem_fun< FEDofEntity::interface_type_RefEntity, EntityType, &FEDofEntity::getEntType >, KeyFromKey< member< SideNumber, char, &SideNumber::side_number >, member< FEDofEntity::BaseFEDofEntity, boost::shared_ptr< SideNumber >, &FEDofEntity::sideNumberPtr > > > >, ordered_non_unique< tag< Composite_EntType_and_Space_mi_tag >, composite_key< FEDofEntity, const_mem_fun< FEDofEntity::interface_type_RefEntity, EntityType, &FEDofEntity::getEntType >, const_mem_fun< FEDofEntity::interface_type_Field, FieldSpace, &FEDofEntity::getSpace > > > > > FEDofEntity_multiIndex
MultiIndex container keeps FEDofEntity.
UId getGlobalUniqueIdCalculate() const
Generate UId for finite element entity.
boost::shared_ptr< DofEntity_multiIndex_uid_view > col_dof_view
boost::shared_ptr< DofEntity_multiIndex_uid_view > row_dof_view
multi_index_container< boost::shared_ptr< DofEntity >, indexed_by< ordered_unique< const_mem_fun< DofEntity, UId, &DofEntity::getGlobalUniqueId > > > > DofEntity_multiIndex_uid_view
multi-index view on DofEntity by uid
boost::shared_ptr< FEDofEntity_multiIndex > data_dofs

Member Function Documentation

◆ getColDofView() [1/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getColDofView ( const DofEntity_multiIndex dofs,
DofEntity_multiIndex_active_view dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

Definition at line 1109 of file FEMultiIndices.cpp.

1111  {
1113 
1114  ierr = get_fe_dof_view(*col_dof_view, dofs, dofs_view, operation_type);
1115  CHKERRG(ierr);
1117 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:483
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:526
boost::shared_ptr< DofEntity_multiIndex_uid_view > col_dof_view
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:490
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
static MoFEMErrorCode get_fe_dof_view(const FE_DOFS &fe_dofs_view, const MOFEM_DOFS &mofem_dofs, MOFEM_DOFS_VIEW &mofem_dofs_view, const int operation_type)

◆ getColDofView() [2/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getColDofView ( const DofEntity_multiIndex dofs,
DofEntity_multiIndex_uid_view dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

◆ getColDofView() [3/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getColDofView ( const NumeredDofEntity_multiIndex dofs,
NumeredDofEntity_multiIndex_uid_view_ordered dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

Definition at line 1161 of file FEMultiIndices.cpp.

1164  {
1166 
1167  ierr = get_fe_dof_view(*col_dof_view, dofs, dofs_view, operation_type);
1168  CHKERRG(ierr);
1170 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:483
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:526
boost::shared_ptr< DofEntity_multiIndex_uid_view > col_dof_view
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:490
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
static MoFEMErrorCode get_fe_dof_view(const FE_DOFS &fe_dofs_view, const MOFEM_DOFS &mofem_dofs, MOFEM_DOFS_VIEW &mofem_dofs_view, const int operation_type)

◆ getColDofView() [4/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getColDofView ( const NumeredDofEntity_multiIndex dofs,
NumeredDofEntity_multiIndex_idx_view_hashed dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

◆ getDataDofs()

const FEDofEntity_multiIndex& MoFEM::EntFiniteElement::getDataDofs ( ) const

Get data data dos multi-index structure.

Returns
Reference multi-index FEDofEntity_multiIndex

Definition at line 531 of file FEMultiIndices.hpp.

531  {
532  return *data_dofs;
533  };
boost::shared_ptr< FEDofEntity_multiIndex > data_dofs

◆ getDataDofView()

MoFEMErrorCode MoFEM::EntFiniteElement::getDataDofView ( const DofEntity_multiIndex dofs,
DofEntity_multiIndex_active_view dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

Definition at line 1119 of file FEMultiIndices.cpp.

1121  {
1123 
1124  ierr = get_fe_dof_view(*data_dofs, dofs, dofs_view, operation_type);
1125  CHKERRG(ierr);
1127 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:483
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:526
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:490
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
boost::shared_ptr< FEDofEntity_multiIndex > data_dofs
static MoFEMErrorCode get_fe_dof_view(const FE_DOFS &fe_dofs_view, const MOFEM_DOFS &mofem_dofs, MOFEM_DOFS_VIEW &mofem_dofs_view, const int operation_type)

◆ getDofsSequence()

boost::weak_ptr<std::vector<FEDofEntity> >& MoFEM::EntFiniteElement::getDofsSequence ( ) const

Get weak_ptr reference to sequence/vector storing dofs on entity.

Vector is automatically destroy when last DOF in vector os destroyed. Every shared_ptr to the DOF has aliased shared_ptr to vector of DOFs in that vector. That do the trick.

Definition at line 597 of file FEMultiIndices.hpp.

597  {
598  return dofsSequce;
599  }
boost::weak_ptr< std::vector< FEDofEntity > > dofsSequce

◆ getElementAdjacency()

MoFEMErrorCode MoFEM::EntFiniteElement::getElementAdjacency ( const boost::shared_ptr< Field field_ptr,
Range &  adjacency 
)

Definition at line 1194 of file FEMultiIndices.cpp.

1195  {
1196 
1197  moab::Interface &moab = getRefEntityPtr()->basicDataPtr->moab;
1199  const EntFiniteElement *this_fe_ptr = this;
1200  if (get_MoFEMFiniteElementPtr()->elementAdjacencyTable[getEntType()] ==
1201  NULL) {
1202  SETERRQ(PETSC_COMM_SELF, MOFEM_NOT_IMPLEMENTED, "not implemented");
1203  }
1204  ierr = (get_MoFEMFiniteElementPtr()->elementAdjacencyTable[getEntType()])(
1205  moab, *field_ptr, *this_fe_ptr, adjacency);
1206  CHKERRG(ierr);
1208 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:483
const boost::shared_ptr< FiniteElement > & get_MoFEMFiniteElementPtr()
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:526
boost::shared_ptr< RefEntity > & getRefEntityPtr() const
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:490
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
EntFiniteElement(const boost::shared_ptr< RefElement > ref_finite_element, const boost::shared_ptr< FiniteElement > fe_ptr)

◆ getEnt()

EntityHandle MoFEM::EntFiniteElement::getEnt ( ) const

Get element entity.

Returns
Element entity handle

Definition at line 503 of file FEMultiIndices.hpp.

503 { return getRefEnt(); }

◆ getGlobalUniqueId()

const UId& MoFEM::EntFiniteElement::getGlobalUniqueId ( ) const

Get unique UId for finite element entity.

Returns
UId

Definition at line 478 of file FEMultiIndices.hpp.

478 { return globalUid; }

◆ getGlobalUniqueIdCalculate() [1/2]

static UId MoFEM::EntFiniteElement::getGlobalUniqueIdCalculate ( const EntityHandle  ent,
const int  bit_number 
)
static

Generate UId for finite element entity.

Returns
finite element entity unique Id

Definition at line 484 of file FEMultiIndices.hpp.

485  {
486  assert(bit_number <= 32);
487  return static_cast<UId>(ent) | static_cast<UId>(bit_number)
488  << 8 * sizeof(EntityHandle);
489  }
uint128_t UId
Unique Id.
Definition: Common.hpp:136

◆ getGlobalUniqueIdCalculate() [2/2]

UId MoFEM::EntFiniteElement::getGlobalUniqueIdCalculate ( ) const

Generate UId for finite element entity.

Returns
finite element entity unique Id

Definition at line 495 of file FEMultiIndices.hpp.

495  {
496  return getGlobalUniqueIdCalculate(sPtr->getRefEnt(), getBitNumber());
497  }
boost::shared_ptr< RefElement > sPtr
unsigned int getBitNumber() const
Get bit identifying this element.
UId getGlobalUniqueIdCalculate() const
Generate UId for finite element entity.

◆ getNbDofsCol()

DofIdx MoFEM::EntFiniteElement::getNbDofsCol ( ) const

Get number of DOFs on col.

Returns
Number of dofs on col

Definition at line 519 of file FEMultiIndices.hpp.

519 { return col_dof_view->size(); }
boost::shared_ptr< DofEntity_multiIndex_uid_view > col_dof_view

◆ getNbDofsData()

DofIdx MoFEM::EntFiniteElement::getNbDofsData ( ) const

Get number of DOFs on data.

Returns
Number of dofs on data

Definition at line 525 of file FEMultiIndices.hpp.

525 { return data_dofs->size(); }
boost::shared_ptr< FEDofEntity_multiIndex > data_dofs

◆ getNbDofsRow()

DofIdx MoFEM::EntFiniteElement::getNbDofsRow ( ) const

Get number of DOFs on row.

Deprecated:
Use getEnt() instead
Returns
Number of dofs on row

Definition at line 513 of file FEMultiIndices.hpp.

513 { return row_dof_view->size(); }
boost::shared_ptr< DofEntity_multiIndex_uid_view > row_dof_view

◆ getRefElement()

boost::shared_ptr<RefElement>& MoFEM::EntFiniteElement::getRefElement ( ) const

Definition at line 585 of file FEMultiIndices.hpp.

585  {
586  return this->sPtr;
587  }
boost::shared_ptr< RefElement > sPtr

◆ getRowDofView() [1/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getRowDofView ( const DofEntity_multiIndex dofs,
DofEntity_multiIndex_active_view dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

Definition at line 1099 of file FEMultiIndices.cpp.

1101  {
1103 
1104  ierr = get_fe_dof_view(*row_dof_view, dofs, dofs_view, operation_type);
1105  CHKERRG(ierr);
1107 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:483
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:526
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:490
boost::shared_ptr< DofEntity_multiIndex_uid_view > row_dof_view
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
static MoFEMErrorCode get_fe_dof_view(const FE_DOFS &fe_dofs_view, const MOFEM_DOFS &mofem_dofs, MOFEM_DOFS_VIEW &mofem_dofs_view, const int operation_type)

◆ getRowDofView() [2/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getRowDofView ( const DofEntity_multiIndex dofs,
DofEntity_multiIndex_uid_view dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

◆ getRowDofView() [3/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getRowDofView ( const NumeredDofEntity_multiIndex dofs,
NumeredDofEntity_multiIndex_uid_view_ordered dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

Definition at line 1150 of file FEMultiIndices.cpp.

1153  {
1155 
1156  ierr = get_fe_dof_view(*row_dof_view, dofs, dofs_view, operation_type);
1157  CHKERRG(ierr);
1159 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:483
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:526
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:490
boost::shared_ptr< DofEntity_multiIndex_uid_view > row_dof_view
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
static MoFEMErrorCode get_fe_dof_view(const FE_DOFS &fe_dofs_view, const MOFEM_DOFS &mofem_dofs, MOFEM_DOFS_VIEW &mofem_dofs_view, const int operation_type)

◆ getRowDofView() [4/4]

MoFEMErrorCode MoFEM::EntFiniteElement::getRowDofView ( const NumeredDofEntity_multiIndex dofs,
NumeredDofEntity_multiIndex_idx_view_hashed dofs_view,
const int  operation_type = moab::Interface::UNION 
) const

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const EntFiniteElement e 
)
friend

Definition at line 1028 of file FEMultiIndices.cpp.

1028  {
1029  os << *e.sFePtr << std::endl;
1030  os << *e.sPtr << std::endl;
1031  os << "row dof_uids ";
1032  DofEntity_multiIndex_uid_view::iterator rit;
1033  rit = e.row_dof_view->begin();
1034  for (; rit != e.row_dof_view->end(); rit++) {
1035  os << (*rit)->getGlobalUniqueId() << " ";
1036  }
1037  os << "col dof_uids ";
1038  DofEntity_multiIndex_uid_view::iterator cit;
1039  cit = e.col_dof_view->begin();
1040  for (; cit != e.col_dof_view->end(); cit++) {
1041  os << (*cit)->getGlobalUniqueId() << " ";
1042  }
1043  os << "data dof_uids ";
1044  FEDofEntity_multiIndex::iterator dit;
1045  dit = e.data_dofs->begin();
1046  for (; dit != e.data_dofs->end(); dit++) {
1047  if (!(*dit)) {
1048  os << "null ptr";
1049  } else {
1050  if (!(*dit)->getDofEntityPtr()) {
1051  os << "( null ptr to dof ) ";
1052  } else {
1053  if (!(*dit)->getFieldEntityPtr()) {
1054  os << "(( null ptr to field entity )) ";
1055  } else {
1056  os << (*dit)->getGlobalUniqueId() << " ";
1057  }
1058  }
1059  }
1060  }
1061  return os;
1062 }

Member Data Documentation

◆ col_dof_view

boost::shared_ptr<DofEntity_multiIndex_uid_view> MoFEM::EntFiniteElement::col_dof_view

Definition at line 467 of file FEMultiIndices.hpp.

◆ data_dofs

boost::shared_ptr<FEDofEntity_multiIndex> MoFEM::EntFiniteElement::data_dofs

Definition at line 468 of file FEMultiIndices.hpp.

◆ dofsSequce

boost::weak_ptr<std::vector<FEDofEntity> > MoFEM::EntFiniteElement::dofsSequce
mutableprivate

Definition at line 603 of file FEMultiIndices.hpp.

◆ globalUid

UId MoFEM::EntFiniteElement::globalUid

Definition at line 469 of file FEMultiIndices.hpp.

◆ row_dof_view

boost::shared_ptr<DofEntity_multiIndex_uid_view> MoFEM::EntFiniteElement::row_dof_view

Definition at line 466 of file FEMultiIndices.hpp.


The documentation for this struct was generated from the following files: