Published April 9, 2021 | Version 5.0
Other Open

Data-driven physics-informed prediction of turbulent flow statistics past bridge piers in large-scale rivers using convolutional neural networks

Authors/Creators

  • 1. Stony Brook University

Description

The machine learning codes (in Python) are uploaded. These codes can be used for:

1- first-order flow statistics prediction;

2- second-order flow statistics predictions; and 

3- flow predictions by considering the "divergence-free" constraint. 

A series of sample training datasets are also included as " trainingdata.zip". Plus, some sample results (prediction results) are placed in "resultdata.zip."

Below, we explain how to use each of these codes:

The codes here works in the following steps:
1. run readdata.py to preprocess data from ASCII tecplot format to binary numpy format.
   this step can be skipped since all data are prepared in ./train, ./test and ./check
2. run main.py to train the CNN for u, v, w components separately.
3. run check.py to run the trained model and output the predictions.
4. run fluctuation.py to calculate u', v', w' for second-order statistics code.

contents in subfolders:
flc1    --u' v' w' data
input   --input data of CNN, instantaneous flow fields
target  --LES flow fields, target for training and testing
output  --CNN predictions

Below are more details of the fil contents:

1. code

            1.1 1st order statistics

                        1.1.1 main.py is the main code to train CNN

                        1.1.2 readdata.py is the preprocessing code to convert ASCII tecplot file to numpy file

                        1.1.3 reverse.py do the data augmentation by reversing the flow field

                        1.1.4 check.py produce the prediction using trained CNN

                        1.1.5 data.py, dataset.py and model.py are sub-functions called by main.py

            1.2 2nd order statistics

                        1.2.1 main.py is the main code to train CNN

                        1.2.2 readdata.py is the preprocessing code to convert ASCII tecplot file to numpy file

                        1.2.3 check.py produce the prediction using trained CNN

                        1.2.4 data.py, dataset.py and model.py are sub-functions called by main.py

            1.3 divergence-free

                        1.3.1 main.py is the main code to train CNN

                        1.3.2 readdata.py is the preprocessing code to convert ASCII tecplot file to numpy file

                        1.3.3 check.py produce the prediction using trained CNN

                        1.3.4 SelfDefLoss.py, dataset.py and model.py are sub-functions called by main.py

2. trainingdata

            2.1 Result020000.plt to Result029000.plt are instantaneous LES results used to train the CNN.

            2.2 Result150000-avg.plt is the time-averaged LES results used to train the CNN.

3. resultdata

            3.1 River1    This folder contains the results of River 1

                        3.1.1 CNN_UV.plt is the CNN predicted time-averaged u and v velocity components

                        3.1.2 CNN_W.plt is the CNN predicted time-averaged w velocity component

                        3.1.3 CNN_2nd Order Statistics.plt is the CNN predicted 2nd order statistics components

                        3.1.4 LES Results.plt is the LES time-averaged results

                        3.1.5 RANS Results.plt is the RANS results

                        3.1.6 div_with dive-free.dat is the divergence result of the CNN with physical constraint

                        3.1.7 div_without dive-free.dat is the divergence result of the CNN without physical constraint

Files

1st order statistics.zip

Files (1.9 GB)

Name Size Download all
md5:539ebdc82bfeedf5d046084c3c040985
10.7 kB Preview Download
md5:70a455eeb410bac717b2b8b6441090a3
7.8 kB Preview Download
md5:a6821745f97a7ca327de014ef2ac88bb
10.5 kB Preview Download
md5:b0aa7442935d6e579ad9e27c0d7e4758
20.9 kB Preview Download
md5:14c11fbd114ebbc5cc22b23187eb80ad
365.5 kB Preview Download
md5:3764d532e54a1b6fb93fbe761b35830c
484.6 kB Preview Download
md5:0d70456f06cfe1f760ed10dc526ff8a0
424.5 kB Preview Download
md5:22ff7789a104d57f1ea78276a7bd49b3
568.8 kB Preview Download
md5:0172d9bf5e39cf7d9985b35976e61f98
232.2 kB Preview Download
md5:c40ebc320e40ff6c8fc8e1aabaa9069c
958.7 MB Preview Download
md5:ef2da938238359cd4a50b88e424d92b4
963.1 MB Preview Download

Additional details

Related works

Is cited by
arXiv:2106.11276 (arXiv)