🌪 Fast and friendly Julia software for atmospheric fluid dynamics on CPUs and GPUs. https://numericalearth.github.io/BreezeDocumentation/dev/
Breeze is a library for simulating atmospheric flows, convection, clouds, weather, and hurricanes on CPUs and GPUs.
Much of Breeze's power flows from Oceananigans, which provides a user interface, grids, fields, solvers, advection schemes, Lagrangian particles, physics, and more.
Right now, Breeze.AtmosphereModel is in an early stage of development, and supports simple simulations that use the anelastic formulation of the Euler equations on RectilinearGrid.
But we're working feverishly towards a future with bulk, bin and superdroplet microphysics, radiation, and a fully compressible formulation with acoustic substepping (and note, the roadmap and vision for Breeze is still something of a work in progress).
Check out the documentation to see what we can do now, and watch this space (or get in touch to discuss!) its crystallization.
First install Julia; suggested version 1.10. See juliaup README for how to install 1.10 and make that version the default.
Then clone this repository
git clone [email protected]:NumericalEarth/Breeze.jl.gitOpen Julia from within the local directory of the repo via:
julia --projectThe first time, you need to install any dependencies:
julia> using Pkg; Pkg.instantiate()Now you are ready to run any of the examples!
For instance, if you run
julia> include("examples/thermal_bubble.jl")but after you tweak the spatial resolution of the grid to size = (512, 512), you'll get