This code remains under active development, hence the interface is not stable and should not be relied upon.
Aragog is a Python package that computes the 1-D interior dynamics of rocky mantles that are solid, liquid, or mixed phase. It is mostly a pure Python version of the SPIDER code originally written in C albeit with some differences. Note that the atmosphere module in the original SPIDER code is now supported by a separate and more comprehensive Python package Atmodeller (release forthcoming).
Documentation: https://aragog.readthedocs.io
Source code: https://github.com/ExPlanetology/aragog
If you use Aragog (or the original SPIDER code) please cite:
- Bower, D.J., P. Sanan, and A.S. Wolf (2018), Numerical solution of a non-linear conservation law applicable to the interior dynamics of partially molten planets, Phys. Earth Planet. Inter., 274, 49-62, doi: https://doi.org/10.1016/j.pepi.2017.11.004.
Open access versions of the publication are available:
- arXiv: https://arxiv.org/abs/1711.07303
- EarthArXiv: https://eartharxiv.org/k6tgf
The basic procedure is to install Aragog into a Python environment. For example, if you are using a Conda distribution to create and manage Python environments (e.g. Anaconda), create a new environment noting that Aragog requires Python >= 3.10. Once created, make sure to activate the environment. To achieve this, terminal commands are given below, but you can also use the Anaconda Navigator (or similar GUI) to create and activate environments:
conda create -n aragog python
conda activate aragog
Alternatively, you can create and activate a virtual environment.
Finally, install Aragog into the activated environment:
pip install aragog
Navigate to a location on your computer and obtain the source code using git:
git clone git@github.com:ExPlanetology/aragog.git aragog
cd aragog
Install Aragog into the environment using either (a) Poetry or (b) pip. There are some subtle differences between Poetry and pip, but in general Aragog is configured to be interoperable for most common operations (e.g. see this Gist).
-
(a) Poetry option, which requires that Poetry is installed:
poetry install --all-extras
-
(b) pip option, where the
-e
option is for an editable install:pip install -e ".[docs]"
If desired, you will need to manually install the dependencies for the tests, which are automatically installed by Poetry but not by
pip
. See the additional dependencies to install inpyproject.toml
.