GPS Multi-correlator

MATLAB class dedicated to the simulation of a GPS Multi-correlator
88 Downloads
Updated 3 Sep 2024

View License

GpsMultiCorrelator is a MATLAB class includes the properties and methods necessary for:
  • The setting of a local signal in terms of hypotheses on received signal (PRN, Doppler and code phase),
  • The definition of correlator characteristics, in terms of filter frequencies, correlator code phases, integration period and code phase increment to be applied at the end of integration period,
  • The injection of a received signal, as complex temporal values (see GpsSignals class for the synthesis of GPS signals),
  • The calculation of energy matrices, for the defined filter frequencies and correlator code phases and non-coherent integration period, taking into account the code phase increment updating the next matrix correlator code phases,
  • The calculation of in-phase/quadrature components, for the defined correlator code phases and a coherent integration period of 1ms,
  • The estimation of through non-coherent and coherent methods, applied to in-phase/quadrature components,
  • The estimation of code phase through a discriminator based on early, prompt and late correlators, applied to in-phase/quadrature components.

Cite As

Eric Ogier (2025). GPS Multi-correlator (https://www.mathworks.com/matlabcentral/fileexchange/125080-gps-multi-correlator), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2019a
Compatible with R2019a and later releases
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: GPS Signals

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

GPS Multi-correlator

Version Published Release Notes
1.0.4

Correction of C/N0 formula in live code.

1.0.3

Correction of correlation (complex conjugation of local signal)

1.0.2

Update of example (see "GpsMultiCorrelatorLiveCode.mlx")

1.0.1

Correction of the mathematical formulae provided in the example.

1.0.0