OOFEM 3.0
Loading...
Searching...
No Matches
oofem::DummyFEInterpolation Class Reference

#include <feinterpol.h>

Inheritance diagram for oofem::DummyFEInterpolation:
Collaboration diagram for oofem::DummyFEInterpolation:

Public Member Functions

 DummyFEInterpolation ()
integrationDomain giveIntegrationDomain (const Element_Geometry_Type) const override
const Element_Geometry_Type giveGeometryType () const override
void evalN (FloatArray &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
double evaldNdx (FloatMatrix &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
void local2global (FloatArray &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
int global2local (FloatArray &answer, const FloatArray &gcoords, const FEICellGeometry &cellgeo) const override
double giveTransformationJacobian (const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
void boundaryEdgeEvalN (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
double boundaryEdgeEvalNormal (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
double boundaryEdgeGiveTransformationJacobian (int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
void boundaryEdgeLocal2Global (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
integrationDomain giveBoundaryEdgeIntegrationDomain (int boundary, const Element_Geometry_Type) const override
 Returns boundary integration domain.
IntArray boundaryEdgeGiveNodes (int boundary, const Element_Geometry_Type, bool includeHierarchical=false) const override
void boundarySurfaceEvalN (FloatArray &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
void boundarySurfaceEvaldNdx (FloatMatrix &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
double boundarySurfaceEvalNormal (FloatArray &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
double boundarySurfaceGiveTransformationJacobian (int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
void boundarySurfaceLocal2global (FloatArray &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
integrationDomain giveBoundarySurfaceIntegrationDomain (int boundary, const Element_Geometry_Type) const override
 Returns boundary integration domain.
IntArray boundarySurfaceGiveNodes (int boundary, const Element_Geometry_Type, bool includeHierarchical=false) const override
void boundaryLocal2Global (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
void boundaryEvalN (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
double boundaryEvalNormal (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
double boundaryGiveTransformationJacobian (int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const override
IntArray boundaryGiveNodes (int boundary, const Element_Geometry_Type) const override
integrationDomain giveBoundaryIntegrationDomain (int boundary, const Element_Geometry_Type) const override
 Returns boundary integration domain.
double evalNXIntegral (int boundary, const FEICellGeometry &cellgeo) const override
int giveNsd (const Element_Geometry_Type) const override
int giveNumberOfEdges (const Element_Geometry_Type) const override
int giveNumberOfNodes (const Element_Geometry_Type) const override
const Element_Geometry_Type giveBoundaryGeometryType (int boundary) const override
Public Member Functions inherited from oofem::FEInterpolation
 FEInterpolation (int o)
virtual ~FEInterpolation ()=default
virtual void initializeFrom (InputRecord &ir, ParameterManager &pm, int elnum, int priority)
 Initializes receiver according to object description stored in input record.
virtual void postInitialize (ParameterManager &pm, int elnum)
int giveInterpolationOrder () const
virtual void giveCellDofMans (IntArray &nodes, IntArray &internalDofMans, Element *elem) const
 Returns list of element nodes (and list of internal dof managers) (including on edges and surfaces) defining the approximation.
virtual void evald2Ndx2 (FloatMatrix &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const
virtual void evaldNdxi (FloatMatrix &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const
virtual void giveLocalNodeCoords (FloatMatrix &answer, const Element_Geometry_Type) const
virtual void giveJacobianMatrixAt (FloatMatrix &jacobianMatrix, const FloatArray &lcoords, const FEICellGeometry &cellgeo) const
virtual std::unique_ptr< IntegrationRulegiveIntegrationRule (int order, const Element_Geometry_Type) const
virtual std::unique_ptr< IntegrationRulegiveBoundaryEdgeIntegrationRule (int order, int boundary, const Element_Geometry_Type) const
virtual std::unique_ptr< IntegrationRulegiveBoundarySurfaceIntegrationRule (int order, int boundary, const Element_Geometry_Type) const
virtual std::unique_ptr< IntegrationRulegiveBoundaryIntegrationRule (int order, int boundary, const Element_Geometry_Type) const
virtual void surfaceEvaldNdxi (FloatMatrix &answer, const FloatArray &lcoords) const
virtual void surfaceEvald2Ndxi2 (FloatMatrix &answer, const FloatArray &lcoords) const
virtual int giveKnotSpanBasisFuncMask (const IntArray &knotSpan, IntArray &mask) const
virtual int giveNumberOfKnotSpanBasisFunctions (const IntArray &knotSpan) const
virtual bool hasSubPatchFormulation () const
virtual const FloatArraygiveKnotVector () const
virtual int giveNumberOfKnotSpans (int dim) const
virtual const FloatArraygiveKnotValues (int dim) const
virtual const IntArraygiveKnotMultiplicity (int dim) const
virtual void initializeCell (Element *e) const
std::string errorInfo (const char *func) const

Additional Inherited Members

Protected Attributes inherited from oofem::FEInterpolation
int order = 0

Detailed Description

Definition at line 568 of file feinterpol.h.

Constructor & Destructor Documentation

◆ DummyFEInterpolation()

oofem::DummyFEInterpolation::DummyFEInterpolation ( )
inline

Definition at line 571 of file feinterpol.h.

References oofem::FEInterpolation::FEInterpolation().

Member Function Documentation

◆ boundaryEdgeEvalN()

void oofem::DummyFEInterpolation::boundaryEdgeEvalN ( FloatArray & answer,
int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the basis functions on the requested boundary. Only basis functions that are nonzero anywhere on the boundary are given. Ordering can be obtained from giveBoundaryNodes. Boundaries are defined as the corner nodes for 1D geometries, edges for 2D geometries and surfaces for 3D geometries.

Parameters
answerBasis functions Array to be filled with the boundary nodes.
boundaryBoundary number.
lcoordsThe local coordinates (on the boundary local coordinate system).
cellgeoUnderlying cell geometry.
Todo

Implements oofem::FEInterpolation.

Definition at line 596 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundaryEdgeEvalNormal()

double oofem::DummyFEInterpolation::boundaryEdgeEvalNormal ( FloatArray & answer,
int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the normal out of the edge at given point.

Parameters
answerContains resulting normal vector.
isurfDetermines the surface number.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.
Returns
Surface mapping jacobian.

Implements oofem::FEInterpolation.

Definition at line 600 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundaryEdgeGiveNodes()

IntArray oofem::DummyFEInterpolation::boundaryEdgeGiveNodes ( int boundary,
const Element_Geometry_Type ,
bool includeHierarchical = false ) const
inlineoverridevirtual

Gives the boundary nodes for requested boundary number.

Parameters
answerArray to be filled with the boundary nodes.
boundaryBoundary number.
includeHierarchicalIf true, include hierarchical nodes, introduced by interpolations on universal cells (mpm)

Implements oofem::FEInterpolation.

Definition at line 615 of file feinterpol.h.

◆ boundaryEdgeGiveTransformationJacobian()

double oofem::DummyFEInterpolation::boundaryEdgeGiveTransformationJacobian ( int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the determinant of the transformation Jacobian on the requested boundary. Boundaries are defined as the corner nodes for 1D geometries, edges for 2D geometries and surfaces for 3D geometries.

Parameters
boundaryBoundary number.
lcoordsThe local coordinates (on the boundary local coordinate system).
cellgeoUnderlying cell geometry.
Returns
The determinant of the boundary transformation Jacobian.

Implements oofem::FEInterpolation.

Definition at line 605 of file feinterpol.h.

◆ boundaryEdgeLocal2Global()

void oofem::DummyFEInterpolation::boundaryEdgeLocal2Global ( FloatArray & answer,
int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Maps the local boundary coordinates to global. Boundaries are defined as the corner nodes for 1D geometries, edges for 2D geometries and surfaces for 3D geometries.

Parameters
answerGlobal coordinates.
boundaryBoundary number.
lcoordsThe local coordinates (on the boundary local coordinate system).
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 609 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundaryEvalN()

void oofem::DummyFEInterpolation::boundaryEvalN ( FloatArray & answer,
int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the basis functions on the requested boundary. Only basis functions that are nonzero anywhere on the boundary are given. Ordering can be obtained from giveBoundaryNodes. Boundaries are defined as the corner nodes for 1D geometries, edges for 2D geometries and surfaces for 3D geometries.

Parameters
answerBasis functions Array to be filled with the boundary nodes.
boundaryBoundary number.
lcoordsThe local coordinates (on the boundary local coordinate system).
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 651 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundaryEvalNormal()

double oofem::DummyFEInterpolation::boundaryEvalNormal ( FloatArray & answer,
int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the normal on the requested boundary.

Parameters
answerThe evaluated normal.
boundaryBoundary number.
lcoordsThe local coordinates (on the boundary local coordinate system).
cellgeoUnderlying cell geometry.
Returns
The boundary transformation Jacobian.

Implements oofem::FEInterpolation.

Definition at line 654 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundaryGiveNodes()

IntArray oofem::DummyFEInterpolation::boundaryGiveNodes ( int boundary,
const Element_Geometry_Type  ) const
inlineoverridevirtual

Gives the boundary nodes for requested boundary number. Boundaries are defined as the corner nodes for 1D geometries, edges for 2D geometries and surfaces for 3D geometries.

Parameters
answerArray to be filled with the boundary nodes.
boundaryBoundary number.

Implements oofem::FEInterpolation.

Definition at line 662 of file feinterpol.h.

◆ boundaryGiveTransformationJacobian()

double oofem::DummyFEInterpolation::boundaryGiveTransformationJacobian ( int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the determinant of the transformation Jacobian on the requested boundary. Boundaries are defined as the corner nodes for 1D geometries, edges for 2D geometries and surfaces for 3D geometries.

Parameters
boundaryBoundary number.
lcoordsThe local coordinates (on the boundary local coordinate system).
cellgeoUnderlying cell geometry.
Returns
The determinant of the boundary transformation Jacobian.

Implements oofem::FEInterpolation.

Definition at line 658 of file feinterpol.h.

◆ boundaryLocal2Global()

void oofem::DummyFEInterpolation::boundaryLocal2Global ( FloatArray & answer,
int boundary,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Maps the local boundary coordinates to global. Boundaries are defined as the corner nodes for 1D geometries, edges for 2D geometries and surfaces for 3D geometries.

Parameters
answerGlobal coordinates.
boundaryBoundary number.
lcoordsThe local coordinates (on the boundary local coordinate system).
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 647 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundarySurfaceEvaldNdx()

void oofem::DummyFEInterpolation::boundarySurfaceEvaldNdx ( FloatMatrix & answer,
int isurf,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the matrix of derivatives of edge interpolation functions (shape functions) at given point. These derivatives are in global coordinate system (where the nodal coordinates are defined).

Parameters
answerContains resulting matrix of derivatives, the member at i,j position contains value of dNj/dxi.
isurfDetermines the surface number.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 624 of file feinterpol.h.

References oofem::FloatMatrix::clear().

◆ boundarySurfaceEvalN()

void oofem::DummyFEInterpolation::boundarySurfaceEvalN ( FloatArray & answer,
int isurf,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the array of edge interpolation functions (shape functions) at given point.

Parameters
answerContains resulting array of evaluated interpolation functions.
isurfSurface number.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 620 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundarySurfaceEvalNormal()

double oofem::DummyFEInterpolation::boundarySurfaceEvalNormal ( FloatArray & answer,
int isurf,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the normal out of the surface at given point.

Parameters
answerContains resulting normal vector.
isurfDetermines the surface number.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.
Returns
Surface mapping jacobian.

Implements oofem::FEInterpolation.

Definition at line 628 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ boundarySurfaceGiveNodes()

IntArray oofem::DummyFEInterpolation::boundarySurfaceGiveNodes ( int boundary,
const Element_Geometry_Type ,
bool includeHierarchical = false ) const
inlineoverridevirtual

Gives the boundary nodes for requested boundary number.

Parameters
answerArray to be filled with the boundary nodes.
boundaryBoundary number.
includeHierarchicalIf true, include hierarchical nodes, introduced by interpolations on universal cells (mpm)

Implements oofem::FEInterpolation.

Definition at line 643 of file feinterpol.h.

◆ boundarySurfaceGiveTransformationJacobian()

double oofem::DummyFEInterpolation::boundarySurfaceGiveTransformationJacobian ( int isurf,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the edge jacobian of transformation between local and global coordinates.

Parameters
isurfDetermines the surface number.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.
Returns
Determinant of the transformation.

Implements oofem::FEInterpolation.

Definition at line 633 of file feinterpol.h.

◆ boundarySurfaceLocal2global()

void oofem::DummyFEInterpolation::boundarySurfaceLocal2global ( FloatArray & answer,
int isurf,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates edge global coordinates from given local ones. These derivatives are in global coordinate system (where the nodal coordinates are defined).

Parameters
answerContains resulting global coordinates.
isurfDetermines the surface number.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 637 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ evaldNdx()

double oofem::DummyFEInterpolation::evaldNdx ( FloatMatrix & answer,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the matrix of derivatives of interpolation functions (shape functions) at given point. These derivatives are in global coordinate system (where the nodal coordinates are defined)

Parameters
answerContains resulting matrix of derivatives, the member at i,j position contains value of dNi/dxj.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.
Returns
Determinant of the Jacobian.

Implements oofem::FEInterpolation.

Definition at line 578 of file feinterpol.h.

References oofem::FloatMatrix::clear().

◆ evalN()

void oofem::DummyFEInterpolation::evalN ( FloatArray & answer,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the array of interpolation functions (shape functions) at given point.

Parameters
answerContains resulting array of evaluated interpolation functions.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 574 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ evalNXIntegral()

double oofem::DummyFEInterpolation::evalNXIntegral ( int boundary,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Computes the integral \( \int_S n \cdot x \mathrm{d}s \).

Parameters
boundaryBoundary number.
cellgeoUnderlying cell geometry.
Returns
Evaluated integral.

Reimplemented from oofem::FEInterpolation.

Definition at line 667 of file feinterpol.h.

◆ giveBoundaryEdgeIntegrationDomain()

integrationDomain oofem::DummyFEInterpolation::giveBoundaryEdgeIntegrationDomain ( int boundary,
const Element_Geometry_Type  ) const
inlineoverridevirtual

Returns boundary integration domain.

Implements oofem::FEInterpolation.

Definition at line 613 of file feinterpol.h.

References oofem::_UnknownIntegrationDomain.

◆ giveBoundaryGeometryType()

const Element_Geometry_Type oofem::DummyFEInterpolation::giveBoundaryGeometryType ( int boundary) const
inlineoverridevirtual

Returns boundary geometry type

Implements oofem::FEInterpolation.

Definition at line 682 of file feinterpol.h.

◆ giveBoundaryIntegrationDomain()

integrationDomain oofem::DummyFEInterpolation::giveBoundaryIntegrationDomain ( int boundary,
const Element_Geometry_Type  ) const
inlineoverridevirtual

Returns boundary integration domain.

Implements oofem::FEInterpolation.

Definition at line 665 of file feinterpol.h.

References oofem::_UnknownIntegrationDomain.

◆ giveBoundarySurfaceIntegrationDomain()

integrationDomain oofem::DummyFEInterpolation::giveBoundarySurfaceIntegrationDomain ( int boundary,
const Element_Geometry_Type  ) const
inlineoverridevirtual

Returns boundary integration domain.

Implements oofem::FEInterpolation.

Definition at line 641 of file feinterpol.h.

References oofem::_UnknownIntegrationDomain.

◆ giveGeometryType()

const Element_Geometry_Type oofem::DummyFEInterpolation::giveGeometryType ( ) const
inlineoverridevirtual

Returns the geometry type fo the interpolator.

Implements oofem::FEInterpolation.

Definition at line 573 of file feinterpol.h.

◆ giveIntegrationDomain()

integrationDomain oofem::DummyFEInterpolation::giveIntegrationDomain ( const Element_Geometry_Type ) const
inlineoverridevirtual

Returns the integration domain of the interpolator.

Implements oofem::FEInterpolation.

Definition at line 572 of file feinterpol.h.

References oofem::_UnknownIntegrationDomain.

◆ giveNsd()

int oofem::DummyFEInterpolation::giveNsd ( const Element_Geometry_Type ) const
inlineoverridevirtual

Returns number of spatial dimensions.

Implements oofem::FEInterpolation.

Definition at line 671 of file feinterpol.h.

◆ giveNumberOfEdges()

int oofem::DummyFEInterpolation::giveNumberOfEdges ( const Element_Geometry_Type ) const
inlineoverridevirtual

Returns number of edges.

Reimplemented from oofem::FEInterpolation.

Definition at line 675 of file feinterpol.h.

◆ giveNumberOfNodes()

int oofem::DummyFEInterpolation::giveNumberOfNodes ( const Element_Geometry_Type ) const
inlineoverridevirtual

Returns the number of geometric nodes of the receiver.

Reimplemented from oofem::FEInterpolation.

Definition at line 679 of file feinterpol.h.

◆ giveTransformationJacobian()

double oofem::DummyFEInterpolation::giveTransformationJacobian ( const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates the determinant of the transformation.

Parameters
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.
Returns
Determinant of the transformation.

Reimplemented from oofem::FEInterpolation.

Definition at line 592 of file feinterpol.h.

◆ global2local()

int oofem::DummyFEInterpolation::global2local ( FloatArray & answer,
const FloatArray & gcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates local coordinates from given global ones. If local coordinates cannot be found (generate elements, or point far outside geometry, then the center coordinate will be used as a last resort, and the return value will be zero.

Parameters
answerContains evaluated local coordinates.
gcoordsArray containing global coordinates.
cellgeoUnderlying cell geometry.
Returns
Nonzero is returned if point is within the element geometry, zero otherwise.

Implements oofem::FEInterpolation.

Definition at line 587 of file feinterpol.h.

References oofem::FloatArray::clear().

◆ local2global()

void oofem::DummyFEInterpolation::local2global ( FloatArray & answer,
const FloatArray & lcoords,
const FEICellGeometry & cellgeo ) const
inlineoverridevirtual

Evaluates global coordinates from given local ones.

Parameters
answerContains resulting global coordinates.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.

Implements oofem::FEInterpolation.

Definition at line 583 of file feinterpol.h.

References oofem::FloatArray::clear().


The documentation for this class was generated from the following file:

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011