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.1.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.1-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: stft_transformer-0.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 4e82d6d6b286d5857308eaaee0fd01976a661e24715639b844ad6ab2290e5b5e
MD5 eaf95e72bbecc88465bff3748aa59db4
BLAKE2b-256 972507bdc55985388a1e5d1a76bc4053e0fdf4f40656162638cbc2d4817d8a55

See more details on using hashes here.

Provenance

The following attestation bundles were made for stft_transformer-0.1.1.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.1-py3-none-any.whl.

File metadata

File hashes

Hashes for stft_transformer-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 50cc311ee8ff387f8b2050bc05486823e1f3ffc65b1534811a6a547f999e70e9
MD5 2148422651b525e8e4c328eddffae8b1
BLAKE2b-256 8ef49c9b7af45fcd7b200ddf5de7a2ebcdd11c5d01f61143879667b79092d95d

See more details on using hashes here.

Provenance

The following attestation bundles were made for stft_transformer-0.1.1-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