# Low Mach number hydrodynamics solver¶

pyro’s low Mach hydrodynamics solver is designed for atmospheric flows. It captures the effects of stratification on a fluid element by enforcing a divergence constraint on the velocity field. The governing equations are:

$\begin{split}\frac{\partial \rho}{\partial t} + \nabla \cdot (\rho U) &= 0 \\ \frac{\partial U}{\partial t} + U \cdot \nabla U + \frac{\beta_0}{\rho} \nabla \left ( \frac{p'}{\beta_0} \right ) &= \frac{\rho'}{\rho} g \\ \nabla \cdot (\beta_0 U) = 0\end{split}$

with $$\nabla p_0 = \rho_0 g$$ and $$\beta_0 = p_0^{1/\gamma}$$.

As with the incompressible solver, we implement a cell-centered approximate projection method.

The main parameters that affect this solver are:

• section: [driver]

option

value

description

cfl

0.8

• section: [eos]

option

value

description

gamma

1.4

pres = rho ener (gamma - 1)

• section: [lm-atmosphere]

option

value

description

limiter

2

limiter (0 = none, 1 = 2nd order, 2 = 4th order)

proj_type

2

what are we projecting? 1 includes -Gp term in U*

grav

-2.0

## Examples¶

### bubble¶

The bubble problem places a buoyant bubble in a stratified atmosphere and watches the development of the roll-up due to shear as it rises. This is run as:

./pyro.py lm_atm bubble inputs.bubble