MueLu  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MueLu::LWGraph_kokkos< LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Lightweight MueLu representation of a compressed row storage graph. More...

#include <MueLu_LWGraph_kokkos_decl.hpp>

Inheritance diagram for MueLu::LWGraph_kokkos< LocalOrdinal, GlobalOrdinal, Node >:
MueLu::LWGraphBase< LocalOrdinal, GlobalOrdinal, Node, false >

Public Member Functions

RCP< MueLu::LWGraph
< LocalOrdinal, GlobalOrdinal,
Node > > 
copyToHost ()
 
- Public Member Functions inherited from MueLu::LWGraphBase< LocalOrdinal, GlobalOrdinal, Node, false >
const RCP< const Teuchos::Comm
< int > > 
GetComm () const
 
const RCP< const Map > GetDomainMap () const
 
const RCP< const Map > GetImportMap () const
 Return overlapping import map (nodes). More...
 
KOKKOS_INLINE_FUNCTION size_type GetNodeNumVertices () const
 Return number of graph vertices. More...
 
KOKKOS_INLINE_FUNCTION size_type GetNodeNumEdges () const
 Return number of graph edges. More...
 
Xpetra::global_size_t GetGlobalNumEdges () const
 Return global number of graph edges. More...
 
KOKKOS_INLINE_FUNCTION size_type getLocalMaxNumRowEntries () const
 Returns the maximum number of entries across all rows/columns on this node. More...
 
KOKKOS_INLINE_FUNCTION
neighbor_vertices_type 
getNeighborVertices (LO i) const
 Return the list of vertices adjacent to the vertex 'v'. More...
 
Teuchos::ArrayView< LOgetNeighborVertices_av (LO i) const
 Return the list of vertices adjacent to the vertex 'v'. More...
 
KOKKOS_INLINE_FUNCTION bool isLocalNeighborVertex (LO i) const
 Return true if vertex with local id 'v' is on current process. More...
 
KOKKOS_INLINE_FUNCTION row_type getRowPtrs () const
 Return the row pointers of the local graph. More...
 
KOKKOS_INLINE_FUNCTION entries_type getEntries () const
 Return the list entries in the local graph. More...
 
KOKKOS_INLINE_FUNCTION void SetBoundaryNodeMap (const boundary_nodes_type bndry)
 Set boolean array indicating which rows correspond to Dirichlet boundaries. More...
 
KOKKOS_INLINE_FUNCTION const
boundary_nodes_type 
GetBoundaryNodeMap () const
 Returns map with global ids of boundary nodes. More...
 
std::string description () const
 Return a simple one-line description of the Graph. More...
 
void print (Teuchos::FancyOStream &out, const VerbLevel verbLevel=Default) const
 Print the Graph with some verbosity level to an FancyOStream object. More...
 
local_graph_typegetGraph () const
 
RCP< crs_graph_typeGetCrsGraph () const
 
const std::string & getObjectLabel () const
 
 LWGraphBase (const local_graph_type &graph, const RCP< const map_type > &domainMap, const RCP< const map_type > &importMap, const std::string &objectLabel="")
 LWGraph constructor. More...
 
 LWGraphBase (const RCP< const crs_graph_type > &graph, const std::string &objectLabel="")
 
 LWGraphBase (const row_type &rows, const entries_type &columns, const RCP< const map_type > &domainMap, const RCP< const map_type > &importMap, const std::string &objectLabel="")
 
 ~LWGraphBase ()=default
 

Additional Inherited Members

- Public Types inherited from MueLu::LWGraphBase< LocalOrdinal, GlobalOrdinal, Node, false >
using local_ordinal_type = LocalOrdinal
 
using global_ordinal_type = GlobalOrdinal
 
using map_type = Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node >
 
using crs_graph_type = Xpetra::CrsGraph< LocalOrdinal, GlobalOrdinal, Node >
 
using size_type = size_t
 
using device_type = typename std::conditional< OnHost, Kokkos::Device< Kokkos::Serial, Kokkos::HostSpace >, typename Node::device_type >::type
 
using execution_space = typename device_type::execution_space
 
using memory_space = typename device_type::memory_space
 
using local_graph_device_type = Kokkos::StaticCrsGraph< LocalOrdinal, Kokkos::LayoutLeft, typename Node::device_type, void, size_t >
 
using local_graph_type = typename std::conditional< OnHost, typename local_graph_device_type::HostMirror, local_graph_device_type >::type
 
using boundary_nodes_type = Kokkos::View< bool *, memory_space >
 
using row_type = typename local_graph_type::row_map_type
 
using entries_type = typename local_graph_type::entries_type
 
using neighbor_vertices_type = Kokkos::GraphRowViewConst< local_graph_type >
 

Detailed Description

template<class LocalOrdinal, class GlobalOrdinal, class Node>
class MueLu::LWGraph_kokkos< LocalOrdinal, GlobalOrdinal, Node >

Lightweight MueLu representation of a compressed row storage graph.

This class is lightweight in the sense that it holds to local graph information. These were built without using fillComplete.

Definition at line 30 of file MueLu_LWGraph_kokkos_decl.hpp.

Member Function Documentation

template<class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< MueLu::LWGraph< LocalOrdinal, GlobalOrdinal, Node > > MueLu::LWGraph_kokkos< LocalOrdinal, GlobalOrdinal, Node >::copyToHost ( )

Definition at line 19 of file MueLu_LWGraph_kokkos_def.hpp.


The documentation for this class was generated from the following files: