GNSS Satellites

ODTK represents a GNSS satellite in the Browser and in the ODTK toolbar using the icon. There are also menu options that let you add and remove GNSS satellites.

See GNSS Satellite Orbits and Clocks for an overview of and guide to the application of ODTK to GNSS satellite and clock estimation.

Properties available for GNSS satellites only

You can configure the following properties for a GNSS satellite:

GNSSSatellite properties
Property Description
PRN You can identify a GNSS satellite by its SV identifier or its pseudorandom noise (PRN) code identifier. The PRN number is in the range 1-31 and can be reused after a satellite becomes inactive or decommissioned.
SVN This is the Space Vehicle Number associated with the PRN. The SVN increases for each GNSS SV launched, whereas the PRN stays within the fixed range 1-31.
BlockType This identifies the SV Block Type,such as II, IIA, IIR, etc., and is read only.
GroupDelay This is the SV group delay differential between L1 and L2. It is a correction term that only applies to single-frequency measurements (reference ICD- GNSS-200, 20.3.3.3.3.2). The group delay is unique to each SV. It is initially calculated via a ground calibration and then can be updated to reflect on-orbit performance.
SimConstraints See the SimConstraints table.
ClockControls See the table below.
ClockUncertainty See the table below.
OrbitClockCorrelations This is a 9 by 9 ephemeris/clock error covariance.
PartitionControls See the description below.

Simulation constraints

Use these settings to collect constraints that apply to the simulation of GNSS satellites.

SimConstraints properties
Property Description
GainPatternConstraint

Use this to apply a link constraint based on GNSS gain-pattern geometry when generating simulated measurements. The options are:

  • Based on GNSS Constellation - Use the SimConstraints.GainPatternConstraint setting from the GNSS Constellation that contains the satellite.
  • Off - Apply no constraint based on the gain pattern of the satellite antenna. During GNSS measurement simulation, ODTK will consider a satellite visible to this GNSS satellite only if it is not obstructed by Earth.
  • L1: Main Lobe - Defines a field of view for the GNSS satellite using the L1 Main Lobe data in the Gain Geometry Data File. This file is at ProgramData/AGI/ODTK 7/Databases/GNSS/GNSSGainGeometry.txt. For more information, see GNSS Gain Characterization Data.
  • L1: Main & First Side Lobe - Defines a field of view for the GNSS satellite in the GNSS constellation using the L1 Main and First Side Lobe data in the Gain Geometry Data File. This file is at ProgramData/AGI/ODTK 7/Databases/GNSS/GNSSGainGeometry.txt. For more information, see GNSS Gain Characterization Data.
  • Custom - Defines a field of view for the GNSS satellite using the SimConstraints.HalfAngleFOV property.
HalfAngleFOV Defines a conical field of view with the vertex at the GNSS satellite and an axis passing through the center of Earth. During simulation of GNSS measurements, ODTK considers a satellite to be visible to a GNSS satellite only if it is not obstructed by Earth and is within the field of view.

Clock controls

For clock controls, phase is the current time, frequency is the first derivative of phase, and aging is the second derivative. Thus, aging represents a long-term constant rate of change in frequency and a corresponding quadratic change in phase. The Aging_Sigma attribute specifies the uncertainty in the known long-term trend in frequency — a clock that runs faster and faster or slower and slower — and the AgingWN attribute is the process noise. The clock models are extremely sensitive to these quantities.

There is no Epoch attribute for a GNSSSatellite, in contrast to a GNSSReceiver. Thus, ODTK considers the initial phase estimate defined for the GNSSSatellite to be the value at the state creation time, whatever that time may be, even if the state creation time is different from the satellite epoch.

ClockControls properties
Property Description
ClockType This displays the type of clock (cesium or rubidium) being used by the PRN. This display is for information purposes only. The displayed data derives from the *_Catalog.txt file. Typically the clock type is indicative of clock stability statistics, which in turn impact the noise statistics for measurement processing.
Estimate This is read only and defaults to true.
PhaseBias This is the clock phase (time) offset estimate at state creation time (see the note below).
FreqBias This is the clock frequency offset estimate at state creation time (see the note below).
AgingBias This is the clock aging offset estimate at state creation time (see the note below).
A0
This is the frequency-modulated (FM) clock white noise statistic.
Aminus1 This is the FM clock flicker noise statistic (not modeled).
Aminus2 This is the FM clock random walk statistic.
AgingWN This is the FM clock drift statistic.
ClockResets This is a list of one or more of the following: clock phase, frequency, and aging reset events.

If state creation time (e.g., simulator or filter start time) is not the same as the satellite orbit epoch, then, while the satellite orbit is propagated forward or backward from the orbit epoch to the state epoch, the clock parameters are not. They are used at the state epoch as-is.

Clock uncertainty

The following are the clock uncertainty properties:

ClockUncertainty properties
Property Description
Phase_sigma This is the uncertainty associated with the phase bias estimate at the initial filter time. ODTK uses it to initialize the covariance when the GNSS Constellation attribute to estimate clocks is set to true. If the GNSS Constellation attribute to estimate clocks is set to false, then ODTK applies this uncertainty in the deweighting of measurements dependent upon the GNSS satellite clock phase (such as pseudorange).
Freq_sigma This is the uncertainty associated with the frequency bias estimate at the initial filter time. ODTK uses it to initialize the covariance when the GNSS Constellation attribute to estimate clocks is set to true. If you set the GNSS Constellation attribute to estimate clocks to false, then ODTK applies this uncertainty in the deweighting of measurements dependent upon the GNSS satellite clock frequency (such as carrier phase).
Aging_sigma This is the uncertainty associated with the aging bias estimate at the initial filter time. ODTK uses it to initialize the covariance when you set the GNSS Constellation attribute to estimate clocks to true.
PhaseFreq_correlation
PhaseAging_correlation
FreqAging_correlation
These are the cross-correlations among the above attributes.

In the case of GNSS Satellites, ODTK uses the orbit uncertainty to initialize the covariance when you set the GNSS Constellation attribute to estimate orbits to true. If you set the GNSS Constellation attribute to estimate orbits to false, then ODTK applies this uncertainty in the deweighting of measurements dependent upon the GNSS satellite position (such as pseudorange and carrier phase).

Partition controls

When you set the PartitionControls.SeparatePartition attribute to true, ODTK partitions the current SV from the remaining SVs. ODTK uses the measurements involving this SV in estimating only the orbit and clock of this SV, not allowing the measurements to affect the estimation of any other state parameter. However, ODTK uses the state and covariance estimates for the monitor stations (clock, troposphere, location, etc.) in the modeling of the SV measurements. This partitioning applies only to processing of nondifferenced range and phase measurements. It is ignored in the processing of single-differenced or double-differenced measurements.

This capability supports taking one or more satellites "off line" in the GNSS MCS application. The use case is as follows: The GNSS constellation has an "anomalous" satellite (e.g., the satellite is in a clock-swap recovery period). The satellite is to be kept "separate" from all the others, but it is desirable to have the filter take advantage of the estimates for monitor station clocks and tropospheric refraction as determined by the remaining "healthy" constellation.

Properties shared with other satellites

The following categories of properties are available for satellites generally, including GNSS satellites:

* Some properties in this category are not available for GNSS satellites. See the linked page.

Adding and removing GNSS satellites

When you select a GNSSConstellation object in the Object Browser, a GNSS Constellation menu appears in the main menu bar. That menu provides options that enable you to add and remove GNSS satellites.

Adding GNSS satellites

Select Add GNSS Satellites from the GNSS Constellation menu to add GNSSSatellite objects as children of the selected GNSS Constellation object. Note the following:

  1. You must select the GNSS Constellation object. There should not be any GNSS Satellite objects defined under the GNSS Constellation object. Make sure that you enter valid SVCatalog.Filename and Source.Filename.
  2. ODTK will create GNSS Satellite Objects for all PRNs defined in the GNSS Source file.
  3. To add just a single satellite, simply select one from the Object Catalog.

  4. ODTK uses the SVEstimatedStates.InitialStateEpoch time to define the state epoch, and it matches the PRNs in the Source file against the GNSS Catalog SV Launch/Decommission times to determine the SV number applicable to this PRN. ODTK then uses SV Catalog parameters for this SV as defaults for the GNSSSatellite object. If ODTK does not find a PRN/SV match in the Catalog, then it does not generate a GNSSSatellite object for that PRN.
  5. Orbit and Clock Initial State Estimates at the InitialStateEpochTime are set from the Source file.
  6. Orbit and Clock Initial State Covariance are set either from the GNSSConstellation object or from the SV Catalog, depending on the SVDefaultCovSource setting.
  7. Orbit, SRP, and Clock estimate flags are set from the SVEstimatedStates settings.

Removing GNSS satellites

Select "Remove GNSS Satellites" from the GNSS Constellation menu to delete all GNSSSatellite objects from the selected parent GNSSConstellation object.

If you remove GNSS satellites in this way, none of the changes you have made in them will be saved.