The code in this repository features a Python/Tensorflow implementation of a convolutional neural network to the model to predict the two-dimensional velocity-fluctuation fields at different wall-normal locations in a turbulent open channel flow, using the wall-shear-stress components and the wall pressure as inputs. Input data are generated using the pseudo-spectral solver SIMSON. More details about the implementation and the results from the training are available in "Convolutional-network models to predict wall-bounded turbulence from wall quantities", L. Guastoni, A. Güemes, A.Ianiro, S. Discetti, P. Schlatter, H. Azizpour, R. Vinuesa (2021, Journal of Fluid Mechanics)
The code was run successfully using Tensorflow>=2.6.0, using 1 GPU for the training at Reτ=180 and 2 GPUs at Reτ=550
The dataset used for training and testing are available in order to ensure the reproducibility of the results. Please, get in touch using the email address for correspondance in the paper to arrange the transfer.
The FCN training can be performed after cloning the repository
git clone https://github.com/KTH-FlowAI/FCN-turbulence-predictions-from-wall-quantities.git
cd src
python3 train.py
All the training parameters are defined in the config file (the file needs to be renamed config.py)
Inference can be performed as follows:
cd src
python3 evaluate.py
Inference parameters are also set in the config file.
- Currently, only the FCN implementation is provided. FCN-POD will be added in the future, please get in touch if you are interested in the latter architecture