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
momentum_assembly.hpp File Reference
#include "peclet/amr/assembly.hpp"
#include "peclet/amr/block_octree_view.hpp"
#include "peclet/amr/common.hpp"
#include "peclet/amr/csr.hpp"
#include "peclet/amr/cut_cell.hpp"
#include "peclet/amr/momentum.hpp"
#include "peclet/core/common/view.hpp"

Go to the source code of this file.

Classes

struct  peclet::amr::MomScaleSink< Sink >
 Sink adapter: forwards each face from the FvFaceEmit traversal as (j, factor·coef) to the real CSR sink — turns the plain geometric coeff into the regular-fluid momentum coupling −μ·invV·(a·c). More...
 
struct  peclet::amr::MomSumSink
 Sink that just sums the geometric coeffs of a cell's faces (Σ a·c for the regular diagonal). More...
 
struct  peclet::amr::MomFaceEmit< Bits >
 Device-callable reproduction of AmrCutCell::assembleOperator's per-cell row + diagonal. More...
 

Namespaces

namespace  peclet
 
namespace  peclet::amr
 

Functions

template<unsigned Bits>
void peclet::amr::rebuildCutStencil (Index n, const double betaIn[3], double idiag, const View< double > &sdfC, const View< Index > &nbr6, const View< char > &fluid, const View< std::uint8_t > &levels, View< double > AC, View< double > off, View< char > cut, View< double > rscale)
 The per-cell ξ-overlay rebuild (build() Pass 2) on device: from the staged cell SDF + neighbour indices + fluid flag, recompute AC/off/cut/rscale exactly as the host build does.
 
template<unsigned Bits>
MomentumOp peclet::amr::assembleMomentum (const AmrCutCell< Bits > &ccop, const BlockOctreeView< 3, Bits > &ov, bool scaleAdvByRscale=false)
 Assemble the MomentumOp entirely on the device from a built host AmrCutCell + a device octree view.