![]() |
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_contiguous_row_graph.h>
Classes | |
class | const_iterator_adaptor |
Public Member Functions | |
Life Cycle | |
SparseContiguousRowGraph () | |
Default constructor. - needs to be public for communicator, but it will fail if used in any other mode. More... | |
SparseContiguousRowGraph (IndexType GraphSize) | |
~SparseContiguousRowGraph () | |
Destructor. More... | |
SparseContiguousRowGraph & | operator= (SparseContiguousRowGraph const &rOther)=delete |
Assignment operator. TODO: decide if we do want to allow it. More... | |
SparseContiguousRowGraph (const SparseContiguousRowGraph &rOther) | |
Copy constructor. More... | |
const DataCommunicator & | GetComm () const |
const DataCommunicator * | pGetComm () const |
Operators | |
void | Clear () |
IndexType | Size () const |
bool | Has (const IndexType I, const IndexType J) const |
const GraphType::value_type & | operator[] (const IndexType &Key) const |
IndexType | LocalIndex (const IndexType GlobalIndex) const |
IndexType | GlobalIndex (const IndexType LocalIndex) const |
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 (const SparseContiguousRowGraph &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 () |
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 DenseVector< std::unordered_set< IndexType > > | GraphType |
typedef GraphType::const_iterator | const_row_iterator |
KRATOS_CLASS_POINTER_DEFINITION (SparseContiguousRowGraph) | |
Pointer definition of SparseContiguousRowGraph. 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: AddEntries IS threasafe
typedef GraphType::const_iterator Kratos::SparseContiguousRowGraph< TIndexType >::const_row_iterator |
typedef DenseVector<std::unordered_set<IndexType> > Kratos::SparseContiguousRowGraph< TIndexType >::GraphType |
typedef TIndexType Kratos::SparseContiguousRowGraph< TIndexType >::IndexType |
|
inline |
Default constructor. - needs to be public for communicator, but it will fail if used in any other mode.
|
inline |
|
inline |
Destructor.
|
inline |
Copy constructor.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
delete |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Turn back information as a string.
Kratos::SparseContiguousRowGraph< TIndexType >::KRATOS_CLASS_POINTER_DEFINITION | ( | SparseContiguousRowGraph< TIndexType > | ) |
Pointer definition of SparseContiguousRowGraph.
|
inline |
|
delete |
Assignment operator. TODO: decide if we do want to allow it.
|
inline |
|
inline |
|
inline |
Print object's data.
|
inline |
Print information about this object.
|
inline |
|
friend |