GnssReceiverGenerator

Definition and basic information of GNSS receivers.

Most of the input files are provided in GROOPS file formats at https://ftp.tugraz.at/outgoing/ITSG/groops (marked with * below). These files are regularly updated.

It is possible to limit the observation types to be used in the processing by a list of useType and any observation types not defined within the list are ignored and discarded. Similarly observations defined in the list of ignoreType are ignored and discarded. The codes used follow the RINEX 3 definition.

Each receiver goes through a preprocessing step individually, where observation outliers are removed or downweighted, continuous tracks of phase observations are defined for ambiguity parametrization, cycle slips are detected, and receivers are disabled if they do not fulfill certain requirements. The preprocessing step consists of an initial PPP estimation done by robust least squares adjustment and checks whether the position error of the solutions exceeds codeMaxPositionDiff. If the error exceeds the threshold the receiver will be discarded. The preprocessing also sets initial clock error values and removes tracks that stay below a certain elevation mask (elevationTrackMinimum).

See also GnssProcessing and GnssSimulateReceiver.

StationNetwork

A network of GNSS ground stations is defined via inputfileStationList. Each line can contain more than one station. The first station in each line for which inputfileObservations exists and contains enough observations is used for the processing. All input files except inputfileAntennaDefinition, inputfileReceiverDefinition, and inputfileAccuracyDefinition are read for each station. The file name is interpreted as a template with the variable {station} being replaced by the station name.

The effects of loading and tidal deformation on station positions can be corrected for via loadingDisplacement and tidalDisplacement, respectively. Tidal deformations typically include:

NameTypeAnnotation
inputfileStationList
filenameascii file with station names
maxStationCount
uintmaximum number of stations to be used
inputfileStationInfo
filenamevariable {station} available. station metadata (antennas, receivers, ...)
inputfileAntennaDefinition
filenameantenna center offsets and variations
noAntennaPatternFound
choicewhat should happen if no antenna pattern is found for an observation
ignoreObservation
ignore observation if no matching pattern is found
useNearestFrequency
use pattern of nearest frequency if no matching pattern is found
throwException
throw exception if no matching pattern is found
inputfileReceiverDefinition
filenameobserved signal types
inputfileAccuracyDefinition
filenameelevation and azimuth dependent accuracy
inputfileStationPosition
filenamevariable {station} available.
inputfileClock
filenamevariable {station} available
inputfileObservations
filenamevariable {station} available
loadingDisplacement
gravityfieldloading deformation
tidalDisplacement
tidestidal deformation
ephemerides
ephemeridesfor tidal deformation
inputfileDeformationLoadLoveNumber
filename
inputfilePotentialLoadLoveNumber
filenameif full potential is given and not only loading potential
useType
gnssTypeonly use observations that match any of these patterns
ignoreType
gnssTypeignore observations that match any of these patterns
elevationCutOff
angle[degree] ignore observations below cutoff
elevationTrackMinimum
angle[degree] ignore tracks that never exceed minimum elevation
minObsCountPerTrack
uinttracks with less number of epochs with observations are dropped
minEstimableEpochsRatio
double[0,1] drop stations with lower ratio of estimable epochs to total epochs
preprocessing
sequencesettings for preprocessing of observations/stations
printStatistics
booleanprint preprocesssing statistics for all receivers
huber
doubleresiduals > huber*sigma0 are downweighted
huberPower
doubleresiduals > huber: sigma=(e/huber)^huberPower*sigma0
codeMaxPositionDiff
double[m] max. allowed position error by PPP code only clock error estimation
denoisingLambda
doubleregularization parameter for total variation denoising used in cylce slip detection
tecWindowSize
uint(0 = disabled) window size for TEC smoothness evaluation used in cycle slip detection
tecSigmaFactor
doublefactor applied to moving standard deviation used as threshold in TEC smoothness evaluation during cycle slip detection
outputfileTrackBefore
filenamevariables {station}, {prn}, {trackTimeStart}, {trackTimeEnd}, {types}, TEC and MW-like combinations in cycles for each track before cycle slip detection
outputfileTrackAfter
filenamevariables {station}, {prn}, {trackTimeStart}, {trackTimeEnd}, {types}, TEC and MW-like combinations in cycles for each track after cycle slip detection

LowEarthOrbiter

A single low-Earth orbiting (LEO) satellite with an onboard GNSS receiver. An apriori orbit is needed as inputfileOrbit. Attitude data must be provided via inputfileStarCamera. If no attitude data is available from the satellite operator, the star camera data can be simulated by using SimulateStarCamera.

NameTypeAnnotation
inputfileStationInfo
filenamesatellite metadata (antenna, receiver, ...)
inputfileAntennaDefinition
filenameantenna center offsets and variations
noAntennaPatternFound
choicewhat should happen if no antenna pattern is found for an observation
ignoreObservation
ignore observation if no matching pattern is found
useNearestFrequency
use pattern of nearest frequency if no matching pattern is found
throwException
throw exception if no matching pattern is found
inputfileReceiverDefinition
filenameobserved signal types
inputfileAccuracyDefinition
filenameelevation and azimut dependent accuracy
inputfileObservations
filename
inputfileOrbit
filenameapproximate positions
inputfileStarCamera
filenamesatellite attitude
sigmaFactorPhase
expressionPHASE: factor = f(FREQ, ELE, SNR, ROTI, dTEc, IONOINDEX)
sigmaFactorCode
expressionCODE: factor = f(FREQ, ELE, SNR, ROTI, dTEc, IONOINDEX)
supportsIntegerAmbiguities
booleanreceiver tracks full cycle integer ambiguities
wavelengthFactor
doublefactor to account for half-wavelength observations (collected by codeless squaring techniques)
useType
gnssTypeonly use observations that match any of these patterns
ignoreType
gnssTypeignore observations that match any of these patterns
elevationCutOff
angle[degree] ignore observations below cutoff
minObsCountPerTrack
uinttracks with less number of epochs with observations are dropped
preprocessing
sequencesettings for preprocessing of observations/stations
printStatistics
booleanprint preprocesssing statistics for all receivers
huber
doubleresiduals > huber*sigma0 are downweighted
huberPower
doubleresiduals > huber: sigma=(e/huber)^huberPower*sigma0
codeMaxPositionDiff
double[m] max. allowed position error by PPP code only clock error estimation
denoisingLambda
doubleregularization parameter for total variation denoising used in cylce slip detection
tecWindowSize
uint(0 = disabled) window size for TEC smoothness evaluation used in cycle slip detection
tecSigmaFactor
doublefactor applied to moving standard deviation used as threshold in TEC smoothness evaluation during cycle slip detection
outputfileTrackBefore
filenamevariables {station}, {prn}, {timeStart}, {timeEnd}, {types}, TEC and MW-like combinations in cycles for each track before cycle slip detection
outputfileTrackAfter
filenamevariables {station}, {prn}, {timeStart}, {timeEnd}, {types}, TEC and MW-like combinations in cycles for each track after cycle slip detection