peclet-dem
Performance-portable XPBD Discrete Element Method (Kokkos + ArborX)
Loading...
Searching...
No Matches
output_sdf.hpp File Reference

dem — portable (Kokkos) SDF-grid reconstruction: the get_sdf_grid pipeline. More...

#include <Kokkos_Core.hpp>
#include <vector>
#include "dem_portable.hpp"
#include "narrowphase.hpp"

Go to the source code of this file.

Namespaces

namespace  peclet
 
namespace  peclet::dem
 

Functions

std::vector< float > peclet::dem::generateSdfKokkos (int rx, int ry, int rz, F3 dmin, F3 dmax, int numReal, PosView pos, QuatView quat, ScalarF scale, ScalarI shapeId, Kokkos::View< const ShapeDesc *, CpMem > shapes, bool px, bool py, bool pz, GridView sdfGrid=GridView{})
 

Detailed Description

dem — portable (Kokkos) SDF-grid reconstruction: the get_sdf_grid pipeline.

Kokkos port of output_sdf.cu (init_grid + splat_particles + Jacobi-Eikonal solve). For each grid voxel: (1) init to +inf (100), (2) SPLAT — every particle writes the EXACT transformed analytic SDF over its AABB band via atomic-min (and marks those cells fixed), (3) EIKONAL — a Jacobi fast-iterative-method propagates the (positive) distance into the far field, periodic-wrapped. A faithful copy of the CUDA kernels (same band, same bounding radius, same quadratic solve, same max(res)*4 iteration cap), over the Kokkos particle SoA + the ported analytic SDFs. Deterministic (atomic-min + Jacobi) -> matches CUDA for the same particle configuration. Runs on any Kokkos backend.

Definition in file output_sdf.hpp.