![]() |
Documentation 6b54b78464
|
SU2 suite is an open-source collection of C++ based software tools to perform PDE analysis and PDE constrained optimization. The toolset is designed with computational fluid dynamics and aerodynamic shape optimization in mind, but is extensible to include other families of governing equations such as potential flow, electrodynamics, chemically reacting flows, and many others. SU2 is released under an open-source license.
The following technical documentation describes the structure and details of the source code for developers. Each module groups classes and functions dedicated to major areas or features of the code base. This documentation helps awnsering questions such as
Given the use of polymorphism in SU2, it is usefull to start studying each module from the base class (which usually has a generic name), this will show the inheritance diagram for that family. Moreover, many important functions (defining the interactions between families) are implemented at the base level, the "call graph" of a function will show these interactions (derived classes only specialize certain details). Alternatively, "caller graphs" can be used to navigate to the larger classes that use smaller ones, and thus navigate the architecture from the bottom up (note that this will also be more effective if done for base classes).
The groups and subgroups defined in this file form a hierarchy of doxygen modules, when documenting a class or free function it should be added to a group (member functions belong to the group of the class by default), otherwise it will be difficult to navigate to the documentation of the class or function. Therefore, all classes and functions should have a doxygen documentation block with at least \brief and \ingroup properties.
Note that this is a work in progress and not all classes and functions are currently inserted into groups.