asi/eumetsat meeting asi space geodesy center — matera, 04-05 february 2009 s. casotto, p....
TRANSCRIPT
ASI/EUMETSAT Meeting
ASI Space Geodesy Center — Matera, 04-05 February 2009
S. Casotto, P. Zoccarato, A. Nardo, M. Bardella
CISAS – University of Padua
SWOrDSoftWare for Oceansat2 Orbit Determination
SWOrD: Software purposes
Multi–satellite LEO-MEO orbit determination based on GPS measurements
LEO-MEO orbit prediction
Modeling and prediction of Radio Occultation (RO) events
High precision reconstruction of SST velocities
Adoption of HPC techniquesComputation kernel separated from the process communications layerLow latencyPOD:
DynamicReduced DynamicKinematics
ROSAROSSA(Research and OperationalSatelliteand SoftwareActivities)data flow
SWOrD: Programming paradigmsObject Oriented Programming (OOP)
Singleton pattern to restrict instantiation of a class to one object
C++/Fortran interoperability
Multi threads/OpenMP parallelization
Database on RAM for input data administration based on Boost::Multiindex library
GPStk: fundamental and advanced GPS processing algorithms
XML input and output manipulation with data binding through Code Synthesis utility
Development and debugging: Eclipse 3.1, Intel C++/Fortran compiler 11 and the software construction tool SCons
UTC: Coordinated Universal TimeUT: Universal timeET: Ephemeris Time. Was used 1960-1983TDT: Terrestrial Dynamical Time. Was used 1984-2000TT: Terrestrial TimeTAI: International Atomic Time (Temps Atomique International)GPS time = TAI - 19 seconds
OOP advantages (1/2)
UTC 1972 -
An example:the Time_Tag class
ET 1960-1983 TDT 1984-2000
TT 2001- UT1
delta-UT = UT1-UTC(max 0.9 sec)
delta-T = TT-UT1
GPS 1980 - TAI 1958 -
TAI-UTCLeap seconds
TAI-GPS19 s fixed
TT-TAI32.184s fixed
OOP advantages (2/2)An example of inheritance usage: the Ground Station and Satellite classes
Boost::MultiindexThe Boost Multi-index Containers Library provides a class template which enables the construction of containers maintaining one or more indices with different sorting and access semantics
XML data binding
CodeSynthesis XSD is an open-source, cross-platform W3C XML Schema to C++ data binding compiler
SWOrD
DPC
Input/Support/Output
Gravity fields,Tidal models
EOP parameters
Solar System Ephemerides
IGS Data
ROSA Data
Solar Geomagnetic
Data
DG_kDG_1
ROSA ROSSAArchives
Planetary Ephemerides (JPL)Models of gravitational field and terrestrial/oceans tides (JMG3, EGM96, EG4)Ground station solutions (IGS)EOP e Leap seconds (bulletins B e C from IERS, bulletin A from USNO)Solar and geomagnetic activity indexes (NGDC)IGS productsROSA navigation dataOCEANSAT2 attitudeROSA receiver multipath pattern
Ancillary data required
L1 Input & Output
L2 Input & Output
Logical model
Tracking Data
ExternalData
Interface Class
DRIVER
ROSA RinexData
G/S Rinex Data
Products
Interface Class
Interface Class
Executive System
ApplicationClass
ApplicationClass
ApplicationClass
ApplicationClassApplication
ClassApplication
Class
Two main kinds of operational blocks: interface classes and application classes.
The first called application class triggers the reading interface classes to acquire the input data.
During this process the input data are manipulated to obtain a complete set of information that will be later used by the other application classes.
SWOrD contains a mathematical model of the
world used to process observational data. The functional model of the
system can be decomposed into several components,
which are the counterpart to the physical model to be
developed
DPC_Interface
Data_Conditioning
Observation_Simulator
Spacecraft_PropagatorStation_Propagator
Normal_Equation_Handler Product_Generator
Functional model
Flow chart
Products
DPC-DG
Interface
GPS DataPre-processing
Cartesian State Data
Pre-processing
Orbit Determination & Prediction
GPS & LEO Ephemerides
RO EventsTables
L1, L2SNR
Predicted RO Events
Tables
L1, L2 Phase excess
GPS & LEOPredicted
Ephemerides
Determined orbits Predicted orbits
PPP LEO Orbit
Kinematic POD (1/2)
There exist several kinematic orbit determination techniques based on either undifferenced, doubly-differenced or triply-differenced observables, but also on time-differenced phase observables.
All of the kinematic approaches to GPS-based LEO OD, including the one adopted here, make use of the fundamental contribution of data provided by the IGS. These data include GPS SV’s orbits, clock solutions for both SV’s and ground stations, EOP and tropospheric zenith delay (TZD) solutions. All these parameters are held fixed in the solution process.
The strategy adopted in the SWOrD OD system is based on the use of a combination of pseudorange and phase observables differenced in time. The procedure is illustrated on the left
Kinematic POD (2/2)At each observation epochposition is computed from
pseudorange data using the Bancroft algorithm
The position fixes obtained are used in a dynamic orbit fit based on a minimal set
of LEO parameters
The pseudorange observations are screened
for outliers based on the comparison of the
Bancroft solutions with the corresponding positions on the dynamically fitted orbit
Firsttimeonly
Phase observations are screened for cycle-slip detection by iono-free,
almost iono-free (4,-3)(5,-4), and triple iono-free carrier
phase combinations against counterparts pseudorange
Phase observations are corrected for relativistic
GPS clock correction, GPS and LEO satellite antenna
offset and attitude, and GPS satellite antenna phase
wind-up
A precise point positioning (PPP) estimation algorithm is applied to the iono-free pseudorange observations and the time-differenced (between successive observation epochs) iono-free carrier phases. PPP is applied both forward in time from the first observation epoch as well as backward in time from the last observation epoch. The filter is
applied by properly accounting for the correlations between phases at adjacent epochs and
propagating the associated covariance matrix. The two estimated position fixes are finally optimally
combined to obtain the best smoothed position and clock estimates at each observation epoch.
LEO velocities are computed at each
ephemeris epoch based on the time derivative of the
interpolating polynomial of positions.
THANKS FORYOUR ATTENTION