GPlates is a desktop application for the interactive visualisation of plate tectonics.
PyGPlates is a library for accessing GPlates functionality via the Python programming language.
Citations:
Müller, R. D., Cannon, J., Qin, X., Watson, R. J., Gurnis, M., Williams, S., Pfaffelmoser, T., Seton, M., Russell, S. H. J. ,Zahirovic S. (2018). GPlates: Building a virtual Earth through deep time. Geochemistry, Geophysics, Geosystems, 19, 2243-2261.
GPlates is a plate tectonics program with a range of features for visualising and manipulating plate tectonic reconstructions and associated data through geological time.
PyGPlates is a Python package enabling fine-grained access to the core tectonic plate reconstruction functionality in GPlates.
Both GPlates and pyGPlates are available in this repository.
The initial release of GPlates, version 0.5 Beta, debuted on October 30, 2003. Since its inception, GPlates has evolved into a robust software suite encompassing desktop application, Python libraries, web service and application, and mobile app, offering a comprehensive range of functionalities.
GPlates is developed by an international team of scientists and software developers.
Public releases and development snapshots can be compiled from the primary branches in this repository.
Primary branches
To compile the latest official public release:
For GPlates, use the release-gplates branch.
For PyGPlates, use the release-pygplates branch.
To compile the latest development snapshot:
For GPlates, use the gplates branch (the default branch).
For PyGPlates, use the pygplates branch.
Note: Please do not compile GPlates from a pyGPlates branch (or compile pyGPlates from a GPlates branch).
Development branching model
The branching model used in this repository is based on gitflow, with:
main branches named:
release-gplates to track the history of GPlates releases
release-pygplates to track the history of pyGPlates releases
Note: To see the list of all public releases on the command-line, type: git log --first-parent release-gplates release-pygplates
develop branches named:
gplates for development of GPlates
pygplates for development of pyGPlates
gplates-3.0-dev for development of GPlates 3.0
this long-lived branch differs significantly from the gplates branch
it includes the replacement of OpenGL with Vulkan (in progress), among other features
it will eventually be merged back into gplates and turned into the GPlates 3.0 release
Note: The default branch is gplates
(synonymous with the typical ‘main’ or ‘master’ branch in other repositories).
feature branches named:
feature/<name> for developing a new feature
Note: These short-lived branches are merged back into their parent develop branch
(gplates, pygplates, or even gplates-3.0-dev).
release branches named:
release/gplates-<gplates_version> for preparing a GPlates release
release/pygplates-<pygplates_version> for preparing a pyGPlates release
Note: These short-lived branches are merged into release-gplates or release-pygplates
(main branch containing all GPlates or pyGPlates releases) and also merged into gplates or pygplates (develop branch).
hotfix branches named:
hotfix/gplates-<gplates_version> for preparing a GPlates bug fix release
hotfix/pygplates-<pygplates_version> for preparing a pyGPlates bug fix release
Note: These short-lived branches are merged into release-gplates or release-pygplates
(main branch containing all GPlates or pyGPlates releases) and also merged into gplates or pygplates (develop branch).
GPlates is a desktop application for the interactive visualisation of plate tectonics.
PyGPlates is a library for accessing GPlates functionality via the Python programming language.
Citations:
Introduction
GPlates is a plate tectonics program with a range of features for visualising and manipulating plate tectonic reconstructions and associated data through geological time.
PyGPlates is a Python package enabling fine-grained access to the core tectonic plate reconstruction functionality in GPlates.
The initial release of GPlates, version 0.5 Beta, debuted on October 30, 2003. Since its inception, GPlates has evolved into a robust software suite encompassing desktop application, Python libraries, web service and application, and mobile app, offering a comprehensive range of functionalities.
GPlates is developed by an international team of scientists and software developers.
For more information please visit the GPlates website.
Documentation
The documentation includes:
There is also a GPlates online forum for the users, developers and researchers to discuss topics related to GPlates and pyGPlates.
Installation
Binary packages
GPlates can be installed on Windows, macOS (Intel and Silicon) and Ubuntu via ready-to-use binary packages. These packages also include GPlates-compatible geodata.
PyGPlates can be installed using conda or pip. Please see the installation instructions in the pyGPlates documentation.
Source code
The source code can be compiled on Windows, macOS and Linux.
The source code is obtained by checking out a primary branch in this repository.
Instructions for installing the dependencies and compiling GPlates/pyGPlates can be found in the source code, in the files:
DEPS.LinuxandBUILD.Linux(on Linux)DEPS.OSXandBUILD.OSX(on macOS)DEPS.WindowsandBUILD.Windows(on Windows)GPlates and pyGPlates are free software (also known as open-source software), licensed for distribution under the GNU General Public License (GPL) version 2 (see
COPYING).Dependencies
Repository
Public releases and development snapshots can be compiled from the primary branches in this repository.
Primary branches
To compile the latest official public release:
release-gplatesbranch.release-pygplatesbranch.To compile the latest development snapshot:
gplatesbranch (the default branch).pygplatesbranch.Development branching model
The branching model used in this repository is based on gitflow, with:
release-gplatesto track the history of GPlates releasesrelease-pygplatesto track the history of pyGPlates releasesgplatesfor development of GPlatespygplatesfor development of pyGPlatesgplates-3.0-devfor development of GPlates 3.0gplatesbranchgplatesand turned into the GPlates 3.0 releasefeature/<name>for developing a new featurerelease/gplates-<gplates_version>for preparing a GPlates releaserelease/pygplates-<pygplates_version>for preparing a pyGPlates releasehotfix/gplates-<gplates_version>for preparing a GPlates bug fix releasehotfix/pygplates-<pygplates_version>for preparing a pyGPlates bug fix release