Giter Club home page Giter Club logo

pinn-burgers's Introduction

PINN-Burgers

Burgers equation solved by PINN in PyTorch

Libraries you need

  • PyTorch
  • Numpy
  • SciPy
  • Matplotlib

Procedure explained:

  • Boundary train data collected in a [100, 2] numpy array: pairs of (x, t)
  • Boundary solution data collected in a [100, 2] numpy array
  • Collocation points come in a [10100, 2] numpy array: paris of (x, t)
  • These arrays are passed to the PINN
  • These arrays are transformed into torch tensors
  • The net is created manualy, although you should better inherit from torch.nn.Module
  • The net takes a two-input vector and returns a one-output vector
  • LBFGS is used to update the net's gradients (this is a full-batch prodecure)
  • Xavier initialization didn't work out for me, so I left it alone
  • The net represents the u function, f is a function of the net
  • f is the differential equation equaled to zero
  • Both the boundary conditions and the PDE losses (u_loss and f_loss) are added together
  • The sum of these two losses is the minimized using the torch.optimizer

How do I run the code?

  • Just run the module
  • Type pinn.plot() in the console to check the plot

Thank you for downloading!

pinn-burgers's People

Contributors

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