- Giulia Mescolini (@giuliamesc)
- Luca Sosta (@sostaluca)
This repo contains the code for the course project "Numerical Analysis for Partial Differential Equations" at Politenico di Milano, MSc in Mathematical Engineering.
The project proposes an approach based on Physics-Informed Neural Networks to Fluid Dynamics problems.
- Folder
Examples, containing the code for the solution with PINNs of all the test cases. In each folder, you will find a folder containing the results of the simulation presented in the report, too.Poisson_Problem: toy problem; solution of the Poisson equation on a square with mixed boundary conditions.Poiseuille_Flow: laminar flow in a channel.Colliding_Flows: colliding flows in a square.Cavity_Steady: lid-driven cavity, steady version.Cavity_Unsteady: lid-driven cavity, unsteady version.Coronary_Flow: steady flow of blood in an arthery affected by a stenosis.
- Folder
Data Generationcontains the code for the generation of the numerical solution, exploited in the Lid-Driven Cavity and Coronary Flow test cases. ThecoroParamfiles contain the mesh for the Coronary Flow test case. - Folder
Examples_Oldcontains the deprecated version of the first test cases. - Folder
Presentationscontains the presentations of this work to the tutors/to the classroom. Report.pdfis the project report, including all the results.
- Place the library
nisaba(clone it from here) at the same level as this repo. - Enter the folder of the test case of interest. If you want to run Cavity or Coronary Test case, you should first generate numerical data using the code in the folder
Data Generation. - In the
.txtfilesimulation_options.txtindicate the number of epochs, the amount of noise, the numerosity of the training data (divided by category: collocation, fitting, boundary) and test data. - Set
save_results = Truein the.pyscript if you wish to save the results and the loss trends in a folder automatically generated. - Run the script! 🚀