|
peclet-amr 0.2.0
Block-local-Morton AMR octree + collocated cut-cell Navier–Stokes solver (header-only C++20, Kokkos + MPI)
|
The face CSR topology faceField() is indexed by, copied to host: start the per-cell row offsets (size n+1), then per (sub)face the neighbour leaf, the face axis (0/1/2) and the direction (+1/-1, pointing from the owning cell to the neighbour).
More...
#include <flow.hpp>
Public Attributes | |
| std::vector< Index > | start |
| std::vector< Index > | nbr |
| std::vector< Index > | upupI |
| std::vector< Index > | upupJ |
| std::vector< int > | axis |
| std::vector< int > | dir |
| std::vector< double > | rawArea |
| std::vector< double > | dist |
| std::vector< double > | alpha |
| std::vector< double > | center |
World centre of EVERY slot (local leaves then ghosts, size nExt): the only way a caller can say what cell a ghost index in nbr / recCell is, and so the only way the record tables can be compared across decompositions (gate WO1c). | |
Seam reconstruction | |
The | |
| std::vector< Index > | seam |
| std::vector< Index > | sampI |
| std::vector< Index > | sampJ |
| std::vector< Index > | uuRecI |
| std::vector< Index > | uuRecJ |
| std::vector< Index > | recStart |
| std::vector< Index > | recCell |
| std::vector< double > | d1I |
| std::vector< double > | d1J |
| std::vector< double > | recDist |
| std::vector< double > | recW |
The face CSR topology faceField() is indexed by, copied to host: start the per-cell row offsets (size n+1), then per (sub)face the neighbour leaf, the face axis (0/1/2) and the direction (+1/-1, pointing from the owning cell to the neighbour).
A 2:1 sub-face is one whose two incident leaves sit at different octree levels, which the caller reads off the octree's own levels(). Under MPI a neighbour index >= numLeaves() is a ghost slot. rawArea is the face area the ADVECTIVE flux uses (at a 2:1 sub-face, the FINE area, so the four sub-faces of a coarse face sum to the coarse area); dist the face-normal centre distance (1.5 h_fine at a 2:1 sub-face); upupI / upupJ the second upwind probes the SOU/Koren reconstruction samples, -1 where none exists.
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::start |
Definition at line 1915 of file flow.hpp.
Referenced by peclet::amr::AmrFlow< Bits >::faceTopology().
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::nbr |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::upupI |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::upupJ |
| std::vector<int> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::axis |
| std::vector<int> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::dir |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::rawArea |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::dist |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::alpha |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::seam |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::sampI |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::sampJ |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::uuRecI |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::uuRecJ |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::recStart |
| std::vector<Index> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::recCell |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::d1I |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::d1J |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::recDist |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::recW |
| std::vector<double> peclet::amr::AmrFlow< Bits >::FaceTopologyHost::center |