Skip to content

BartLeplae/GPS-Periodic-Patterns

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GPS Relativistic Time Dilation: Hypothesis Simulator

This project investigates a hypothesis related to the Special Theory of Relativity, specifically how the velocity of a clock relative to different reference frames influences its perceived rate (time dilation).

The goal is to simulate an alternative relativistic model and determine if it could explain documented, sub-centimeter periodic errors found in global GPS time series.

The document "Alice and Bob Hafele-Keating.pdf" in the docs folder illustrates the context.


Hypotheses

Null Hypothesis ($H_0$)

The Standard ECI Model: The "proper" time is maximized in the Earth-Centered Inertial (ECI) frame.

  • This frame does not rotate with the Earth and maintains a fixed orientation toward distant stars.
  • In this model, GPS satellites maintain a constant orbital velocity relative to the ECI, resulting in a stable, predictable clock rate.

Alternative Hypothesis ($H_1$)

The Solar-Translation Model: The "proper" time is maximized in a frame that translates with the Earth’s orbit around the Sun but does not rotate with the Earth.

  • In this frame, the velocity of a GPS satellite is the vector sum of its orbital velocity around Earth and Earth's orbital velocity around the Sun.
  • Consequently, the satellite's velocity fluctuates relative to this frame, causing its clock to tick at a variable rate.

Observed Anomalies in Research

Current geodetic research has identified unexplained millimeter-level (mm) deviations in GPS data. These anomalies serve as the benchmark for our simulation:

Attribute Observed Deviation Characteristic
Pervasiveness Identified consistently across all timeframes and global locations.
Magnitude Typically a few millimeters in North, East, and Up components.
Periodicity Patterns exhibit harmonics of the GPS draconitic year (~351.4 days).
Component Correlation NEU (North East Up) directions do not correlate with each other at a single station.
Spatial Correlation Deviations are spatially correlated for neighboring stations up to 3,000 km.

Key References


Usage: Execution Sequence

This project consists of 8 scripts that must be run in order. Ensure the GPS ground station data is placed in data/external before starting.

  1. 0_initialise.py: Writes a timestamp file
  2. 1_gps_satellite_orbit_simulation.py: Simulates raw orbital paths.
  3. 1a_visualize_gps_satellite_orbits.py: Visualizes planes and annual rotation.
  4. 2_gps_satellite_mm_deviation.py: Calculates clock bias (mm) comparing ECI vs. Barycentric motion.
  5. 2a_gps_satellite_mm_deviation_spectral_analysis.py: Runs spectral analysis to find modulation periods.
  6. 3_gps_periodic_patterns_observer.py: Projects deviations onto ground observer coordinates (ENU).
  7. 3a_gps_periodic_patterns_spectral_analysis.py: Identifies Draconitic vs. Solar year harmonics in station series.
  8. 3b_gps_periodic_patterns_spatial_correlation.py: Maps spatial correlation across the IGS Network.

Important

Resource Intensive: These scripts are CPU and memory-intensive. While they have been parallelized where possible to optimize performance, significant processing time may be required.

Reference Configuration: This project was developed and tested on a MacBook Pro with a 10-core CPU and 32 GB of RAM. Expect higher execution times on systems with fewer resources.


🏁 Conclusions & Key Findings

Warning

Independent Verification Required: The methodologies and scripts presented in this project require independent peer verification before the following conclusions can be finalized. While care was taken in the theoretical approach, a significant portion of the codebase was developed with the assistance of Artificial Intelligence. The code include assumptions on how the atomic clocks are continuously adjusted and how satellites are selected for optimal positioning accuracy.

Based on the simulations conducted using the Alternative Hypothesis ($H_1$), the following conclusions can be drawn regarding the periodic patterns in GPS positioning:

1. Verification of the Draconitic Effect

The simulation replicates some, but not all of the periodic deviations that align with the GPS draconitic year (~351.4 days). Only the harmonics with a shorter periodicity show up. These periodic deviations only show up after including a very small scaling factor Power Spectrum for UP

2. Spatial and Component Correlation

  • Coordinate Independence: As observed in historical IGS data, the simulated deviations in North, East, and Up directions show minimal cross-correlation, effectively mirroring real-world signal noise profiles. Cross-correlation

  • Regional Coherence: The model confirms that stations within a 3,000 km radius experience similar "clock-drift" signatures, providing a potential physical explanation for the known spatial correlations in global GNSS networks. Spatial-correlation Spatial-correlation

3. Impact on Precision

The magnitude of the simulated effect consistently falls within the 1–5 mm range. Magnitude This may impact Absolute GPS measurements. For Relative GPS measurements, there is no impact as receiver and reference point share the same deviations.


Installation & Setup

  1. Clone the repository:

    git clone https://github.com/BartLeplae/GPS-Periodic-Patterns.git
    cd gps_periodic_patterns
  2. Set up the environment:

    conda env create -f environment.yml
    
  3. Activate the environment:

    conda activate gps_periodic_patterns

Project Structure

gps_periodic_patterns/
├── data/
│   ├── external/       # Third-party data files (e.g. GPS ground station locations)
│   ├── raw/            # Intermediate simulation binaries
│   └── processed/      # Final analysis images and plots
├── src/                # Source code
├── docs/               # Additional documentation
├── .gitignore          # Files to exclude from Git
├── environment.yml     # 
├── requirements.txt    # Python dependencies
├── LICENSE             # MIT License
└── README.md           # Project documentation

License

This project is licensed under the MIT License. This means you are free to use, modify, and distribute the software for both personal and commercial purposes, provided the original license and copyright notice are included.

See the LICENSE file for the full text.


Contact

Bart Leplae Email: bartleplae@hotmail.com
GitHub: github.com/BartLeplae

Please feel free to reach out for collaborations, questions regarding the relativistic simulations, or to report issues.

About

This project investigates a hypothesis related to the Special Theory of Relativity, specifically how the velocity of a clock relative to different reference frames influences its perceived rate (time dilation).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages