v0.14.0
Public Types | Public Member Functions | Public Attributes | List of all members
GenericElementInterface Struct Referenceabstract

Set of functions declaring elements and setting operators for generic element interface. More...

#include <users_modules/basic_finite_elements/src/GenericElementInterface.hpp>

Inheritance diagram for GenericElementInterface:
[legend]
Collaboration diagram for GenericElementInterface:
[legend]

Public Types

enum  TSType {
  EX, IM, IM2, IMEX,
  DEFAULT
}
 
using BcMarkerPtr = boost::shared_ptr< std::vector< char unsigned > >
 

Public Member Functions

 GenericElementInterface ()
 
virtual ~GenericElementInterface ()
 
virtual MoFEMErrorCode setGlobalBoundaryMarker (BcMarkerPtr mark)
 
virtual BcMarkerPtr getGlobalBoundaryMarker ()
 
virtual MoFEMErrorCode setMonitorPtr (boost::shared_ptr< FEMethod > monitor_ptr)
 
virtual MoFEMErrorCode getCommandLineParameters ()
 
virtual MoFEMErrorCode addElementFields ()=0
 
virtual MoFEMErrorCode createElements ()=0
 
virtual MoFEMErrorCode addElementsToDM (SmartPetscObj< DM > dm)=0
 
virtual BitRefLevel getBitRefLevel ()
 
virtual BitRefLevel getBitRefLevelMask ()
 
virtual MoFEMErrorCode setOperators ()=0
 
virtual MoFEMErrorCode setupSolverJacobianSNES ()
 
virtual MoFEMErrorCode setupSolverFunctionSNES ()
 
virtual MoFEMErrorCode setupSolverJacobianTS (const TSType type)=0
 
virtual MoFEMErrorCode setupSolverFunctionTS (const TSType type)=0
 
virtual MoFEMErrorCode updateElementVariables ()
 
virtual MoFEMErrorCode postProcessElement (int step)=0
 

Public Attributes

BcMarkerPtr mBoundaryMarker
 
int atomTest
 
int restartRunStep
 
boost::shared_ptr< FEMethodmonitorPtr
 

Detailed Description

Set of functions declaring elements and setting operators for generic element interface.

Examples
NonlinearElasticElementInterface.hpp.

Definition at line 13 of file GenericElementInterface.hpp.

Member Typedef Documentation

◆ BcMarkerPtr

using GenericElementInterface::BcMarkerPtr = boost::shared_ptr<std::vector<char unsigned> >

Definition at line 17 of file GenericElementInterface.hpp.

Member Enumeration Documentation

◆ TSType

Enumerator
EX 
IM 
IM2 
IMEX 
DEFAULT 
Examples
NonlinearElasticElementInterface.hpp.

Definition at line 16 of file GenericElementInterface.hpp.

16 { EX, IM, IM2, IMEX, DEFAULT };

Constructor & Destructor Documentation

◆ GenericElementInterface()

GenericElementInterface::GenericElementInterface ( )
inline

Definition at line 31 of file GenericElementInterface.hpp.

31 {}

◆ ~GenericElementInterface()

virtual GenericElementInterface::~GenericElementInterface ( )
inlinevirtual

Definition at line 32 of file GenericElementInterface.hpp.

32 {}

Member Function Documentation

◆ addElementFields()

virtual MoFEMErrorCode GenericElementInterface::addElementFields ( )
pure virtual

◆ addElementsToDM()

virtual MoFEMErrorCode GenericElementInterface::addElementsToDM ( SmartPetscObj< DM >  dm)
pure virtual

◆ createElements()

virtual MoFEMErrorCode GenericElementInterface::createElements ( )
pure virtual

◆ getBitRefLevel()

virtual BitRefLevel GenericElementInterface::getBitRefLevel ( )
inlinevirtual

Reimplemented in MortarContactInterface, and NonlinearElasticElementInterface.

Definition at line 56 of file GenericElementInterface.hpp.

56 { return BitRefLevel().set(); };

◆ getBitRefLevelMask()

virtual BitRefLevel GenericElementInterface::getBitRefLevelMask ( )
inlinevirtual

Definition at line 57 of file GenericElementInterface.hpp.

57 { return BitRefLevel().set(); };

◆ getCommandLineParameters()

virtual MoFEMErrorCode GenericElementInterface::getCommandLineParameters ( )
inlinevirtual

Reimplemented in BasicBoundaryConditionsInterface, MortarContactInterface, and NonlinearElasticElementInterface.

Definition at line 50 of file GenericElementInterface.hpp.

50 { return 0; };

◆ getGlobalBoundaryMarker()

virtual BcMarkerPtr GenericElementInterface::getGlobalBoundaryMarker ( )
inlinevirtual

Definition at line 40 of file GenericElementInterface.hpp.

40 { return mBoundaryMarker; };

◆ postProcessElement()

virtual MoFEMErrorCode GenericElementInterface::postProcessElement ( int  step)
pure virtual

◆ setGlobalBoundaryMarker()

virtual MoFEMErrorCode GenericElementInterface::setGlobalBoundaryMarker ( BcMarkerPtr  mark)
inlinevirtual

Definition at line 34 of file GenericElementInterface.hpp.

34  {
36  mBoundaryMarker = mark;
38  }

◆ setMonitorPtr()

virtual MoFEMErrorCode GenericElementInterface::setMonitorPtr ( boost::shared_ptr< FEMethod monitor_ptr)
inlinevirtual

Definition at line 42 of file GenericElementInterface.hpp.

42  {
44  monitorPtr = monitor_ptr;
46  return 0;
47  }

◆ setOperators()

virtual MoFEMErrorCode GenericElementInterface::setOperators ( )
pure virtual

◆ setupSolverFunctionSNES()

virtual MoFEMErrorCode GenericElementInterface::setupSolverFunctionSNES ( )
inlinevirtual

Reimplemented in BasicBoundaryConditionsInterface, MortarContactInterface, and NonlinearElasticElementInterface.

Definition at line 69 of file GenericElementInterface.hpp.

69  {
71  SETERRQ(PETSC_COMM_SELF, MOFEM_NOT_IMPLEMENTED, "SNES not implemented");
73  };

◆ setupSolverFunctionTS()

virtual MoFEMErrorCode GenericElementInterface::setupSolverFunctionTS ( const TSType  type)
pure virtual

◆ setupSolverJacobianSNES()

virtual MoFEMErrorCode GenericElementInterface::setupSolverJacobianSNES ( )
inlinevirtual

Reimplemented in BasicBoundaryConditionsInterface, MortarContactInterface, and NonlinearElasticElementInterface.

Definition at line 63 of file GenericElementInterface.hpp.

63  {
65  SETERRQ(PETSC_COMM_SELF, MOFEM_NOT_IMPLEMENTED, "SNES not implemented");
67  };

◆ setupSolverJacobianTS()

virtual MoFEMErrorCode GenericElementInterface::setupSolverJacobianTS ( const TSType  type)
pure virtual

◆ updateElementVariables()

virtual MoFEMErrorCode GenericElementInterface::updateElementVariables ( )
inlinevirtual

Reimplemented in BasicBoundaryConditionsInterface, MortarContactInterface, and NonlinearElasticElementInterface.

Definition at line 79 of file GenericElementInterface.hpp.

79 { return 0; };

Member Data Documentation

◆ atomTest

int GenericElementInterface::atomTest

Definition at line 21 of file GenericElementInterface.hpp.

◆ mBoundaryMarker

BcMarkerPtr GenericElementInterface::mBoundaryMarker

◆ monitorPtr

boost::shared_ptr<FEMethod> GenericElementInterface::monitorPtr

Definition at line 24 of file GenericElementInterface.hpp.

◆ restartRunStep

int GenericElementInterface::restartRunStep

Definition at line 22 of file GenericElementInterface.hpp.


The documentation for this struct was generated from the following file:
GenericElementInterface::EX
@ EX
Definition: GenericElementInterface.hpp:16
MoFEMFunctionReturnHot
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:447
GenericElementInterface::IMEX
@ IMEX
Definition: GenericElementInterface.hpp:16
GenericElementInterface::monitorPtr
boost::shared_ptr< FEMethod > monitorPtr
Definition: GenericElementInterface.hpp:24
GenericElementInterface::mBoundaryMarker
BcMarkerPtr mBoundaryMarker
Definition: GenericElementInterface.hpp:20
GenericElementInterface::DEFAULT
@ DEFAULT
Definition: GenericElementInterface.hpp:16
MoFEM::Types::BitRefLevel
std::bitset< BITREFLEVEL_SIZE > BitRefLevel
Bit structure attached to each entity identifying to what mesh entity is attached.
Definition: Types.hpp:40
MoFEMFunctionBeginHot
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:440
MOFEM_NOT_IMPLEMENTED
@ MOFEM_NOT_IMPLEMENTED
Definition: definitions.h:32
GenericElementInterface::IM2
@ IM2
Definition: GenericElementInterface.hpp:16
GenericElementInterface::IM
@ IM
Definition: GenericElementInterface.hpp:16