peclet.voro 1.0.0
Device-native moving-particle Voronoi dynamics
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
tessellation_view.hpp File Reference

Published, read-only device data layer for the tessellation (migration §2.1, §3). More...

#include <cmath>
#include <cstdint>
#include <Kokkos_Core.hpp>
#include <map>
#include <vector>
#include "peclet/core/common/view.hpp"
Include dependency graph for tessellation_view.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  peclet::voro::HostTessellation< Real >
 Host-side CSR buffers — the conversion target and the round-trip oracle. More...
 
struct  peclet::voro::TessellationView< Real >
 

Namespaces

namespace  peclet
 
namespace  peclet::voro
 
namespace  peclet::voro::detail
 

Typedefs

using peclet::voro::gid_t = std::int32_t
 

Functions

gid_t peclet::voro::toGid (std::uint32_t id)
 
template<class Real >
std::vector< int > peclet::voro::buildReciprocalMap (const HostTessellation< Real > &t)
 
template<class T >
Kokkos::View< T *, peclet::core::MemSpace > peclet::voro::detail::viewFrom (const std::vector< T > &h, const std::string &label)
 
template<class Real >
TessellationView< Real > peclet::voro::upload (const HostTessellation< Real > &h)
 Upload a HostTessellation to device Views.
 

Detailed Description

Published, read-only device data layer for the tessellation (migration §2.1, §3).

This is the stable boundary between the tessellation engine and its consumers (physics, microstructure analysis, ...). Consumers parallel_for over a data-oriented CSR view of per-cell / per-facet quantities and never touch the half-edge internals — which is what keeps the engine reusable (plan §1).

Pieces:

Storage is an exclusive-scan facet offset (mean cell ~15 facets, so CSR, not the 128 cap) plus packed facet arrays. Per-facet 3-vectors are stored flat (3*f + c) so the layout is unambiguous across backends; coalescing layout is retuned in Phase 7.

Requires Kokkos; only included by the device build (-DVORFLOW_KOKKOS=ON). This is a core header: it must never include a physics header (see §1).