20def build(n, seeds, device, pool):
21 s = flow.Solver(n, n, n)
24 s.set_pressure_geometry(np.full((n, n, n), 10.0, order=
"F"))
26 s.set_vof(np.zeros((n, n, n), order=
"F"))
29 s.enable_vof_blocks(seeds)
30 s.diagnostics.set_vof_block_device_staging(device)
31 s.diagnostics.set_vof_block_pool(pool)
46def run(n, seeds, device, pool, steps, warm):
47 s = build(n, seeds, device, pool)
49 s.advect_vof_blocks(0.0)
51 for _
in range(steps):
52 s.advect_vof_blocks(0.0)
53 dt = (time.time() - t0) / steps
54 st = s.diagnostics.vof_block_stats()
55 vol = sum(b[
"volume"]
for b
in st)