59 return fGeoElIndex == -1 || fSide == -1;
102 TPZCompElSide LowerLevelCompElementList2(
int onlyinterpolated);
119 bool ResetBlendConnectivity(
const int64_t &index);
138 int NNeighboursButThisElem(
TPZGeoEl *thisElem);
149 this->fSide = index.
Side();
150 this->fGeoEl = index.
Element(mesh);
167 void Print(std::ostream &out)
const;
173 bool IsLinearMapping()
const;
175 int Exists()
const {
return (fGeoEl != 0 && fSide > -1);}
203 int Dimension()
const;
206 return fGeoEl == other.
fGeoEl && fSide == other.
fSide;
209 return fGeoEl != other.
fGeoEl || fSide != other.
fSide;
213 return (fGeoEl < other.
fGeoEl || (fGeoEl == other.
fGeoEl && fSide < other.
fSide));
217 return (fGeoEl > other.
fGeoEl || (fGeoEl == other.
fGeoEl && fSide > other.
fSide));
221 operator bool()
const 230 void SetConnectivity(
const TPZGeoElSide &neighbour)
const;
236 void RemoveConnectivity();
268 int NSideNodes()
const;
271 int64_t SideNodeIndex(
int nodenum)
const;
274 int64_t SideNodeLocIndex(
int nodenum)
const;
278 int NeighbourExists(
const TPZGeoElSide &neighbour)
const;
281 void EqualorHigherCompElementList2(
TPZStack<TPZCompElSide> &celside,
int onlyinterpolated,
int removeduplicates);
291 void HigherLevelCompElementList2(
TPZStack<TPZCompElSide> &elsidevec,
int onlyinterpolated,
int removeduplicates);
302 void EqualLevelCompElementList(
TPZStack<TPZCompElSide> &elsidevec,
int onlyinterpolated,
int removeduplicates);
307 void EqualorHigherCompElementList3(
TPZStack<TPZCompElSide> &celside,
int onlymultiphysicelement,
int removeduplicates);
313 void EqualLevelCompElementList3(
TPZStack<TPZCompElSide> &elsidevec,
int onlymultiphysicelement,
int removeduplicates);
318 void HigherLevelCompElementList3(
TPZStack<TPZCompElSide> &elsidevec,
int onlymultiphysicelement,
int removeduplicates);
324 int GelLocIndex(
int index)
const;
336 if(! Exists() || ! neigh.
Exists())
338 std::cout <<
"TPZGeoElSide AllNeighbours inconsistent\n";
342 while(neigh != *
this)
344 allneigh.
Push(neigh);
TPZGeoEl * Element(const TPZGeoMesh *mesh) const
int operator<(const TPZGeoElSide &other) const
TPZGeoElSide(TPZGeoEl *gel, int side)
Implements computational element and a side. Computational Element.
bool IsAncestor(TPZGeoEl *son, TPZGeoEl *father)
void SetElement(TPZGeoEl *geoel)
int ClassId() const override
Define the class id associated with the class.
Templated vector implementation.
TPZGeoElSide(const TPZGeoElSideIndex &index, const TPZGeoMesh *mesh)
Utility class which represents an element with its side. The Geometric approximation classes Geometry...
TPZGeoElSide Neighbour() const
void SetElement(TPZGeoEl *geoel)
Abstract class defining integration rules. Numerical Integration.
int64_t ElementIndex() const
Utility class which represents an element index with its side. Geometry.
void Push(const T object)
Pushes a copy of the object on the stack.
std::ostream & operator<<(std::ostream &out, const TPZGeoElSide &geoside)
Overload operator << to print geometric element side data.
void AllNeighbours(TPZStack< TPZGeoElSide > &allneigh)
Returns the set of neighbours which can directly be accessed by the datastructure.
~TPZGeoElSideIndex()
Destructor.
Defines the behaviour of all geometric elements. GeometryTPZGeoEl is the common denominator for all g...
Contains TPZMatrixclass which implements full matrix (using column major representation).
#define DebugStop()
Returns a message to user put a breakpoint in.
int operator>(const TPZGeoElSide &other) const
TPZGeoElSideIndex & operator=(const TPZGeoElSideIndex &A)
Redefines operator = attribuition to TPZGeoElSideIndex object.
TPZGeoElSideIndex()
Simple constructor.
void SetElementIndex(int64_t i)
TPZGeoEl * Element() const
This class implements a geometric mesh for the pz environment. Geometry.
int operator==(const TPZGeoElSide &other) const
This class implements a stack object. Utility.
void Write(TPZStream &buf, int withclassid) const override
Writes this object to the TPZStream buffer. Include the classid if withclassid = true.
Contains the TPZIntPoints class which defines integration rules.
Defines the interface for saving and reading data. Persistency.
TPZGeoElSideIndex * Clone()
To clone current object.
void Read(TPZStream &buf, void *context) override
read objects from the stream
This class defines the interface to save and restore objects from TPZStream objects. Persistency.
int operator!=(const TPZGeoElSide &other) const