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.
Documentation: https://proteus-framework.org/aragog
Source code: https://github.com/FormingWorlds/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
Note: The standard way of installing this version of Aragog is within the PROTEUS Framework, as described in the PROTEUS installation guide.
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 aragogAlternatively, you can create and activate a virtual environment.
Finally, install Aragog into the activated environment:
pip install fwl-aragogNavigate to a location on your computer and obtain the source code using git:
git clone git@github.com:FormingWorlds/aragog.git aragog
cd aragogInstall 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 --with docs(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 in pyproject.toml.
More comprehensive set up guides are available here:
Aragog requires lookup table data storing thermophysics properties of the liquid and solid matter. These data are stored in an OSF repository and on a Zenodo record. You can download it with the command:
aragog download allThe command aragog env will give you the path where the data have been downloaded. If you want to set up your own path, setup the environment variable FWL_DATA before running the download command:
export FWL_DATA=your_absolute_path/