Installation and References

last update January 19th (2025) Hajime Kawahara, updated for pyproject.toml build system

Python 3.9 or later is required

ExoJAX requires Python 3.9 or later.

Warning

For using vaex in the common API for molecular database I/O, we currently recommend using Python 3.9 or 3.10.

Linux, Windows WSL, macOS

The simplest way to install ExoJAX is from PyPI:

pip install exojax

Alternatively, clone the code from the GitHub repository and install locally:

git clone https://github.com/HajimeKawahara/exojax.git
cd exojax
pip install .

Note

This project now uses a pyproject.toml-based build. setup.py install is deprecated and should not be used.

If you have an older version of ExoJAX already installed, it is recommended to uninstall it first to avoid conflicts with removed modules:

pip uninstall exojax

JAX and GPU Support

To take advantage of GPU acceleration, you need a compatible GPU and to install the appropriate jaxlib build for your CUDA or ROCm version.

First, check your CUDA version (if using NVIDIA GPUs):

nvcc -V

Then install JAX with GPU support as described in the official JAX installation guide.

Example for CUDA 12:

pip install --upgrade "jax[cuda12]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html

Example for CUDA 11:

pip install --upgrade "jax[cuda11]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html

If you do not have a GPU, you can simply install the CPU version:

pip install --upgrade jax

Windows Anaconda

Not supported yet.

References

🟢 ExoJAX Paper I: Kawahara, Kawashima, Masuda, Crossfield, Pannier, van den Bekerom (2021) accepted by ApJS: arXiv:2105.14782

🟢 ExoJAX Paper II: Kawahara, Kawashima, Tada et al: arXiv:2410.06900

Many techniques/databases are used in ExoJAX.