Continuous or and Discrete.

The open-source SU2 package for CFD analysis and design serves not only as a useable example to computational scientists, but also as a common baseline for future development by the entire community. The current open-source model has enabled the leading experts across many technical areas, anywhere in the world, to work together in creating new capabilities that would not have materialized in the absence of collaboration. Today, we demonstrate this once again with the release of SU2 version 4.1 "Cardinal."

Download SU2 v4.1

Through collaboration with the SciComp Team at TU Kaiserslautern, we are proud to introduce the support of Algorithmic Differentiation (AD). Based on new datatype and MPI interfaces, this enables exact derivative computations throughout the code. Internally, the implementation uses the recently released open-source library, CoDiPack, to store the partial derivatives of all occurring operations and to evaluate the final gradient information. Modern C++ features, like static polymorphism and expression templates, in combination with advanced AD methods (preaccumulation, externally differentiated functions, reverse MPI communication) result in a low memory footprint and fast evaluation times.

As a first important application, AD support was used to implement a discrete adjoint solver for the Euler, Navier-Stokes, and RANS equations. Exploiting the abstract iterative structure of the available solvers in SU2, we have achieved a truly automatic extension to new solver features, while still guaranteeing fast convergence to the exact gradients. But most importantly, it is easy to use and extensible to new physical models and objective functions. Learn how to get started with these new features in the SU2 documentation:

SU2 Documentation

SU2 v4.1 has a number of notable new features, such as the following:

  • Algorithmic Differentiation for exact derivative computations throughout the code.
  • Discrete adjoint implementation for the Euler, Navier-Stokes, and RANS equations.
  • New adjoint outlet boundary conditions for treating downstream functionals.
  • High-level driver classes for easily formulating multi-physics problems.
  • Generalized Riemann flow boundary condition, including real gas effects.
  • New finite element class library for future flexibility.
  • Modifications to the source code for easier compilation on Windows.
  • General bug fixes and performance improvements.

SU2 v4.1 is now available on GitHub. As always, we are grateful to the open-source community for their interest, help, support, and development.