8#ifndef __FACEELEMENTFORCESANDSOURCESCORE_ONSIDE__HPP__
9#define __FACEELEMENTFORCESANDSOURCESCORE_ONSIDE__HPP__
11using namespace boost::numeric;
23 FaceElementForcesAndSourcesCore;
95 using FaceElementForcesAndSourcesCore::UserDataOperator::UserDataOperator;
152const std::array<int, 2> &
157const std::array<int, 4> &
179FaceElementForcesAndSourcesCoreOnSide::UserDataOperator::getFaceFE()
const {
184FaceElementForcesAndSourcesCoreOnSide::UserDataOperator::getEdgeFE()
const {
188int FaceElementForcesAndSourcesCoreOnSide::UserDataOperator::getEdgeSense()
193int FaceElementForcesAndSourcesCoreOnSide::UserDataOperator::getSkeletonSense()
195 return getFaceFE()->edgeSense;
198int FaceElementForcesAndSourcesCoreOnSide::UserDataOperator::
199 getEdgeSideNumber()
const {
200 return getFaceFE()->edgeSideNumber;
204FaceElementForcesAndSourcesCoreOnSide::UserDataOperator::getDirection() {
205 return getEdgeFE()->dIrection;
208auto FaceElementForcesAndSourcesCoreOnSide::UserDataOperator::
209 getFTensor1Direction() {
210 double *ptr = &*getDirection().data().begin();
215 getEdgeCoordsAtGaussPts() {
216 return getEdgeFE()->coordsAtGaussPts;
226 FaceElementForcesAndSourcesCoreOnSide;
PetscErrorCode MoFEMErrorCode
MoFEM/PETSc error code.
implementation of Data Operators for Forces and Sources
default operator for TRI element
default operator for Face element
int getEdgeSideNumber() const
get face side number in respect to volume
MatrixDouble & getEdgeCoordsAtGaussPts()
get face coordinates at Gauss pts.
VectorDouble & getDirection()
DEPRECATED int getEdgeSense() const
get face sense in respect to volume
auto getFTensor1Direction()
get normal as tensor
EdgeElementForcesAndSourcesCore * getEdgeFE() const
Get the edge side finite element.
MoFEMErrorCode setPtrFE(ForcesAndSourcesCore *ptr)
const FaceElementForcesAndSourcesCoreOnSide * getFaceFE() const
return pointer to Generic Volume Finite Element object
int getSkeletonSense() const
Base face element used to integrate on skeleton.
std::array< int, 4 > faceConnMap
std::array< int, 2 > edgeConnMap
int getSkeletonSense() const
int edgeSense
Sense of edge, could be 1 or -1.
int getOppositeNode() const
Get node on volume opposite to skeleton element.
int getEdgeSideNumber() const
Face number on the volume.
MoFEMErrorCode setGaussPts(int order)
const std::array< int, 4 > & getFaceConnMap() const
Get face nodes maped on volume.
int edgeSideNumber
Edge side number.
DEPRECATED int getEdgeSense() const
Sense face on volume.
const std::array< int, 2 > & getEdgeConnMap() const
Get the face nodes mapped on volume element.
ForcesAndSourcesCore * ptrFE
structure to get information form mofem into EntitiesFieldData