PPPH
A MATLAB-based Software for Multi-GNSS Precise
Point Positioning Analysis
User Manual
written by Berkay Bahadur
Hacettepe University
Ankara, Turkey
May 2018
1. Introduction
Over the last decades, Precise Point Positioning (PPP) has become a viable alternative
to differential and/or relative positioning techniques which dominates the GNSS com-
munity. Even though PPP enables centimeter- or millimeter-level positioning accuracy
with only one receiver in the global scale, it still requires a quite long observation period
to achieve high positioning accuracy. This period, typically called convergence time,
is the main drawback of PPP which restricts its widespread adoption. In recent years,
the completion of GLONASS constellation and the emergence of new satellite systems
offer considerable opportunity to improve the PPP performance in terms of positioning
accuracy and convergence time due to providing additional frequencies and satellite re-
sources. On the other hand, the integration of multi-GNSS observations entails more
complex models and algorithms compared with the traditional PPP approach that
includes GPS observations only. Considering the limited number of the alternatives,
PPPH was developed to benefit the potential advantages of the multi-constellation and
multi-frequency GNSS. PPPH is a GNSS analysis software, which can perform multi-
GNSS PPP analyses processing GPS, GLONASS, BeiDou, and Galileo observations.
Through its user-friendly graphical user interface, PPPH allows users to specify the
options, models, and parameters related to PPP process. Furthermore, several analysis
tools are provided by PPPH to assess the results obtained.
2. Installation
PPPH was developed in MATLAB environment since its matrix-based structure and
built-in graphics are highly suitable for technical computing, programming, and data
visualization. PPPH does not entail any toolbox or function except for MATLAB core
files. Two steps should be followed to open the graphical user interface (GUI) of PPPH:
(1) add the folder containing the source codes of PPPH into MATLAB search path
(2) type PPPH in MATLAB command line.
The interface of PPPH was developed using the MATLAB App Designer which is a spe-
cial environment to design and develop the visual components of a user interface. For
this reason, MATLAB version 2016a or newer is required for running PPPH. Further-
more, PPPH can be used with no problem in any operating system where MATLAB
has been installed, such as Windows, Mac, Unix/Linux, etc.
3. PPPH
PPPH is able to perform multi-GNSS PPP including GPS, GLONASS, Galileo and
BeiDou observations. PPPH utilizes undifferenced ionosphere-free multi-GNSS PPP
model. PPPH allows specifying options, models, and parameters about PPP processing
1
through its user-friendly interface. Fundamentally, PPPH consists of five main com-
ponents which are Data Importing, Preprocessing, Modeling, Filtering, and Analyzing
(Figure 1). The first four components utilize related models and theory to provide
multi-GNSS PPP solutions, while the last one is employed to evaluate and visualize
the results. Each component along with its related options is represented by a separate
tab in the user interface.
Figure 1: Main components of PPPH.
Figure 2 shows the main window of PPPH. Five fundamental tabs representing the
components of the software are located on the top of the main window. Just below,
there exist some options concerning about the selected tab. Configuration options,
epoch selection tool, and RUN button are also located on the bottom. Thanks to
configuration options, users are capable of saving their configurations and loading them
2
to use in PPP process whenever they want. The epoch selection section specifies the
epoch interval which will be included in the process. In order to initialize PPP process
in the software, RUN button is clicked. However, importing the related files, such
as observation, precise satellite orbit, and clocks, etc. into the software is required
before the initialization of PPP process. After the process, PPPH provides an output
file that contains estimated parameters for every single epoch. Moreover, the results
can be evaluated in terms of positioning accuracy, convergence time, etc. thanks to
analyzing tools provided by PPPH.
Figure 2: Main window of PPPH.
The explanation of each tab along with its preferences is respectively given below.
3.1. Data Importing
The first component of PPP, that is Data Importing, imports the files containing
navigation data which required for performing PPP process into the software format.
Before performing PPP process, the whole necessary files, such as observation, satellite
3
orbit, and clock, etc. should be imported into PPPH. There are several file formats
designed to exchange data within the GNSS community, e.g. RINEX, SP3, CLK, and
ATX. PPPH is able to deal with these standard exchange formats properly. Through
Data Importing tab (Figure 3), all the GNSS files can be selected and imported into
the software with ease.
Figure 3: Data Importing Tab of PPPH.
PPPH requires four fundamental data sources to perform PPP process; GNSS obser-
vations, satellite orbits, satellite clocks and antenna phase corrections. In addition,
differential code biases, as the fifth data source, can be imported into the software
depending on the user preference. The whole necessary files should be introduced
to PPPH by clicking the selection box to the related field. The comprehensive
explanation of Data Importing tab is given below in order of data sources.
Observations Observation File
RINEX (Receiver Independent Exchange Format ) is the standard format for GNSS
observations. PPPH is able to read and import the observations of GPS, GLONASS,
Galileo, and BeiDou given in RINEX 2 or 3 version. Any observation file in RINEX
format can be chosen by clicking the selection box situated next to the related field.
PPPH utilizes undifferenced and ionosphere-free multi-GNSS PPP model, which re-
quires dual frequency code pseudorange and carrier phase observations. It is well
known that navigation systems provide two different signals at least. However, the
4