|
flow
Kokkos cut-cell IBM incompressible Navier-Stokes solver + pnm pore extraction
|
Functions | |
| sphere_radius (phi, N) | |
| sc_sdf (N, phi) | |
| drag_K (umean, R, N, f, mu) | |
| run (N, phi, mode, vel_iter=200, vlevels=4, vcycles=12, mu=0.1, f=1e-3, dt=60.0, max_steps=600, tol=1e-7) | |
| main () | |
| mu_b (dt, mu=0.1) | |
Variables | |
| list | ZH_PHI = [0.000125, 0.001, 0.008, 0.027, 0.064, 0.125, 0.216, 0.343, 0.45, 0.5236] |
| list | ZH_K = [1.096, 1.212, 1.525, 2.008, 2.810, 4.292, 7.442, 15.4, 28.1, 42.1] |
Z&H gate for the STAIRCASE velocity-MG coarse operator (IBM momentum solve).
Simple-cubic sphere array (the Zick & Homsy Stokes-drag ground truth). The IBM velocity diffusion is solved
with plain RB-GS (the exact reference) vs the staircase velocity multigrid (set_velocity_multigrid): the fine
level is the sharp row-based IBM stencil, the coarse levels use the volume fraction only to CLASSIFY cells
(theta>=0.5 fluid / <0.5 solid-pinned) and a plain const-coeff Helmholtz at fluid cells, with the IBM-cell
residuals filtered before restriction. See doc/velocity_mg_plan.md.
Two checks:
(1) drag: |K_vmg - K_rbgs| / K_rbgs < 0.1% at a fixed V-cycle budget;
(2) stiff stability: at a large dt (beta=nu*dt=80) where the old geometry-blind const coarse op diverged,
the staircase stays finite and exact.
| verify_velocity_mg_staircase_zh_sdflow.sphere_radius | ( | phi, | |
| N | |||
| ) |
Definition at line 29 of file verify_velocity_mg_staircase_zh_sdflow.py.
Referenced by sc_sdf().
| verify_velocity_mg_staircase_zh_sdflow.sc_sdf | ( | N, | |
| phi | |||
| ) |
Definition at line 33 of file verify_velocity_mg_staircase_zh_sdflow.py.
References sphere_radius().
Referenced by run().
| verify_velocity_mg_staircase_zh_sdflow.drag_K | ( | umean, | |
| R, | |||
| N, | |||
| f, | |||
| mu | |||
| ) |
Definition at line 41 of file verify_velocity_mg_staircase_zh_sdflow.py.
Referenced by run().
| verify_velocity_mg_staircase_zh_sdflow.run | ( | N, | |
| phi, | |||
| mode, | |||
vel_iter = 200, |
|||
vlevels = 4, |
|||
vcycles = 12, |
|||
mu = 0.1, |
|||
f = 1e-3, |
|||
dt = 60.0, |
|||
max_steps = 600, |
|||
tol = 1e-7 |
|||
| ) |
mode: 'rbgs' (plain RB-GS reference) | 'vmg' (the staircase velocity-MG, via set_velocity_multigrid).
Definition at line 45 of file verify_velocity_mg_staircase_zh_sdflow.py.
References drag_K(), and sc_sdf().
Referenced by main().
| verify_velocity_mg_staircase_zh_sdflow.main | ( | ) |
Definition at line 73 of file verify_velocity_mg_staircase_zh_sdflow.py.
References run().
Referenced by mu_b().
| verify_velocity_mg_staircase_zh_sdflow.mu_b | ( | dt, | |
mu = 0.1 |
|||
| ) |
Definition at line 101 of file verify_velocity_mg_staircase_zh_sdflow.py.
References main().
| list verify_velocity_mg_staircase_zh_sdflow.ZH_PHI = [0.000125, 0.001, 0.008, 0.027, 0.064, 0.125, 0.216, 0.343, 0.45, 0.5236] |
Definition at line 25 of file verify_velocity_mg_staircase_zh_sdflow.py.
| list verify_velocity_mg_staircase_zh_sdflow.ZH_K = [1.096, 1.212, 1.525, 2.008, 2.810, 4.292, 7.442, 15.4, 28.1, 42.1] |
Definition at line 26 of file verify_velocity_mg_staircase_zh_sdflow.py.