34 class ParticleReordering {
36 using Tscal = shambase::VecComponent<Tvec>;
37 static constexpr u32 dim = shambase::VectorProperties<Tvec>::dimension;
38 using Kernel = SPHKernel<Tscal>;
44 Config &solver_config;
47 ParticleReordering(
ShamrockCtx &context, Config &solver_config, Storage &storage)
48 : context(context), solver_config(solver_config), storage(storage) {}
void reorder_particles()
Reorders particles by Morton code for improved memory access patterns.
T & get_check_ref(const std::unique_ptr< T > &ptr, SourceLocation loc=SourceLocation())
Takes a std::unique_ptr and returns a reference to the object it holds. It throws a std::runtime_erro...