Skip to content

Repository files navigation

DiffusionNet: Accelerating the solution of Time-Dependent partial differential equations using deep learning

Citation

@article{asem2020diffusionnet,
title={DiffusionNet: Accelerating the solution of Time-Dependent partial differential equations using deep learning},
author={Asem, Mahmoud},
journal={arXiv preprint arXiv:2011.10015},
year={2020}
}

Install requirements

pip install -r requirements.txt

I. Transient Heat transfer Section

Contents

ScriptDescription
solver.pyAlternate direction implicit scheme solver for transient heat transfer
DiffusionNet.pyContent Cell
generator.pydata generation utility functions for Transient heat transfer
visualize.pyHeat map comparison utility function
speedup_analysis.pyspeedup analysis section utility functions
NotebookDescription
Reproduce models.ipynbReproduce trained models
Heatmaps figure.ipynbReproduce and visualize heat maps comparisons
Speedup figures.ipynbReproduce speedups plots for Iterations / Gridsize ( GPU+CPU specific )
Loss plots figuresReproduce loss plots

1) Reproduce trained models

To reproduce trained models, under Reproduce models notebook

image

  1. Choose the appropriate parameters for grid size ,step,number of batches to be trained on.
  2. Tick the train checkbox to start training, reproduced models will be saved under ReproducedModels and ReproducedLogs folders.

2) Reproduce loss plots figures

image

Under Loss plots figures.ipynb notebook choose the desired log from drop down menu and check plot


3) Reproduce Heat maps comparisons figure

image

Under visualization notebook, Choose the following parameters,

ParameterDescription
Stepstep size
Content CellContent Cell
Grid sizeGrid size NxN
bc1Bottom boundary condition
bc2Left boundary condition
bc3Top boundary condition
bc4Right boundary condition
icInitial condition
t00Initial input step to model

  1. Tick analyze to view Timing of numerical solution and deep learning solution, and Error metrics.
  2. Ticks plot to view the heat maps of Numerical solution , Deep learning solution and the absolute difference between them, respectively.
  3. Tick save to save the resultant heat maps (optional).
  4. Make sure the loaded model Step[10,100] and gridsizes[12,24,48,96] matches that of selected heat maps parameters above

image


4) Reproduce Speedup figures

image

Under Speedup Figures notebook, Choose the following parameters,

ParameterDescription
Speedup analysisIteration analysis / Gridsize analysis
PDeep learning prediction step
Grid sizeGrid size NxN

Tick Start to start analysis and then plot figures as in below


image


II. Inviscid burgers Section

Contents

ScriptDescription
utils.pyUtility functions
DiffusionNet.pyContent Cell
generator.pydata generation utility functions for Transient heat transfer
NotebookDescription
Reproduce models.ipynbReproduce trained models
Reproduce Figures.ipynbReproduce Data representation,Error histogram and Sample plot figure
Reproduce Test data prediction.ipynbGenerate the prediction of DiffusionNet for the given test data

About

Solving PDEs using Deep learning Code Associated with https://arxiv.org/abs/2011.10015

Resources

Stars

7 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages