COMPOSE: Library for Communication-Efficient, Property-Preserving, Semi-Lagrangian Tracer Transport
COMPOSE is a software library that supports tracer transport. First, it provides methods for property preservation. These methods use exactly one all-to-all reduction or an equivalent, which makes them communication efficient, and they have a number of practically useful theoretical guarantees. Second, COMPOSE provides routines to compute spherical polygon intersections, and routines for numerical quadrature and interpolation for spectral element discretizations. Third, COMPOSE runs on CPU, KNL, and GPU.