Skip to main content

Spatial-temporal Fourier Transformer

Project description

StFT

Spatio-temporal Fourier Transformer for Long-term Dynamics Prediction

StFT architecture

Overview

StFT is a multi-scale spatiotemporal forecasting model for long-horizon dynamics prediction.
This repository provides training code for plasma MHD data and core model components.

Repository Structure

  • train.py — training entrypoint
  • StFT_3D.py — StFT model definition
  • data_utils.py — dataset/loss/grid utilities
  • model_utils.py — Transformer layers and positional embeddings

Installation

git clone https://github.com/BerkeleyLab/StFT.git
cd StFT

Install dependencies:

pip install -r requirements.txt

GPU note: On CUDA systems, install a CUDA-compatible PyTorch build first using the official PyTorch instructions.

Training StFT

To train StFT on the plasma MHD dataset:

python train.py

By default, the results will be saved to the ~/ray_results at home directory.
To customize the saved directory, you can change the save_path variable in the train.py file.

Example Results

Autoregressive error over time
Mean relative L2 error across autoregressive rollout timesteps.


Qualitative comparison
Qualitative long-horizon error comparison across autoregressive baselines.

References

@article{stft2026,
  title={St{FT}: Spatio-temporal Fourier Transformer for Long-term Dynamics Prediction},
  author={Long, Da and Zhe, Shandian and Williams, Samuel and Oliker, Leonid and Bai, Zhe},
  journal={Transactions on Machine Learning Research},
  issn={2835-8856},
  year={2026},
  url={https://openreview.net/forum?id=o9Cb0ri2oW},
}

See the LICENSE file for copyright and licensing information.


- Copyright Notice -

Spatio-temporal Fourier Transformer for Long-term Dynamics Prediction (StFT) Copyright (c) 2025, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Dept. of Energy). All rights reserved.

If you have questions about your rights to use or distribute this software, please contact Berkeley Lab's Intellectual Property Office at IPO@lbl.gov.

NOTICE. This Software was developed under funding from the U.S. Department of Energy and the U.S. Government consequently retains certain rights. As such, the U.S. Government has been granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the Software to reproduce, distribute copies to the public, prepare derivative works, and perform publicly and display publicly, and to permit others to do so.

Questions? Contact Zhe Bai (zhebai@lbl.gov)


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

stft_transformer-0.1.2.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

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

stft_transformer-0.1.2-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file stft_transformer-0.1.2.tar.gz.

File metadata

  • Download URL: stft_transformer-0.1.2.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for stft_transformer-0.1.2.tar.gz
Algorithm Hash digest
SHA256 581c488e5af2ea472de44f1631685912ce2361915fb44a832209a5c4cbc6904e
MD5 4eda80719fc283eacd96ad43c307d358
BLAKE2b-256 6458ff4af947f771326c9fd3e907293e0563c43c8f2ffb434e277e0c0c42cf6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for stft_transformer-0.1.2.tar.gz:

Publisher: publish.yml on BerkeleyLab/StFT

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file stft_transformer-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for stft_transformer-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d849ec6848bd494fcf9bb5e600c7193c369fca14e2f44caae1c3deb3065174b9
MD5 855a8393e2f3beed7e817a1062db14f0
BLAKE2b-256 3b3891a5673ff60bb9f58c9e123d8bb8e7aa1ba1aa200c1753afb4f2d46410d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for stft_transformer-0.1.2-py3-none-any.whl:

Publisher: publish.yml on BerkeleyLab/StFT

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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