Sacado Package Browser (Single Doxygen Collection)  Version of the Day
Classes | Public Types | Public Member Functions | Public Attributes | Private Types | Private Attributes | List of all members
Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode > Class Template Reference

#include <fenl_functors.hpp>

Classes

struct  TagFillElementGraph
 
struct  TagFillGraphEntries
 
struct  TagFillNodeSet
 
struct  TagScanNodeCount
 
struct  TagSortGraphEntries
 
struct  Times
 

Public Types

typedef ElemNodeIdView::execution_space execution_space
 
typedef pair< unsigned, unsigned > key_type
 
typedef Kokkos::UnorderedMap< key_type, void, execution_spaceSetType
 
typedef CrsGraphType::row_map_type::non_const_type RowMapType
 
typedef Kokkos::View< unsigned, execution_spaceUnsignedValue
 
typedef Kokkos::View< unsigned *[ElemNode][ElemNode], execution_spaceElemGraphType
 
typedef unsigned value_type
 
typedef ElemNodeIdView::execution_space execution_space
 
typedef pair< unsigned, unsigned > key_type
 
typedef Kokkos::UnorderedMap< key_type, void, execution_spaceSetType
 
typedef CrsGraphType::row_map_type::non_const_type RowMapType
 
typedef Kokkos::View< unsigned, execution_spaceUnsignedValue
 
typedef Kokkos::View< unsigned *[ElemNode][ElemNode], execution_spaceElemGraphType
 
typedef unsigned value_type
 

Public Member Functions

 NodeNodeGraph (const ElemNodeIdView &arg_elem_node_id, const unsigned arg_node_count, Times &results)
 
KOKKOS_INLINE_FUNCTION void operator() (const TagFillNodeSet &, unsigned ielem, unsigned &count) const
 
KOKKOS_INLINE_FUNCTION void fill_graph_entries (const unsigned iset) const
 
KOKKOS_INLINE_FUNCTION void sort_graph_entries (const unsigned irow) const
 
KOKKOS_INLINE_FUNCTION void fill_elem_graph_map (const unsigned ielem) const
 
KOKKOS_INLINE_FUNCTION void operator() (const unsigned iwork) const
 
KOKKOS_INLINE_FUNCTION void operator() (const unsigned irow, unsigned &update, const bool final) const
 
KOKKOS_INLINE_FUNCTION void init (const TagFillNodeSet &, unsigned &update) const
 
KOKKOS_INLINE_FUNCTION void join (const TagFillNodeSet &, volatile unsigned &update, volatile const unsigned &input) const
 
KOKKOS_INLINE_FUNCTION void init (unsigned &update) const
 
KOKKOS_INLINE_FUNCTION void join (volatile unsigned &update, volatile const unsigned &input) const
 
 NodeNodeGraph (const ElemNodeIdView &arg_elem_node_id, const unsigned arg_node_count, Times &results)
 
KOKKOS_INLINE_FUNCTION void operator() (const TagFillNodeSet &, unsigned ielem, unsigned &count) const
 
KOKKOS_INLINE_FUNCTION void fill_graph_entries (const unsigned iset) const
 
KOKKOS_INLINE_FUNCTION void sort_graph_entries (const unsigned irow) const
 
KOKKOS_INLINE_FUNCTION void fill_elem_graph_map (const unsigned ielem) const
 
KOKKOS_INLINE_FUNCTION void operator() (const unsigned iwork) const
 
KOKKOS_INLINE_FUNCTION void operator() (const unsigned irow, unsigned &update, const bool final) const
 
KOKKOS_INLINE_FUNCTION void init (const TagFillNodeSet &, unsigned &update) const
 
KOKKOS_INLINE_FUNCTION void join (const TagFillNodeSet &, volatile unsigned &update, volatile const unsigned &input) const
 
KOKKOS_INLINE_FUNCTION void init (unsigned &update) const
 
KOKKOS_INLINE_FUNCTION void join (volatile unsigned &update, volatile const unsigned &input) const
 

Public Attributes

CrsGraphType graph
 
ElemGraphType elem_graph
 

Private Types

enum  PhaseType {
  FILL_NODE_SET, SCAN_NODE_COUNT, FILL_GRAPH_ENTRIES, SORT_GRAPH_ENTRIES,
  FILL_ELEMENT_GRAPH, FILL_NODE_SET, SCAN_NODE_COUNT, FILL_GRAPH_ENTRIES,
  SORT_GRAPH_ENTRIES, FILL_ELEMENT_GRAPH
}
 
enum  PhaseType {
  FILL_NODE_SET, SCAN_NODE_COUNT, FILL_GRAPH_ENTRIES, SORT_GRAPH_ENTRIES,
  FILL_ELEMENT_GRAPH, FILL_NODE_SET, SCAN_NODE_COUNT, FILL_GRAPH_ENTRIES,
  SORT_GRAPH_ENTRIES, FILL_ELEMENT_GRAPH
}
 

Private Attributes

const unsigned node_count
 
const ElemNodeIdView elem_node_id
 
UnsignedValue row_total
 
RowMapType row_count
 
RowMapType row_map
 
SetType node_node_set
 
PhaseType phase
 

Detailed Description

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
class Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >

Definition at line 96 of file fenl_functors.hpp.

Member Typedef Documentation

◆ execution_space [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef ElemNodeIdView::execution_space Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::execution_space

Definition at line 99 of file fenl_functors.hpp.

◆ key_type [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef pair<unsigned,unsigned> Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::key_type

Definition at line 100 of file fenl_functors.hpp.

◆ SetType [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef Kokkos::UnorderedMap< key_type, void , execution_space > Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::SetType

Definition at line 102 of file fenl_functors.hpp.

◆ RowMapType [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef CrsGraphType::row_map_type::non_const_type Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::RowMapType

Definition at line 103 of file fenl_functors.hpp.

◆ UnsignedValue [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef Kokkos::View< unsigned , execution_space > Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::UnsignedValue

Definition at line 104 of file fenl_functors.hpp.

◆ ElemGraphType [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef Kokkos::View< unsigned*[ElemNode][ElemNode] , execution_space > Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::ElemGraphType

Definition at line 108 of file fenl_functors.hpp.

◆ value_type [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef unsigned Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::value_type

Definition at line 383 of file fenl_functors.hpp.

◆ execution_space [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef ElemNodeIdView::execution_space Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::execution_space

Definition at line 99 of file view/fenl_functors.hpp.

◆ key_type [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef pair<unsigned,unsigned> Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::key_type

Definition at line 100 of file view/fenl_functors.hpp.

◆ SetType [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef Kokkos::UnorderedMap< key_type, void , execution_space > Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::SetType

Definition at line 102 of file view/fenl_functors.hpp.

◆ RowMapType [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef CrsGraphType::row_map_type::non_const_type Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::RowMapType

Definition at line 103 of file view/fenl_functors.hpp.

◆ UnsignedValue [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef Kokkos::View< unsigned , execution_space > Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::UnsignedValue

Definition at line 104 of file view/fenl_functors.hpp.

◆ ElemGraphType [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef Kokkos::View< unsigned*[ElemNode][ElemNode] , execution_space > Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::ElemGraphType

Definition at line 108 of file view/fenl_functors.hpp.

◆ value_type [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
typedef unsigned Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::value_type

Definition at line 383 of file view/fenl_functors.hpp.

Member Enumeration Documentation

◆ PhaseType [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
enum Kokkos::Example::FENL::NodeNodeGraph::PhaseType
private
Enumerator
FILL_NODE_SET 
SCAN_NODE_COUNT 
FILL_GRAPH_ENTRIES 
SORT_GRAPH_ENTRIES 
FILL_ELEMENT_GRAPH 
FILL_NODE_SET 
SCAN_NODE_COUNT 
FILL_GRAPH_ENTRIES 
SORT_GRAPH_ENTRIES 
FILL_ELEMENT_GRAPH 

Definition at line 118 of file fenl_functors.hpp.

◆ PhaseType [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
enum Kokkos::Example::FENL::NodeNodeGraph::PhaseType
private
Enumerator
FILL_NODE_SET 
SCAN_NODE_COUNT 
FILL_GRAPH_ENTRIES 
SORT_GRAPH_ENTRIES 
FILL_ELEMENT_GRAPH 
FILL_NODE_SET 
SCAN_NODE_COUNT 
FILL_GRAPH_ENTRIES 
SORT_GRAPH_ENTRIES 
FILL_ELEMENT_GRAPH 

Definition at line 118 of file view/fenl_functors.hpp.

Constructor & Destructor Documentation

◆ NodeNodeGraph() [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::NodeNodeGraph ( const ElemNodeIdView &  arg_elem_node_id,
const unsigned  arg_node_count,
Times results 
)
inline

Definition at line 147 of file fenl_functors.hpp.

◆ NodeNodeGraph() [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::NodeNodeGraph ( const ElemNodeIdView &  arg_elem_node_id,
const unsigned  arg_node_count,
Times results 
)
inline

Definition at line 147 of file view/fenl_functors.hpp.

Member Function Documentation

◆ operator()() [1/6]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::operator() ( const TagFillNodeSet ,
unsigned  ielem,
unsigned &  count 
) const
inline

Definition at line 257 of file fenl_functors.hpp.

◆ fill_graph_entries() [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::fill_graph_entries ( const unsigned  iset) const
inline

Definition at line 294 of file fenl_functors.hpp.

◆ sort_graph_entries() [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::sort_graph_entries ( const unsigned  irow) const
inline

Definition at line 318 of file fenl_functors.hpp.

◆ fill_elem_graph_map() [1/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::fill_elem_graph_map ( const unsigned  ielem) const
inline

Definition at line 333 of file fenl_functors.hpp.

◆ operator()() [2/6]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::operator() ( const unsigned  iwork) const
inline

Definition at line 362 of file fenl_functors.hpp.

◆ operator()() [3/6]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::operator() ( const unsigned  irow,
unsigned &  update,
const bool  final 
) const
inline

Definition at line 386 of file fenl_functors.hpp.

◆ init() [1/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::init ( const TagFillNodeSet ,
unsigned &  update 
) const
inline

Definition at line 403 of file fenl_functors.hpp.

◆ join() [1/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::join ( const TagFillNodeSet ,
volatile unsigned &  update,
volatile const unsigned &  input 
) const
inline

Definition at line 406 of file fenl_functors.hpp.

◆ init() [2/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::init ( unsigned &  update) const
inline

Definition at line 412 of file fenl_functors.hpp.

◆ join() [2/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::join ( volatile unsigned &  update,
volatile const unsigned &  input 
) const
inline

Definition at line 415 of file fenl_functors.hpp.

◆ operator()() [4/6]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::operator() ( const TagFillNodeSet ,
unsigned  ielem,
unsigned &  count 
) const
inline

Definition at line 257 of file view/fenl_functors.hpp.

◆ fill_graph_entries() [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::fill_graph_entries ( const unsigned  iset) const
inline

Definition at line 294 of file view/fenl_functors.hpp.

◆ sort_graph_entries() [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::sort_graph_entries ( const unsigned  irow) const
inline

Definition at line 318 of file view/fenl_functors.hpp.

◆ fill_elem_graph_map() [2/2]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::fill_elem_graph_map ( const unsigned  ielem) const
inline

Definition at line 333 of file view/fenl_functors.hpp.

◆ operator()() [5/6]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::operator() ( const unsigned  iwork) const
inline

Definition at line 362 of file view/fenl_functors.hpp.

◆ operator()() [6/6]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::operator() ( const unsigned  irow,
unsigned &  update,
const bool  final 
) const
inline

Definition at line 386 of file view/fenl_functors.hpp.

◆ init() [3/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::init ( const TagFillNodeSet ,
unsigned &  update 
) const
inline

Definition at line 403 of file view/fenl_functors.hpp.

◆ join() [3/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::join ( const TagFillNodeSet ,
volatile unsigned &  update,
volatile const unsigned &  input 
) const
inline

Definition at line 406 of file view/fenl_functors.hpp.

◆ init() [4/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::init ( unsigned &  update) const
inline

Definition at line 412 of file view/fenl_functors.hpp.

◆ join() [4/4]

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
KOKKOS_INLINE_FUNCTION void Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::join ( volatile unsigned &  update,
volatile const unsigned &  input 
) const
inline

Definition at line 415 of file view/fenl_functors.hpp.

Member Data Documentation

◆ node_count

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
const unsigned Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::node_count
private

Definition at line 124 of file fenl_functors.hpp.

◆ elem_node_id

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
const ElemNodeIdView Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::elem_node_id
private

Definition at line 125 of file fenl_functors.hpp.

◆ row_total

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
UnsignedValue Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::row_total
private

Definition at line 126 of file fenl_functors.hpp.

◆ row_count

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
RowMapType Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::row_count
private

Definition at line 127 of file fenl_functors.hpp.

◆ row_map

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
RowMapType Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::row_map
private

Definition at line 128 of file fenl_functors.hpp.

◆ node_node_set

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
SetType Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::node_node_set
private

Definition at line 129 of file fenl_functors.hpp.

◆ phase

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
PhaseType Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::phase
private

Definition at line 130 of file fenl_functors.hpp.

◆ graph

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
CrsGraphType Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::graph

Definition at line 134 of file fenl_functors.hpp.

◆ elem_graph

template<class ElemNodeIdView, class CrsGraphType, unsigned ElemNode>
ElemGraphType Kokkos::Example::FENL::NodeNodeGraph< ElemNodeIdView, CrsGraphType, ElemNode >::elem_graph

Definition at line 135 of file fenl_functors.hpp.


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