advanced
Pyvorin for CFD
Computational fluid dynamics solvers in Python.
Published May 30, 2026
Lattice Boltzmann
Fluid flow simulation with compiled collision and streaming steps.
def collide(f, omega):
for i in range(len(f)):
for j in range(len(f[0])):
rho = sum(f[i][j])
u = sum(f[i][j][k] * cx[k] for k in range(9)) / rho
for k in range(9):
feq = rho * w[k] * (1 + 3*u*cx[k] + ...)
f[i][j][k] = f[i][j][k] - omega * (f[i][j][k] - feq)
return f
Navier-Stokes Solvers
Pressure-velocity coupling with compiled iterative solvers.