core 1.5.0
Shared MPI block decomposition, asynchronous ghost-layer exchange, SDF geometry, load balancing (header-only C++20)
Loading...
Searching...
No Matches
device_scene.hpp File Reference
#include <Kokkos_Core.hpp>
#include <stdexcept>
#include <vector>
#include "peclet/core/geom/scene_builder.hpp"
#include "peclet/core/geom/scene_query.hpp"

Go to the source code of this file.

Classes

class  peclet::core::geom::DeviceScene< Real, MemSpace >
 Owning device-resident scene. Copyable (Views are shared_ptr-like); view() is cheap. More...
 
class  peclet::core::geom::SceneQueryDevice< Real, MemSpace >
 Owns everything a SceneQueryView needs on ONE memory space: the DeviceScene, the extracted sphere-union arrays when the scene is a plain sphere union (mode selected ONCE, here), the candidate-grid CSR, and the periodicity. More...
 

Namespaces

namespace  peclet
 
namespace  peclet::core
 
namespace  peclet::core::geom
 

Functions

template<class ExecSpace , class Real , class PtsView , class OutView >
void peclet::core::geom::evalSphereUnionPoints (const ExecSpace &space, const SphereUnionView< Real > &u, const PeriodicBox< Real > &box, const CandidateGridView< Real > &grid, const PtsView &pts, const OutView &out)
 Batched sphere-union evaluation, device: pts is (N,3), out is (N), any layouts/memory spaces reachable from ExecSpace.
 
template<class Real >
void peclet::core::geom::evalSphereUnionPointsHost (const SphereUnionView< Real > &u, const PeriodicBox< Real > &box, const CandidateGridView< Real > &grid, const Real *pts, std::size_t n, Real *out)
 Host-pointer form (the oracle / today's single-threaded builders): plain loop, no Kokkos types in the signature, same per-point expressions.
 
template<class ExecSpace , class Real , class PtsView , class OutView >
void peclet::core::geom::evalScenePoints (const ExecSpace &space, const SceneView< Real > &sc, const PtsView &pts, const OutView &out)
 Batched general-scene evaluation (union over instances), device.
 
template<class Real >
void peclet::core::geom::evalScenePointsHost (const SceneView< Real > &sc, const Real *pts, std::size_t n, Real *out)
 
template<class ExecSpace , class Real , class PtsView , class OutView >
void peclet::core::geom::evalQueryPoints (const ExecSpace &space, const SceneQueryView< Real > &q, const PtsView &pts, const OutView &out)
 Batched driver over a SceneQueryView (the form the restructured AMR builders and flow's sampling kernels consume).