20template<
class Tvec,
class Tgr
idVec>
24 using namespace shamrock::patch;
27 std::unique_ptr<sycl::buffer<u64>> out_buf_morton;
28 std::unique_ptr<sycl::buffer<u32>> out_buf_particle_index_map;
31 shamsys::instance::get_compute_scheduler_ptr(),
32 scheduler().get_sim_box().
template patch_coord_to_domain<TgridVec>(cur_p),
33 pdat.get_field<TgridVec>(0).get_buf(),
36 out_buf_particle_index_map);
40 u32 pre_merge_obj_cnt = pdat.get_obj_cnt();
42 pdat.
index_remap(*out_buf_particle_index_map, pre_merge_obj_cnt);
Utility to build morton codes for the radix tree.
std::uint32_t u32
32 bit unsigned integer
Helper class to build morton codes.
PatchDataLayer container class, the layout is described in patchdata_layout.
void index_remap(sycl::buffer< u32 > &index_map, u32 len)
this function remaps the patchdatafield like so val[id] = val[index_map[id]] This function can be use...
Patch object that contain generic patch information.