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

Functions

 run (H=32, L=224, Re=100.0, U=1.0, nz=4, max_steps=8000, dt=0.5)
 
 main ()
 

Detailed Description

Verification (sdflow): developing plane channel flow -- the canonical INFLOW/OUTFLOW benchmark. A
uniform stream U enters at -x (inflow, Dirichlet velocity), leaves at +x (outflow: zero-gradient velocity
+ Dirichlet p=0), between no-slip walls at +-y; quasi-2D (periodic z). This exercises the open-boundary
machinery the cavity cannot: the operator/flux openness split (inflow Neumann pressure but its flux is
counted; outflow Dirichlet pressure), the zero-gradient outflow velocity, and the outflow projection
correction that lets mass leave.

A uniform inlet develops into the parabolic Poiseuille profile over the entrance length
L_e ~ 0.04*Re*H. With L >~ 6H the outlet is fully developed, so we check:
  * global mass conservation: flux(inlet) == flux(outlet)             (continuity, exact)
  * incompressibility:        max cut-cell flux divergence -> 0
  * developed profile:        u(y) at the outlet is parabolic, u_max/U_mean -> 1.5
  * (informational) developed pressure gradient ~ -12*mu*U_mean/H^2.

Uses the canonical `sdflow` module. NO immersed solid. Physical units: set_rho/set_mu; Re = U*H/nu.

Function Documentation

◆ run()

verify_channel_sdflow.run (   H = 32,
  L = 224,
  Re = 100.0,
  U = 1.0,
  nz = 4,
  max_steps = 8000,
  dt = 0.5 
)
Run the developing-channel case and return its convergence diagnostics.

Uniform inflow at -x, outflow at +x, no-slip walls at +-y, periodic z; marches to steady state and
returns a dict with the mass-conservation error, max divergence, outlet u_max/U_mean ratio, the
outlet-profile rms against the parabola, and the developed pressure gradient. Returns None off root.

Definition at line 28 of file verify_channel_sdflow.py.

Referenced by main().

◆ main()

verify_channel_sdflow.main ( )
Run the default channel case, print the diagnostics, and exit non-zero if it fails the tolerance.

Definition at line 81 of file verify_channel_sdflow.py.

References main(), and run().

Referenced by main().