NeoPZ
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Static Protected Attributes | Friends | List of all members
pztopology::TPZTriangle Class Reference

Defines the topology of a triangle element. Topology Sides 0 to 2 are vertices, sides 3 to 5 are lines, side 6 is the triangle. More...

#include <tpztriangle.h>

Inheritance diagram for pztopology::TPZTriangle:
[legend]
Collaboration diagram for pztopology::TPZTriangle:
[legend]

Public Types

enum  {
  NSides, NCornerNodes, Dimension, NFaces,
  NPermutations
}
 Enumerate for topological characteristics. More...
 

Public Member Functions

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...
 
 TPZTriangle ()
 Default constructor. More...
 
virtual ~TPZTriangle ()
 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 Public Member Functions

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) More...
 
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...
 
template<class TVar >
static void ComputeHCurlDirections (TPZFMatrix< TVar > &gradx, TPZFMatrix< TVar > &directions, const TPZVec< int > &transformationIds)
 
template<class TVar >
static void ComputeHCurlFaceDirections (TPZVec< TVar > &v1, TPZVec< TVar > &v2, int transformationId)
 
static int NBilinearSides ()
 
About sides of the topological element
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 DimTarget)
 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 the number of connects of the element (7) More...
 
static int NumSides (int dimension)
 Returns the number of connects for a set dimension. More...
 
static int NContainedSides (int side)
 Returns the number of nodes (not connectivities) associated with a side. More...
 
static int ContainedSideLocId (int side)
 Returns the local connect along side "side" especial for hdivspace. More...
 
static int ContainedSideLocId (int side, int c)
 Returns the local connect number of the connect "c" along side "side". More...
 
static void Shape (TPZVec< REAL > &loc, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
 Compute the shape being used to construct the x mapping from local parametric coordinates. More...
 
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...
 
template<class T >
static void BlendFactorForSide (const int &side, const TPZVec< T > &xi, T &blendFactor, TPZVec< T > &corrFactorDxi)
 
About points at the parametric spaces
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=pztopology::gTolerance)
 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)
 
About type of the topological element
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 as specified in file pzeltype.h. More...
 
About Transformations
static TPZTransform SideToSideTransform (int sidefrom, int sideto)
 Returns the transformation which takes a point from the side sidefrom of 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)
 Returns the transformation which transform a point from the interior of the element to the side. More...
 
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 void GetHDivGatherPermute (int transformid, TPZVec< int > &permute)
 return the vector which permutes the connects according to the transformation id 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)
 

Static Public Attributes

static int SideNodes [3][2]
 
static int FaceNodes [1][3]
 
static REAL gTrans2dT [6][2][2]
 

Static Protected Attributes

static int fPermutations [6][7]
 Valid permutations between nodes. More...
 
static REAL fTangentVectors [12][2]
 

Friends

void pztopology::GetPermutation (const int permute, TPZVec< int > &permutation)
 

Methods related over numeric integration

typedef TPZIntTriang IntruleType
 Typedef to numerical integration rule. More...
 
typedef TPZGraphElT2dMapped GraphElType
 Typedef to graphical element type. More...
 
static TPZIntPointsCreateSideIntegrationRule (int side, int order)
 Create an integration rule over side. More...
 

Detailed Description

Defines the topology of a triangle element. Topology Sides 0 to 2 are vertices, sides 3 to 5 are lines, side 6 is the triangle.

Author
Philippe R. B. Devloo

Definition at line 35 of file tpztriangle.h.

Member Typedef Documentation

◆ GraphElType

Typedef to graphical element type.

Definition at line 225 of file tpztriangle.h.

◆ IntruleType

Typedef to numerical integration rule.

Definition at line 223 of file tpztriangle.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Enumerate for topological characteristics.

Enumerator
NSides 
NCornerNodes 
Dimension 
NFaces 
NPermutations 

Definition at line 39 of file tpztriangle.h.

Constructor & Destructor Documentation

◆ TPZTriangle()

pztopology::TPZTriangle::TPZTriangle ( )
inline

Default constructor.

Definition at line 46 of file tpztriangle.h.

◆ ~TPZTriangle()

virtual pztopology::TPZTriangle::~TPZTriangle ( )
inlinevirtual

Member Function Documentation

◆ BlendFactorForSide()

template<class T >
template void pztopology::TPZTriangle::BlendFactorForSide< REAL > ( const int &  side,
const TPZVec< T > &  xi,
T &  blendFactor,
TPZVec< T > &  corrFactorDxi 
)
static

This method calculates the influence (a.k.a. the blend function) of the side side regarding an interior point qsi. It is used by the TPZGeoBlend class.

Parameters
sidethe index of the side
xicoordinates of the interior point
blendFactorinfluence (0 <= blendFactor <= 1)
corrFactorDxiderivative of the blendFactor in respect to xi

Definition at line 53 of file tpztriangle.cpp.

References DebugStop, pztopology::GetTolerance(), IsInParametricDomain(), LOGPZ_FATAL, PZError, TPZVec< T >::Resize(), TPZVec< T >::size(), and pzgeom::tol.

Referenced by Shape().

◆ CenterPoint()

void pztopology::TPZTriangle::CenterPoint ( int  side,
TPZVec< REAL > &  center 
)
static

Returns the barycentric coordinates in the master element space of the original element.

Definition at line 472 of file tpztriangle.cpp.

References DebugStop, and TPZVec< T >::size().

Referenced by PYBIND11_MODULE(), and Shape().

◆ CheckProjectionForSingularity()

template<class T >
template bool pztopology::TPZTriangle::CheckProjectionForSingularity< REAL > ( const int &  side,
const TPZVec< T > &  xiInterior 
)
static

This method will check if the projection to a certain side (MapToSide method) is regular, i.e., if the interior point in the parametric domain is not too close to the projection's singularity.

Parameters
sidethe index of the side upon which the interior point will be projected upon
xiInteriorcoordinates of the interior point
Returns
true if the interior point is far from the singularity

Definition at line 266 of file tpztriangle.cpp.

References DebugStop, fabs, and pztopology::GetTolerance().

Referenced by Shape().

◆ ClassId()

int pztopology::TPZTriangle::ClassId ( ) const
overridevirtual

Define the class id associated with the class.

This id has to be unique for all classes A non unique id is flagged at the startup of the program

Implements TPZSavable.

Reimplemented in pzgeom::TPZNodeRep< 6, pztopology::TPZTriangle >, and pzgeom::TPZNodeRep< 3, pztopology::TPZTriangle >.

Definition at line 1211 of file tpztriangle.cpp.

References Hash().

◆ ComputeHCurlDirections()

template<class TVar >
template void pztopology::TPZTriangle::ComputeHCurlDirections< REAL > ( TPZFMatrix< TVar > &  gradx,
TPZFMatrix< TVar > &  directions,
const TPZVec< int > &  transformationIds 
)
static

Compute the directions of the HCurl vectors. These vectors are combined with H1 shape functions to create the HCurl shape functions. They must be computed in the following order:

  • $v^{e,a}$: vector associated with edge $e$. It is normal to the edge $\hat{e}$ adjacent to $e$e by the vertex $a$a.
  • $v^{e,T}$: vector associated with edge $e$. It is tangent to the edge $\hat{e}$.
  • $v^{F,e}$: vector associated with face $F$. It is normal to the face $\hat{F}$ adjacent to $F$e by the edge $e$a.
  • $v^{F,T}$: two orthornormal vectors associated with face $F$ and tangent to it.
  • $v^{F,\perp}$: outward normal vector associated with face $F$ (3D only)
  • $v^{K}$: set of orthonormal vectors associated with the volume of the element itself (3D only. In 2D $v^{F,T}$ does its job) The side ordering should be respected. In the definition of the $v^{e,a}$ and the $v^{F,e}$ vectors, the subsides are ordered as the return of LowerDimensionSides.
    Template Parameters
    TVarREAL or Fad<REAL>
    Parameters
    gradxthe gradient of the element mapping. if computing in normal element, gradx is the identity matrix.
    directionscomputed directions
    transformationIdstransformation Ids associated with each side of dim > 0

Definition at line 1119 of file tpztriangle.cpp.

References TPZMatrix< TVar >::Rows().

Referenced by RefElVolume().

◆ ComputeHCurlFaceDirections()

template<class TVar >
template void pztopology::TPZTriangle::ComputeHCurlFaceDirections< REAL > ( TPZVec< TVar > &  v1,
TPZVec< TVar > &  v2,
int  transformationId 
)
static

For a given transformation id, the method will return the two $v^{F,T}$ vectors associated with the face

Template Parameters
TVarREAL or Fad<REAL>
Parameters
v1$v^{F,T}_1$
v2$v^{F,T}_2$
transformationIdThe id of the transformation (node ordering)

Definition at line 1166 of file tpztriangle.cpp.

Referenced by RefElVolume().

◆ ComputeHDivDirections()

template<class TVar >
template void pztopology::TPZTriangle::ComputeHDivDirections< REAL > ( TPZFMatrix< TVar > &  gradx,
TPZFMatrix< TVar > &  directions 
)
static

Compute the directions of the HDiv vectors.

Referenced by RefElVolume().

◆ ContainedSideLocId() [1/2]

static int pztopology::TPZTriangle::ContainedSideLocId ( int  side)
static

Returns the local connect along side "side" especial for hdivspace.

Referenced by ~TPZTriangle().

◆ ContainedSideLocId() [2/2]

int pztopology::TPZTriangle::ContainedSideLocId ( int  side,
int  c 
)
static

Returns the local connect number of the connect "c" along side "side".

It do not verify the values of the c

Definition at line 618 of file tpztriangle.cpp.

References PZError.

◆ CreateSideIntegrationRule()

TPZIntPoints * pztopology::TPZTriangle::CreateSideIntegrationRule ( int  side,
int  order 
)
static

Create an integration rule over side.

Parameters
sideSide to create integration rule
orderOrder of the integration rule to be created

Definition at line 564 of file tpztriangle.cpp.

References PZError.

Referenced by PYBIND11_MODULE(), and Shape().

◆ GetHDivGatherPermute()

void pztopology::TPZTriangle::GetHDivGatherPermute ( int  transformid,
TPZVec< int > &  permute 
)
static

return the vector which permutes the connects according to the transformation id

Definition at line 706 of file tpztriangle.cpp.

References DebugStop, and TPZVec< T >::size().

Referenced by Shape().

◆ GetSideHDivDirections() [1/2]

void pztopology::TPZTriangle::GetSideHDivDirections ( TPZVec< int > &  sides,
TPZVec< int > &  dir,
TPZVec< int > &  bilinearounao 
)
static

Definition at line 1175 of file tpztriangle.cpp.

References TPZVec< T >::Resize().

Referenced by RefElVolume().

◆ GetSideHDivDirections() [2/2]

void pztopology::TPZTriangle::GetSideHDivDirections ( TPZVec< int > &  sides,
TPZVec< int > &  dir,
TPZVec< int > &  bilinearounao,
TPZVec< int > &  sidevectors 
)
static

Definition at line 1191 of file tpztriangle.cpp.

References TPZVec< T >::Resize().

◆ GetSideHDivPermutation()

void pztopology::TPZTriangle::GetSideHDivPermutation ( int  transformationid,
TPZVec< int > &  permgather 
)
static

Identifies the permutation of the nodes needed to make neighbouring elements compatible in terms of order of shape functions.

Parameters
sideSide for which the permutation is needed
idIds of the corner nodes of the elements
permgatherPermutation vector in a gather order

Identifies the permutation of the nodes needed to make neighbouring elements compatible in terms of order of shape functions

Parameters
side: side for which the permutation is needed
id: ids of the corner nodes of the elements
permgather: permutation vector in a gather order

Definition at line 755 of file tpztriangle.cpp.

References TPZAxesTools< TVar >::ComputeDetjac(), TPZNumeric::Norm(), and TPZVec< T >::Resize().

Referenced by TPZGeoElRefLess< TGeo >::HDivPermutation(), and TPZCompElHDiv< TSHAPE >::SideShapeFunction().

◆ GetTransformId() [1/2]

int pztopology::TPZTriangle::GetTransformId ( TPZVec< int64_t > &  id)
static

Method which identifies the transformation based on the IDs of the corner nodes.

Parameters
idIndexes of the corner nodes
Returns
Index of the transformation of the point corresponding to the topology

Method which identifies the transformation based on the IDs of the corner nodes

Parameters
idindexes of the corner nodes
Returns
index of the transformation of the point corresponding to the topology

Definition at line 644 of file tpztriangle.cpp.

Referenced by pztopology::TPZPrism::GetTransformId(), pztopology::TPZPyramid::GetTransformId(), pztopology::TPZTetrahedron::GetTransformId(), TPZGeoElRefLess< TGeo >::HDivPermutation(), Shape(), and TPZCompElHDiv< TSHAPE >::SideShapeFunction().

◆ GetTransformId() [2/2]

int pztopology::TPZTriangle::GetTransformId ( int  side,
TPZVec< int64_t > &  id 
)
static

Method which identifies the transformation of a side based on the IDs of the corner nodes.

Parameters
idIndexes of the corner nodes
sideSide of the element in which the transformation is
Returns
Index of the transformation of the point corresponding to the topology

Method which identifies the transformation of a side based on the IDs of the corner nodes

Parameters
idindexes of the corner nodes
Returns
index of the transformation of the point corresponding to the topology

Definition at line 674 of file tpztriangle.cpp.

References LOGPZ_ERROR.

◆ HigherDimensionSides()

void pztopology::TPZTriangle::HigherDimensionSides ( int  side,
TPZStack< int > &  high 
)
static

Returns all sides whose closure contains side.

Parameters
sidesmaller dimension side
highvector which will contain all sides whose closure contain sidefrom

Definition at line 443 of file tpztriangle.cpp.

References TPZStack< T, NumExtAlloc >::Push(), and PZError.

Referenced by PYBIND11_MODULE(), and ~TPZTriangle().

◆ IsInParametricDomain()

bool pztopology::TPZTriangle::IsInParametricDomain ( const TPZVec< REAL > &  pt,
REAL  tol = pztopology::gTolerance 
)
static

Verifies if the parametric point pt is in the element parametric domain.

Definition at line 252 of file tpztriangle.cpp.

Referenced by BlendFactorForSide(), IsInSideParametricDomain(), PYBIND11_MODULE(), and Shape().

◆ LowerDimensionSides() [1/2]

void pztopology::TPZTriangle::LowerDimensionSides ( int  side,
TPZStack< int > &  smallsides 
)
static

Get all sides with lower dimension on side.

Definition at line 425 of file tpztriangle.cpp.

References TPZStack< T, NumExtAlloc >::Push(), and TPZManVector< T, NumExtAlloc >::Resize().

Referenced by PYBIND11_MODULE(), and ~TPZTriangle().

◆ LowerDimensionSides() [2/2]

void pztopology::TPZTriangle::LowerDimensionSides ( int  side,
TPZStack< int > &  smallsides,
int  DimTarget 
)
static

Get all sides with lower dimension but equal to DimTarget on side.

Definition at line 434 of file tpztriangle.cpp.

References TPZStack< T, NumExtAlloc >::Push(), and TPZManVector< T, NumExtAlloc >::Resize().

◆ MapToSide()

template<class T >
template void pztopology::TPZTriangle::MapToSide< REAL > ( int  side,
TPZVec< T > &  InternalPar,
TPZVec< T > &  SidePar,
TPZFMatrix< T > &  JacToSide 
)
static

◆ NBilinearSides()

int pztopology::TPZTriangle::NBilinearSides ( )
static

Returns the number of bilinear sides to this shape. Needed to compute the number shapefunctions( NConnectShapeF )

Definition at line 240 of file tpztriangle.cpp.

References DebugStop.

Referenced by RefElVolume().

◆ NContainedSides()

int pztopology::TPZTriangle::NContainedSides ( int  side)
static

Returns the number of nodes (not connectivities) associated with a side.

Definition at line 606 of file tpztriangle.cpp.

References PZError.

Referenced by ~TPZTriangle().

◆ NSideNodes()

int pztopology::TPZTriangle::NSideNodes ( int  side)
static

Returns the number of nodes (not connectivities) associated with a side.

Definition at line 247 of file tpztriangle.cpp.

Referenced by PYBIND11_MODULE(), and ~TPZTriangle().

◆ NumSides() [1/2]

int pztopology::TPZTriangle::NumSides ( )
static

Returns the number of connects of the element (7)

Definition at line 600 of file tpztriangle.cpp.

Referenced by PYBIND11_MODULE(), and ~TPZTriangle().

◆ NumSides() [2/2]

int pztopology::TPZTriangle::NumSides ( int  dimension)
static

Returns the number of connects for a set dimension.

Definition at line 454 of file tpztriangle.cpp.

References PZError.

◆ ParametricDomainNodeCoord()

void pztopology::TPZTriangle::ParametricDomainNodeCoord ( int  node,
TPZVec< REAL > &  nodeCoord 
)
static

Definition at line 332 of file tpztriangle.cpp.

References DebugStop, and TPZVec< T >::Resize().

Referenced by Shape().

◆ RandomPoint()

void pztopology::TPZTriangle::RandomPoint ( TPZVec< REAL > &  pt)
static

Generates a random point in the master domain.

Definition at line 367 of file tpztriangle.cpp.

References val().

Referenced by Shape().

◆ Read()

void pztopology::TPZTriangle::Read ( TPZStream buf,
void *  context 
)
overridevirtual

read objects from the stream

Reimplemented from TPZSavable.

Reimplemented in pzgeom::TPZNodeRep< 6, pztopology::TPZTriangle >, and pzgeom::TPZNodeRep< 3, pztopology::TPZTriangle >.

Definition at line 1215 of file tpztriangle.cpp.

◆ RefElVolume()

static constexpr REAL pztopology::TPZTriangle::RefElVolume ( )
inlinestatic

◆ Shape()

static void pztopology::TPZTriangle::Shape ( TPZVec< REAL > &  loc,
TPZFMatrix< REAL > &  phi,
TPZFMatrix< REAL > &  dphi 
)
inlinestatic

◆ SideDimension()

int pztopology::TPZTriangle::SideDimension ( int  side)
static

Returns the dimension of the side.

Definition at line 464 of file tpztriangle.cpp.

References PZError.

Referenced by pzrefine::TPZRefTriangle::GetTransform(), PYBIND11_MODULE(), and ~TPZTriangle().

◆ SideNodeLocId()

int pztopology::TPZTriangle::SideNodeLocId ( int  side,
int  node 
)
static

Returns the local node number of the node "node" along side "side".

Definition at line 415 of file tpztriangle.cpp.

References PZError.

Referenced by PYBIND11_MODULE(), and ~TPZTriangle().

◆ SideToSideTransform()

TPZTransform pztopology::TPZTriangle::SideToSideTransform ( int  sidefrom,
int  sideto 
)
static

Returns the transformation which takes a point from the side sidefrom of the side sideto.

Parameters
sidefromSide where the point resides
sidetoSide whose closure contains sidefrom
See also
the class TPZTransform

Definition at line 376 of file tpztriangle.cpp.

References TPZTransform< T >::Mult(), PZError, and TPZTransform< T >::Sum().

Referenced by PYBIND11_MODULE(), and Shape().

◆ TransformElementToSide()

TPZTransform pztopology::TPZTriangle::TransformElementToSide ( int  side)
static

Returns the transformation which transform a point from the interior of the element to the side.

Parameters
sideSide to which the point will be tranformed (0<=side<=8)
Returns
TPZTransform<> object

Definition at line 483 of file tpztriangle.cpp.

References TPZTransform< T >::Mult(), PZError, TPZTransform< T >::Sum(), and TPZFMatrix< TVar >::Zero().

Referenced by PYBIND11_MODULE(), and Shape().

◆ TransformSideToElement()

TPZTransform pztopology::TPZTriangle::TransformSideToElement ( int  side)
static

Returns the transformation which transform a point from the side to the interior of the element.

Parameters
sideSide from which the point will be tranformed (0<=side<=2)
Returns
TPZTransform<> object

Definition at line 523 of file tpztriangle.cpp.

References TPZTransform< T >::Mult(), PZError, TPZTransform< T >::Sum(), and TPZFMatrix< TVar >::Zero().

Referenced by PYBIND11_MODULE(), and Shape().

◆ TShape()

template<class T >
template void pztopology::TPZTriangle::TShape< REAL > ( const TPZVec< T > &  loc,
TPZFMatrix< T > &  phi,
TPZFMatrix< T > &  dphi 
)
inlinestatic

Compute the shape being used to construct the x mapping from local parametric coordinates.

Definition at line 27 of file tpztriangle.cpp.

Referenced by GetSideShapeFunction(), pzgeom::TPZGeoTriangle::GradX(), ProjectBissectionInParametricDomain(), Shape(), and pzgeom::TPZGeoTriangle::X().

◆ Type() [1/2]

MElementType pztopology::TPZTriangle::Type ( )
static

Returns the type of the element as specified in file pzeltype.h.

Definition at line 576 of file tpztriangle.cpp.

References ETriangle.

Referenced by Shape().

◆ Type() [2/2]

MElementType pztopology::TPZTriangle::Type ( int  side)
static

Returns the type of the element as specified in file pzeltype.h.

Definition at line 581 of file tpztriangle.cpp.

References ENoType, EOned, EPoint, and ETriangle.

◆ Write()

void pztopology::TPZTriangle::Write ( TPZStream buf,
int  withclassid 
) const
overridevirtual

Writes this object to the TPZStream buffer. Include the classid if withclassid = true.

Writes this object to the TPZStream buffer. Include the classid if withclassid = true

Reimplemented from TPZSavable.

Reimplemented in pzgeom::TPZNodeRep< 6, pztopology::TPZTriangle >, and pzgeom::TPZNodeRep< 3, pztopology::TPZTriangle >.

Definition at line 1219 of file tpztriangle.cpp.

Friends And Related Function Documentation

◆ pztopology::GetPermutation

void pztopology::GetPermutation ( const int  permute,
TPZVec< int > &  permutation 
)
friend

Member Data Documentation

◆ FaceNodes

int pztopology::TPZTriangle::FaceNodes
static

Definition at line 286 of file tpztriangle.h.

◆ fPermutations

int pztopology::TPZTriangle::fPermutations
staticprotected

Valid permutations between nodes.

Definition at line 292 of file tpztriangle.h.

◆ fTangentVectors

REAL pztopology::TPZTriangle::fTangentVectors
staticprotected

Definition at line 293 of file tpztriangle.h.

◆ gTrans2dT

REAL pztopology::TPZTriangle::gTrans2dT
static

Transformation of the point within a triangular face

Definition at line 287 of file tpztriangle.h.

◆ SideNodes

int pztopology::TPZTriangle::SideNodes
static

Definition at line 285 of file tpztriangle.h.


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