1#ifndef __UTILS_SERDES_HPP__
2#define __UTILS_SERDES_HPP__
6#include <mc/traits.hpp>
26 static constexpr std::string_view
name =
"simple";
31 KOKKOS_INLINE_FUNCTION
static void
39 KOKKOS_INLINE_FUNCTION
static double
40 mass([[maybe_unused]] std::size_t idx,
49 [[maybe_unused]] std::size_t idx,
57 KOKKOS_INLINE_FUNCTION
static void
59 [[maybe_unused]] std::size_t idx,
60 [[maybe_unused]] std::size_t idx2,
Model type.
Definition traits.hpp:135
Status
Definition alias.hpp:57
@ Idle
Definition alias.hpp:58
gen_pool_type< Kokkos::DefaultExecutionSpace > pool_type
Definition alias.hpp:38
Kokkos::Subview< KernelConcentrationType, int, decltype(Kokkos::ALL)> LocalConcentration
Definition alias.hpp:95
Kokkos::View< F *[Nd], Kokkos::LayoutRight > ParticlesModel
Definition alias.hpp:18
Definition serdes_class.hpp:11
static constexpr std::string_view name
Definition serdes_class.hpp:26
static constexpr std::size_t n_var
Definition serdes_class.hpp:25
particle_var
Definition serdes_class.hpp:18
@ a
Definition serdes_class.hpp:19
@ COUNT
Definition serdes_class.hpp:22
@ c
Definition serdes_class.hpp:21
@ b
Definition serdes_class.hpp:20
static KOKKOS_INLINE_FUNCTION void division(const MC::pool_type &random_pool, std::size_t idx, std::size_t idx2, const SelfParticle &arr, const SelfParticle &buffer_arr)
Definition serdes_class.hpp:58
static KOKKOS_INLINE_FUNCTION MC::Status update(const MC::pool_type &random_pool, FloatType d_t, std::size_t idx, const SelfParticle &arr, const MC::LocalConcentration &c)
Definition serdes_class.hpp:47
std::nullopt_t Config
Definition serdes_class.hpp:15
static MC::ContribIndexBounds get_bounds()
Definition serdes_class.hpp:66
static KOKKOS_INLINE_FUNCTION void init(const MC::pool_type &random_pool, std::size_t idx, const SelfParticle &arr)
Definition serdes_class.hpp:32
SerdeModel Self
Definition serdes_class.hpp:13
float FloatType
Definition serdes_class.hpp:14
MC::ParticlesModel< Self::n_var, Self::FloatType > SelfParticle
Definition serdes_class.hpp:27
std::true_type uniform_weight
Definition serdes_class.hpp:12
static KOKKOS_INLINE_FUNCTION double mass(std::size_t idx, const SelfParticle &arr)
Definition serdes_class.hpp:40
MODEL_CONSTANT FloatType a_i
Definition serdes_class.hpp:29