Quinoa
Adaptive computational fluid dynamics
Quinoa is a set of computational tools that enables research and numerical analysis in fluid dynamics. Using the Charm++ runtime system, we employ asynchronous (or non-blocking) parallel programming and decompose computational problems into a large number of work units (that may be more than the available number of processors) enabling arbitrary overlap of parallel computation, communication, input, and output. Then the runtime system dynamically and automatically homogenizes computational load across the simulation distributed across many computers.
Our ultimate goal is to simulate large and complex engineering multiphysics problems with a production-quality code that is extensible and maintainable, using hardware resources efficiently, even for problems with a priori unknown, heterogeneous, and dynamic load distribution. Read more at our Philosophy page.
Getting started
Tools
Quinoa consists of the following tools:
Inciter (Compressible flow solver) — Navier-Stokes solver for complex domains
Inciter is a fully asynchronous distributed-memory-parallel fluid solver for complex engineering geometries. We are working on multiple compressible-flow solvers for single-, and multi-material flows, using continuous and discontinuous Galerkin finite element and finite volume methods, and solution-adaptive mesh-, and polynomial-degree refinement, enabling dynamically concentrating compute resources to regions with interesting physics.
UnitTest — Test suite for synchronous and asynchronous functions
UnitTest is an asynchronous distributed-memory-parallel test harness, capable of testing serial, synchronous (e.g., MPI) parallel, and asynchronous parallel (e.g., Charm++) functions.
MeshConv (Mesh format converter) — Tetrahedron-mesh converter
MeshConv is a mesh file format converter for tetrahedron meshes.
Contributing
Contributors and collaborators are welcome. Please read the Roadmap and the Contributing guide and contact us.
License
Quinoa is open source software. It is distributed under the terms of the 3-clause BSD license listed here. See also Legal. It may be used for any purpose, including commercial purposes, at absolutely no cost.