/fourier_neural_operator

Use Fourier transform to learn operators in differential equations.

Primary LanguagePython

Fourier Neural Operator

This repository contains the code for the paper:

In this work, we formulate a new neural operator by parameterizing the integral kernel directly in Fourier space, allowing for an expressive and efficient architecture. We perform experiments on Burgers' equation, Darcy flow, and the Navier-Stokes equation (including the turbulent regime). Our Fourier neural operator shows state-of-the-art performance compared to existing neural network methodologies and it is up to three orders of magnitude faster compared to traditional PDE solvers.

It follows from the previous works:

Requirements

Files

The code is in the form of simple scripts. Each script shall be stand-alone and directly runnable.

Datasets

We provide the Burgers equation and Darcy flow datasets we used in the paper. The data generation can be found in the paper. The data are given in the form of matlab file. They can be loaded with the scripts provided in utilities.py.

Models

Here are the pre-trained models. It can be evaluated using eval.py or super_resolution.py.