v0.14.0
Loading...
Searching...
No Matches
VertexElementForcesAndSourcesCore.cpp
Go to the documentation of this file.
1/** \file VertexElementForcesAndSourcesCore.cpp
2
3\brief Implementation of vertex element
4
5*/
6
7
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12#include <cblas.h>
13#include <lapack_wrap.h>
14#include <gm_rule.h>
15#ifdef __cplusplus
16}
17#endif
18
19namespace MoFEM {
20
22 Interface &m_field)
23 : ForcesAndSourcesCore(m_field) {
25 "Problem with creation data on element");
26};
27
30
31 if (numeredEntFiniteElementPtr->getEntType() != MBVERTEX)
33
34
36 coords.resize(3, false);
37 CHKERR mField.get_moab().get_coords(&ent, 1, &*coords.data().begin());
38
39 // Iterate over operators
41
43}
44
45MoFEMErrorCode VertexElementForcesAndSourcesCore::UserDataOperator::setPtrFE(
48 if (!(ptrFE = dynamic_cast<VertexElementForcesAndSourcesCore *>(ptr)))
49 SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
50 "User operator and finite element do not work together");
52}
53
54} // namespace MoFEM
#define CHK_THROW_MESSAGE(err, msg)
Check and throw MoFEM exception.
Definition: definitions.h:595
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:447
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:346
@ MOFEM_DATA_INCONSISTENCY
Definition: definitions.h:31
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
Definition: definitions.h:416
#define CHKERR
Inline error check.
Definition: definitions.h:535
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
Definition: definitions.h:440
PetscErrorCode MoFEMErrorCode
MoFEM/PETSc error code.
Definition: Exceptions.hpp:56
implementation of Data Operators for Forces and Sources
Definition: Common.hpp:10
virtual moab::Interface & get_moab()=0
Deprecated interface functions.
boost::shared_ptr< const NumeredEntFiniteElement > numeredEntFiniteElementPtr
structure to get information form mofem into EntitiesFieldData
MoFEMErrorCode loopOverOperators()
Iterate user data operators.
MoFEMErrorCode createDataOnElement(EntityType type)
Create a entity data on element object.
MoFEMErrorCode operator()()
function is run for every finite element