The Acro framework uses a two level software structure that connects a system of packages. An Acro package is usually developed by a (relatively) small set of developers to solve a specific set of problems. Packages exist beneath the Acro top level, which provides a common look-and-feel. Each package has its own structure, documentation and set of examples, and it is possibly available independently of Acro. However, Acro provides a framework for exploiting synergy between packages in a flexible manner.
Acro currently includes about ten different packages, several of which include interfaces to external software libraries. The entire set of packages covers a variety of algorithmic and numerical methods for optimization, as well as utilities that facilitate the development of software for scientific computing. A detailed description of each Acro package is beyond the scope of this document. Instead, we provide a birds-eye view of the Acro packages and their corresponding solvers. We also include information about how Acro can be installed and used. Further, we provide pointers to additional package documentation.