Installation and References
last update October 3rd (2024) Hajime Kawahara
Python 3.9 or later is required
ExoJAX requires python 3.9 or later.
Warning
For using vaex as molecular-based I/O, we currently recommend using Python 3.9. In the near future, we plan to support Python 3.10 and Python 3.11 as well. Oct 3. (2024)
Linux, Windows WSL, Mac
At the very least, you can start using exojax through pypi.
pip install exojax
Alternatively, clone the code from github page and run
python setup.py install
If the older version of ExoJAX has already been installed, you need to remove all of the old modules (Otherwise, modules that have been deleted and no more exist in the current version remain). To do so, the following procedure is recommended:
python setup.py clean --all
python setup.py install
However, to take advantage of the power of JAX, you need to prepare a GPU environment (if you have). For this, jaxlib need to be linked.
You should check the cuda version of your environment as
nvcc -V
Here is an example of installation for jaxlib in linux system. See JAX installation page for the details.
pip install -U "jax[cuda12]"
Windows Anaconda
Not supported yet.
References
🟢 ExoJAX Paper I: Kawahara, Kawashima, Masuda, Crossfield, Pannier, van den Bekerom (2021) accepted by ApJS: arXiv:2105.14782
Many techniques/databases are used in ExoJAX.
JAX: Bradbury, J., Frostig, R., Hawkins, P., et al. 2018, JAX: composable transformations of Python+NumPy programs, JAX
NumPyro: Phan, D., Pradhan, N., & Jankowiak, M. 2019, arXiv:1912.11554
JAXopt: Blondel, M., Berthet, Q., Cuturi, M. et al. 2021 arXiv:2105.15183
Vaex: Breddels and Veljanoski (2018) arXiv:https://arxiv.org/abs/1801.02638
Algorithm 916: Zaghloul and Ali (2012) arXiv:1106.0151
ExoMol: Tennyson et al. (2016)
HITRAN/HITEMP
VALD3
VIRGA for refractive indices of condensates
PyMieScatt for Mie scattering
Flux-adding treatment by Robinson and Crisp (2018)
RADIS, see below.
Other many packages/algorithms. See arXiv:2105.14782 and a forthcoming paper (Kawahara, Kawashima et al.) for the details.