Skip to main content

Parallel.GAMIT

A Python wrapper to manage GNSS data and metadata and parallelize GAMIT executions

Author: Demián D. Gómez

Parallel.GAMIT (PGAMIT) is a Python software solution for parallel GNSS processing of large regional or global networks. It incorporates a metadata and RINEX data management tool that guarantees a consistent archive. It relies on Postgres SQL (https://www.postgresql.org/) to store station metadata and the GPSPACE Precise-Point-Positioning (PPP) software (see installation instructions) to obtain reliable daily a-priori coordinates for GAMIT.

The software can be installed as a Python package (see INSTALL.md) allowing to import modules to perform time series analysis and extraction of trajectory parameters from the database.

PGAMIT also includes a backend (see branch web-ui-backend) and web frontend (see branch web-ui-frontend) that can be easily deployed to edit station related metadata (such as observation files and pictures) and processing metadata. The backend was developed in django and the frontend was developed using node.js.

PGAMIT uses dispy (https://github.com/pgiri/dispy) to create Python pickles that are sent to local or remote nodes for execution. PGAMIT has the ability to split a network of GNSS stations into subnetworks for processing in GAMIT (when the network is larger than 50 stations, depending on PGAMIT's configuration). The parallel execution is performed per day-subnetwork. In other words, a GAMIT pickle is built for each subnetwork-day being processed and sent to the available nodes. At the end of each PGAMIT run, the subnetworks are combined with GLOBK and inserted as records in the Postgres database for later use. Some routines (such as the SINEX parser) are modified versions of the code from @softwarespartan (https://github.com/softwarespartan).

Some of the tasks that PGAMIT can perform include:

  • Scan a directory structure containing RINEX files and add them to the Postgres database.
  • Manage station metadata in GAMIT's station info format with consistency check of the records.
  • Add new RINEX data to the database by geolocation, i.e. the data is incorporated not by station name but by running PPP and finding the corresponding station in the DB. This avoids problems with duplicate station codes and misidentified RINEX files.
  • Handle ocean loading coefficients to correct the PPP and GAMIT coordinates.
  • Plot PPP time series using Bevis and Brown's (2014) extended trajectory model.
  • Manage (i.e. add, merge, delete) GNSS stations.
  • Parse zenith tropospheric delays and store them in the database.
  • Stack the GAMIT solutions to produce regional or global reference frames following Bevis and Brown's (2014) and Gómez et al (2022).
  • Station name duplicate-tolerance by using a three-letter network code. Although this is not supported by GAMIT, PGAMIT converts duplicate station codes (stored in different networks) to unique IDs that are used during processing, which are later converted back to the original names after the GLOBK combination of the subnetworks.
  • Because all the information is stored in a relational database, PGAMIT can handle very large datasets easily (it has been tested with ~ 14M station-days but Postgres can easily handle more than 100 million records). Also, the relational database guarantees then consistency of the data and does not allow accidental duplicates in metadata.

Metadata

Release files for pgamit 1.2.47

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pgamit 1.2.47
File Size Uploaded
pgamit-1.2.47.tar.gz 4.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for pgamit 1.2.47
File Interpreter ABI Platform
pgamit-1.2.47-py3-none-any.whl Python 3 none any Details

Total release size: 4.3 MB

Release files / pgamit-1.2.47.tar.gz

Download URL pgamit-1.2.47.tar.gz
Size 4.0 MB
Tags Source
SHA-256 checksum
How to use checksums
6ae31b2d1976e3f9cf23e5ad001737f3c957860607a1fdb55a59ef83867fbd7c
BLAKE2b-256 checksum
How to use checksums
4327f0a4862883ba8fda02e44f00d86a03bd52d5bf159d9643aaaed395e0fde4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2025.

Transparency log

Release files / pgamit-1.2.47-py3-none-any.whl

Download URL pgamit-1.2.47-py3-none-any.whl
Size 384.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
421703e59262c31c63297fe13761e57066fd310760032a39e34b6c8a1cf41e74
BLAKE2b-256 checksum
How to use checksums
b39f0c306c5283b52a12796beb7075f4ac2f8184030f34bab362612be2f7427e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.2.47 This release

2 release files

1.2.46

2 release files

1.2.45

2 release files

1.2.44

2 release files

1.2.43

2 release files

1.2.42

2 release files

1.2.41

2 release files

1.2.40

2 release files

1.2.39

2 release files

1.2.38

2 release files

1.2.37

2 release files

1.2.36

2 release files

1.2.35

2 release files

1.2.34

2 release files

1.2.33

2 release files

1.2.32

2 release files

1.2.31

2 release files

1.2.30

2 release files

1.2.29

2 release files

1.2.28

2 release files

1.2.27

2 release files

1.2.26

2 release files

1.2.25

2 release files

1.2.23

2 release files

1.2.22

2 release files

1.2.21

2 release files

1.2.20

2 release files

1.2.19

2 release files

1.2.18

2 release files

1.2.15

2 release files

1.2.14

2 release files

1.2.13

2 release files

1.2.12

2 release files

1.2.11

2 release files

1.2.10

2 release files

1.2.9

2 release files

1.2.8

2 release files

1.2.7

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.1

1 release file

1.1.25

1 release file

1.1.24

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page