Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
mundy::search::ArborX1dNeighborList< MemorySpace > Class Template Reference

ArborX neighbor list with Cabana-style compressed 1D storage.

#include <ArborX1dNeighborList.hpp>

Inheritance diagram for mundy::search::ArborX1dNeighborList< MemorySpace >:
[legend]

Public Types

Aliases
using memory_space = MemorySpace
using execution_space = typename MemorySpace::execution_space
using size_type = size_t
using source_index_type = size_type
using entity_view_t = Kokkos::View<stk::mesh::Entity*, memory_space>
using source_index_view_t = Kokkos::View<source_index_type*, memory_space>
using offset_view_t = Kokkos::View<size_type*, memory_space>

Public Member Functions

Constructors
 ArborX1dNeighborList ()=default
 Default constructor.
 ArborX1dNeighborList (const ArborX1dNeighborList &)=default
 Default copy and move constructors/operators.
 ArborX1dNeighborList (ArborX1dNeighborList &&)=default
ArborX1dNeighborListoperator= (const ArborX1dNeighborList &)=default
ArborX1dNeighborListoperator= (ArborX1dNeighborList &&)=default
 ArborX1dNeighborList (const stk::mesh::Selector &target_selector, const stk::mesh::Selector &source_selector, const entity_view_t &target_entities, const entity_view_t &source_entities, const source_index_view_t &source_indices, const offset_view_t &offsets)
 Construct a list from already-built compressed storage.
Accessors
size_type num_targets () const noexcept
 Get the number of enumerable targets.
size_type num_sources () const noexcept
 Get the number of enumerable sources.
const stk::mesh::Selector & target_selector () const noexcept
 Get the selector defining the target chunk.
const stk::mesh::Selector & source_selector () const noexcept
 Get the selector defining the source chunk.
size_type size () const noexcept
 Get the total number of stored neighbor pairs.
size_type num_neighbors (size_type target_index) const
 Get the number of neighbors for a target ordinal.
source_index_type source_index (size_type target_index, size_type neighbor_ordinal) const
 Get the source ordinal for a target and neighbor ordinal.
stk::mesh::Entity get_neighbor (size_type target_index, size_type neighbor_ordinal) const
 Get the neighbor entity for a target and neighbor ordinal.
stk::mesh::Entity target_entity (size_type target_index) const
 Get the target entity for a target ordinal.
stk::mesh::Entity source_entity (source_index_type source_index) const
 Get the source entity for a source ordinal.
entity_view_t target_entities () const noexcept
 Get the raw target entity view.
entity_view_t source_entities () const noexcept
 Get the raw source entity view.
source_index_view_t source_indices () const noexcept
 Get the raw source-index view.
offset_view_t offsets () const noexcept
 Get the raw target-offset view.

Member Typedef Documentation

◆ memory_space

template<typename MemorySpace = stk::ngp::MemSpace>
using mundy::search::ArborX1dNeighborList< MemorySpace >::memory_space = MemorySpace

◆ execution_space

template<typename MemorySpace = stk::ngp::MemSpace>
using mundy::search::ArborX1dNeighborList< MemorySpace >::execution_space = typename MemorySpace::execution_space

◆ size_type

template<typename MemorySpace = stk::ngp::MemSpace>
using mundy::search::ArborX1dNeighborList< MemorySpace >::size_type = size_t

◆ source_index_type

template<typename MemorySpace = stk::ngp::MemSpace>
using mundy::search::ArborX1dNeighborList< MemorySpace >::source_index_type = size_type

◆ entity_view_t

template<typename MemorySpace = stk::ngp::MemSpace>
using mundy::search::ArborX1dNeighborList< MemorySpace >::entity_view_t = Kokkos::View<stk::mesh::Entity*, memory_space>

◆ source_index_view_t

template<typename MemorySpace = stk::ngp::MemSpace>
using mundy::search::ArborX1dNeighborList< MemorySpace >::source_index_view_t = Kokkos::View<source_index_type*, memory_space>

◆ offset_view_t

template<typename MemorySpace = stk::ngp::MemSpace>
using mundy::search::ArborX1dNeighborList< MemorySpace >::offset_view_t = Kokkos::View<size_type*, memory_space>

Constructor & Destructor Documentation

◆ ArborX1dNeighborList() [1/4]

template<typename MemorySpace = stk::ngp::MemSpace>
mundy::search::ArborX1dNeighborList< MemorySpace >::ArborX1dNeighborList ( )
default

◆ ArborX1dNeighborList() [2/4]

template<typename MemorySpace = stk::ngp::MemSpace>
mundy::search::ArborX1dNeighborList< MemorySpace >::ArborX1dNeighborList ( const ArborX1dNeighborList< MemorySpace > & )
default

◆ ArborX1dNeighborList() [3/4]

template<typename MemorySpace = stk::ngp::MemSpace>
mundy::search::ArborX1dNeighborList< MemorySpace >::ArborX1dNeighborList ( ArborX1dNeighborList< MemorySpace > && )
default

◆ ArborX1dNeighborList() [4/4]

template<typename MemorySpace = stk::ngp::MemSpace>
mundy::search::ArborX1dNeighborList< MemorySpace >::ArborX1dNeighborList ( const stk::mesh::Selector & target_selector,
const stk::mesh::Selector & source_selector,
const entity_view_t & target_entities,
const entity_view_t & source_entities,
const source_index_view_t & source_indices,
const offset_view_t & offsets )
inline
Parameters
target_selector[in] Selector that defines the target chunk; stored for later inspection.
source_selector[in] Selector that defines the source chunk; stored for later inspection.
target_entities[in] Target entities indexed by dense target ordinal.
source_entities[in] Source entities indexed by dense source ordinal.
source_indices[in] Dense source ordinal for every stored pair.
offsets[in] Target offsets into source_indices; extent must be num_targets + 1.

Member Function Documentation

◆ operator=() [1/2]

template<typename MemorySpace = stk::ngp::MemSpace>
ArborX1dNeighborList & mundy::search::ArborX1dNeighborList< MemorySpace >::operator= ( const ArborX1dNeighborList< MemorySpace > & )
default

◆ operator=() [2/2]

template<typename MemorySpace = stk::ngp::MemSpace>
ArborX1dNeighborList & mundy::search::ArborX1dNeighborList< MemorySpace >::operator= ( ArborX1dNeighborList< MemorySpace > && )
default

◆ num_targets()

template<typename MemorySpace = stk::ngp::MemSpace>
size_type mundy::search::ArborX1dNeighborList< MemorySpace >::num_targets ( ) const
inlinenoexcept

◆ num_sources()

template<typename MemorySpace = stk::ngp::MemSpace>
size_type mundy::search::ArborX1dNeighborList< MemorySpace >::num_sources ( ) const
inlinenoexcept

◆ target_selector()

template<typename MemorySpace = stk::ngp::MemSpace>
const stk::mesh::Selector & mundy::search::ArborX1dNeighborList< MemorySpace >::target_selector ( ) const
inlinenoexcept

◆ source_selector()

template<typename MemorySpace = stk::ngp::MemSpace>
const stk::mesh::Selector & mundy::search::ArborX1dNeighborList< MemorySpace >::source_selector ( ) const
inlinenoexcept

◆ size()

template<typename MemorySpace = stk::ngp::MemSpace>
size_type mundy::search::ArborX1dNeighborList< MemorySpace >::size ( ) const
inlinenoexcept

◆ num_neighbors()

template<typename MemorySpace = stk::ngp::MemSpace>
size_type mundy::search::ArborX1dNeighborList< MemorySpace >::num_neighbors ( size_type target_index) const
inline
Parameters
target_index[in] Dense target ordinal.

◆ source_index()

template<typename MemorySpace = stk::ngp::MemSpace>
source_index_type mundy::search::ArborX1dNeighborList< MemorySpace >::source_index ( size_type target_index,
size_type neighbor_ordinal ) const
inline
Parameters
target_index[in] Dense target ordinal.
neighbor_ordinal[in] Ordinal in the target's neighbor range.

◆ get_neighbor()

template<typename MemorySpace = stk::ngp::MemSpace>
stk::mesh::Entity mundy::search::ArborX1dNeighborList< MemorySpace >::get_neighbor ( size_type target_index,
size_type neighbor_ordinal ) const
inline
Parameters
target_index[in] Dense target ordinal.
neighbor_ordinal[in] Ordinal in the target's neighbor range.

◆ target_entity()

template<typename MemorySpace = stk::ngp::MemSpace>
stk::mesh::Entity mundy::search::ArborX1dNeighborList< MemorySpace >::target_entity ( size_type target_index) const
inline
Parameters
target_index[in] Dense target ordinal.

◆ source_entity()

template<typename MemorySpace = stk::ngp::MemSpace>
stk::mesh::Entity mundy::search::ArborX1dNeighborList< MemorySpace >::source_entity ( source_index_type source_index) const
inline
Parameters
source_index[in] Dense source ordinal.

◆ target_entities()

template<typename MemorySpace = stk::ngp::MemSpace>
entity_view_t mundy::search::ArborX1dNeighborList< MemorySpace >::target_entities ( ) const
inlinenoexcept

◆ source_entities()

template<typename MemorySpace = stk::ngp::MemSpace>
entity_view_t mundy::search::ArborX1dNeighborList< MemorySpace >::source_entities ( ) const
inlinenoexcept

◆ source_indices()

template<typename MemorySpace = stk::ngp::MemSpace>
source_index_view_t mundy::search::ArborX1dNeighborList< MemorySpace >::source_indices ( ) const
inlinenoexcept

◆ offsets()

template<typename MemorySpace = stk::ngp::MemSpace>
offset_view_t mundy::search::ArborX1dNeighborList< MemorySpace >::offsets ( ) const
inlinenoexcept