Skip to content

sathvikbhagavan/SteadyStateSplinePINNs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Steady State Spline PINNs

Sathvik Bhagavan, Ananya Gupta, Tamar Alphaidze

Introduction

This project implements Spline Physics Informed Neural Networks (Spline PINNs) based on this paper for solving Steady State Navier Stokes PDE in a 3D domain.

Reproducibility

To run our best model, we provide the following run.py script. You can run it with the following command:

  • The run.py script can be used for best spline pinn model by running the following command: python3 run.py --model sssplinepinn
  • The run.py script can also be used for best baseline pinn model by running the following command: python3 run.py --model pinn
  • This will run inference using the trained model and generate plots storing them in run/. The plots include the visualizing different velocity fields, pressure and temperature.
  • For training of SteadyStateSplinePINNs, run spline_pinn_run.py.

Layout of the repository

.
├── README.md                  # The following README :)
├── best_models/               # The directory where all the best models will be stored
├── run/                       # The directory where all the plots will be stored after inference
├── src/
    ├── preProceessedData/     # The data folder which is processed from CFD simulations (not included in the repo)
    ├── constants.py           # All the constants required for training
    ├── hermite_spline.py      # Functions for defining hermite spline kernels
    ├── pinn_run.py            # Run script for training baseline pinn models
    ├── pinn.py                # Classes and functions to define pinn models and its loss functions
    ├── run.batch              # Batch script to run on HPC
    ├── run.sh                 # Wrapper over `run.batch` for ease
    ├── spline_pinn_run.py     # Run script for training spline pinn models
    ├── spline_pinn.py         # Functions to define loss functions for spline pinns
    ├── unet.py                # Class for defining UNET architecture for spline pinns
    ├── utils.py               # Helper functions
├── .gitignore                 # Git ignore file
├── requirements.txt           # The necessary packages to run the project

About

CS433 Project-2

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages