OOFEM  2.4
OOFEM.org - Object Oriented Finite Element Solver
oofem::FEI2dQuadQuadAxi Class Reference

Class representing a 2d isoparametric quadratic interpolation based on natural coordinates for quadrilateral elements in axisymmetric setting. More...

#include <fei2dquadquad.h>

+ Inheritance diagram for oofem::FEI2dQuadQuadAxi:
+ Collaboration diagram for oofem::FEI2dQuadQuadAxi:

Public Member Functions

 FEI2dQuadQuadAxi (int ind1, int ind2)
 
virtual double giveTransformationJacobian (const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the determinant of the transformation. More...
 
virtual double boundaryEdgeGiveTransformationJacobian (int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the determinant of the transformation Jacobian on the requested boundary. More...
 
virtual double boundaryGiveTransformationJacobian (int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the determinant of the transformation Jacobian on the requested boundary. More...
 
virtual double edgeGiveTransformationJacobian (int iedge, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the edge Jacobian of transformation between local and global coordinates. More...
 
- Public Member Functions inherited from oofem::FEI2dQuadQuad
 FEI2dQuadQuad (int ind1, int ind2)
 
virtual integrationDomain giveIntegrationDomain () const
 Returns the integration domain of the interpolator. More...
 
virtual Element_Geometry_Type giveGeometryType () const
 Returns the geometry type fo the interpolator. More...
 
virtual integrationDomain giveBoundaryIntegrationDomain (int ib) const
 Returns boundary integration domain. More...
 
virtual integrationDomain giveBoundarySurfaceIntegrationDomain (int isurf) const
 Returns boundary integration domain. More...
 
virtual integrationDomain giveBoundaryEdgeIntegrationDomain (int iedge) const
 Returns boundary integration domain. More...
 
virtual double giveArea (const FEICellGeometry &cellgeo) const
 Computes the exact area. More...
 
virtual void evalN (FloatArray &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the array of interpolation functions (shape functions) at given point. More...
 
virtual double evaldNdx (FloatMatrix &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the matrix of derivatives of interpolation functions (shape functions) at given point. More...
 
virtual void local2global (FloatArray &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates global coordinates from given local ones. More...
 
virtual int giveNumberOfNodes () const
 Returns the number of geometric nodes of the receiver. More...
 
virtual double giveCharacteristicLength (const FEICellGeometry &cellgeo) const
 Returns a characteristic length of the geometry, typically a diagonal or edge length. More...
 
virtual bool inside (const FloatArray &lcoords) const
 
virtual void computeLocalEdgeMapping (IntArray &edgeNodes, int iedge)
 
virtual void edgeEvalN (FloatArray &answer, int iedge, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the array of edge interpolation functions (shape functions) at given point. More...
 
virtual void edgeEvaldNds (FloatArray &answer, int iedge, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the matrix of derivatives of edge interpolation functions (shape functions) at given point. More...
 
virtual void edgeLocal2global (FloatArray &answer, int iedge, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates edge global coordinates from given local ones. More...
 
virtual double edgeEvalNormal (FloatArray &normal, int iedge, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the normal on the given edge. More...
 
virtual double evalNXIntegral (int iEdge, const FEICellGeometry &cellgeo)
 Computes the integral $ \int_S n \cdot x \mathrm{d}s $. More...
 
virtual IntegrationRulegiveIntegrationRule (int order)
 Sets up a suitable integration rule for numerical integrating over volume. More...
 
virtual void evaldNdxi (FloatMatrix &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the matrix of derivatives of interpolation functions (shape functions) at given point. More...
 
- Public Member Functions inherited from oofem::FEInterpolation2d
 FEInterpolation2d (int o, int ind1, int ind2)
 
virtual int giveNsd ()
 Returns number of spatial dimensions. More...
 
virtual int global2local (FloatArray &answer, const FloatArray &gcoords, const FEICellGeometry &cellgeo)
 Default implementation using Newton's method to find the local coordinates. More...
 
virtual void giveJacobianMatrixAt (FloatMatrix &jacobianMatrix, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Gives the jacobian matrix at the local coordinates. More...
 
virtual void boundaryEdgeGiveNodes (IntArray &answer, int boundary)
 Gives the boundary nodes for requested boundary number. More...
 
virtual void boundaryEdgeEvalN (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the basis functions on the requested boundary. More...
 
virtual void boundaryEdgeLocal2Global (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Maps the local boundary coordinates to global. More...
 
virtual void boundaryGiveNodes (IntArray &answer, int boundary)
 Gives the boundary nodes for requested boundary number. More...
 
virtual void boundaryEvalN (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the basis functions on the requested boundary. More...
 
virtual double boundaryEvalNormal (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the normal on the requested boundary. More...
 
virtual void boundaryLocal2Global (FloatArray &answer, int boundary, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Maps the local boundary coordinates to global. More...
 
virtual void boundarySurfaceEvalN (FloatArray &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the array of edge interpolation functions (shape functions) at given point. More...
 
virtual void boundarySurfaceEvaldNdx (FloatMatrix &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the matrix of derivatives of edge interpolation functions (shape functions) at given point. More...
 
virtual double boundarySurfaceEvalNormal (FloatArray &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the normal out of the surface at given point. More...
 
virtual void boundarySurfaceLocal2global (FloatArray &answer, int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates edge global coordinates from given local ones. More...
 
virtual double boundarySurfaceGiveTransformationJacobian (int isurf, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the edge jacobian of transformation between local and global coordinates. More...
 
virtual void boundarySurfaceGiveNodes (IntArray &answer, int boundary)
 Gives the boundary nodes for requested boundary number. More...
 
void computeEdgeMapping (IntArray &edgeNodes, IntArray &elemNodes, int iedge)
 
- Public Member Functions inherited from oofem::FEInterpolation
 FEInterpolation (int o)
 
virtual ~FEInterpolation ()
 
virtual IRResultType initializeFrom (InputRecord *ir)
 Initializes receiver according to object description stored in input record. More...
 
std::string errorInfo (const char *func) const
 
int giveInterpolationOrder ()
 Returns the interpolation order. More...
 
virtual void evald2Ndx2 (FloatMatrix &answer, const FloatArray &lcoords, const FEICellGeometry &cellgeo)
 Evaluates the matrix of second derivatives of interpolation functions (shape functions) at given point. More...
 
virtual void giveLocalNodeCoords (FloatMatrix &answer)
 Returns a matrix containing the local coordinates for each node corresponding to the interpolation. More...
 
virtual IntegrationRulegiveBoundaryEdgeIntegrationRule (int order, int boundary)
 Sets up a suitable integration rule for integrating over the requested boundary. More...
 
virtual IntegrationRulegiveBoundarySurfaceIntegrationRule (int order, int boundary)
 Sets up a suitable integration rule for integrating over the requested boundary. More...
 
virtual IntegrationRulegiveBoundaryIntegrationRule (int order, int boundary)
 Sets up a suitable integration rule for integrating over the requested boundary. More...
 
virtual int giveKnotSpanBasisFuncMask (const IntArray &knotSpan, IntArray &mask)
 Returns indices (zero based) of nonzero basis functions for given knot span. More...
 
virtual int giveNumberOfKnotSpanBasisFunctions (const IntArray &knotSpan)
 Returns the number of nonzero basis functions at individual knot span,. More...
 
virtual bool hasSubPatchFormulation ()
 Returns true, if receiver is formulated on sub-patch basis. More...
 
virtual const double *const * giveKnotVector ()
 Returns the subdivision of patch parametric space. More...
 
virtual int giveNumberOfKnotSpans (int dim)
 Returns the number of knot spans of the receiver. More...
 
virtual const FloatArraygiveKnotValues (int dim)
 Returns the knot values of the receiver. More...
 
virtual const IntArraygiveKnotMultiplicity (int dim)
 Returns the knot multiplicity of the receiver. More...
 
virtual int giveNumberOfEdges () const
 Returns number of edges. More...
 

Additional Inherited Members

- Protected Attributes inherited from oofem::FEInterpolation2d
int xind
 
int yind
 
- Protected Attributes inherited from oofem::FEInterpolation
int order
 

Detailed Description

Class representing a 2d isoparametric quadratic interpolation based on natural coordinates for quadrilateral elements in axisymmetric setting.

Definition at line 100 of file fei2dquadquad.h.

Constructor & Destructor Documentation

oofem::FEI2dQuadQuadAxi::FEI2dQuadQuadAxi ( int  ind1,
int  ind2 
)
inline

Definition at line 103 of file fei2dquadquad.h.

Member Function Documentation

double oofem::FEI2dQuadQuadAxi::boundaryEdgeGiveTransformationJacobian ( int  boundary,
const FloatArray lcoords,
const FEICellGeometry cellgeo 
)
virtual

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.

Reimplemented from oofem::FEInterpolation2d.

Definition at line 353 of file fei2dquadquad.C.

References oofem::FEInterpolation2d::edgeGiveTransformationJacobian().

double oofem::FEI2dQuadQuadAxi::boundaryGiveTransformationJacobian ( int  boundary,
const FloatArray lcoords,
const FEICellGeometry cellgeo 
)
virtual

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.

Reimplemented from oofem::FEInterpolation2d.

Definition at line 359 of file fei2dquadquad.C.

References oofem::FEInterpolation2d::edgeGiveTransformationJacobian().

double oofem::FEI2dQuadQuadAxi::edgeGiveTransformationJacobian ( int  iedge,
const FloatArray lcoords,
const FEICellGeometry cellgeo 
)
virtual

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

Parameters
iedgeDetermines edge number.
lcoordsArray containing (local) coordinates.
cellgeoUnderlying cell geometry.
Returns
Determinant of the mapping on the given edge.

Reimplemented from oofem::FEInterpolation2d.

Definition at line 337 of file fei2dquadquad.C.

References oofem::IntArray::at(), oofem::FloatArray::at(), oofem::FEI2dQuadQuad::computeLocalEdgeMapping(), oofem::FEI2dQuadQuad::edgeEvalN(), oofem::FEInterpolation2d::edgeGiveTransformationJacobian(), and oofem::FEICellGeometry::giveVertexCoordinates().

double oofem::FEI2dQuadQuadAxi::giveTransformationJacobian ( const FloatArray lcoords,
const FEICellGeometry cellgeo 
)
virtual

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 322 of file fei2dquadquad.C.

References oofem::FloatArray::at(), oofem::FEI2dQuadQuad::evalN(), oofem::FEInterpolation::giveTransformationJacobian(), oofem::FEICellGeometry::giveVertexCoordinates(), and N.


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

This page is part of the OOFEM documentation. Copyright (c) 2011 Borek Patzak
Project e-mail: info@oofem.org
Generated at Tue Jan 2 2018 20:07:35 for OOFEM by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2011