Getting started
A simulation begins with a mesh, an equation of state, and a Simulation. This small CPU mesh shows the domain and block decomposition used by every backend:
using Aether
Mesh(CPU(); size = (8, 8, 8), extent = (1, 1, 1), cells_per_block = (4, 8, 8))
# output
Mesh{Float64} on CPU()
├── coordinates: CartesianCoordinates()
├── domain: [0.0, 1.0] × [0.0, 1.0] × [0.0, 1.0]
├── cells: 8 × 8 × 8 interior, nghost = 2
└── blocks: 2 × 1 × 1 = 2 of 4 × 8 × 8 cellsChoose an equation of state such as IdealHydro or IdealMHD, construct the simulation, initialize its primitive state with set_initial_condition!, and advance it with run!. The Simulation docstring lists every configuration option and contains a complete construction example.
For complete runnable problems, see the example notebooks and the regression problems.