Structures
This section contains a description of the custom signal structures shared by Skydel.
Skydel provides custom signal plug-ins with various information across different simulation states. This information is always passed using a map based structure to allow for future flexibility and extensibility.
This page details all data structures related to custom signals by listing the available keys. Each key is accompanied by a definition to give context about the associated information, along with its corresponding C++ type.
Here is an example of how to access the eccentricity value from the ConstellationParameters
structure:
// value type key
// | | |
const auto eccentricity = std::get<double>(parameters.at(ECCENTRICITY_KEY));
InitializationDatas
The InitializationDatas
structure contains information about both the custom signal and the simulation that is about to start. It is passed to custom signal plug-ins during the createCustomSignal
call.
startWeek
Week of the simulation start time
-
uint32_t
startSecondOfWeek
Second number of the simulation start time week
seconds
uint32_t
pathToXml
XML configuration file path
-
std::string
xmlFileName
XML configuration file name
-
std::string
customSignalName
Custom signal name
-
std::string
alpha0
Ionospheric coefficent Alpha 0
seconds
double
alpha1
Ionospheric coefficent Alpha 1
seconds / semicircle
double
alpha2
Ionospheric coefficent Alpha 2
seconds / semicircle²
double
alpha3
Ionospheric coefficent Alpha 3
seconds / semicircle³
double
beta0
Ionospheric coefficent beta 0
seconds
double
beta1
Ionospheric coefficent Beta 1
seconds / semicircle
double
beta2
Ionospheric coefficent Beta 2
seconds / semicircle²
double
beta3
Ionospheric coefficent Beta 3
seconds / semicircle³
double
tot
Time data reference TOW
-
uint32_t
wnot
Time data reference week number
-
uint32_t
a0
Bias coefficient of GPS to UTC
-
double
a1
Drift coefficient of GPS to UTC
-
double
a2
Drift rate coefficient of GPS to UTC
-
double
deltaTLS
Leap second count
-
int32_t
wnLSF
Week number of future leap second
-
uint32_t
dn
Day of future leap second
-
uint32_t
deltaTLSF
Current or future leap second count
-
int32_t
ConstellationDatas
The ConstellationDatas
structure contains information about the constellation associated with the custom signal. The key in the map corresponds to the dataset type associated with each ConstellationData
.
Here are the available dataset keys:
EPHEMERIS
Ephemeris data set type.
ConstellationParameters
The ConstellationParameters
structure contains information about specific parameters related to the custom signal's constellation. It is represented as a map, where the keys are the names of the parameters, each pointing to a ConstellationParameter
. Each ConstellationParameter
is a variant that can take the form of a uint32_t
, int32_t
, double
, or bool
, depending on the parameter.
Each constellation has its own specific set of parameters, which are described in the following sections.
Kepler
The following parameters are shared when the custom signal constellation is Keplerian, that is, for any constellation except Glonass and SBAS.
prn
Satellite PRN
-
uint32_t
iod
Issue of data
-
uint32_t
wnop
Week number of prediction
-
uint32_t
top
Time of prediction
seconds
uint32_t
wnoc
Week number of clock
-
uint32_t
toc
Time of clock
seconds
uint32_t
af0
SV clock bias
seconds
double
af1
SV clock drift
seconds / second
double
af2
SV clock bias
seconds / second²
double
wnoe
Week number of ephemeris
-
uint32_t
toe
Time of ephemeris
seconds
uint32_t
sqrtA
Square root semi major axis
meters½
double
eccentricity
Eccentricity
-
double
inclination
Inclination angle
semicircles
double
lonAscendNode
Longitude of ascending node
semicircles
double
rateOfRightAscen
Rate of right ascension
semicircles / second²
double
meanAnomaly
mean anomaly
semicircles
double
argumentOfPerigee
Argument of perigee
-
double
meanMotionDiff
Mean motion difference
semicircles / second
double
iDot
rate of inclination angle
semicircles / second
double
crs
Correction radius sine
meters
double
crc
Correction radius cosine
meters
double
cuc
Correction argument lat sine
radians
double
cus
Correction argument lat sine
radians
double
cic
Correction inclination sine
radians
double
cis
Correction inclination sine
radians
double
GPS
The following parameters are shared when the custom signal constellation is GPS, supplementing the Kepler parameters.
gpsTgd
Time group delay
seconds
double
iodc
Issue of data clock
-
uint32_t
codesOnL2
Codes on L2
-
uint32_t
l2PDataFlag
L2P data flag
-
uint32_t
svSignalHealth
SV signal health
5 bits
uint32_t
svDataHealth
SV data health
3 bits
uint32_t
fitInterval
Fit interval
seconds
uint32_t
uraIndex
URA index
-
uint32_t
integrityStatusFlag
Integrity status flag
-
uint32_t
l2CPhasing
L2C phasing
-
uint32_t
uraEdIndex
URA ED index
-
int32_t
uraNed0Index
URA NED 0 index
-
int32_t
uraNed1Index
URA NED 1 index
-
int32_t
uraNed2Index
URA NED 2 index
-
int32_t
iscL1CaAvailable
Is L1CA inter symbol correction enabled
-
bool
iscL2CAvailable
Is L2C inter symbol correction enabled
-
bool
iscL5I5Available
Is L5I5 inter symbol correction enabled
-
bool
iscL5Q5Available
Is L5Q5 inter symbol correction enabled
-
bool
iscL1CPAvailable
Is L1CP inter symbol correction enabled
-
bool
iscL1CDAvailable
Is L1CD inter symbol correction enabled
-
bool
iscL1Ca
L1CA inter symbol correction
seconds
double
iscL2C
L2C inter symbol correction
seconds
double
iscL5I5
L5I5 inter symbol correction
seconds
double
iscL5Q5
L5Q5 inter symbol correction
seconds
double
iscL1CP
L1CP inter symbol correction
seconds
double
iscL1CD
L1CD inter symbol correction
sedoncs
double
signalHealth
L1/L2 signal health of LNAV
5 bits
uint32_t
dataHealth
L1/L2 data health of LNAV
3 bits
uint32_t
svConfig
SV configuration
3 bits
int32_t
l1Health
L1 health of CNAV and CNAV2
-
bool
l2Health
L2 health of CNAV and CNAV2
-
bool
l5Health
L5 health of CNAV and CNAV2
-
bool
l1cHealth
L1C health of CNAV2
-
bool
navAlertFlag
NAV alert flag
-
bool
cNavAlertFlag
CNAV alert flag
-
bool
Galileo
The following parameters are shared when the custom signal constellation is Galileo, supplementing the Kepler parameters.
galileoBgdE5a
Group delay of E5a
seconds
double
galileoBgdE5b
Group delay of E5b
seconds
double
sisaE5a
SISA E5a
8 bits
uint32_t
sisaE5b
SISA E5b
8 bits
uint32_t
signalHealthE5a
Signal health of E5a
2 bits
uint32_t
signalHealthE5b
Signal health of E5b
2 bits
uint32_t
signalHealthE1B
Signal health of E1B
2 bits
uint32_t
dataHealthE5a
Data validity of E5a
-
bool
dataHealthE5b
Data validity of E5b
-
bool
dataHealthE1B
Data validity of E1B
-
bool
BeiDou
The following parameters are shared when the custom signal constellation is BeiDou, supplementing the Kepler parameters.
beiDouTgd1
Time group Delay 1
seconds
double
beiDouTgd2
Time group delay 2
seconds
double
beiDouTgdb1cp
Time group delay of B1C pilot component
seconds
double
beiDouTgdb2ap
Time group delay of B2A pilot component
seconds
double
aodc
Age of data clock
-
uint32_t
aode
Age of data ephemeris
-
uint32_t
iodc
Issue of data clock
-
uint32_t
satH2
Satellite health flag for integrity and differential correction information
2 bits
uint32_t
iscB1CdAvailable
Is B1C inter symbol correction enabled
-
bool
iscB1Cd
B1C inter symbol correction
seconds
double
uraIndex
URA index
-
uint32_t
healthInfo
Nav satellite health information
9 bits
uint32_t
autonomousHealth
Autonomous satellite health
-
bool
cnavHealthInfo
CNav satellite health information
8 bits
uint32_t
healthStatus
Satellite health status
2 bits
uint32_t
Glonass
The following parameters are shared when the custom signal constellation is Glonass.
t_lambda
Reference time of almanac
seconds
double
tau_c
Correction from GLONASS to UTC
seconds
double
tau_gps
Correction to GPS time relative to GLONASS
seconds
double
tau_n
Correction of satellite time relative to GLONASS
seconds
double
lambda
Longitude of first ascending node passage
semicircles
double
delta_i
Correction to the mean value of inclination
semicircles
double
omega
Argument of perigee
semicircles
double
e
Eccentricity
-
double
delta_t
Correction of the mean value of Draconian period
seconds
double
delta_t_rate
Rate of change of Draconian period
seconds / coil
double
tauN
Correction of time relative to GLONASS
seconds
double
svRelativeFrequencyBias
SV relative frequency bias
hz
double
messageFrameTime
Mesage frame time
seconds
uint32_t
age
Age of oper. information
days
uint32_t
positionX
X position
kilometers
double
positionY
Y position
kilometers
double
positionZ
Z position
kilometers
double
velocityX
X velocity
kilometers / second
double
velocityY
Y velocity
kilometers / second
double
velocityZ
Z velocity
kilometers / second
double
accelerationX
X acceleration
kilometers / second²
double
accelerationY
Y acceleration
kilometers / second²
double
accelerationZ
Z acceleration
kilometers / second²
double
Last updated