peclet-amr 0.2.0
Block-local-Morton AMR octree + collocated cut-cell Navier–Stokes solver (header-only C++20, Kokkos + MPI)
Loading...
Searching...
No Matches
peclet::amr::SeamReconHost Struct Reference

Host-side seam-reconstruction tables (docs/amr_cf_convective.md §5.2), built once per AmrFlow::setSolid by buildSeamRecon and uploaded into FaceGeom (face_geom.hpp), where the two advective kernels read them through advect_recon.hpp. More...

#include <seam_recon.hpp>

Public Member Functions

Index numDescriptors () const
 Number of descriptors, i.e. of face slots that take the seam path (seam[slot] >= 0).
 

Public Attributes

std::vector< Index > seam
 per face slot: descriptor id, −1 = plain slot
 
std::vector< Index > sampI
 per descriptor: sample record when i is the COARSE cell, else −1
 
std::vector< Index > sampJ
 per descriptor: sample record when j is the COARSE cell, else −1
 
std::vector< Index > uuRecI
 per descriptor: upstream-probe record for up == i, else −1
 
std::vector< Index > uuRecJ
 per descriptor: upstream-probe record for up == j, else −1
 
std::vector< double > d1I
 per descriptor: half width of i along the face axis (physical)
 
std::vector< double > d1J
 per descriptor: half width of j along the face axis (physical)
 
std::vector< Index > recStart
 record CSR offsets, size nRec+1
 
std::vector< double > recDist
 per record: dUU for UPSTREAM use (unused as a φ_U* sample)
 
std::vector< Index > recCell
 record entries: cell slot
 
std::vector< double > recW
 record entries: weight
 
Index numSampleRecords = 0
 diagnostics: how many of the records are sample records
 
Index numLayerRecords = 0
 diagnostics: how many are layer records
 

Detailed Description

Host-side seam-reconstruction tables (docs/amr_cf_convective.md §5.2), built once per AmrFlow::setSolid by buildSeamRecon and uploaded into FaceGeom (face_geom.hpp), where the two advective kernels read them through advect_recon.hpp.

Indexed three ways: per face SLOT of the forEachFaceFull CSR (seam), per DESCRIPTOR (the samp*, uuRec*, d1* arrays, one entry per slot whose seam >= 0), and per RECORD (the rec* CSR). Cell indices are slots of the flow's extended layout (local rows, then ghost slots under MPI). All vectors are empty when no tables were built (CfScheme::standard); Flow.diagnostics.face_topology() returns them verbatim.

Definition at line 58 of file seam_recon.hpp.

Member Function Documentation

◆ numDescriptors()

Index peclet::amr::SeamReconHost::numDescriptors ( ) const
inline

Number of descriptors, i.e. of face slots that take the seam path (seam[slot] >= 0).

Definition at line 73 of file seam_recon.hpp.

References sampI, and peclet::amr::transferFieldGradients().

Member Data Documentation

◆ seam

std::vector<Index> peclet::amr::SeamReconHost::seam

per face slot: descriptor id, −1 = plain slot

Definition at line 59 of file seam_recon.hpp.

◆ sampI

std::vector<Index> peclet::amr::SeamReconHost::sampI

per descriptor: sample record when i is the COARSE cell, else −1

Definition at line 60 of file seam_recon.hpp.

Referenced by numDescriptors().

◆ sampJ

std::vector<Index> peclet::amr::SeamReconHost::sampJ

per descriptor: sample record when j is the COARSE cell, else −1

Definition at line 61 of file seam_recon.hpp.

◆ uuRecI

std::vector<Index> peclet::amr::SeamReconHost::uuRecI

per descriptor: upstream-probe record for up == i, else −1

Definition at line 62 of file seam_recon.hpp.

◆ uuRecJ

std::vector<Index> peclet::amr::SeamReconHost::uuRecJ

per descriptor: upstream-probe record for up == j, else −1

Definition at line 63 of file seam_recon.hpp.

◆ d1I

std::vector<double> peclet::amr::SeamReconHost::d1I

per descriptor: half width of i along the face axis (physical)

Definition at line 64 of file seam_recon.hpp.

◆ d1J

std::vector<double> peclet::amr::SeamReconHost::d1J

per descriptor: half width of j along the face axis (physical)

Definition at line 65 of file seam_recon.hpp.

◆ recStart

std::vector<Index> peclet::amr::SeamReconHost::recStart

record CSR offsets, size nRec+1

Definition at line 66 of file seam_recon.hpp.

◆ recDist

std::vector<double> peclet::amr::SeamReconHost::recDist

per record: dUU for UPSTREAM use (unused as a φ_U* sample)

Definition at line 67 of file seam_recon.hpp.

◆ recCell

std::vector<Index> peclet::amr::SeamReconHost::recCell

record entries: cell slot

Definition at line 68 of file seam_recon.hpp.

◆ recW

std::vector<double> peclet::amr::SeamReconHost::recW

record entries: weight

Definition at line 69 of file seam_recon.hpp.

◆ numSampleRecords

Index peclet::amr::SeamReconHost::numSampleRecords = 0

diagnostics: how many of the records are sample records

Definition at line 70 of file seam_recon.hpp.

◆ numLayerRecords

Index peclet::amr::SeamReconHost::numLayerRecords = 0

diagnostics: how many are layer records

Definition at line 71 of file seam_recon.hpp.


The documentation for this struct was generated from the following file: