v0.14.0
Classes | Public Types | Public Member Functions | List of all members
MoFEM::BaseFunction Struct Reference

Base class if inherited used to calculate base functions. More...

#include <src/approximation/BaseFunction.hpp>

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

Classes

struct  DofsSideMapData
 

Public Types

using DofsSideMap = multi_index_container< DofsSideMapData, indexed_by< ordered_non_unique< tag< TypeSide_mi_tag >, composite_key< DofsSideMapData, member< DofsSideMapData, EntityType, &DofsSideMapData::type >, member< DofsSideMapData, int, &DofsSideMapData::side > >>, ordered_unique< tag< EntDofIdx_mi_tag >, member< DofsSideMapData, int, &DofsSideMapData::dof > > > >
 Map entity stype and side to element/entity dof index. More...
 

Public Member Functions

MoFEMErrorCode query_interface (boost::typeindex::type_index type_index, MoFEM::UnknownInterface **iface) const
 
virtual MoFEMErrorCode getValue (MatrixDouble &pts, boost::shared_ptr< BaseFunctionCtx > ctx_ptr)
 
virtual MoFEMErrorCode getValue (MatrixDouble &pts_x, MatrixDouble &pts_t, boost::shared_ptr< BaseFunctionCtx > ctx_ptr)
 
- Public Member Functions inherited from MoFEM::BaseFunctionUnknownInterface
virtual ~BaseFunctionUnknownInterface ()=default
 
- Public Member Functions inherited from MoFEM::UnknownInterface
template<class IFACE >
MoFEMErrorCode registerInterface (bool error_if_registration_failed=true)
 Register interface. More...
 
template<class IFACE >
MoFEMErrorCode getInterface (IFACE *&iface) const
 Get interface reference to pointer of interface. More...
 
template<class IFACE >
MoFEMErrorCode getInterface (IFACE **const iface) const
 Get interface pointer to pointer of interface. More...
 
template<class IFACE , typename boost::enable_if< boost::is_pointer< IFACE >, int >::type = 0>
IFACE getInterface () const
 Get interface pointer to pointer of interface. More...
 
template<class IFACE , typename boost::enable_if< boost::is_reference< IFACE >, int >::type = 0>
IFACE getInterface () const
 Get reference to interface. More...
 
template<class IFACE >
IFACE * getInterface () const
 Function returning pointer to interface. More...
 
virtual ~UnknownInterface ()=default
 

Additional Inherited Members

- Static Public Member Functions inherited from MoFEM::UnknownInterface
static MoFEMErrorCode getLibVersion (Version &version)
 Get library version. More...
 
static MoFEMErrorCode getFileVersion (moab::Interface &moab, Version &version)
 Get database major version. More...
 
static MoFEMErrorCode setFileVersion (moab::Interface &moab, Version version=Version(MoFEM_VERSION_MAJOR, MoFEM_VERSION_MINOR, MoFEM_VERSION_BUILD))
 Get database major version. More...
 
static MoFEMErrorCode getInterfaceVersion (Version &version)
 Get database major version. More...
 

Detailed Description

Base class if inherited used to calculate base functions.

Examples
forces_and_sources_testing_users_base.cpp.

Definition at line 40 of file BaseFunction.hpp.

Member Typedef Documentation

◆ DofsSideMap

using MoFEM::BaseFunction::DofsSideMap = multi_index_container< DofsSideMapData, indexed_by< ordered_non_unique< tag<TypeSide_mi_tag>, composite_key< DofsSideMapData, member<DofsSideMapData, EntityType, &DofsSideMapData::type>, member<DofsSideMapData, int, &DofsSideMapData::side> >>, ordered_unique<tag<EntDofIdx_mi_tag>, member<DofsSideMapData, int, &DofsSideMapData::dof> > > >

Map entity stype and side to element/entity dof index.

Such map is used to establish connection between dofs in the interior for broken specs. Is assume that trace of interior on given side is not zero.

Definition at line 73 of file BaseFunction.hpp.

Member Function Documentation

◆ getValue() [1/2]

MoFEMErrorCode MoFEM::BaseFunction::getValue ( MatrixDouble pts,
boost::shared_ptr< BaseFunctionCtx ctx_ptr 
)
virtual

◆ getValue() [2/2]

MoFEMErrorCode MoFEM::BaseFunction::getValue ( MatrixDouble pts_x,
MatrixDouble pts_t,
boost::shared_ptr< BaseFunctionCtx ctx_ptr 
)
virtual

Reimplemented in MoFEM::IntegratedJacobiPolynomial, and MoFEM::JacobiPolynomial.

Definition at line 33 of file BaseFunction.cpp.

34  {
36  SETERRQ(PETSC_COMM_SELF, MOFEM_NOT_IMPLEMENTED,
37  "BaseFunction has not valid implementation of any shape function");
39 }

◆ query_interface()

MoFEMErrorCode MoFEM::BaseFunction::query_interface ( boost::typeindex::type_index  type_index,
MoFEM::UnknownInterface **  iface 
) const
virtual

The documentation for this struct was generated from the following files:
MoFEMFunctionReturnHot
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:460
MoFEMFunctionBeginHot
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:453
MOFEM_NOT_IMPLEMENTED
@ MOFEM_NOT_IMPLEMENTED
Definition: definitions.h:32