|
flow 1.3.0
Kokkos cut-cell IBM incompressible Navier-Stokes solver + pnm pore extraction
|
Functions | |
| _collocated_mode (s, mode) | |
| sdf_from_pack (Ng, pos, r, side) | |
| permeability (Ng, sdf, side, colloc, ghost, mode=0, mu=0.1, F=1e-3, dt=80.0, max_steps=3000, tol=1e-6) | |
Variables | |
| flow = ensure_flow() | |
| HERE = os.path.dirname(os.path.abspath(__file__)) | |
| d = np.load(os.path.join(HERE, "rcp_pack_seed3.npz")) | |
| pos | |
| r | |
| side | |
| phi | |
| flush | |
| list | variants |
| sdf = sdf_from_pack(Ng, pos, r, side) | |
| str | row = f"{Ng:>4} |" |
| kref = None | |
| t0 = time.time() | |
| out = permeability(Ng, sdf, side, colloc, ghost, mode) | |
RCP permeability A/B: {staggered, collocated} x {cutcell, ghost} on the SAME random close
packing (the peclet-examples random-packed-bed geometry: dem pack_bed, N=180, phi~0.63, seed 3;
cached in rcp_pack_seed3.npz — regenerate with the example's pack_bed if absent).
Context: the staggered examples-check found the ghost projection inflates the RCP permeability
(+21/+15/+12% at Ng=32/44/56 vs the cutcell reference) because point-based closure faces cannot
throttle sub-cell throats the way apertures do, and the binary COUPLED graph fragments (guard
decouples the pockets). This study measures whether the collocated ghost inherits the same
defect, with the collocated cutcell (mode 0) and both staggered variants as anchors. Protocol =
the example's steady loop with a tighter stop (tol 1e-6) so the scheme, not the stop criterion,
is compared.
|
protected |
Select a collocated scheme by the integer face-interp mode this script was written with:
0/7/9 are the public strings ('plain' / 'embed' / 'gauge-exact'), 5/6 the diagnostics rungs,
and every other number was deleted at 1.0.0 (the call then raises).
Definition at line 25 of file rcp_permeability_ab.py.
Referenced by permeability().
| rcp_permeability_ab.sdf_from_pack | ( | Ng, | |
| pos, | |||
| r, | |||
| side | |||
| ) |
Definition at line 35 of file rcp_permeability_ab.py.
| rcp_permeability_ab.permeability | ( | Ng, | |
| sdf, | |||
| side, | |||
| colloc, | |||
| ghost, | |||
mode = 0, |
|||
mu = 0.1, |
|||
F = 1e-3, |
|||
dt = 80.0, |
|||
max_steps = 3000, |
|||
tol = 1e-6 |
|||
| ) |
Definition at line 50 of file rcp_permeability_ab.py.
References _collocated_mode(), and mean().
| rcp_permeability_ab.flow = ensure_flow() |
Definition at line 18 of file rcp_permeability_ab.py.
| rcp_permeability_ab.HERE = os.path.dirname(os.path.abspath(__file__)) |
Definition at line 21 of file rcp_permeability_ab.py.
| rcp_permeability_ab.d = np.load(os.path.join(HERE, "rcp_pack_seed3.npz")) |
Definition at line 81 of file rcp_permeability_ab.py.
| rcp_permeability_ab.pos |
Definition at line 82 of file rcp_permeability_ab.py.
| rcp_permeability_ab.r |
Definition at line 82 of file rcp_permeability_ab.py.
| rcp_permeability_ab.side |
Definition at line 82 of file rcp_permeability_ab.py.
| rcp_permeability_ab.phi |
Definition at line 82 of file rcp_permeability_ab.py.
| rcp_permeability_ab.flush |
Definition at line 83 of file rcp_permeability_ab.py.
| list rcp_permeability_ab.variants |
Definition at line 86 of file rcp_permeability_ab.py.
| rcp_permeability_ab.sdf = sdf_from_pack(Ng, pos, r, side) |
Definition at line 92 of file rcp_permeability_ab.py.
| rcp_permeability_ab.row = f"{Ng:>4} |" |
Definition at line 93 of file rcp_permeability_ab.py.
| rcp_permeability_ab.kref = None |
Definition at line 94 of file rcp_permeability_ab.py.
| rcp_permeability_ab.t0 = time.time() |
Definition at line 96 of file rcp_permeability_ab.py.
| rcp_permeability_ab.out = permeability(Ng, sdf, side, colloc, ghost, mode) |
Definition at line 97 of file rcp_permeability_ab.py.