terratools: A Python package to analyse TERRA mantle convection simulations

terratools: A Python package to analyse TERRA mantle convection simulations - Published in JOSS (2025)

https://github.com/mantle-convection-constrained/terratools

Science Score: 89.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    7 of 13 committers (53.8%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords from Contributors

labels
Last synced: 2 months ago · JSON representation

Repository

Tools to read, analyse and visualise models written by the TERRA mantle convection code

Basic Info
Statistics
  • Stars: 7
  • Watchers: 4
  • Forks: 7
  • Open Issues: 11
  • Releases: 5
Created over 3 years ago · Last pushed 3 months ago
Metadata Files
Readme Changelog Contributing License

README.md

TerraTools

Tools to read, analyse and visualise models written by the TERRA mantle convection code. TerraTools is released under an MIT License.

DOI

Homepage: https://terratools.readthedocs.io/en/latest/
Documentation: https://terratools.readthedocs.io/en/latest/
Source code: https://github.com/mantle-convection-constrained/terratools

Citing TerraTools

We are currently have a JOSS Paper in review, watch this space.

Installation

Requirements

TerraTools requires Python version 3.9 or newer.

If you want to use the map plotting functions (such as TerraModel.plot_layer), make sure you have a working installation of Cartopy.

Pre-installation

If you are using a Conda-like package manager (e.g., Miniconda or Mamba), we recommend always creating a new environment for each project you are working on into which you install TerraTools. For instance: sh conda create -n amazing_mantle_convection_project python=3.11 conda activate amazing_mantle_convection_project

This is entirely optional but often prevents issues with dependency version conflicts.

Installing the latest released version

Installation with pip

Before installing TerraTools with pip, first install and/or upgrade your version of pip: sh python -m ensurepip --upgrade

To install the latest released version of TerraTools, then do: sh python -m pip install terratools

Installation with dependency management systems

If you use a dependency management system such as Poetry or Pipenv you should add terratools as a dependency of your project.

Installing the development version

You can also install the latest development version of TerraTools from source. To do this, first clone the repository onto your local machine using git: sh git clone https://github.com/mantle-convection-constrained/terratools.git Then navigate to the top level directory and install in development mode: sh cd terratools; python -m pip install -ve .

Post-installation

Finally, check you have a fully working installation: sh python -c "import terratools"

Reporting bugs

If you would like to report any bugs, please raise an issue on GitHub.

Contributing to TerraTools

If you would like to contribute bug fixes, new functions or new modules to the existing codebase, please fork the terratools repository, make the desired changes and then make a pull request on GitHub.

Acknowledgement and Support

This project is supported by NERC Large Grant MC-squared.

JOSS Publication

terratools: A Python package to analyse TERRA mantle convection simulations
Published
December 15, 2025
Volume 10, Issue 116, Page 7539
Authors
Andy Nowacki ORCID
School of Earth and Environment, University of Leeds, UK
James Panton ORCID
School of Earth and Environmental Sciences, Cardiff University, UK
Jamie Ward ORCID
School of Earth and Environment, University of Leeds, UK
Bob Myhill ORCID
School of Earth Sciences, University of Bristol, UK
Andrew Walker ORCID
Department of Earth Sciences, University of Oxford, UK
James Wookey ORCID
School of Earth Sciences, University of Bristol, UK
J. Huw Davies ORCID
School of Earth and Environmental Sciences, Cardiff University, UK
Editor
Kristen Thyng ORCID
Tags
Earth sciences mantle convection

GitHub Events

Total
  • Issues event: 14
  • Watch event: 1
  • Delete event: 11
  • Issue comment event: 41
  • Push event: 26
  • Pull request review comment event: 1
  • Pull request review event: 3
  • Pull request event: 25
  • Fork event: 1
  • Create event: 14
Last Year
  • Issues event: 14
  • Watch event: 1
  • Delete event: 11
  • Issue comment event: 41
  • Push event: 26
  • Pull request event: 24
  • Pull request review comment event: 1
  • Pull request review event: 3
  • Fork event: 1
  • Create event: 14

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 353
  • Total Committers: 13
  • Avg Commits per committer: 27.154
  • Development Distribution Score (DDS): 0.734
Past Year
  • Commits: 25
  • Committers: 5
  • Avg Commits per committer: 5.0
  • Development Distribution Score (DDS): 0.52
Top Committers
Name Email Commits
Andy Nowacki a****i@l****k 94
James Panton p****c@c****k 92
Bob Myhill m****b@g****m 54
James Ward e****a@l****k 37
eejwa e****a@l****k 31
James Panton j****3@g****m 23
James Wookey j****y@b****k 9
Andrew Walker a****r@e****k 7
dependabot[bot] 4****]@u****m 2
Andy Nowacki a****i@g****m 1
Franck Latallerie f****e@u****r 1
James Wookey g****w@b****k 1
daviesjh2 d****2@u****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 5 months ago

All Time
  • Total issues: 41
  • Total pull requests: 159
  • Average time to close issues: 4 months
  • Average time to close pull requests: 7 days
  • Total issue authors: 9
  • Total pull request authors: 8
  • Average comments per issue: 1.66
  • Average comments per pull request: 0.35
  • Merged pull requests: 137
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 6
  • Pull requests: 15
  • Average time to close issues: 4 months
  • Average time to close pull requests: about 2 months
  • Issue authors: 3
  • Pull request authors: 3
  • Average comments per issue: 1.33
  • Average comments per pull request: 0.33
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • anowacki (26)
  • andreww (3)
  • bobmyhill (3)
  • jwookey (2)
  • bch0w (2)
  • jamespanton93 (2)
  • eejwa (1)
  • aadelfareed (1)
  • FranckLatallerie (1)
Pull Request Authors
  • jamespanton93 (57)
  • bobmyhill (49)
  • anowacki (39)
  • eejwa (6)
  • jwookey (5)
  • andreww (1)
  • daviesjh2 (1)
  • dependabot[bot] (1)
Top Labels
Issue Labels
documentation (6) ci (4) enhancement (4) bug (3) code-quality (1) help wanted (1) good first issue (1)
Pull Request Labels
bug (2) ci (1) dependencies (1) github_actions (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 123 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 6
  • Total maintainers: 3
pypi.org: terratools

Tools to read, analyse and visualise models written by the TERRA mantle convection code.

  • Versions: 6
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 123 Last month
Rankings
Dependent packages count: 6.6%
Forks count: 17.3%
Stargazers count: 23.3%
Average: 29.1%
Dependent repos count: 30.6%
Downloads: 67.8%
Maintainers (3)
Last synced: 3 months ago

Dependencies

docs/requirements.txt pypi
  • jinja2 >=3.0.2
  • markdown >=3.2
  • mkdocs >=1.3.0
  • mkdocs-material-extensions >=1.0.3
  • pygments >=2.12
  • pymdown-extensions >=9.4
pyproject.toml pypi
  • ipython ^8.5.0 develop
  • Cartopy ^0.21.0
  • matplotlib ^3.5
  • netcdf4 ^1
  • numpy ^1.23
  • python ^3.8
  • scikit-learn ^1.1.2
  • scipy ^1.6
.github/workflows/draft-pdf.yml actions
  • actions/checkout v2 composite
  • actions/upload-artifact v1 composite
  • openjournals/openjournals-draft-action master composite
.github/workflows/main.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • actions/upload-artifact v2 composite