Git Product home page Git Product logo

homogenization_via_ml's Introduction

homogenization_via_ML

Efficient data-driven learning of homogenized PDEs

Source code and data for "Linking Machine Learning with Multiscale Numerics: Data-Driven Discovery of Homogenized Equations", by H. Arbabi, J.E. Bunder, G. Samaey, A.J. Roberts and I.G. Kevrekidis, 2020

Summary: we use equation-free numerics (patch dynamics and gap tooth schemes) to generate data for learning homogenized PDEs. The advantage of these methods is that they simulate the detailed PDE only in a fraction of space or space-time and make data collection more efficient. Then we use neural nets to learn the homogenized PDE in two ways: in the functional architecture we precompute the spatial derivatives and ask the neural net to learn the law of the PDE, while in the discretized architecture the net directly learns the spatially discretized PDE.

main files:

1d_example loads the patch-dynamics data for 1d heterogeneous diffusion problem, learns the effective coarse-scale PDE from that, and compares it to the homogenized PDE solution. The data is included in 'thehood' folder but one can regenerate the data by running 'generate_data_1d.py' in 'thehood' folder.

2d_example loads the gap-tooth data for 2d heterogeneous diffusion problem, learns the effective coarse-scale PDE from that, and compares it to the homogenized PDE solution. Data for this problem must be generated by running the matlab file 'generate_data_2d.mat' in 'thehood' folder.

multi-scale methods for generation of training data

The 1d data is generated by the patch dynamics code written by Giovanni Samaey. For a discussion of the method see the paper here.

The 2d data is produced using the equation-free MATLAB package of Anthony Roberts and co-workers. See the user manual in there.

dependencies

TensorFlow >=2.0

homogenization_via_ml's People

Contributors

arbabiha 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.