Giter Site home page Giter Site logo

totaltotal / fwiflow.jl Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lidongzh/fwiflow.jl

0.0 0.0 0.0 12.17 MB

Elastic Full Waveform Inversion for Subsurface Flow Problems Using Intrusive Automatic Differentiation

License: MIT License

Shell 0.94% Julia 99.06%

fwiflow.jl's Introduction

FwiFlow: Wave and Flow Inversion with Intrusive Automatic Differentiation

Quick Install Documentation
using Pkg; Pkg.add("FwiFlow")

Highlights

  • GPU-accelerated FWI module with checkpointing schemes;
  • AMG-accelerated implicit pressure-implicit saturation scheme;
  • Time Fractional Partial Differential Equations

Philosophy

We treat physical simulations as a chain of multiple differentiable operators, such as discrete Laplacian evaluation, a Poisson solver, and a single implicit time-stepping for nonlinear PDEs. They are like building blocks that can be assembled to make simulation tools for new physical models.

Those operators are differentiable and integrated within a computational graph so that the gradients can be computed automatically and efficiently via analyzing the dependency in the graph. Also, independent operators run in parallel, thanks to the graph-based parallelization mechanism of TensorFlow. With the gradients, we can perform gradient-based PDE-constrained optimization for inverse problems.

FwiFlow is built on ADCME, a powerful static-graph-based automatic differentiation library for scientific computing (with TensorFlow backend). FwiFlow implements the idea of Intrusive Automatic Differentiation.

Applications

The following examples are for inversion

Full-waveform Inversion Two Phase Flow FWI-Two Phase Flow Coupled Inversion
Time Fractional PDE

Research Papers

  1. Dongzhuo Li (co-first author), Kailai Xu (co-first author), Jerry M. Harris, and Eric Darve. Coupled Time‐Lapse Full‐Waveform Inversion for Subsurface Flow Problems Using Intrusive Automatic Differentiation, Water Resources Research, 56(8), p.e2019WR027032 (https://doi.org/10.1029/2019WR027032).
  2. Kailai Xu (co-first author), Dongzhuo Li (co-first author), Eric Darve, and Jerry M. Harris. Learning Hidden Dynamics using Intrusive Automatic Differentiation.

Misc

The TorchFWI package, which shares the elastic FWI part, can be found here. It may be helpful if one wants to experiment with PyTorch.
An older version of this repository can be found here. It contains all scripts to recreate results in paper 1.

LICENSE

MIT License Copyright (c) 2019 Dongzhuo Li and Kailai Xu

fwiflow.jl's People

Contributors

andrea2333 avatar kailaix avatar lidongzh 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.