|
flow
Kokkos cut-cell IBM incompressible Navier-Stokes solver + pnm pore extraction
|
Functions | |
| make_solver (sdflow, solver, N) | |
| run_one (sdflow, case, regime, solver, N, mu_override=None) | |
| cmd_run (args) | |
| gpu_mem_mb () | |
| cmd_mem (args) | |
| cmd_report (args) | |
| _write_md (args, data, mem, backends, cases, regimes, refs) | |
| main () | |
Variables | |
| HERE = os.path.dirname(os.path.abspath(__file__)) | |
| ROOT = os.path.abspath(os.path.join(HERE, "..", "..")) | |
| dict | CASES |
| dict | REGIMES |
| float | RE_TARGET = 20.0 |
Comparative study: staggered MAC solver (sdflow.Solver) vs collocated/cell-centered solver
(sdflow.SolverColocated). Grid-convergence of the (apparent) permeability for a Zick & Homsy single
sphere and a random packed bed, at low Re (pure Stokes, advection off) and higher Re (advection on,
implicit-FOU + Picard, Re_pore ~ 16). Records accuracy (metric + order + error), efficiency (wall time,
time/step, pressure iters/step, steps), and incompressibility. A separate --mem mode measures device
memory (nvidia-smi delta) per (solver, N). Reuses the validated geometry from the regression suite.
run : python staggered_vs_colocated.py run --backend gpu --out results_gpu.json
mem : python staggered_vs_colocated.py mem --out mem_gpu.json
report : python staggered_vs_colocated.py report --inputs results_gpu.json[,results_cpu.json] \
--mem mem_gpu.json --outdir report
(`run`/`mem` need PYTHONPATH pointing at the sdflow build; pick the backend label to match.)
| staggered_vs_colocated.make_solver | ( | sdflow, | |
| solver, | |||
| N | |||
| ) |
Definition at line 45 of file staggered_vs_colocated.py.
| staggered_vs_colocated.run_one | ( | sdflow, | |
| case, | |||
| regime, | |||
| solver, | |||
| N, | |||
mu_override = None |
|||
| ) |
Definition at line 52 of file staggered_vs_colocated.py.
References make_solver().
Referenced by cmd_run().
| staggered_vs_colocated.cmd_run | ( | args | ) |
Definition at line 94 of file staggered_vs_colocated.py.
References run_one().
| staggered_vs_colocated.gpu_mem_mb | ( | ) |
Definition at line 133 of file staggered_vs_colocated.py.
Referenced by cmd_mem().
| staggered_vs_colocated.cmd_mem | ( | args | ) |
Definition at line 142 of file staggered_vs_colocated.py.
References gpu_mem_mb(), and make_solver().
| staggered_vs_colocated.cmd_report | ( | args | ) |
Definition at line 171 of file staggered_vs_colocated.py.
References _write_md().
|
protected |
Definition at line 291 of file staggered_vs_colocated.py.
Referenced by cmd_report().
| staggered_vs_colocated.main | ( | ) |
| staggered_vs_colocated.HERE = os.path.dirname(os.path.abspath(__file__)) |
Definition at line 26 of file staggered_vs_colocated.py.
| staggered_vs_colocated.ROOT = os.path.abspath(os.path.join(HERE, "..", "..")) |
Definition at line 27 of file staggered_vs_colocated.py.
| dict staggered_vs_colocated.CASES |
Definition at line 32 of file staggered_vs_colocated.py.
| dict staggered_vs_colocated.REGIMES |
Definition at line 37 of file staggered_vs_colocated.py.
| float staggered_vs_colocated.RE_TARGET = 20.0 |
Definition at line 49 of file staggered_vs_colocated.py.