v0.8.13
Public Member Functions | Public Attributes | List of all members
MoFEM::FlatPrismPolynomialBaseCtx Struct Reference

Class used to pass element data to calculate base functions on flat prism. More...

#include <src/approximation/FlatPrismPolynomialBase.hpp>

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

Public Member Functions

MoFEMErrorCode query_interface (const MOFEMuuid &uuid, UnknownInterface **iface) const
 
 FlatPrismPolynomialBaseCtx (DataForcesAndSourcesCore &data, moab::Interface &moab, const NumeredEntFiniteElement *fe_ptr, const FieldSpace space, const FieldApproximationBase base, const FieldApproximationBase copy_node_base=LASTBASE)
 
 ~FlatPrismPolynomialBaseCtx ()
 
- Public Member Functions inherited from MoFEM::EntPolynomialBaseCtx
 EntPolynomialBaseCtx (DataForcesAndSourcesCore &data, const FieldSpace space, const FieldApproximationBase base, const FieldApproximationBase copy_node_base=LASTBASE)
 
 ~EntPolynomialBaseCtx ()
 
- Public Member Functions inherited from MoFEM::BaseFunctionCtx
 BaseFunctionCtx ()
 
 ~BaseFunctionCtx ()
 
- 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
 

Public Attributes

moab::Interface & mOab
 
const NumeredEntFiniteElementfePtr
 
- Public Attributes inherited from MoFEM::EntPolynomialBaseCtx
PetscErrorCode(* basePolynomialsType0 )(int p, double s, double *diff_s, double *L, double *diffL, const int dim)
 
PetscErrorCode(* basePolynomialsType1 )(int p, double alpha, double x, double t, double *diff_x, double *diff_t, double *L, double *diffL, const int dim)
 
DataForcesAndSourcesCoredAta
 
const FieldSpace sPace
 
const FieldApproximationBase bAse
 
const FieldApproximationBase copyNodeBase
 
const FEMethodfePtr
 

Additional Inherited Members

- Protected Member Functions inherited from MoFEM::EntPolynomialBaseCtx
MoFEMErrorCode setBase ()
 
- 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

Class used to pass element data to calculate base functions on flat prism.

FIXME: Need moab and mofem finite element structure to work (that not perfect)

Definition at line 33 of file FlatPrismPolynomialBase.hpp.

Constructor & Destructor Documentation

◆ FlatPrismPolynomialBaseCtx()

FlatPrismPolynomialBaseCtx::FlatPrismPolynomialBaseCtx ( DataForcesAndSourcesCore data,
moab::Interface &  moab,
const NumeredEntFiniteElement fe_ptr,
const FieldSpace  space,
const FieldApproximationBase  base,
const FieldApproximationBase  copy_node_base = LASTBASE 
)

Definition at line 63 of file FlatPrismPolynomialBase.cpp.

70  :
71 EntPolynomialBaseCtx(data,space,base,copy_node_base),
72 mOab(moab),
73 fePtr(fe_ptr) {
74 
75  ierr = setBase(); CHKERRABORT(PETSC_COMM_WORLD,ierr);
76 }
EntPolynomialBaseCtx(DataForcesAndSourcesCore &data, const FieldSpace space, const FieldApproximationBase base, const FieldApproximationBase copy_node_base=LASTBASE)
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
const NumeredEntFiniteElement * fePtr

◆ ~FlatPrismPolynomialBaseCtx()

FlatPrismPolynomialBaseCtx::~FlatPrismPolynomialBaseCtx ( )

Definition at line 77 of file FlatPrismPolynomialBase.cpp.

77  {
78 }

Member Function Documentation

◆ query_interface()

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

Reimplemented from MoFEM::EntPolynomialBaseCtx.

Definition at line 47 of file FlatPrismPolynomialBase.cpp.

47  {
48 
50  *iface = NULL;
51  if(
53  ) {
54  *iface = const_cast<FlatPrismPolynomialBaseCtx*>(this);
56  } else {
57  SETERRQ(PETSC_COMM_WORLD,MOFEM_DATA_INCONSISTENCY,"wrong interference");
58  }
61 }
static const MOFEMuuid IDD_FLATPRISM_BASE_FUNCTION
MoFEMErrorCode query_interface(const MOFEMuuid &uuid, UnknownInterface **iface) const
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:519
#define CHKERRG(n)
Check error code of MoFEM/MOAB/PETSc function.
Definition: definitions.h:562
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return() ...
Definition: definitions.h:526
static MoFEMErrorCodeGeneric< PetscErrorCode > ierr
Definition: Common.hpp:80
Class used to pass element data to calculate base functions on flat prism.

Member Data Documentation

◆ fePtr

const NumeredEntFiniteElement* MoFEM::FlatPrismPolynomialBaseCtx::fePtr

Definition at line 38 of file FlatPrismPolynomialBase.hpp.

◆ mOab

moab::Interface& MoFEM::FlatPrismPolynomialBaseCtx::mOab

Definition at line 37 of file FlatPrismPolynomialBase.hpp.


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