![]() |
NeoPZ
|
#include <TPZSloanRenumbering.h>
Classes | |
| struct | SList |
| struct | TNo |
Public Member Functions | |
| virtual void | Resequence (TPZVec< int64_t > &permGather, TPZVec< int64_t > &permScatter) |
| virtual void | Resequence2 (TPZVec< int64_t > &permGather, TPZVec< int64_t > &permScatter) |
| TPZSloanRenumbering (int64_t NElements, int64_t NNodes) | |
| TPZSloanRenumbering () | |
| virtual | ~TPZSloanRenumbering () |
Public Member Functions inherited from TPZRenumbering | |
| TPZRenumbering () | |
| TPZRenumbering (int64_t NElements, int64_t NNodes) | |
| virtual | ~TPZRenumbering () |
| 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... | |
| void | SetElementsNodes (int64_t NElements, int64_t NNodes) |
| void | SetElementGraph (TPZVec< int64_t > &elgraph, TPZVec< int64_t > &elgraphindex) |
| This method declares the element graph to the object. More... | |
| void | SetNodeWeights (TPZVec< int > &weights) |
| Sets the number of equations associated with each node. More... | |
| virtual void | ClearDataStructures () |
| This will reset all datastructures the object may contain. More... | |
| 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 nodegraph and nodegraphindex. More... | |
| 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. More... | |
| 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. More... | |
| 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 the return value indicates the number of colors in the graph. More... | |
| void | Print (TPZVec< int64_t > &grapho, TPZVec< int64_t > &graphoindex, const char *name=0, std::ostream &out=std::cout) |
| Prints graph. More... | |
| 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 determining corner nodes. 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 | |
Private Types | |
| enum | ENodeStatus { EInactive, EPreActive, EActive, EPostActive } |
Private Member Functions | |
| int64_t | W1 () const |
| int64_t | W2 () const |
| int64_t | FindHighestPriority (const SList &Q, const TPZVec< int64_t > &priority, int64_t &Qindex) const |
| void | InsertNode (TNo *node) |
| TNo * | PopHighestPriorityNode () |
| void | TransferPriority (TNo *no, int newpriority) |
Private Attributes | |
| std::map< int, TNo * > | fActive |
| TPZVec< TNo > | fAllNodes |
Additional Inherited Members | |
Static Public Member Functions inherited from TPZRenumbering | |
| 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 connect have different colors. The return value indicates the number of colors. 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 TPZSavable * | CreateInstance (const int &classId) |
Public Attributes inherited from TPZRenumbering | |
| int | fHDivPermute |
Protected Attributes inherited from TPZRenumbering | |
| int64_t | fNElements |
| Number of elements in the graph. More... | |
| int64_t | fNNodes |
| Number of nodes in the graph. More... | |
| TPZVec< int > | fNodeWeights |
| Number of equations associated with each node. More... | |
| TPZVec< int64_t > | fElementGraph |
| Node number of each element. More... | |
| TPZVec< int64_t > | fElementGraphIndex |
| Indicates for each element the index of the first entry with fElementGraph for that element The size of this vector is fNElements+1. More... | |
Definition at line 13 of file TPZSloanRenumbering.h.
|
private |
| Enumerator | |
|---|---|
| EInactive | |
| EPreActive | |
| EActive | |
| EPostActive | |
Definition at line 92 of file TPZSloanRenumbering.h.
| TPZSloanRenumbering::TPZSloanRenumbering | ( | int64_t | NElements, |
| int64_t | NNodes | ||
| ) |
Definition at line 6 of file TPZSloanRenumbering.cpp.
| TPZSloanRenumbering::TPZSloanRenumbering | ( | ) |
Definition at line 10 of file TPZSloanRenumbering.cpp.
Referenced by TransferPriority().
|
virtual |
Definition at line 14 of file TPZSloanRenumbering.cpp.
Referenced by TransferPriority().
|
private |
Definition at line 176 of file TPZSloanRenumbering.cpp.
References DebugStop, TPZSloanRenumbering::SList::fList, and TPZSloanRenumbering::SList::fSize.
Referenced by Resequence().
|
inlineprivate |
Definition at line 123 of file TPZSloanRenumbering.h.
References substruct_tst15.test::first, TPZSloanRenumbering::TNo::fnext, TPZSloanRenumbering::TNo::fprev, and TPZSloanRenumbering::TNo::fPriority.
Referenced by Resequence2(), and TransferPriority().
|
inlineprivate |
Definition at line 142 of file TPZSloanRenumbering.h.
References DebugStop, TPZSloanRenumbering::TNo::fnext, and TPZSloanRenumbering::TNo::fprev.
Referenced by Resequence2().
|
virtual |
Reimplemented from TPZRenumbering.
Definition at line 23 of file TPZSloanRenumbering.cpp.
References TPZCutHillMcKee::SGraph::AdjacentNodesPtr(), TPZRenumbering::ConvertGraph(), DebugStop, TPZCutHillMcKee::SGraph::Degree(), degree(), EActive, EInactive, EPostActive, EPreActive, TPZRenumbering::fElementGraph, TPZRenumbering::fElementGraphIndex, FindHighestPriority(), TPZCutHillMcKee::SGraph::fnodegraph, TPZCutHillMcKee::SGraph::fnodegraphindex, TPZSloanRenumbering::SList::fSize, MAX, TPZVec< T >::NElements(), TPZCutHillMcKee::SGraph::NNodes(), TPZCutHillMcKee::SGraph::PseudoPeripheralNodes(), TPZStack< T, NumExtAlloc >::Push(), TPZSloanRenumbering::SList::push_back(), TPZSloanRenumbering::SList::remove(), TPZManVector< T, NumExtAlloc >::Resize(), TPZVec< T >::Resize(), TPZCutHillMcKee::SGraph::RootedLevelStructure(), TPZManVector< T, NumExtAlloc >::Shrink(), W1(), and W2().
Referenced by TransferPriority().
|
virtual |
Definition at line 194 of file TPZSloanRenumbering.cpp.
References TPZCutHillMcKee::SGraph::AdjacentNodesPtr(), TPZRenumbering::ConvertGraph(), DebugStop, TPZCutHillMcKee::SGraph::Degree(), degree(), EActive, EInactive, EPostActive, EPreActive, fActive, fAllNodes, TPZRenumbering::fElementGraph, TPZRenumbering::fElementGraphIndex, TPZSloanRenumbering::TNo::fIndex, TPZCutHillMcKee::SGraph::fnodegraph, TPZCutHillMcKee::SGraph::fnodegraphindex, TPZSloanRenumbering::TNo::fSequenceNumber, TPZSloanRenumbering::TNo::fStatus, InsertNode(), TPZVec< T >::NElements(), TPZCutHillMcKee::SGraph::NNodes(), PopHighestPriorityNode(), TPZCutHillMcKee::SGraph::PseudoPeripheralNodes(), TPZCutHillMcKee::SGraph::RootedLevelStructure(), TPZManVector< T, NumExtAlloc >::Shrink(), TransferPriority(), W1(), and W2().
Referenced by TransferPriority().
|
inlineprivate |
Definition at line 163 of file TPZSloanRenumbering.h.
References DebugStop, substruct_tst15.test::first, TPZSloanRenumbering::TNo::fnext, TPZSloanRenumbering::TNo::fprev, TPZSloanRenumbering::TNo::fPriority, InsertNode(), Resequence(), Resequence2(), TPZSloanRenumbering(), and ~TPZSloanRenumbering().
Referenced by Resequence2().
|
inlineprivate |
Definition at line 89 of file TPZSloanRenumbering.h.
Referenced by Resequence(), and Resequence2().
|
inlineprivate |
Definition at line 90 of file TPZSloanRenumbering.h.
Referenced by Resequence(), and Resequence2().
|
private |
Definition at line 119 of file TPZSloanRenumbering.h.
Referenced by Resequence2().
Definition at line 121 of file TPZSloanRenumbering.h.
Referenced by Resequence2().
1.8.13