flow 1.3.0
Kokkos cut-cell IBM incompressible Navier-Stokes solver + pnm pore extraction
Loading...
Searching...
No Matches
koren_branch Namespace Reference

Functions

 run (path, nsteps)
 
 branch (c, f, a)
 
 analyse (pa, pb)
 
 onestep (src, k, out, rtol=None)
 

Variables

 HERE = os.path.dirname(os.path.abspath(__file__))
 

Detailed Description

Q-N (WO-9, ruling D-WO9-1): where does G9 koren at R_o/h 32 lose bitwise agreement between two
runs (two backends, or one OpenMP build at two thread counts), and why?

  OMP_NUM_THREADS=1 PYTHONPATH=build_dev python koren_branch.py run a.npz [nsteps]
  OMP_NUM_THREADS=4 PYTHONPATH=build_dev python koren_branch.py run b.npz [nsteps]
  python koren_branch.py analyse a.npz b.npz

`run` drives the G9 gate case unchanged (tests/python/test_scalar_cutcell_gates.py g9_case) and
records c after every step. `analyse` finds the first step whose difference jumps, and for every
face evaluates, on each run's c^n, which branch of sadv::koren (src/staggered_advection.hpp) the
explicit flux takes: |den| < 1e-10 (r = 0), both |num|, |den| < 1e-10 (r = 1), or the ratio. A
koren face is one the kernel's ยง6.2 guard admits (upwind-upwind, upwind and downwind all unknowns).

Function Documentation

◆ run()

koren_branch.run (   path,
  nsteps 
)

Definition at line 25 of file koren_branch.py.

Referenced by onestep().

◆ branch()

koren_branch.branch (   c,
  f,
  a 
)
Per low face of every cell along axis a (periodic): the koren branch code on c^n for the
sign of f: 0 ratio, 1 |den| < 1e-10 (r = 0), 2 both < 1e-10 (r = 1); and the upwind-pair /
downwind unknown flags handled by the caller.

Definition at line 55 of file koren_branch.py.

Referenced by analyse().

◆ analyse()

koren_branch.analyse (   pa,
  pb 
)

Definition at line 69 of file koren_branch.py.

References branch().

Referenced by onestep().

◆ onestep()

koren_branch.onestep (   src,
  k,
  out,
  rtol = None 
)
Re-run step k+1 alone from run `src`'s c after step k, on a fresh solver (same setup as
g9_case), and store c after it: two thread counts from the SAME c^n isolate what the step
itself generates from what it amplifies.

Definition at line 110 of file koren_branch.py.

References analyse(), onestep(), and run().

Referenced by onestep().

Variable Documentation

◆ HERE

koren_branch.HERE = os.path.dirname(os.path.abspath(__file__))

Definition at line 21 of file koren_branch.py.