flow
Kokkos cut-cell IBM incompressible Navier-Stokes solver + pnm pore extraction
Loading...
Searching...
No Matches
mac_ibm.hpp File Reference

flow — portable (Kokkos) IBM geometric fields + variable-coefficient RB-GS smoother. More...

#include <Kokkos_Core.hpp>
#include "cut_cell_ibm.hpp"
#include "mac_cutcell.hpp"

Go to the source code of this file.

Classes

struct  peclet::flow::Off3
 

Namespaces

namespace  peclet
 
namespace  peclet::flow
 

Typedefs

using peclet::flow::mreal = float
 

Functions

bool peclet::flow::ibmIsCut (float sc, const float sn[6])
 
template<int SCHEME>
int peclet::flow::buildIbmOverlay (CCConst sdf, C3 ext, int g, Off3 off, int bc_type, const IbmOverlay &ov, Kokkos::View< int *, CCMem > idMap, Kokkos::View< int, CCMem > counter)
 
void peclet::flow::ibmVolfrac (CCField theta, CCConst sdf, C3 ext, Off3 off)
 
void peclet::flow::ibmSolidMask (CCField mask, CCConst sdf, C3 ext, Off3 off)
 
void peclet::flow::ibmCleanFluidMask (CCField m, CCConst sdf, C3 ext, Off3 off)
 
void peclet::flow::ibmRbgsStencilColor (CCField x, CCConst b, MConst AC, MConst AW, MConst AE, MConst AS, MConst AN, MConst AB, MConst AT, CCConst solidmask, C3 ext, C3 og, int g, int color)
 
void peclet::flow::ibmRbgsSweep (CCField x, CCConst b, MConst AC, MConst AW, MConst AE, MConst AS, MConst AN, MConst AB, MConst AT, CCConst solidmask, C3 ext, C3 og, int g)
 

Detailed Description

flow — portable (Kokkos) IBM geometric fields + variable-coefficient RB-GS smoother.

Kokkos port of the self-contained pieces of mac_ibm.cuh: cut-cell detection (ibm_is_cut), the staggered SDF gather, volume fraction (ibm_volfrac_k), solid + clean-fluid masks, and the variable-coefficient Red-Black Gauss-Seidel smoother (ibm_rbgs_stencil_k) for the IBM-modified momentum operator (mixed precision: float matrix coefficients, double iterate). The Robust-Scaled overlay BUILD (ibm_geometry/modify_stencil with the IBM_Data SoA + poly_*) is the heavier piece, left for a dedicated follow-up. Reuses the cut-cell SDF sampler. Runs on any Kokkos backend.

Definition in file mac_ibm.hpp.