Git Product home page Git Product logo

physics-informed-neural-networks-for-solving-reynolds-averaged-navier-stokes-equations's Introduction

Physics-informed neural networks for solving Reynolds-averaged Navier–Stokes equations

Introduction

The code in this repository features a Python implemention of Physics-informed neural networks (PINNs) for solving the Reynolds-averaged Navier–Stokes (RANs)equations for incompressible turbulent flows without any specific model or assumption for turbulence. The input data are spatial coordinates (x, y) only taken at the domain boundaries.

More details about the implementation and results from the training are available in "Physics-informed neural networks for solving Reynolds-averaged Navier–Stokes equations", Hamidreza Eivazi, Mojtaba Tahani, Philipp Schlatter, Ricardo Vinuesa(2022,Physics of Fluids)

Pre-requisites

The code was run successfully using Tensorflow>=2.6.0, using 1 GPU for training. In addition, scipy is necessary for implementing optimization algorithm

Data

The dataset used for training and testing are available in order to ensure the reproducibility of the results.

In this repository, the database for zero-presure-gradient Boundary Layer and turbulent flows over NACA4412 airfoil are required to be downloaded manually.

The links of file have been provided in ZPG and NACA

Please, get in touch using the email address for correspondance in the paper to arrange the transfer.

Training and inference

The PINNs training and prediction can be performed after cloning the repository.

Take Falker-Skan(FS) Boundary Layer as example:

git clone  https://github.com/Fantasy98/Physics-informed-neural-networks-for-solving-Reynolds-averaged-Navier-Stokes-equations.git
cd FS
python train.py

All the training parameters are defined in the train_configs.py

For postprocessing the reults, it can be performed as follows:

python postprocessing.py

File Structure

All cases follow the same file structure, take Falker-Skan(FS) Boundary Layer as example, the files follow structure below:

FS
├── data
├── pred
├── figs
├── models
├── train_configs.py
├── PINN.py
├── lbfgs.py
├── postprocessing.py
├── error.py
└── train.py

data: Folder to store the boundary layer data

pred: Folder to store the prediction results

models: Folder to store the trainede models

figs: Folder to store the postprocessed figures

train_configs.py: Definition of training parameters

PINN.py: class object of PINN

lbfgs.py: optimizer based on L-BFGS algorithm

postprocessing.py: script for postprocessing results.

error.py: function for error assessment used in paper.

train.py: script for training PINNs model

physics-informed-neural-networks-for-solving-reynolds-averaged-navier-stokes-equations's People

Contributors

fantasy98 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.