Linked cell list binning (spatial sorting) and neighbor iteration. More...
#include <Cabana_NeighborList.hpp>
#include <Cabana_Slice.hpp>
#include <Cabana_Sort.hpp>
#include <Cabana_Utils.hpp>
#include <impl/Cabana_CartesianGrid.hpp>
#include <Kokkos_Core.hpp>
#include <Kokkos_Profiling_ScopedRegion.hpp>
#include <Kokkos_ScatterView.hpp>
#include <cassert>
Go to the source code of this file.
Classes | |
struct | Cabana::LinkedCellStencil< Scalar > |
Stencil of cells surrounding each cell. More... | |
class | Cabana::LinkedCellList< MemorySpace, Scalar > |
Data describing the bin sizes and offsets resulting from a binning operation on a 3d regular Cartesian grid. More... | |
struct | Cabana::is_linked_cell_list< T > |
LinkedCellList static type checker. More... | |
class | Cabana::NeighborList< LinkedCellList< MemorySpace, Scalar > > |
LinkedCellList NeighborList interface. More... | |
Namespaces | |
namespace | Cabana |
Core: particle data structures and algorithms. | |
Functions | |
template<class MemorySpace, class PositionType, class Scalar> | |
auto | Cabana::createLinkedCellList (PositionType positions, const Scalar grid_delta[3], const Scalar grid_min[3], const Scalar grid_max[3]) |
Creation function for linked cell list. | |
template<class MemorySpace, class PositionType, class Scalar> | |
auto | Cabana::createLinkedCellList (PositionType positions, const std::size_t begin, const std::size_t end, const Scalar grid_delta[3], const Scalar grid_min[3], const Scalar grid_max[3]) |
Creation function for linked cell list with partial range. | |
template<class MemorySpace, class PositionType, class Scalar> | |
auto | Cabana::createLinkedCellList (PositionType positions, const Scalar grid_delta[3], const Scalar grid_min[3], const Scalar grid_max[3], const Scalar neighborhood_radius, const Scalar cell_size_ratio=1.0) |
Creation function for linked cell list with custom cutoff radius and cell ratio. | |
template<class MemorySpace, class PositionType, class Scalar> | |
auto | Cabana::createLinkedCellList (PositionType positions, const std::size_t begin, const std::size_t end, const Scalar grid_delta[3], const Scalar grid_min[3], const Scalar grid_max[3], const Scalar neighborhood_radius, const Scalar cell_size_ratio=1.0) |
Creation function for linked cell list with partial range and custom cutoff radius and/or cell ratio. | |
template<class LinkedCellListType, class PositionType> | |
void | Cabana::permute (LinkedCellListType &linked_cell_list, PositionType &positions, typename std::enable_if<(is_linked_cell_list< LinkedCellListType >::value &&(is_aosoa< PositionType >::value||is_slice< PositionType >::value||Kokkos::is_view< PositionType >::value)), int >::type *=0) |
Given a linked cell list permute positions. | |
Linked cell list binning (spatial sorting) and neighbor iteration.