![]() |
NeoPZ
|
Interface to sloan subrotines. Utility. More...
#include <pzsloan.h>
Public Member Functions | |
| virtual void | Resequence (TPZVec< int64_t > &perm, TPZVec< int64_t > &iperm) |
| TPZSloan () | |
| TPZSloan (int NElements, int NNodes) | |
| virtual | ~TPZSloan () |
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 Attributes | |
| int | fMaxNodesElement |
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... | |
| TPZSloan::TPZSloan | ( | int | NElements, |
| int | NNodes | ||
| ) |
Definition at line 13 of file pzsloan.cpp.
References fMaxNodesElement, TPZRenumbering::fNElements, and TPZRenumbering::fNNodes.
int nen = 2; // number of nodes per element int *npn = new int[nen * n_elements]; // npn[i..i+nen] contains adjacent nodes of element i int *xnpn = new int[n_elements+1]; // xnpn[i] index of element i in npn
Now npn and xnpn are fElementGraph and fElementGraphIndex respectively
Reimplemented from TPZRenumbering.
Definition at line 20 of file pzsloan.cpp.
References TPZRenumbering::fElementGraph, TPZRenumbering::fElementGraphIndex, fMaxNodesElement, TPZRenumbering::fNElements, TPZRenumbering::fNNodes, gegra_(), label_(), TPZVec< T >::NElements(), PZ_PTHREAD_MUTEX_LOCK, PZ_PTHREAD_MUTEX_UNLOCK, and TPZVec< T >::Resize().
Referenced by TPZDohrStructMatrix::Create(), and TPZAnalysis::OptimizeBandwidth().
|
private |
Definition at line 28 of file pzsloan.h.
Referenced by Resequence(), and TPZSloan().
1.8.13