All Projects → locuslab → Cfd Gcn

locuslab / Cfd Gcn

Programming Languages

python
139335 projects - #7 most used programming language

Combining Differentiable PDE Solvers and Graph Neural Networks for Fluid Flow Prediction

This is the repository for the ICML 2020 paper Combining Differentiable PDE Solvers and Graph Neural Networks for Fluid Flow Prediction by Filipe de Avila Belbute-Peres, Thomas D. Economon and J. Zico Kolter. If you like our work and want to cite it, you can use

@inproceedings{belbute_peres_cfdgcn_2020,
  author = {Belbute-Peres, Filipe de Avila and Economon, Thomas D. and Kolter, J. Zico},
  title = {Combining {Differentiable} {PDE} {Solvers} and {Graph} {Neural} {Networks} for {Fluid} {Flow} {Prediction}},
  booktitle = {International Conference on Machine Learning (ICML)},
  year = {2020}
}

The easiest way to run the experiments is to use the Dockerfile contained in this repository. To run straight from source, you can follow the procedures performed in the Dockerfile, though compatibility between dependencies might be harder to achieve.

Dockerfile

To build the docker image, run

docker build --rm -t cfd-gcn .

This will create an image with a working version of this repository, with all dependencies installed.

To access the repository in the container you can then run

docker run --gpus '"device=0"' -v $PWD/logs/:/cfd-gcn/logs -u $(id -u):$(id -g) --ipc=host -it --rm cfd-gcn

This uses GPU 0 (device=0) and the current user (-u $(id -u):$(id -g)), which can be changed. Logs will be saved to the logs directory in the current directory ($PWD/logs). To run the experiments, you can either simply run the script

sh run.sh

or copy the commands inside that script to run a particular experiment.

Note: Warning messages of the type Read -1, expected XXXX, errno = 1 may show up, but are not harmful to execution. These can be disabled or piped to /dev/null if desired.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].