![]() |
KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
Short class definition. More...
#include <sparse_graph.h>
Classes | |
class | const_iterator_adaptor |
Public Member Functions | |
Life Cycle | |
SparseGraph (IndexType N) | |
SparseGraph () | |
Default constructor. More... | |
SparseGraph (DataCommunicator &rComm) | |
~SparseGraph () | |
Destructor. More... | |
SparseGraph (const SparseGraph &rOther) | |
Copy constructor. More... | |
SparseGraph (const std::vector< IndexType > &rSingleVectorRepresentation) | |
Operators | |
const DataCommunicator & | GetComm () const |
const DataCommunicator * | pGetComm () const |
IndexType | Size () const |
bool | IsEmpty () const |
bool | Has (const IndexType I, const IndexType J) const |
const GraphType::mapped_type & | operator[] (const IndexType &Key) const |
void | Clear () |
void | AddEntry (const IndexType RowIndex, const IndexType ColIndex) |
template<class TContainerType > | |
void | AddEntries (const IndexType RowIndex, const TContainerType &rColIndices) |
template<class TIteratorType > | |
void | AddEntries (const IndexType RowIndex, const TIteratorType &rColBegin, const TIteratorType &rColEnd) |
template<class TContainerType > | |
void | AddEntries (const TContainerType &rIndices) |
template<class TContainerType > | |
void | AddEntries (const TContainerType &rRowIndices, const TContainerType &rColIndices) |
void | AddEntries (SparseGraph &rOtherGraph) |
void | Finalize () |
const GraphType & | GetGraph () const |
template<class TVectorType = DenseVector<IndexType>> | |
IndexType | ExportCSRArrays (TVectorType &rRowIndices, TVectorType &rColIndices) const |
IndexType | ExportCSRArrays (Kratos::span< IndexType > &rRowIndices, Kratos::span< IndexType > &rColIndices) const =delete |
IndexType | ExportCSRArrays (IndexType *&pRowIndicesData, IndexType &rRowDataSize, IndexType *&pColIndicesData, IndexType &rColDataSize) const |
std::vector< IndexType > | ExportSingleVectorRepresentation () const |
void | AddFromSingleVectorRepresentation (const std::vector< IndexType > &rSingleVectorRepresentation) |
Access | |
const_iterator_adaptor | begin () const |
const_iterator_adaptor | end () const |
Input and output | |
std::string | Info () const |
Turn back information as a string. More... | |
void | PrintInfo (std::ostream &rOStream) const |
Print information about this object. More... | |
void | PrintData (std::ostream &rOStream) const |
Print object's data. More... | |
Type Definitions | |
typedef TIndexType | IndexType |
typedef std::map< IndexType, std::unordered_set< IndexType > > | GraphType |
typedef GraphType::const_iterator | const_row_iterator |
KRATOS_CLASS_POINTER_DEFINITION (SparseGraph) | |
Pointer definition of SparseGraph. More... | |
Private Operators | |
class | Serializer |
Short class definition.
This class is designed to store a matrix graph, aimed at the fast construction of other sparse matrix formats (particularly CSR) IMPORTANT NOTE: it is BY DESIGN NOT threadsafe! (a graph should be computed in each thread and then merged)
typedef GraphType::const_iterator Kratos::SparseGraph< TIndexType >::const_row_iterator |
typedef std::map<IndexType, std::unordered_set<IndexType> > Kratos::SparseGraph< TIndexType >::GraphType |
typedef TIndexType Kratos::SparseGraph< TIndexType >::IndexType |
|
inline |
|
inline |
Default constructor.
|
inline |
|
inline |
Destructor.
|
inline |
Copy constructor.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
delete |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Turn back information as a string.
|
inline |
Kratos::SparseGraph< TIndexType >::KRATOS_CLASS_POINTER_DEFINITION | ( | SparseGraph< TIndexType > | ) |
Pointer definition of SparseGraph.
|
inline |
|
inline |
|
inline |
Print object's data.
|
inline |
Print information about this object.
|
inline |
|
friend |