by Sinan Wang, Junwei Zhou, Fan Feng, Zhiqi Li, Yuchen Sun, Duowen Chen, Greg Turk, and Bo Zhu
Our paper and video results can be found at our project website.
This repository contains an external submodule AMGPCG_Pybind_Torch, located under the external/ directory.
To ensure everything builds correctly, make sure to clone the repository with submodules:
git clone --recurse-submodules https://github.com/pfm-gatech/VPFM.gitOur code is tested on Windows 11 with CUDA 12.3, Python 3.10.9, and Taichi 1.6.0.
To set up the environment, first create a conda environment:
conda create -n "vpfm_env" python=3.10.9 ipython
conda activate vpfm_envThen, install the requirements with:
pip install -r requirements.txtThen, follow the instruction from PyTorch and install pytorch with cuda enabled.
Then, follow the instructions in the AMGPCG_Pybind_Torch repository to install the AMGPCG pybind.
To run the plesiosaur example, first download the pose sequence from here, unzip it under the same folder as the src code, then execute:
python run_vpfm.pyHyperparameters can be tuned by changing the values in the file hyperparameters.py. Different initial conditions can be found in init_conditions.py.
The results will be stored in logs/[exp_name]/vtks. We recommend using ParaView to load these .vti files as a sequence and visualize them by selecting Volume in the Representation drop-down menu.
If you find our paper or code helpful, consider citing:
@article{wang2025vortex,
title={Fluid Simulation on Vortex Particle Flow Maps},
author={Wang, Sinan and Zhou, Junwei and Feng, Fan and Li, Zhiqi and Sun, Yuchen and Chen, Duowen and Turk, Greg and Zhu, Bo},
journal={ACM Transactions on Graphics (TOG)},
volume={44},
number={4},
pages={1--24},
year={2025},
publisher={ACM New York, NY, USA}
}