6 #ifndef TPZRENUMBERING_H 7 #define TPZRENUMBERING_H 72 std::cout <<
"Resequence not implemented\n";
109 void CornerEqs(
unsigned int mincorners, int64_t nelconsider, std::set<int> &eligible, std::set<int> &cornernodes);
136 #endif //TPZRENUMBERING_H Contains declaration of the TPZSavable class which defines the interface to save and restore objects ...
void SetElementGraph(TPZVec< int64_t > &elgraph, TPZVec< int64_t > &elgraphindex)
This method declares the element graph to the object.
void ConvertGraph(TPZVec< int64_t > &elgraph, TPZVec< int64_t > &elgraphindex, TPZManVector< int64_t > &nodegraph, TPZManVector< int64_t > &nodegraphindex)
Will convert an element graph defined by elgraph and elgraphindex into a node graph defined by nodegr...
Templated vector implementation.
TPZVec< int > fNodeWeights
Number of equations associated with each node.
int ClassId() const override
Define the class id associated with the class.
TPZVec< int64_t > fElementGraphIndex
Indicates for each element the index of the first entry with fElementGraph for that element The size ...
This abstract class which defines the behavior which derived classes need to implement for implement...
#define DebugStop()
Returns a message to user put a breakpoint in.
void CornerEqs(unsigned int mincorners, int64_t nelconsider, std::set< int > &eligible, std::set< int > &cornernodes)
Analyzes the graph, finds the corner nodes Number of elements which should be considered for determi...
Free store vector implementation.
int64_t fNElements
Number of elements in the graph.
void SetElementsNodes(int64_t NElements, int64_t NNodes)
void ConvertToElementoToElementGraph(TPZVec< int64_t > &elgraph, TPZVec< int64_t > &elgraphindex, TPZVec< int64_t > &eltotelgraph, TPZVec< int > &eltoelweight, TPZVec< int64_t > &eltoelgraphindex)
Convert a traditional elgraph to an element to element graph.
void Read(TPZStream &buf, void *context) override
read objects from the stream
void Write(TPZStream &buf, int withclassid) const override
Writes this object to the TPZStream buffer. Include the classid if withclassid = true.
void SetNodeWeights(TPZVec< int > &weights)
Sets the number of equations associated with each node.
void Print(TPZVec< int64_t > &grapho, TPZVec< int64_t > &graphoindex, const char *name=0, std::ostream &out=std::cout)
Prints graph.
static int64_t ColorElements(const TPZCompMesh *cmesh, const TPZVec< int64_t > &elementIndices, TPZVec< int64_t > &elementColors)
Assigns a color to the elements in the elementIndices list such that two elements that share a connec...
void ResequenceByGeometry(TPZCompMesh *cmesh, const TPZVec< REAL > &normal)
Makes resequence to renumbering.
int64_t fNNodes
Number of nodes in the graph.
virtual void ClearDataStructures()
This will reset all datastructures the object may contain.
TPZVec< int64_t > fElementGraph
Node number of each element.
virtual ~TPZRenumbering()
void NodeToElGraph(TPZVec< int64_t > &elgraph, TPZVec< int64_t > &elgraphindex, TPZVec< int64_t > &nodetoelgraph, TPZVec< int64_t > &nodetoelgraphindex)
Stores the graph of nodes to elements.
Implements computational mesh. Computational Mesh.
Defines the interface for saving and reading data. Persistency.
virtual void Resequence(TPZVec< int64_t > &perm, TPZVec< int64_t > &iperm)
This class defines the interface to save and restore objects from TPZStream objects. Persistency.
int64_t ColorNodes(TPZVec< int64_t > &nodegraph, TPZVec< int64_t > &nodegraphindex, TPZVec< int > &family, TPZVec< int > &colors)
Will assign a color to the nodes in the graph such that no two connected nodes have the same color th...