v0.8.13
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]

Public Member Functions

MoFEMErrorCode query_interface (const MOFEMuuid &uuid, MoFEM::UnknownInterface **iface) const
 
 BaseFunction ()
 
 ~BaseFunction ()
 
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::UnknownInterface
template<class IFACE >
MoFEMErrorCode registerInterface (const MOFEMuuid &uuid, bool error_if_registration_failed=true)
 Register interface. More...
 
template<class IFACE , bool VERIFY = false>
MoFEMErrorCode getInterface (const MOFEMuuid &uuid, IFACE *&iface) const
 Get interface by uuid and return reference to pointer of interface. More...
 
template<class IFACE >
MoFEMErrorCode getInterface (IFACE *&iface) const
 Get interface refernce 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 ()
 
virtual MoFEMErrorCode getLibVersion (Version &version) const
 Get library version. More...
 
virtual const MoFEMErrorCode getFileVersion (moab::Interface &moab, Version &version) const
 Get database major version. More...
 
virtual MoFEMErrorCode getInterfaceVersion (Version &version) const
 Get database major version. More...
 
template<>
MoFEMErrorCode getInterface (const MOFEMuuid &uuid, UnknownInterface *&iface) const
 

Additional Inherited Members

- Protected Member Functions inherited from MoFEM::UnknownInterface
boost::typeindex::type_index getClassIdx (const MOFEMuuid &uid) const
 Get type name for interface Id. More...
 
MOFEMuuid getUId (const boost::typeindex::type_index &class_idx) const
 Get interface Id for class name. More...
 

Detailed Description

Base class if inherited used to calculate base functions.

Definition at line 45 of file BaseFunction.hpp.

Constructor & Destructor Documentation

◆ BaseFunction()

MoFEM::BaseFunction::BaseFunction ( )

Definition at line 50 of file BaseFunction.hpp.

50 {}

◆ ~BaseFunction()

MoFEM::BaseFunction::~BaseFunction ( )

Definition at line 51 of file BaseFunction.hpp.

51 {}

Member Function Documentation

◆ getValue() [1/2]

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

Reimplemented in MoFEM::KernelLobattoPolynomial, MoFEM::FatPrismPolynomialBase, MoFEM::LegendrePolynomial, MoFEM::FlatPrismPolynomialBase, MoFEM::LobattoPolynomial, MoFEM::EdgePolynomialBase, MoFEM::TriPolynomialBase, and MoFEM::TetPolynomialBase.

Definition at line 58 of file BaseFunction.cpp.

61  {
63  SETERRQ(
64  PETSC_COMM_SELF,
66  "BaseFunction has not valid implementation of any shape function"
67  );
69 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:519
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:526

◆ 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 71 of file BaseFunction.cpp.

75  {
77  SETERRQ(
78  PETSC_COMM_SELF,
80  "BaseFunction has not valid implementation of any shape function"
81  );
83 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:519
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:526

◆ query_interface()

MoFEMErrorCode MoFEM::BaseFunction::query_interface ( const MOFEMuuid uuid,
MoFEM::UnknownInterface **  iface 
) const
virtual

Implements MoFEM::UnknownInterface.

Reimplemented in MoFEM::IntegratedJacobiPolynomial, MoFEM::KernelLobattoPolynomial, MoFEM::FatPrismPolynomialBase, MoFEM::LegendrePolynomial, MoFEM::JacobiPolynomial, MoFEM::FlatPrismPolynomialBase, MoFEM::LobattoPolynomial, MoFEM::EdgePolynomialBase, MoFEM::TriPolynomialBase, and MoFEM::TetPolynomialBase.

Definition at line 44 of file BaseFunction.cpp.

46  {
48  *iface = NULL;
49  if(uuid == IDD_UNKNOWN_BASE_FUNCTION) {
50  *iface = const_cast<BaseFunction*>(this);
52  } else {
53  SETERRQ(PETSC_COMM_WORLD,MOFEM_DATA_INCONSISTENCY,"wrong interference");
54  }
56 }
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:519
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:526
Base class if inherited used to calculate base functions.
static const MOFEMuuid IDD_UNKNOWN_BASE_FUNCTION

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