SU2 code

SU2 is a suite of open-source software tools written in C++ for the numerical solution of partial differential equations (PDE) and performing PDE-constrained optimization. The primary applications are computational fluid dynamics and aerodynamic shape optimization,[1] but has been extended to treat more general equations such as electrodynamics and chemically reacting flows. SU2 supports continuous and discrete adjoint for calculating the sensitivities/gradients of a scalar field.

SU2 code
Initial releaseJanuary 2012 (2012-01)
Stable release
7.0.3 "Blackbird" / 31 March 2020 (2020-03-31)
Repository
Written inC++, Python
Operating systemUnix/Linux/OS X/Windows
TypeComputational fluid dynamics, Simulation software
LicenseGNU Lesser General Public License, version 2.1
Websitesu2code.github.io

Developers

SU2 is being developed by individuals and organized teams around the world. The SU2 Lead Developers are: Dr. Francisco Palacios and Dr. Thomas D. Economon.

The most active groups developing SU2 are:

Capabilities

The SU2 tools suite solution suite includes[2]

  • High-fidelity analysis and adjoint-based design using unstructured mesh technology.
  • Compressible and incompressible Euler, Navier-Stokes, and RANS solvers.
  • Additional PDE solvers for electrodynamics, linear elasticity, heat equation, wave equation and thermochemical non-equilibrium.
  • Convergence acceleration (multi-grid, preconditioning, etc.).
  • Sensitivity information via the continuous adjoint methodology[3] approach.
  • Adaptive, goal-oriented mesh refinement and deformation.
  • Modularized [4] C++ object-oriented design.
  • Parallelization with MPI.
  • Python scripts for automation.
  • FEATool Multiphysics features built-in GUI and CLI interfaces for SU2.


Release history

Branch Version Releasedate[5] Improvements
1.0 Old version, no longer maintained: 1.0 28 June 2013
Old version, no longer maintained: 1.1 28 June 2013
2.0 Old version, no longer maintained: 2.0 28 June 2013
Old version, no longer maintained: 2.0.1 28 June 2013
Old version, no longer maintained: 2.0.2 28 June 2013
Old version, no longer maintained: 2.0.3 28 June 2013
Old version, no longer maintained: 2.0.4 28 June 2013
Old version, no longer maintained: 2.0.5 28 June 2013
Old version, no longer maintained: 2.0.6 12 August 2013
Old version, no longer maintained: 2.0.7 11 September 2013
Old version, no longer maintained: 2.0.8 30 September 2013
Old version, no longer maintained: 2.0.10 11 September 2013
3.0 "eagle" Old version, no longer maintained: 3.0.0 15 January 2014
  • Major release, along with SU2_EDU
3.1 "eagle" Old version, no longer maintained: 3.1.0 14 August 2014
3.2 "eagle" Old version, no longer maintained: 3.2.0 14 August 2014
  • Renamed C++ modules for clarity:
  • * SU2_DDC ---> SU2_PRT
  • * SU2_MDC ---> SU2_DEF
  • * SU2_MAC ---> SU2_MSH
  • * SU2_GDC ---> SU2_GEO
  • * SU2_GPC ---> SU2_DOT
  • Stricter checking and improved error messages for robust parsing of configuration options.
  • Unified set of SU2 test cases (meshes and config. files) are now available on GitHub (https://github.com/su2code/TestCases).
  • Major updates to the MPI implementation that improve performance and align with the MPI 3.0 standard.
  • Modifications that greatly enhance computational efficiency and memory scalability of mesh partitioning for parallel calculations.
  • New constant lift mode. Specify a target lift coefficient rather than a fixed angle of attack.
  • Upgrades to the CGNS mesh reader for further support of mixed-element meshes.
  • General bug fixes and maintenance.
Old version, no longer maintained: 3.2.1 8 September 2014
  • Additional verification test cases for shape design using the compressible adjoint capability (in collaboration with Lockheed Martin).
  • Preliminary structure for the simulation of real gases (in collaboration with TuDelft and Politecnico di Milano).
  • New FFD design variables (in collaboration with Volkswagen).
  • New preconditioners and smoothers for implicit time integration (in collaboration with Intel).
  • Simplified configuration options (in collaboration with the large SU2 users community. Thanks!).
  • General bug fixes and maintenance.
Old version, no longer maintained: 3.2.2 28 September 2014
  • SU2 version 3.2.2 includes general bug fixes and maintenance.
  • The Pointwise and SU2 joint workshop (Sept 29th-30th, 2014) is based on this release.
Old version, no longer maintained: 3.2.3 22 October 2014
  • Improved multigrid agglomeration algorithm.
  • United States customary units (US).
  • Improved I/O.
  • New smoothers and preconditioners for the implicit formulation.
  • Simplified configuration options.
  • General bug fixes and maintenance.
Old version, no longer maintained: 3.2.4 9 November 2014
Old version, no longer maintained: 3.2.5 4 December 2014
Old version, no longer maintained: 3.2.7 27 December 2014
  • New MPI implementation (only one .su2 mesh file per rank).
  • Improved multigrid (including Full MG).
  • Code optimization using the analyze tool (Xcode).
  • Simplified configuration options.
  • General bug fixes and maintenance.
Old version, no longer maintained: 3.2.8 3 February 2015
Old version, no longer maintained: 3.2.9 4 March 2015
4.0 "Cardinal" Old version, no longer maintained: 4.0.0 23 June 2015

New Features:

  • Non-ideal compressible fluid flows (NICFD): Van der Waals and Peng-Robinson equations of state.
  • Fully parallel preprocessing with ParMETIS.
  • SA-neg turbulence model.
  • Adaptive CFL.
  • Easily generate FFD boxes with new options.
  • Force breakdown file and FieldView output.
  • Scale, rotate, translate meshes in SU2_DEF.
  • Iterative smoothers: Jacobi, LU-SGS, ILU(0).
  • Updated non-dimensionalization options for ease of use.
  • General bug fixes.

Performance Improvements:

  • MPI and general performance improvements.
  • Increased mesh deformation stability for all unstructured mesh elements.
  • CGNS parallel partitioning improvements.
  • Automated multigrid parameter selection.
  • Increased robustness for upwind methods.
  • Low-storage output mode.

Additional Updates:

  • Updated documentation on the GitHub wiki, including user tutorials and new developer information.
  • New regression test system integrated with Travis CI.
Old version, no longer maintained: 4.0.1 1 September 2015
  • Improved performance for scaling, rotating, translating meshes using SU2_DEF.
  • Configuration file option MATH_PROBLEM now requires CONTINUOUS_ADJOINT instead of ADJOINT.
  • New datatype abstraction for future flexibility: all current and future double types in the code should be the new su2double type.
  • New MPI wrapper abstraction for future flexibility.
  • Restructuring of the test case suite: the configuration files for the TestCases repository now live in a mirrored directory structure under the SU2 repository in order to make automatic testing with Travis CI more effective. To use, download both repositories and recursively copy the contents of one TestCases/ directory into the other to complete the set.
  • Clean up of the build-from-source process, including file placement and default build settings.
  • New compile flag options for including the HDF5, SZIP, and ZLIB external libraries, which enables HDF5-based CGNS file usage with SU2.
  • General bug fixes and code maintenance.
Old version, no longer maintained: 4.0.2 3 November 2015
4.1 "Cardinal" Old version, no longer maintained: 4.1.0 22 April 2016
  • 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.
Old version, no longer maintained: 4.1.1 5 April 2016
Old version, no longer maintained: 4.1.2 22 April 2016
Old version, no longer maintained: 4.1.3 24 May 2016
4.2 "Cardinal" Old version, no longer maintained: 4.2.0 15 June 2016
  • Native Fluid-Structure Interaction (FSI) solver.
  • Unsteady discrete adjoint for the Euler, Navier-Stokes, and RANS equations.
  • Increased robustness of the pseudo-structural mesh deformation routines.
  • Memory and efficiency improvements related to parallel file readers, mesh partitioning, and class data management.
  • Expanded regression suite coverage to additional modules and new test cases.
  • Improved solution output for RANS visualization.
  • General bug fixes and performance improvements.
4.3 "Cardinal" Old version, no longer maintained: 4.3.0 22 August 2016
  • Redesign of the high-level Driver classes for code clarity and future flexibility.
  • Alternating digital tree (ADT) implementation for efficient geometric searches.
  • Stability improvements for the periodic boundary condition implementation.
  • Improved memory management and leak removal throughout the entire codebase.
  • CGNS v3.3.0 now distributed and automatically integrated with the autotools build.
  • Additional bug fixes, stability improvements, and general code maintenance.
5.0 "Raven" Old version, no longer maintained: 5.0.0 20 January 2017
  • New in-memory Python wrapping of SU2 using SWIG with accompanying high-level API.
  • Class enhancements for multiphysics applications, including interpolation and transfer.
  • Free-form deformation (FFD) extensions, including bezier curves and improved usability.
  • Reorganization of the incompressible solver for future expansion.
  • Harmonic Balance flow analysis capability.
  • Algebraic transition model implementation.
  • More and better boundary conditions (accuracy and convergence improvements).
  • Extensions to scripting for automated database creation (compute_polar.py).
  • Critical improvements in I/O, including more feedback to the user.
  • Additional bug fixes, stability improvements, and general code maintenance.
6.0 "Falcon" Old version, no longer maintained: 6.0.0 14 February 2018
7.0 "Blackbird" Current stable version: 7.0.0 29 November 2019
Legend:
Old version
Older version, still maintained
Latest version
Latest preview version
Future release

License

SU2 is free and open source software, released under the GNU General Public License version 3 (SU2 v1.0 and v2.0) and GNU Lesser General Public License version 2.1 (SU2 v2.0.7 and later versions).[6]

Alternative software

Free and open-source software

Proprietary software

gollark: Or use that one domain free shop.
gollark: I see.
gollark: What's wrong with all existing shop software?
gollark: Oh no.
gollark: ∆shop had one, right?

References

Official resources

Community resources

Other resources

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.