2.1.0 - Feature viscous-inviscid interaction
Waves v2.1.0 (flow-v1.7) - Viscous-inviscid interaction
This MR adds a viscous-inviscid interaction capability to Flow.
Changes
- Add VII feature, by @Amaury.Bilocq
- Minor refactoring and bugfixing
Viscous-inviscid interaction
Method
The viscous-inviscid interaction (VII) method allows to correct an inviscid flow computation by modeling the boundary layer, thus taking into account the viscous effects only where they are relevant. The VII method implemented in Flow relies on a quasi-simultaneous coupling of the full potential equation to an integral form of the boundary layer equations. More details can be found in Amaury Bilocq's master thesis.
Implementation
The code related to the VII method is written in python and located under viscous. A unit test, consisting of three test cases, is also available. Note that these tests slightly differ from those described in the master thesis, as a bug was found and corrected after the publication of the thesis.
Further work
Although the present code works and produce satisfactory results, it is limited to 2D subsonic flows and not very robust, as a filter is required to smoothen the oscillations present in the inviscid variables passed to the viscous solver. Furthermore, the code could be refactored for more modularity, or even translated to C++. Suggestions for future work are listed in the viscous solver.
Tests
Tests are passing on ubuntu20.04 (python 3.8.2), and msys2 (python 3.8.1).