scientific-skills/fluidsim/references/solvers.md
FluidSim provides multiple solvers for different fluid dynamics equations. All solvers work on periodic domains using pseudospectral methods with FFT.
Solver key: ns2d
Import:
from fluidsim.solvers.ns2d.solver import Simul
# or dynamically
Simul = fluidsim.import_simul_class_from_key("ns2d")
Use for: 2D turbulence studies, vortex dynamics, fundamental fluid flow simulations
Key features: Energy and enstrophy cascades, vorticity dynamics
Solver key: ns3d
Import:
from fluidsim.solvers.ns3d.solver import Simul
Use for: 3D turbulence, realistic fluid flow simulations, high-resolution DNS
Key features: Full 3D turbulence dynamics, parallel computing support
Solver keys: ns2d.strat, ns3d.strat
Import:
from fluidsim.solvers.ns2d.strat.solver import Simul # 2D
from fluidsim.solvers.ns3d.strat.solver import Simul # 3D
Use for: Oceanic and atmospheric flows, density-driven flows
Key features: Boussinesq approximation, buoyancy effects, constant Brunt-Väisälä frequency
Parameters: Set stratification via params.N (Brunt-Väisälä frequency)
Solver key: sw1l (one-layer)
Import:
from fluidsim.solvers.sw1l.solver import Simul
Use for: Geophysical flows, tsunami modeling, rotating flows
Key features: Rotating frame support, geostrophic balance
Parameters: Set rotation via params.f (Coriolis parameter)
Solver key: fvk (elastic plate equations)
Import:
from fluidsim.solvers.fvk.solver import Simul
Use for: Elastic plate dynamics, fluid-structure interaction studies
Choose a solver based on the physical problem:
ns2dns3dns2d.strat or ns3d.stratsw1lfvkMany solvers have modified versions with additional physics:
Check fluidsim.solvers module for complete list.