Skip to main content

The pytorch implementation of the paper 'EPINF: Efficient Physics Informed Fluid Flow Reconstruction With Spatial and Temporal Priors'

Project description

EPINF-NeuFlow

The pytorch implementation of the paper "EPINF: Efficient Physics Informed Neural Reconstruction of Diverse Fluid Dynamics from Sparse Observations"

This repo is also a pypi package NeuFlow that can be installed via pip:

python -m pip install neuflow

Environment Setup

System Requirements

  • System
    • Windows 11 (Fully Tested)
    • Ubuntu 24.04.2 (Fully Tested)
  • Python: 3.13
  • PyTorch: 2.7.1 + CUDA 12.8

Pip Packages

python -m pip install --upgrade pip setuptools wheel
python -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128
python -m pip install lightning lightning[extra] dearpygui tyro matplotlib av huggingface_hub wandb opencv-python phiflow

set TCNN_CUDA_ARCHITECTURES=86
python -m pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch

python -m pip install ./cuda_extensions/freqencoder ./cuda_extensions/gridencoder ./cuda_extensions/raymarching ./cuda_extensions/shencoder

For Windows user, open X64 Native Tools Command Prompt for VS 2022 then activate your python venv if any, and set TCNN_CUDA_ARCHITECTURES to your GPU architecture.

GPU H100 40X0 30X0 A100 20X0 TITAN V / V100 10X0 / TITAN Xp 9X0 K80
CUDA arch 90 89 86 80 75 70 61 52 37

Optional Packages

triton-windows - Activate torch.compile for Windows

python -m pip install -U "triton-windows<3.3"

Wandb Logger

To use the Wandb logger, you need to set up your Wandb account and login. You can do this by running the following command:

wandb login

Datasets

We provide two datasets for training and testing the model:

ALL datasets are downloaded AUTOMATICALLY when running the training script.

Training

python -O app.py ngp --gui
python -O app.py epinf --dataset.dataset=sphere --export_val_map --renderer.num_sample_rays=1024 --renderer.num_depth_samples=192 --gui
python -O app.py epinf --dataset.downscale=2 --dataset.dataset=scalar --renderer.num_sample_rays=1024 --renderer.num_depth_samples=192 --export_val_map --gui
python -O app.py epinf --dataset.dataset=fireplace --dataset.downscale=2 --export_val_map --export_val_map --gui

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neuflow-0.1.3.tar.gz (32.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neuflow-0.1.3-py3-none-any.whl (45.7 kB view details)

Uploaded Python 3

File details

Details for the file neuflow-0.1.3.tar.gz.

File metadata

  • Download URL: neuflow-0.1.3.tar.gz
  • Upload date:
  • Size: 32.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for neuflow-0.1.3.tar.gz
Algorithm Hash digest
SHA256 abff01582bfa83a3a44ad138153d66774b2a88a1ef911e22132c6db80a6ab549
MD5 7927453e3d56147c16be7cc3e928a776
BLAKE2b-256 4d19777bfc43302c5f357bb67b85eb354160d5c29add92f3bd319770c9bd23a7

See more details on using hashes here.

File details

Details for the file neuflow-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: neuflow-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 45.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for neuflow-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 080558c9445257534ffa1bc517f6bfe649d05fa2d8decc5bd4358bb2760bf79e
MD5 4be5e8dc76479b1cd4b124098b2d0991
BLAKE2b-256 f8286d12cb90e82efd4e77c3bc14a49b29d133b03fd2d1d7ae6eb72cfc338701

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page