MRMD 0.4.0
Multi Resolution Molecular Dynamics
Loading...
Searching...
No Matches
datatypes.hpp File Reference
#include <Cabana_LinkedCellList.hpp>
#include <Cabana_VerletList.hpp>
#include <Kokkos_Array.hpp>
#include <Kokkos_Core.hpp>
#include <Kokkos_ScatterView.hpp>
#include <cstdint>
#include "cmake.hpp"

Go to the source code of this file.

Namespaces

namespace  mrmd
 

Concepts

concept  mrmd::OneCoordinatePredicate
 Concept for predicates that take one coordinate as input, e.g.
 
concept  mrmd::OnePositionPredicate
 Concept for predicates that take one position as input, e.g.
 
concept  mrmd::TwoPositionsPredicate
 Concept for predicates that take two positions as input, e.g.
 

Typedefs

using mrmd::idx_t = int64_t
 
using mrmd::real_t = double
 
using mrmd::Point3D = Kokkos::Array< real_t, 3 >
 
using mrmd::Vector3D = Kokkos::Array< real_t, 3 >
 
using mrmd::IndexView = Kokkos::View< idx_t * >
 
using mrmd::IntView = Kokkos::View< idx_t * >
 
using mrmd::IntScatterView = Kokkos::Experimental::ScatterView< idx_t * >
 
using mrmd::PairView = Kokkos::View< idx_t *[2]>
 
using mrmd::SingleView = Kokkos::View< real_t >
 
using mrmd::SingleScatterView = Kokkos::Experimental::ScatterView< real_t >
 
using mrmd::ScalarView = Kokkos::View< real_t * >
 
using mrmd::ScalarScatterView = Kokkos::Experimental::ScatterView< real_t * >
 
using mrmd::MultiView = Kokkos::View< real_t ** >
 
using mrmd::MultiScatterView = Kokkos::Experimental::ScatterView< real_t ** >
 
using mrmd::VectorView = Kokkos::View< real_t *[3]>
 
using mrmd::VectorScatterView = Kokkos::Experimental::ScatterView< real_t *[3]>
 
using mrmd::HostType = Kokkos::Device< Kokkos::DefaultHostExecutionSpace, Kokkos::DefaultHostExecutionSpace::memory_space >
 
using mrmd::DeviceType = Kokkos::Device< Kokkos::DefaultExecutionSpace, Kokkos::DefaultExecutionSpace::memory_space >
 
using mrmd::LinkedCellList = Cabana::LinkedCellList< typename DeviceType::memory_space >
 
using mrmd::VerletList = Cabana::VerletList< Kokkos::DefaultExecutionSpace::memory_space, Cabana::HalfNeighborTag, Cabana::VerletLayout2D, Cabana::TeamOpTag >
 
using mrmd::HalfVerletList = Cabana::VerletList< Kokkos::DefaultExecutionSpace::memory_space, Cabana::HalfNeighborTag, Cabana::VerletLayout2D, Cabana::TeamOpTag >
 
using mrmd::FullVerletList = Cabana::VerletList< Kokkos::DefaultExecutionSpace::memory_space, Cabana::FullNeighborTag, Cabana::VerletLayout2D, Cabana::TeamOpTag >
 
using mrmd::NeighborList = Cabana::NeighborList< HalfVerletList >
 
using mrmd::HalfNeighborList = Cabana::NeighborList< HalfVerletList >
 
using mrmd::FullNeighborList = Cabana::NeighborList< FullVerletList >
 

Enumerations

enum class  mrmd::AXIS : idx_t { mrmd::X = 0 , mrmd::Y = 1 , mrmd::Z = 2 }
 

Functions

template<typename T >
KOKKOS_INLINE_FUNCTION constexpr unsigned int mrmd::uint_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr uint8_t mrmd::uint8_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr uint16_t mrmd::uint16_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr uint32_t mrmd::uint32_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr uint64_t mrmd::uint64_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr int mrmd::int_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr int8_t mrmd::int8_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr int16_t mrmd::int16_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr int32_t mrmd::int32_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr int64_t mrmd::int64_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr idx_t mrmd::idx_c (const T &val)
 
KOKKOS_INLINE_FUNCTION constexpr real_t mrmd::operator""_r (const long double val)
 
KOKKOS_INLINE_FUNCTION constexpr real_t mrmd::operator""_r (const unsigned long long val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr real_t mrmd::real_c (T t)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr double mrmd::double_c (const T &val)
 
template<typename T >
KOKKOS_INLINE_FUNCTION constexpr float mrmd::float_c (const T &val)
 
template<typename FLOAT >
KOKKOS_INLINE_FUNCTION bool mrmd::isFloatEqual (const FLOAT &lhs, const FLOAT &rhs, const FLOAT &epsilon=std::numeric_limits< FLOAT >::epsilon())
 
template<class Enum >
KOKKOS_INLINE_FUNCTION constexpr std::underlying_type_t< Enum > mrmd::to_underlying (Enum e) noexcept