NeoPZ
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
TPZGeoElRefLess< TGeo > Class Template Reference

Implements the mapping between the master element and deformed element. Geometry. More...

#include <pzgeoelrefless.h>

Inheritance diagram for TPZGeoElRefLess< TGeo >:
[legend]
Collaboration diagram for TPZGeoElRefLess< TGeo >:
[legend]

Public Member Functions

virtual int ClassId () const override
 Define the class id associated with the class. More...
 
virtual ~TPZGeoElRefLess ()
 
 TPZGeoElRefLess ()
 Contains the implementation of the TPZGeoElRefLess methods. More...
 
 TPZGeoElRefLess (const TPZGeoElRefLess &gel)
 Copy constructor. More...
 
virtual TPZGeoElClone (TPZGeoMesh &dest) const override
 
 TPZGeoElRefLess (TPZGeoMesh &DestMesh, const TPZGeoElRefLess &cp)
 Copy constructor with elements in different meshes. More...
 
 TPZGeoElRefLess (TPZGeoMesh &DestMesh, const TPZGeoElRefLess &cp, std::map< int64_t, int64_t > &gl2lcNdMap, std::map< int64_t, int64_t > &gl2lcElMap)
 Copy constructor with elements in different meshes. The clone mesh is a patch mesh. More...
 
TPZGeoElClonePatchEl (TPZGeoMesh &destmesh, std::map< int64_t, int64_t > &gl2lcNdMap, std::map< int64_t, int64_t > &gl2lcElMap) const override
 Creates a clone of this element into a new patch mesh. More...
 
 TPZGeoElRefLess (int64_t id, TPZVec< int64_t > &nodeindexes, int matind, TPZGeoMesh &mesh)
 
 TPZGeoElRefLess (TGeo &Geo, int matind, TPZGeoMesh &mesh)
 
 TPZGeoElRefLess (TPZVec< int64_t > &nodeindices, int matind, TPZGeoMesh &mesh)
 
 TPZGeoElRefLess (TPZVec< int64_t > &nodeindices, int matind, TPZGeoMesh &mesh, int64_t &index)
 
virtual void Read (TPZStream &str, void *context) override
 read objects from the stream More...
 
virtual void Write (TPZStream &str, int withclassid) const override
 Writes this object to the TPZStream buffer. Include the classid if withclassid = true. More...
 
virtual void Initialize () override
 
virtual void Divide (TPZVec< TPZGeoEl * > &pv) override
 Divides the element and puts the resulting elements in the vector. More...
 
virtual int HasSubElement () const override
 Returns 1 if the element has subelements along side. More...
 
virtual TPZGeoElSide Neighbour (int side) override
 Returns a pointer to the neighbour and the neighbourside along side of the current element. More...
 
virtual int64_t NeighbourIndex (int side) const override
 Returns the neighbour index for a given side. More...
 
virtual int64_t NodeIndex (int node) const override
 Returns the index of the ith node the index is the location of the node in the nodevector of the mesh. More...
 
void CornerCoordinates (TPZFMatrix< REAL > &coord) const
 Gets the corner node coordinates in coord. More...
 
virtual void HDivDirectionsMaster (TPZFMatrix< REAL > &directions) override
 
virtual void HDivDirections (TPZVec< REAL > &pt, TPZFMatrix< REAL > &directions, int ConstrainedFace=-1) override
 
virtual void HDivPermutation (int side, TPZVec< int > &permutegather) override
 Compute the permutation for an HDiv side. More...
 
virtual void SetNeighbour (int side, const TPZGeoElSide &neighbour) override
 Fill in the data structure for the neighbouring information. More...
 
virtual void Print (std::ostream &out) override
 Print all relevant data of the element to cout. More...
 
virtual void PrintTopologicalInfo (std::ostream &out) override
 Prints topological information of: TGeo (TPZGeoCube, TPZGeoPrism, TPZGeoQuad, ...) More...
 
virtual int64_t SideNodeIndex (int side, int node) const override
 Returns the index of the nodenum node of side. More...
 
virtual int SideNodeLocIndex (int side, int node) const override
 Returns the local index of a node on a side. More...
 
virtual void SetSideDefined (int side) override
 Flags the side as defined, this means no neighbouring element was found. More...
 
virtual void SetSubElement (int id, TPZGeoEl *el) override
 Sets the subelement of index i. More...
 
void GetPermutation (const int &i, TPZVec< int > &permutation) const override
 
virtual TPZIntPointsCreateSideIntegrationRule (int side, int order) override
 Creates an integration rule for the topology of the corresponding side and able to integrate a polynom of order exactly. More...
 
virtual MElementType Type () const override
 Returns the type of the element acording to the definition in pzeltype.h. More...
 
virtual MElementType Type (int side) const override
 Returns the type of the element acording to the definition in pzeltype.h. More...
 
virtual std::string TypeName () const override
 Returns the type of the element as a string. More...
 
virtual int NNodes () const override
 Returns the number of nodes of the element. More...
 
virtual int NCornerNodes () const override
 Returns the number of corner nodes of the element. More...
 
virtual int NSides () const override
 Returns the number of connectivities of the element. More...
 
virtual int NPermutations () const override
 
virtual int SideNodeLocId (int side, int node) const
 Returns the local node number of the node "node" along side "side". More...
 
virtual REAL RefElVolume () override
 Volume of the master element. More...
 
virtual int NSideNodes (int side) const override
 Returns the number of nodes for a particular side. More...
 
virtual void MidSideNodeIndex (int side, int64_t &index) const override
 Returns the midside node index along a side of the element. More...
 
virtual int SideIsUndefined (int side) override
 Returns 1 if the side has not been defined by buildconnectivity. More...
 
virtual int NSubElements () const override
 Returns the number of subelements of the element independent of the fact hether the element has already been refined or not. More...
 
virtual int NSideSubElements (int side) const override
 Returns the number of subelements of the same dimension of the element at the side. More...
 
virtual TPZGeoElCreateBCGeoEl (int side, int bc) override
 Method which creates a computational boundary condition element based on the current geometric element, a side and a boundary condition number. More...
 
virtual TPZGeoElCreateBCGeoBlendEl (int side, int bc)
 Method which creates a blend geometrical boundary condition element based on the current geometric element, a side and a boundary condition index. More...
 
virtual TPZGeoElCreateGeoElement (MElementType type, TPZVec< int64_t > &nodeindexes, int matid, int64_t &index) override
 Creates a geometric element according to the type of the father element. More...
 
virtual void SetNodeIndex (int i, int64_t nodeindex) override
 Initializes the node i of the element. More...
 
virtual TPZTransform SideToSideTransform (int sidefrom, int sideto) override
 compute the transformation between the master element space of one side of an element to the master element space of a higher dimension side More...
 
virtual TPZGeoElSubElement (int is) const override
 Returns a pointer to the subelement is. More...
 
virtual int SideDimension (int side) const override
 Return the dimension of side. More...
 
virtual int Dimension () const override
 Returns the dimension of the element. More...
 
virtual TPZGeoElSide HigherDimensionSides (int side, int targetdimension)
 
virtual void AllHigherDimensionSides (int side, int targetdimension, TPZStack< TPZGeoElSide > &elsides) override
 
virtual void LowerDimensionSides (int side, TPZStack< int > &smallsides) const override
 
virtual void BuildTransform (int side, TPZGeoEl *father, TPZTransform<> &t)
 Accumulates the transformation of the jacobian which maps the current master element space into the space of the master element of the father. More...
 
virtual TPZTransform BuildTransform2 (int side, TPZGeoEl *father, TPZTransform<> &t) override
 
virtual void X (TPZVec< REAL > &coordinate, TPZVec< REAL > &result) const override
 Returns the coordinate in real space of the point coordinate in the master element space. More...
 
virtual void GradX (TPZVec< REAL > &coordinate, TPZFMatrix< REAL > &gradx) const override
 Return the gradient of the transformation at the point. More...
 
virtual bool IsLinearMapping (int side) const override
 
virtual bool IsGeoBlendEl () const override
 
bool ResetBlendConnectivity (const int64_t &side, const int64_t &index) override
 
TGeo & Geom ()
 
virtual TPZTransform GetTransform (int side, int son) override
 
virtual void CenterPoint (int side, TPZVec< REAL > &masscent) const override
 It returns the coordinates of the center of the side of the element. More...
 
virtual TPZGeoElSide Father2 (int side) const override
 Returns the father/side of the father which contains the side of the sub element. More...
 
virtual int FatherSide (int side, int son) override
 
virtual void GetSubElements2 (int side, TPZStack< TPZGeoElSide > &subel) const override
 This method will return a partition of the side of the current element
as the union of sub elements/side which are put in the stack. More...
 
virtual void ResetSubElements () override
 Reset all subelements to NULL. More...
 
virtual void SetNeighbourInfo (int side, TPZGeoElSide &neigh, TPZTransform<> &trans) override
 
virtual void RandomPoint (TPZVec< REAL > &pt) override
 Generates a random point in the master domain. More...
 
virtual bool IsInParametricDomain (const TPZVec< REAL > &pt, REAL tol=1e-6) override
 Verifies if the parametric point pt is in the element parametric domain. More...
 
virtual int ProjectInParametricDomain (TPZVec< REAL > &qsi, TPZVec< REAL > &qsiInDomain) override
 Ortogonal projection from given qsi to a qsiInDomain (all in the element parametric domain) More...
 
virtual int ProjectBissectionInParametricDomain (TPZVec< REAL > &qsi, TPZVec< REAL > &qsiInDomain) override
 Projection from given qsi to a qsiInDomain (in the element boundary) using bissection method from given qsi to element center. More...
 
- Public Member Functions inherited from TPZGeoEl
TPZGeoElEldestAncestor () const
 
virtual void SetNeighbourInfo (int side, TPZGeoElSide &neigh, TPZTransform< REAL > &trans)=0
 
int NumInterfaces ()
 Returns number of TPZInterfaceElement pointing to this. More...
 
int IncrementNumInterfaces ()
 Increments number of TPZInterfaceElement pointing to this. More...
 
int DecrementNumInterfaces ()
 Decrement number of TPZInterfaceElement pointing to this. More...
 
void Shape1d (REAL x, int num, TPZFMatrix< REAL > &phi, TPZFMatrix< REAL > &dphi)
 Computes the values of the "num" one dimensional shapefunctions and derivatives at point x, using lagrangian interpolation. More...
 
void ShapePhi1d (REAL x, int num, TPZFMatrix< REAL > &phi)
 Computes the values of the "num" one dimensional shapefunctions at point x, using lagrangian interpolation. More...
 
 TPZGeoEl (int64_t id, int materialindex, TPZGeoMesh &mesh)
 Constructor. More...
 
 TPZGeoEl (int materialindex, TPZGeoMesh &mesh)
 This constructor generates a unique Id. More...
 
 TPZGeoEl (int materialindex, TPZGeoMesh &mesh, int64_t &index)
 This constructor generates a unique Id. More...
 
 TPZGeoEl (const TPZGeoEl &el)
 Copy constructor. More...
 
 TPZGeoEl (TPZGeoMesh &DestMesh, const TPZGeoEl &cp)
 Copy constructor with elements in different meshes. More...
 
 TPZGeoEl (TPZGeoMesh &DestMesh, const TPZGeoEl &cp, std::map< int64_t, int64_t > &org2clnMap)
 Copy constructor to a patch mesh. More...
 
 TPZGeoEl ()
 
void GetNodeIndices (TPZVec< int64_t > &nodeindices)
 
void GetNodeIndices (std::set< int64_t > &nodeindices)
 void More...
 
virtual ~TPZGeoEl ()
 Destructor. More...
 
void RemoveConnectivities ()
 It removes the connectivities of the element. More...
 
virtual TPZCompElCreateBCCompEl (int side, int bc, TPZCompMesh &cmesh)
 Method which creates a computational boundary condition element based on the current geometric element,
a side and a boundary condition number. More...
 
int WhichSide (TPZVec< int64_t > &SideNodeIds)
 Returns the side number which is connected to the SideNodes returns -1 if no side is found. More...
 
int NeighbourExists (int side, const TPZGeoElSide &gel)
 Returns 1 if gel is a neighbour of the element along side. More...
 
void SetMaterialId (int id)
 Sets the material index of the element. More...
 
void SetReference (TPZCompEl *elp)
 Make the current element reference to the computational element. More...
 
virtual void SetSubElementConnectivities ()
 Initializes the external connectivities of the subelements. More...
 
void ResetReference ()
 Reset the element referenced by the geometric element to NULL. More...
 
virtual void Divide (TPZVec< TPZGeoEl *> &pv)
 Divides the element and puts the resulting elements in the vector. More...
 
virtual void ProjectPoint (int sidefrom, TPZVec< REAL > &ptin, int sideto, TPZVec< REAL > &ptout)
 Project the point from one side to another. The dimension of the points needs to be configured properly. More...
 
TPZTransform< REAL > Projection (int side)
 Compute the projection of the point within the interior of the element to the side of the element. More...
 
void SetIndex (int64_t index)
 
void SetId (int64_t elId)
 
int GetTransformId2dQ (TPZVec< int > &idfrom, TPZVec< int > &idto)
 Get the transform id the face to face. More...
 
int GetTransformId2dT (TPZVec< int > &idfrom, TPZVec< int > &idto)
 Get the transform id the face to face. More...
 
void SetFather (TPZGeoEl *father)
 Sets the father element. More...
 
virtual void SetFatherIndex (int64_t fatherindex)
 Sets the father element index This method is not called SetFather in order to avoid implicit conversions from nullptr to int. More...
 
bool IsSibling (TPZGeoEl *gel)
 return true is gel is an ancestor of the current element More...
 
int Level ()
 Returns the number of ancestors. More...
 
void Jacobian (TPZVec< REAL > &qsi, TPZFMatrix< REAL > &jac, TPZFMatrix< REAL > &axes, REAL &detjac, TPZFMatrix< REAL > &jacinv) const
 Compute a decomposition of the gradient of the mapping function, as a rotation matrix (Jacobian) and orthonormal basis (axes) More...
 
void JacobianXYZ (TPZVec< REAL > &qsi, TPZFMatrix< REAL > &jac, TPZFMatrix< REAL > &axes, REAL &detjac, TPZFMatrix< REAL > &jacinv) const
 Compute a decomposition of the gradient of the mapping function, as a rotation matrix (Jacobian) and orthonormal basis (axes) More...
 
int ElementExists (TPZGeoEl *elem, int64_t id)
 To test continuity. More...
 
TPZGeoMeshMesh () const
 Returns the mesh to which the element belongs. More...
 
int64_t Id () const
 Returns the Id of the element. More...
 
TPZGeoNodeNodePtr (int i) const
 Returns a pointer to the ith node of the element. More...
 
TPZGeoNodeNode (int i) const
 Returns the ith node of the element. More...
 
int MaterialId () const
 Returns the material index of the element. More...
 
TPZCompElReference () const
 Return a pointer to the element referenced by the geometric element. More...
 
virtual void GetHigherSubElements (TPZVec< TPZGeoEl *> &unrefinedSons)
 
virtual bool IsLinearMapping () const
 
virtual bool IsGeoElMapped () const
 Returns if is a TPZGeoElMapped< T > element. More...
 
virtual TPZGeoNodeSideNodePtr (int side, int nodenum) const
 Returns the pointer to the nodenum node of side. More...
 
virtual void MidSideNodeIndices (int side, TPZVec< int64_t > &indices) const
 Returns the midside node indices along a side of the element. More...
 
TPZGeoElFather () const
 Computes the normal vectors needed for forming HDiv vector valued shape functions. More...
 
TPZGeoElLowestFather ()
 Returns a pointer to the higher level father. More...
 
int64_t FatherIndex ()
 
void BuildBlendConnectivity ()
 Set connectivity information elements with blend geometric map. More...
 
void SetNeighbourForBlending (int side)
 TPZGeoBlend need to find a non-linear neighbour. More...
 
virtual TPZTransform< REAL > BuildTransform2 (int side, TPZGeoEl *father, TPZTransform< REAL > &t)
 Returns the transformation which maps the parameter side of the element/side
into the parameter space of the father element/side. More...
 
int WhichSide (TPZVec< REAL > &pt)
 Returns the side number which is connected to the point pt. More...
 
virtual void GetAllSiblings (TPZStack< TPZGeoEl *> &unrefinedSons)
 [deprecated] use YoungestChildren More...
 
virtual void YoungestChildren (TPZStack< TPZGeoEl *> &unrefinedSons)
 This method will return all children at the bottom of the refinement tree of the element. i.e. all children that have no subelements. More...
 
void GetSubElements2 (int side, TPZStack< TPZGeoElSide > &subel, int dimension) const
 This method will return a partition of the side of the current element
as the union of sub elements/side which are put in the stack. More...
 
int WhichSubel () const
 Returns the son number of the sub element gel. More...
 
void CheckSubelDataStructure ()
 Checks the structure of the Father() and GetSubelement2() More...
 
void NodesCoordinates (TPZFMatrix< REAL > &cooridnates)
 Computes nodes coordinates of the element. More...
 
bool ComputeXInverse (TPZVec< REAL > &XD, TPZVec< REAL > &ksi, REAL Tol)
 Computes the XInverse and returns true if ksi belongs to master element domain. More...
 
void TransformSonToFather (TPZGeoEl *ancestor, TPZVec< REAL > &ksiSon, TPZVec< REAL > &ksiAncestor)
 Compute the map of a paramenter point in the subelement to a parameter point in the super element. More...
 
TPZTransform< REAL > ComputeParamTrans (TPZGeoEl *fat, int fatside, int sideson)
 
REAL Volume ()
 Return the volume of the element. More...
 
virtual REAL SideArea (int side)
 Returns the area from the face. More...
 
virtual REAL ElementRadius ()
 
virtual REAL CharacteristicSize ()
 Computes the set of normals for defining HDiv approximation spaces. More...
 
virtual REAL SmallerEdge ()
 
void ComputePermutationNormals (int side, TPZVec< int > &indexfrom)
 Compute the set of normals along a side for defining HDiv approximation spaces. More...
 
int NormalOrientation (int side)
 Determine the orientation of the normal vector comparing the ids of the neighbouring elements. More...
 
virtual void SetRefPattern (TPZAutoPointer< TPZRefPattern >)
 Defines the refinement pattern. It's used only in TPZGeoElRefPattern objects. More...
 
virtual TPZAutoPointer< TPZRefPatternGetRefPattern () const
 Returns the refinement pattern associated with the element. More...
 
bool VerifyNodeCoordinates (REAL tol=1e-1)
 Verify coordinate of element nodes checking if they are coincident to the X mapping of the corner nodes of parametric elements. More...
 
int64_t Index () const
 Returns the index of the element within the element vector of the mesh. 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 int main_refless ()
 
- Static Public Member Functions inherited from TPZGeoEl
static int StaticClassId ()
 
static void Jacobian (const TPZFMatrix< REAL > &gradx, TPZFMatrix< REAL > &jac, TPZFMatrix< REAL > &axes, REAL &detjac, TPZFMatrix< REAL > &jacinv)
 Compute a QR facotrization of the gradient of the mapping function, Q = Jacobian and R = axes. More...
 
static void JacobianXYZ (const TPZFMatrix< REAL > &gradx, TPZFMatrix< REAL > &jac, TPZFMatrix< REAL > &axesXYZ, REAL &detjac, TPZFMatrix< REAL > &jacinv)
 Compute Jacobian matrix for afine mappings. More...
 
static REAL QuadArea (TPZVec< TPZGeoNode *> &nodes)
 Returns the area from a quadrilateral face. More...
 
static REAL TriangleArea (TPZVec< TPZGeoNode *> &nodes)
 Returns the area from the triangular face. More...
 
static REAL Distance (TPZVec< REAL > &centel, TPZVec< REAL > &centface)
 
- 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)
 

Protected Attributes

TGeo fGeo
 
TPZGeoElSideIndex fNeighbours [TGeo::NSides]
 
- Protected Attributes inherited from TPZGeoEl
TPZGeoMeshfMesh
 Pointer to the mesh to which the element belongs. More...
 
int64_t fId
 Traditional element number or element id. More...
 
int fMatId
 Material index. More...
 
TPZCompElfReference
 Reference to the element currently loaded. Pointer is given as this->Mesh()->Reference()->ElementVec()[fReference]. More...
 
int64_t fFatherIndex
 Index of the element from which the element is a subelement. More...
 
int64_t fIndex
 Index of the element in the element vector. More...
 
int fNumInterfaces
 A counter to indicate how many interface elements are pointing to it. More...
 

Additional Inherited Members

- Static Protected Attributes inherited from TPZGeoEl
static TPZFMatrix< REAL > gGlobalAxes
 3x3 unit matrix to be copied to the axes if the geometric element does not have a particular orientation More...
 

Detailed Description

template<class TGeo>
class TPZGeoElRefLess< TGeo >

Implements the mapping between the master element and deformed element. Geometry.

Implements a generic geometric element class without h-refinement.
Its data structure is the vector of node indices and element neighbours
Implements a class which subelement is the clone of the element (i.e. the same nodes, material, but a self pointer)

Author
Philippe Devloo
Since
Dez 12, 2003.

Definition at line 32 of file pzgeoelrefless.h.

Constructor & Destructor Documentation

◆ ~TPZGeoElRefLess()

template<class TGeo >
TPZGeoElRefLess< TGeo >::~TPZGeoElRefLess ( )
virtual

Definition at line 46 of file pzgeoelrefless.h.h.

◆ TPZGeoElRefLess() [1/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( )

Contains the implementation of the TPZGeoElRefLess methods.

Definition at line 26 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fNeighbours.

Referenced by TPZGeoElRefLess< TGeo >::Clone(), and TPZGeoElRefLess< TGeo >::ClonePatchEl().

◆ TPZGeoElRefLess() [2/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( const TPZGeoElRefLess< TGeo > &  gel)

Copy constructor.

Definition at line 33 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fNeighbours, TPZGeoEl::Mesh(), and TPZGeoElSide::SetConnectivity().

◆ TPZGeoElRefLess() [3/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( TPZGeoMesh DestMesh,
const TPZGeoElRefLess< TGeo > &  cp 
)

Copy constructor with elements in different meshes.

Definition at line 523 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fNeighbours.

◆ TPZGeoElRefLess() [4/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( TPZGeoMesh DestMesh,
const TPZGeoElRefLess< TGeo > &  cp,
std::map< int64_t, int64_t > &  gl2lcNdMap,
std::map< int64_t, int64_t > &  gl2lcElMap 
)

Copy constructor with elements in different meshes. The clone mesh is a patch mesh.

Therefore there are the requirement to map the nodes between these meshses.

Parameters
DestMeshdestination patch mesh
cpelement to be copied
gl2lcNdMapmap of the node indexes between original and clone mesh
gl2lcElMapmap of the element indexes between original and clone mesh

Definition at line 534 of file pzgeoelrefless.h.h.

References TPZGeoElSide::Element(), TPZGeoElRefLess< TGeo >::fNeighbours, TPZGeoEl::Index(), and TPZGeoEl::Mesh().

◆ TPZGeoElRefLess() [5/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( int64_t  id,
TPZVec< int64_t > &  nodeindexes,
int  matind,
TPZGeoMesh mesh 
)

◆ TPZGeoElRefLess() [6/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( TGeo &  Geo,
int  matind,
TPZGeoMesh mesh 
)

◆ TPZGeoElRefLess() [7/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( TPZVec< int64_t > &  nodeindices,
int  matind,
TPZGeoMesh mesh 
)

◆ TPZGeoElRefLess() [8/8]

template<class TGeo >
TPZGeoElRefLess< TGeo >::TPZGeoElRefLess ( TPZVec< int64_t > &  nodeindices,
int  matind,
TPZGeoMesh mesh,
int64_t &  index 
)

Member Function Documentation

◆ AllHigherDimensionSides()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::AllHigherDimensionSides ( int  side,
int  targetdimension,
TPZStack< TPZGeoElSide > &  elsides 
)
overridevirtual

◆ BuildTransform()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::BuildTransform ( int  side,
TPZGeoEl father,
TPZTransform<> &  t 
)
virtual

Accumulates the transformation of the jacobian which maps the current master element space into the space of the master element of the father.

Definition at line 385 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::BuildTransform2(), cornerco, TPZGeoElRefLess< TGeo >::CornerCoordinates(), TPZGeoElRefLess< TGeo >::fGeo, and TPZGeoElRefLess< TGeo >::GradX().

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ BuildTransform2()

template<class TGeo >
TPZTransform TPZGeoElRefLess< TGeo >::BuildTransform2 ( int  side,
TPZGeoEl father,
TPZTransform<> &  t 
)
overridevirtual

◆ CenterPoint()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::CenterPoint ( int  side,
TPZVec< REAL > &  masscent 
) const
overridevirtual

It returns the coordinates of the center of the side of the element.

Implements TPZGeoEl.

Definition at line 481 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::Geom(), and TPZGeoElRefPattern< TGeo >::MidSideNodeIndex().

◆ ClassId()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::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

Reimplemented from TPZGeoEl.

Reimplemented in TPZGeoElRefPattern< TGeo >, and TPZGeoElement< TGeo, TRef >.

Definition at line 394 of file pzgeoelrefless.h.

References TPZGeoEl::ClassId(), and Hash().

Referenced by TPZGeoElement< TGeo, TRef >::ClassId(), and TPZGeoElRefPattern< TGeo >::ClassId().

◆ Clone()

template<class TGeo>
virtual TPZGeoEl* TPZGeoElRefLess< TGeo >::Clone ( TPZGeoMesh dest) const
inlineoverridevirtual

Implements TPZGeoEl.

Reimplemented in TPZGeoElRefPattern< TGeo >, and TPZGeoElement< TGeo, TRef >.

Definition at line 48 of file pzgeoelrefless.h.

References TPZGeoElRefLess< TGeo >::TPZGeoElRefLess().

◆ ClonePatchEl()

template<class TGeo>
TPZGeoEl* TPZGeoElRefLess< TGeo >::ClonePatchEl ( TPZGeoMesh DestMesh,
std::map< int64_t, int64_t > &  gl2lcNdIdx,
std::map< int64_t, int64_t > &  gl2lcElIdx 
) const
inlineoverridevirtual

Creates a clone of this element into a new patch mesh.

Parameters
DestMeshdestination patch mesh
gl2lcNdIdxmap between node indexes in original and patch mesh
gl2lcElIdxmap between element indexes in original and patch mesh This method differs from the above by the patch mesh does not include all elements and nodes.
Therefore, a map between node indexes in both meshes are required

Implements TPZGeoEl.

Reimplemented in TPZGeoElRefPattern< TGeo >, and TPZGeoElement< TGeo, TRef >.

Definition at line 74 of file pzgeoelrefless.h.

References TPZGeoElRefLess< TGeo >::Read(), TPZGeoElRefLess< TGeo >::TPZGeoElRefLess(), and TPZGeoElRefLess< TGeo >::Write().

◆ CornerCoordinates()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::CornerCoordinates ( TPZFMatrix< REAL > &  coord) const

◆ CreateBCGeoBlendEl()

template<class TGeo >
TPZGeoEl * TPZGeoElRefLess< TGeo >::CreateBCGeoBlendEl ( int  side,
int  bc 
)
virtual

Method which creates a blend geometrical boundary condition element based on the current geometric element, a side and a boundary condition index.

Definition at line 285 of file pzgeoelrefless.h.h.

References TPZGeoMesh::CreateGeoBlendElement(), TPZGeoEl::Initialize(), TPZGeoElSide::InsertConnectivity(), TPZGeoEl::Mesh(), TPZGeoEl::NSides(), and TPZGeoElRefLess< TGeo >::SideNodeIndex().

Referenced by TPZGeoElRefLess< TGeo >::CreateBCGeoEl(), and TPZGeoElRefLess< TGeo >::TypeName().

◆ CreateBCGeoEl()

template<class TGeo >
TPZGeoEl * TPZGeoElRefLess< TGeo >::CreateBCGeoEl ( int  side,
int  bc 
)
overridevirtual

Method which creates a computational boundary condition element based on the current geometric element, a side and a boundary condition number.

Implements TPZGeoEl.

Definition at line 226 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::CreateBCGeoBlendEl(), TPZGeoMesh::CreateGeoElement(), TPZGeoElRefLess< TGeo >::fGeo, TPZGeoEl::Initialize(), TPZGeoEl::Mesh(), TPZVec< T >::NElements(), TPZStack< T, NumExtAlloc >::Push(), TPZGeoElSide::SetConnectivity(), and TPZGeoElRefLess< TGeo >::SideNodeIndex().

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ CreateGeoElement()

template<class TGeo >
TPZGeoEl * TPZGeoElRefLess< TGeo >::CreateGeoElement ( MElementType  type,
TPZVec< int64_t > &  nodeindexes,
int  matid,
int64_t &  index 
)
overridevirtual

◆ CreateSideIntegrationRule()

template<class TGeo >
TPZIntPoints * TPZGeoElRefLess< TGeo >::CreateSideIntegrationRule ( int  side,
int  order 
)
overridevirtual

Creates an integration rule for the topology of the corresponding side and able to integrate a polynom of order exactly.

Implements TPZGeoEl.

Definition at line 136 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::SetSideDefined().

◆ Dimension()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::Dimension ( ) const
overridevirtual

Returns the dimension of the element.

Implements TPZGeoEl.

Definition at line 353 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefPattern< TGeo >::MidSideNodeIndex(), and TPZGeoElRefLess< TGeo >::TypeName().

◆ Divide()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::Divide ( TPZVec< TPZGeoEl * > &  pv)
inlineoverridevirtual

Divides the element and puts the resulting elements in the vector.

Definition at line 101 of file pzgeoelrefless.h.

References DebugStop.

◆ Father2()

template<class TGeo >
TPZGeoElSide TPZGeoElRefLess< TGeo >::Father2 ( int  side) const
overridevirtual

Returns the father/side of the father which contains the side of the sub element.

Reimplemented from TPZGeoEl.

Definition at line 487 of file pzgeoelrefless.h.h.

References TPZGeoEl::Father(), TPZGeoEl::FatherSide(), and TPZGeoEl::WhichSubel().

Referenced by TPZGeoElRefLess< TGeo >::BuildTransform2(), and TPZGeoElRefLess< TGeo >::Geom().

◆ FatherSide()

template<class TGeo>
virtual int TPZGeoElRefLess< TGeo >::FatherSide ( int  side,
int  son 
)
inlineoverridevirtual

Reimplemented from TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 331 of file pzgeoelrefless.h.

References TPZGeoElRefLess< TGeo >::GetSubElements2().

◆ Geom()

template<class TGeo>
TGeo& TPZGeoElRefLess< TGeo >::Geom ( )
inline

◆ GetPermutation()

template<class Geom >
void TPZGeoElRefLess< Geom >::GetPermutation ( const int &  i,
TPZVec< int > &  permutation 
) const
overridevirtual

This method gets the ith valid permutation of its topology

Parameters
inumber of the permutation to get
permutationvector contained the permuted sides

Implements TPZGeoEl.

Definition at line 793 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::SetSideDefined().

◆ GetSubElements2()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::GetSubElements2 ( int  side,
TPZStack< TPZGeoElSide > &  subel 
) const
overridevirtual

This method will return a partition of the side of the current element
as the union of sub elements/side which are put in the stack.

Reimplemented from TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 500 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::FatherSide().

◆ GetTransform()

template<class TGeo >
TPZTransform TPZGeoElRefLess< TGeo >::GetTransform ( int  side,
int  son 
)
overridevirtual

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 474 of file pzgeoelrefless.h.h.

References PZError.

Referenced by TPZGeoElRefLess< TGeo >::Geom().

◆ GradX()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::GradX ( TPZVec< REAL > &  coordinate,
TPZFMatrix< REAL > &  gradx 
) const
overridevirtual

◆ HasSubElement()

template<class TGeo>
virtual int TPZGeoElRefLess< TGeo >::HasSubElement ( ) const
inlineoverridevirtual

Returns 1 if the element has subelements along side.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 106 of file pzgeoelrefless.h.

◆ HDivDirections()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::HDivDirections ( TPZVec< REAL > &  pt,
TPZFMatrix< REAL > &  directions,
int  RestrainedFace = -1 
)
overridevirtual

Returns the directions of this geoel

Implements TPZGeoEl.

Definition at line 602 of file pzgeoelrefless.h.h.

References pztopology::TPZPyramid::AdjustTopDirections(), ENoDecompose, EPiramide, and TPZGeoElRefLess< TGeo >::GradX().

Referenced by TPZGeoElRefLess< TGeo >::NeighbourIndex().

◆ HDivDirectionsMaster()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::HDivDirectionsMaster ( TPZFMatrix< REAL > &  directions)
overridevirtual

Returns the directions of this geoel Returns the directions of master element

Implements TPZGeoEl.

Definition at line 591 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::NeighbourIndex().

◆ HDivPermutation()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::HDivPermutation ( int  side,
TPZVec< int > &  permutegather 
)
inlineoverridevirtual

◆ HigherDimensionSides()

template<class TGeo >
TPZGeoElSide TPZGeoElRefLess< TGeo >::HigherDimensionSides ( int  side,
int  targetdimension 
)
virtual

Definition at line 359 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ Initialize()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::Initialize ( )
inlineoverridevirtual

Reimplemented from TPZGeoEl.

Definition at line 92 of file pzgeoelrefless.h.

References TPZGeoElRefLess< TGeo >::main_refless().

◆ IsGeoBlendEl()

template<class TGeo >
bool TPZGeoElRefLess< TGeo >::IsGeoBlendEl ( ) const
overridevirtual

Reimplemented from TPZGeoEl.

Definition at line 444 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fGeo.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ IsInParametricDomain()

template<class TGeo >
bool TPZGeoElRefLess< TGeo >::IsInParametricDomain ( const TPZVec< REAL > &  pt,
REAL  tol = 1e-6 
)
inlineoverridevirtual

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

Implements TPZGeoEl.

Definition at line 374 of file pzgeoelrefless.h.

References TPZGeoElRefLess< TGeo >::fGeo.

Referenced by TPZGeoElRefLess< TGeo >::RandomPoint().

◆ IsLinearMapping()

template<class TGeo >
bool TPZGeoElRefLess< TGeo >::IsLinearMapping ( int  side) const
overridevirtual

Implements TPZGeoEl.

Definition at line 438 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fGeo.

◆ LowerDimensionSides()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::LowerDimensionSides ( int  side,
TPZStack< int > &  smallsides 
) const
overridevirtual

Implements TPZGeoEl.

Definition at line 379 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ main_refless()

template<class TGeo>
static int TPZGeoElRefLess< TGeo >::main_refless ( )
static

◆ MidSideNodeIndex()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::MidSideNodeIndex ( int  side,
int64_t &  index 
) const
overridevirtual

Returns the midside node index along a side of the element.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 178 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::NNodes(), TPZGeoElRefLess< TGeo >::NodeIndex(), TPZGeoElRefLess< TGeo >::NSides(), and PZError.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ NCornerNodes()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::NCornerNodes ( ) const
overridevirtual

◆ Neighbour()

template<class TGeo>
virtual TPZGeoElSide TPZGeoElRefLess< TGeo >::Neighbour ( int  side)
inlineoverridevirtual

Returns a pointer to the neighbour and the neighbourside along side of the current element.

Implements TPZGeoEl.

Definition at line 109 of file pzgeoelrefless.h.

References DebugStop, and TPZGeoEl::Mesh().

◆ NeighbourIndex()

template<class TGeo>
virtual int64_t TPZGeoElRefLess< TGeo >::NeighbourIndex ( int  side) const
inlineoverridevirtual

◆ NNodes()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::NNodes ( ) const
overridevirtual

Returns the number of nodes of the element.

Implements TPZGeoEl.

Definition at line 142 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::MidSideNodeIndex(), TPZGeoElRefLess< TGeo >::PrintTopologicalInfo(), and TPZGeoElRefLess< TGeo >::TypeName().

◆ NodeIndex()

template<class TGeo >
int64_t TPZGeoElRefLess< TGeo >::NodeIndex ( int  i) const
overridevirtual

Returns the index of the ith node the index is the location of the node in the nodevector of the mesh.

Implements TPZGeoEl.

Definition at line 86 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fGeo.

Referenced by TPZGeoElRefPattern< TGeo >::Divide(), TPZGeoElRefPattern< TGeo >::MidSideNodeIndex(), TPZGeoElRefLess< TGeo >::MidSideNodeIndex(), and TPZGeoElRefLess< TGeo >::NeighbourIndex().

◆ NPermutations()

template<class Geom >
int TPZGeoElRefLess< Geom >::NPermutations ( ) const
overridevirtual

Get the number of valid permutations among the element nodes

Returns

Implements TPZGeoEl.

Definition at line 788 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ NSideNodes()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::NSideNodes ( int  side) const
overridevirtual

Returns the number of nodes for a particular side.

Implements TPZGeoEl.

Definition at line 172 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ NSides()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::NSides ( ) const
overridevirtual

◆ NSideSubElements()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::NSideSubElements ( int  side) const
overridevirtual

Returns the number of subelements of the same dimension of the element at the side.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 210 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ NSubElements()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::NSubElements ( ) const
overridevirtual

Returns the number of subelements of the element independent of the fact hether the element has already been refined or not.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 203 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ Print()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::Print ( std::ostream &  out)
inlineoverridevirtual

Print all relevant data of the element to cout.

Reimplemented from TPZGeoEl.

Reimplemented in TPZGeoElRefPattern< TGeo >.

Definition at line 156 of file pzgeoelrefless.h.

References TPZGeoEl::Print().

Referenced by TPZGeoElRefPattern< TGeo >::Print().

◆ PrintTopologicalInfo()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::PrintTopologicalInfo ( std::ostream &  out)
inlineoverridevirtual

Prints topological information of: TGeo (TPZGeoCube, TPZGeoPrism, TPZGeoQuad, ...)

Reimplemented from TPZGeoEl.

Definition at line 163 of file pzgeoelrefless.h.

References TPZGeoEl::fId, TPZGeoNode::Id(), TPZGeoElRefLess< TGeo >::NNodes(), TPZGeoEl::NodePtr(), TPZGeoElRefLess< TGeo >::SideNodeIndex(), and TPZGeoElRefLess< TGeo >::SideNodeLocIndex().

◆ ProjectBissectionInParametricDomain()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::ProjectBissectionInParametricDomain ( TPZVec< REAL > &  qsi,
TPZVec< REAL > &  qsiInDomain 
)
inlineoverridevirtual

Projection from given qsi to a qsiInDomain (in the element boundary) using bissection method from given qsi to element center.

Returns
Returns the side where the point was projected.
Note
Observe that if the point is already in the parametric domain, the method will return $ NSides() - 1 $

Implements TPZGeoEl.

Definition at line 388 of file pzgeoelrefless.h.

Referenced by TPZGeoElRefLess< TGeo >::RandomPoint().

◆ ProjectInParametricDomain()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::ProjectInParametricDomain ( TPZVec< REAL > &  qsi,
TPZVec< REAL > &  qsiInDomain 
)
inlineoverridevirtual

Ortogonal projection from given qsi to a qsiInDomain (all in the element parametric domain)

Returns
Returns the side where the point was projected.
Note
If ortogonal projection to any sides of element results in a qsi outside domain, this method will returns the nearest node side.
Observe that if the point is already in the parametric domain, the method will return $ NSides() - 1 $

Implements TPZGeoEl.

Definition at line 381 of file pzgeoelrefless.h.

Referenced by TPZGeoElRefLess< TGeo >::RandomPoint().

◆ RandomPoint()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::RandomPoint ( TPZVec< REAL > &  pt)
inlineoverridevirtual

◆ Read()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::Read ( TPZStream buf,
void *  context 
)
overridevirtual

◆ RefElVolume()

template<class TGeo >
REAL TPZGeoElRefLess< TGeo >::RefElVolume ( )
overridevirtual

Volume of the master element.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 166 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ ResetBlendConnectivity()

template<class TGeo >
bool TPZGeoElRefLess< TGeo >::ResetBlendConnectivity ( const int64_t &  side,
const int64_t &  index 
)
overridevirtual

If the element is a TPZGeoBlend element, this method will ensure that if the side side is connected to the element with index index, its blend connectivity is erased (for instance, this element may have been deleted). If it is not a TPZGeoBlend element, the method will just return false.

Parameters
sideside in which to seek for connectivities
indexindex of the element that will be disconnected from this
Returns
true if the element is a TPZGeoBlend element.

Implements TPZGeoEl.

Definition at line 449 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fGeo.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ ResetSubElements()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::ResetSubElements ( )
inlineoverridevirtual

Reset all subelements to NULL.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 337 of file pzgeoelrefless.h.

References DebugStop.

◆ SetNeighbour()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::SetNeighbour ( int  side,
const TPZGeoElSide neighbour 
)
inlineoverridevirtual

Fill in the data structure for the neighbouring information.

Implements TPZGeoEl.

Definition at line 152 of file pzgeoelrefless.h.

◆ SetNeighbourInfo()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::SetNeighbourInfo ( int  side,
TPZGeoElSide neigh,
TPZTransform<> &  trans 
)
inlineoverridevirtual

Definition at line 341 of file pzgeoelrefless.h.

References TPZGeoElRefLess< TGeo >::Geom().

◆ SetNodeIndex()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::SetNodeIndex ( int  i,
int64_t  nodeindex 
)
overridevirtual

Initializes the node i of the element.

Implements TPZGeoEl.

Definition at line 321 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fGeo.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ SetSideDefined()

template<class TGeo>
virtual void TPZGeoElRefLess< TGeo >::SetSideDefined ( int  side)
inlineoverridevirtual

Flags the side as defined, this means no neighbouring element was found.

Implements TPZGeoEl.

Definition at line 177 of file pzgeoelrefless.h.

References TPZGeoElRefLess< TGeo >::CreateSideIntegrationRule(), TPZGeoElRefLess< TGeo >::GetPermutation(), and TPZGeoElRefLess< TGeo >::SetSubElement().

◆ SetSubElement()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::SetSubElement ( int  i,
TPZGeoEl gel 
)
overridevirtual

Sets the subelement of index i.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 128 of file pzgeoelrefless.h.h.

References PZError.

Referenced by TPZGeoElRefLess< TGeo >::SetSideDefined().

◆ SideDimension()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::SideDimension ( int  side) const
overridevirtual

Return the dimension of side.

Implements TPZGeoEl.

Definition at line 347 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::AllHigherDimensionSides(), and TPZGeoElRefLess< TGeo >::TypeName().

◆ SideIsUndefined()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::SideIsUndefined ( int  side)
overridevirtual

Returns 1 if the side has not been defined by buildconnectivity.

After construction the side is undefined. The buildconnectivity method loops over all elements and tries to identify neighbours along their uninitialized sides

Implements TPZGeoEl.

Definition at line 193 of file pzgeoelrefless.h.h.

References DebugStop, TPZGeoElRefLess< TGeo >::fNeighbours, TPZGeoElRefLess< TGeo >::NSides(), and PZError.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ SideNodeIndex()

template<class TGeo >
int64_t TPZGeoElRefLess< TGeo >::SideNodeIndex ( int  side,
int  nodenum 
) const
overridevirtual

Returns the index of the nodenum node of side.

Implements TPZGeoEl.

Definition at line 107 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fGeo, and PZError.

Referenced by TPZGeoElRefLess< TGeo >::CreateBCGeoBlendEl(), TPZGeoElRefLess< TGeo >::CreateBCGeoEl(), and TPZGeoElRefLess< TGeo >::PrintTopologicalInfo().

◆ SideNodeLocId()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::SideNodeLocId ( int  side,
int  node 
) const
virtual

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

Definition at line 160 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::HDivPermutation(), and TPZGeoElRefLess< TGeo >::TypeName().

◆ SideNodeLocIndex()

template<class TGeo >
int TPZGeoElRefLess< TGeo >::SideNodeLocIndex ( int  side,
int  nodenum 
) const
overridevirtual

Returns the local index of a node on a side.

Implements TPZGeoEl.

Definition at line 117 of file pzgeoelrefless.h.h.

References PZError.

Referenced by TPZGeoElRefLess< TGeo >::PrintTopologicalInfo().

◆ SideToSideTransform()

template<class TGeo >
TPZTransform TPZGeoElRefLess< TGeo >::SideToSideTransform ( int  sidefrom,
int  sideto 
)
overridevirtual

compute the transformation between the master element space of one side of an element to the master element space of a higher dimension side

Implements TPZGeoEl.

Definition at line 331 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ SubElement()

template<class TGeo >
TPZGeoEl * TPZGeoElRefLess< TGeo >::SubElement ( int  is) const
overridevirtual

Returns a pointer to the subelement is.

Implements TPZGeoEl.

Reimplemented in TPZGeoElement< TGeo, TRef >, and TPZGeoElRefPattern< TGeo >.

Definition at line 337 of file pzgeoelrefless.h.h.

Referenced by TPZGeoElRefLess< TGeo >::TypeName().

◆ Type() [1/2]

template<class TGeo>
virtual MElementType TPZGeoElRefLess< TGeo >::Type ( ) const
inlineoverridevirtual

Returns the type of the element acording to the definition in pzeltype.h.

Implements TPZGeoEl.

Definition at line 195 of file pzgeoelrefless.h.

Referenced by TPZGeoElRefPattern< TGeo >::Divide().

◆ Type() [2/2]

template<class TGeo>
virtual MElementType TPZGeoElRefLess< TGeo >::Type ( int  side) const
inlineoverridevirtual

Returns the type of the element acording to the definition in pzeltype.h.

Implements TPZGeoEl.

Definition at line 200 of file pzgeoelrefless.h.

◆ TypeName()

template<class TGeo>
virtual std::string TPZGeoElRefLess< TGeo >::TypeName ( ) const
inlineoverridevirtual

◆ Write()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::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 TPZGeoEl.

Reimplemented in TPZGeoElRefPattern< TGeo >, and TPZGeoElement< TGeo, TRef >.

Definition at line 514 of file pzgeoelrefless.h.h.

References TPZGeoElRefLess< TGeo >::fGeo, TPZGeoElRefLess< TGeo >::fNeighbours, TPZGeoElSideIndex::Write(), and TPZGeoEl::Write().

Referenced by TPZGeoElRefLess< TGeo >::ClonePatchEl(), TPZGeoElement< TGeo, TRef >::Write(), and TPZGeoElRefPattern< TGeo >::Write().

◆ X()

template<class TGeo >
void TPZGeoElRefLess< TGeo >::X ( TPZVec< REAL > &  coordinate,
TPZVec< REAL > &  result 
) const
overridevirtual

Returns the coordinate in real space of the point coordinate in the master element space.

Return the gradient of the transformation at the point.

Implements TPZGeoEl.

Definition at line 416 of file pzgeoelrefless.h.h.

References cornerco, TPZGeoElRefLess< TGeo >::CornerCoordinates(), DebugStop, TPZGeoElRefLess< TGeo >::fGeo, and TPZVec< T >::size().

Referenced by TPZGeoElRefPattern< TGeo >::MidSideNodeIndex(), and TPZGeoElRefLess< TGeo >::TypeName().

Member Data Documentation

◆ fGeo

template<class TGeo>
TGeo TPZGeoElRefLess< TGeo >::fGeo
protected

◆ fNeighbours

template<class TGeo>
TPZGeoElSideIndex TPZGeoElRefLess< TGeo >::fNeighbours[TGeo::NSides]
protected

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