NeoPZ
Classes | Public Types | Static Public Member Functions | List of all members
pzshape::TPZShapePoint Class Reference

Compute the single shape function associated with a point. Shape. More...

#include <pzshapepoint.h>

Inheritance diagram for pzshape::TPZShapePoint:
[legend]
Collaboration diagram for pzshape::TPZShapePoint:
[legend]

Classes

struct  TMem
 Temporary storage to accelerate the computation of shape functions. To point it isn't necessary. More...
 

Public Types

typedef pztopology::TPZPoint Top
 
- Public Types inherited from pztopology::TPZPoint
enum  {
  NCornerNodes, NSides, Dimension, NFaces,
  NPermutations
}
 Enumerate for topological characteristics. More...
 
typedef TPZInt1Point IntruleType
 Typedef to numerical integration rule. More...
 

Static Public Member Functions

static void Shape (TPZVec< REAL > &pt, TPZVec< int64_t > &id, TPZVec< int > &order, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
 Computes the values of the shape functions and their derivatives for a quadrilateral element. More...
 
static void SideShape (int side, TPZVec< REAL > &pt, TPZVec< int64_t > &id, TPZVec< int > &order, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
 
static void ShapeOrder (TPZVec< int64_t > &id, TPZVec< int > &order, TPZGenMatrix< int > &shapeorders)
 returns the polynomial order in the natural ksi, eta of the side associated with each shapefunction More...
 
static int NConnectShapeF (int side, int order)
 Number of shapefunctions of the connect associated with the side, considering the order of interpolation of the element. More...
 
static int NShapeF (TPZVec< int > &order)
 Total number of shapefunctions, considering the order of interpolation of the element. More...
 
static void PermuteSides (int side, TPZVec< int64_t > &id, TPZVec< int > &permutegather)
 Compute the permutation of the connects of the sides such that the order of the
shape functions becomes independent of the element orientation. More...
 
- Static Public Member Functions inherited from pztopology::TPZPoint
static void Shape (TPZVec< REAL > &loc, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
 
template<class T >
static void TShape (const TPZVec< T > &loc, TPZFMatrix< T > &phi, TPZFMatrix< T > &dphi)
 Compute the shape being used to construct the x mapping from local parametric coordinates. More...
 
static void GetSideHDivPermutation (int transformationid, TPZVec< int > &permgather)
 Identifies the permutation of the nodes needed to make neighbouring elements compatible in terms of order of shape functions. More...
 
static constexpr REAL RefElVolume ()
 Volume of the master element (measure of the element) More...
 
static void ComputeDirections (int side, TPZFMatrix< REAL > &gradx, TPZFMatrix< REAL > &directions, TPZVec< int > &sidevectors)
 
static void GetSideHDivDirections (TPZVec< int > &sides, TPZVec< int > &dir, TPZVec< int > &bilinearounao)
 
static void GetSideHDivDirections (TPZVec< int > &sides, TPZVec< int > &dir, TPZVec< int > &bilinearounao, TPZVec< int > &sidevectors)
 
template<class TVar >
static void ComputeHDivDirections (TPZFMatrix< TVar > &gradx, TPZFMatrix< TVar > &directions)
 Compute the directions of the HDiv vectors. More...
 
static int NBilinearSides ()
 
template<class T >
static void BlendFactorForSide (const int &side, const TPZVec< T > &xi, T &blendFactor, TPZVec< T > &corrFactorDxi)
 
static int SideDimension (int side)
 Returns the dimension of the side. More...
 
static void LowerDimensionSides (int side, TPZStack< int > &smallsides)
 Get all sides with lower dimension on side. More...
 
static void LowerDimensionSides (int side, TPZStack< int > &smallsides, int targetdim)
 Get all sides with lower dimension but equal to DimTarget on side. More...
 
static void HigherDimensionSides (int side, TPZStack< int > &high)
 Returns all sides whose closure contains side. More...
 
static int NSideNodes (int side)
 Returns the number of nodes (not connectivities) associated with a side. More...
 
static int SideNodeLocId (int side, int node)
 Returns the local node number of the node "node" along side "side". More...
 
static int NumSides ()
 Returns number of connects of the element ??? More...
 
static int NumSides (int dimension)
 Returns the number of connects for a set dimension // Jorge ??? More...
 
static int NContainedSides (int side)
 Returns the number of nodes (not connectivities) associated with a side // Jorge - sides or nodes??? More...
 
static int ContainedSideLocId (int side, int c)
 Returns the local connect number of the connect "c" along side "side". More...
 
static void CenterPoint (int side, TPZVec< REAL > &center)
 Returns the barycentric coordinates in the master element space of the original element. More...
 
static bool IsInParametricDomain (const TPZVec< REAL > &pt, REAL tol=1e-6)
 Verifies if the parametric point pt is in the element parametric domain. More...
 
static void RandomPoint (TPZVec< REAL > &pt)
 Generates a random point in the master domain. More...
 
template<class T >
static bool CheckProjectionForSingularity (const int &side, const TPZVec< T > &xiInterior)
 
template<class T >
static void MapToSide (int side, TPZVec< T > &InternalPar, TPZVec< T > &SidePar, TPZFMatrix< T > &JacToSide)
 
static void ParametricDomainNodeCoord (int node, TPZVec< REAL > &nodeCoord)
 
static MElementType Type ()
 Returns the type of the element as specified in file pzeltype.h. More...
 
static MElementType Type (int side)
 Returns the type of the element side as specified in file pzeltype.h. More...
 
static TPZTransform SideToSideTransform (int sidefrom, int sideto)
 Returns the transformation which takes a point from the side sidefrom to the side sideto. More...
 
static TPZTransform TransformSideToElement (int side)
 Returns the transformation which transform a point from the side to the interior of the element. More...
 
static TPZTransform TransformElementToSide (int side)
 
static int GetTransformId (TPZVec< int64_t > &id)
 Method which identifies the transformation based on the IDs of the corner nodes. More...
 
static int GetTransformId (int side, TPZVec< int64_t > &id)
 Method which identifies the transformation of a side based on the IDs of the corner nodes. More...
 
static TPZIntPointsCreateSideIntegrationRule (int side, int order)
 Create an integration rule over side. More...
 
- Static Public Member Functions inherited from TPZSavable
static std::set< TPZRestoreClassBase * > & RestoreClassSet ()
 This static function guarantees that the gMap object is available when needed. More...
 
static std::map< int, TPZRestore_t > & ClassIdMap ()
 This static function guarantees that the gMap object is available when needed. More...
 
static std::pair< std::string, uint64_t > NeoPZVersion ()
 
static void Register (TPZRestoreClassBase *restore)
 
static void RegisterClassId (int classid, TPZRestore_t fun)
 
static TPZSavableCreateInstance (const int &classId)
 

Additional Inherited Members

- Public Member Functions inherited from pztopology::TPZPoint
int ClassId () const override
 Define the class id associated with the class. More...
 
void Read (TPZStream &buf, void *context) override
 read objects from the stream More...
 
void Write (TPZStream &buf, int withclassid) const override
 Writes this object to the TPZStream buffer. Include the classid if withclassid = true. More...
 
 TPZPoint ()
 Default constructor. More...
 
virtual ~TPZPoint ()
 Default destructor. More...
 
- Public Member Functions inherited from TPZSavable
 TPZSavable ()
 
virtual ~TPZSavable ()
 
virtual std::list< std::map< std::string, uint64_t > > VersionHistory () const
 
virtual std::pair< std::string, uint64_t > Version () const
 
virtual bool Compare (TPZSavable *copy, bool override=false)
 Compares the object for identity with the object pointed to, eventually copy the object. More...
 
virtual bool Compare (TPZSavable *copy, bool override=false) const
 Compares the object for identity with the object pointed to, eventually copy the object. More...
 
- Public Member Functions inherited from TPZRegisterClassId
template<typename T >
 TPZRegisterClassId (int(T::*)() const)
 
 TPZRegisterClassId ()=default
 
- Static Protected Attributes inherited from pztopology::TPZPoint
static int fPermutations [1][1]
 Valid permutations between nodes. More...
 

Detailed Description

Compute the single shape function associated with a point. Shape.

Definition at line 22 of file pzshapepoint.h.

Member Typedef Documentation

◆ Top

Definition at line 29 of file pzshapepoint.h.

Member Function Documentation

◆ NConnectShapeF()

static int pzshape::TPZShapePoint::NConnectShapeF ( int  side,
int  order 
)
inlinestatic

Number of shapefunctions of the connect associated with the side, considering the order of interpolation of the element.

Parameters
sideassociated side
ordervector of integers indicating the interpolation order of the element
Returns
number of shape functions

Definition at line 68 of file pzshapepoint.h.

◆ NShapeF()

static int pzshape::TPZShapePoint::NShapeF ( TPZVec< int > &  order)
inlinestatic

Total number of shapefunctions, considering the order of interpolation of the element.

Parameters
ordervector of integers indicating the interpolation order of the element
Returns
number of shape functions

Definition at line 76 of file pzshapepoint.h.

◆ PermuteSides()

static void pzshape::TPZShapePoint::PermuteSides ( int  side,
TPZVec< int64_t > &  id,
TPZVec< int > &  permutegather 
)
inlinestatic

Compute the permutation of the connects of the sides such that the order of the
shape functions becomes independent of the element orientation.

Definition at line 82 of file pzshapepoint.h.

References TPZVec< T >::Resize().

◆ Shape()

static void pzshape::TPZShapePoint::Shape ( TPZVec< REAL > &  pt,
TPZVec< int64_t > &  id,
TPZVec< int > &  order,
TPZFMatrix< REAL > &  phi,
TPZFMatrix< REAL > &  dphi 
)
inlinestatic

Computes the values of the shape functions and their derivatives for a quadrilateral element.

Parameters
pt(input) point where the shape functions are computed
id(input) indexes of the corner points which determine the orientation of the shape functions
order(input) order of the side connects different from the corner connects (5 connects in this case)
phi(output) values of the shape functions
dphi(output) values of the derivatives of the shapefunctions These values depend on the point, the order of interpolation and ids of the corner points The shapefunction computation uses the shape functions of the linear element for its implementation

Definition at line 43 of file pzshapepoint.h.

Referenced by SideShape().

◆ ShapeOrder()

static void pzshape::TPZShapePoint::ShapeOrder ( TPZVec< int64_t > &  id,
TPZVec< int > &  order,
TPZGenMatrix< int > &  shapeorders 
)
inlinestatic

returns the polynomial order in the natural ksi, eta of the side associated with each shapefunction

Definition at line 55 of file pzshapepoint.h.

◆ SideShape()

static void pzshape::TPZShapePoint::SideShape ( int  side,
TPZVec< REAL > &  pt,
TPZVec< int64_t > &  id,
TPZVec< int > &  order,
TPZFMatrix< REAL > &  phi,
TPZFMatrix< REAL > &  dphi 
)
inlinestatic

Definition at line 48 of file pzshapepoint.h.

References Shape().


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