250 likes | 397 Views
The use of the Consolidated Prediction Format at Zimmerwald. Werner Gurtner Astronomical Institute University of Bern ILRS Workshop 3-7 October 2005 Eastbourne. CPF Format: Summary.
E N D
The use of theConsolidated Prediction Formatat Zimmerwald Werner Gurtner Astronomical Institute University of Bern ILRS Workshop 3-7 October 2005 Eastbourne
CPF Format: Summary • List of geocentric earth-fixed positions (and velocities) of the satellites, in well-defined coordinate system (ITRS) • Should be suited for satellites, moon, interplanetary ranges (to transponders) • Interval suited for easy interpolation (polynomials, e.g., degree 9) • Auxiliary data in CPF file header • Computation of ranges and pointing directions by the stations (sample software provided) • Daily files with a few days worth of positions
Open issues • Do we need velocities? • Do we need outbound (and inbound) geocentric vectors or state vectors? • How do we handle general relativistic corrections? • For satellites up to GPS/Glonass geocentric earth-fixed state vectors alone are OK
Sources of CPF Files • NSGF • Starlette, Stella, Topex, Etalon-1/2,Lageos 1/2, Ajisai, GFO-1, (Envisat) • AIUB/CODE • GPS 35/36, Glonass 84/87/89/95 • HTSI • Beacon-C, Larets • UTX • ICESat
Handling of CPF Files(separately for each satellite) • CPF files are daily received by mail (a few days worth of data) • Add new records to / replace old records in merged file(Take only records in and around predicted pass intervals to keep merged file smaller, delete records older than 10 days) • Generate weekly pass list • Compute velocity for late epoch (Lagrange interpolation: Sr HERMITE) • Compute osculating elements for late epoch • Determine actual pass times (geometry, visibility, illumination)
Example: CPF file for GPS-35 From: AIUAS3::LASER 19-SEP-2005 04:01:28.92 To: LASER Subj: GPS-35 DAILY CPFS CODE H1 CPF 1 AIUB 2005 9 19 4 262 H2 9305401 3535 22779 2005 9 18 23 59 47 2005 9 23 23 29 47 900 1 1 0 0 H9 10 1 53631 86387.000000 0 -22692683.592 13597988.493 -963615.273 10 1 53632 887.000000 0 -22806500.488 13274412.610 1854140.909 10 1 53632 1787.000000 0 -22674715.983 12775241.829 4639580.114 10 1 53632 2687.000000 0 -22322988.129 12076006.947 7344024.172 10 1 53632 3587.000000 0 -21782775.741 11158720.835 9920055.970 10 1 53632 4487.000000 0 -21090035.585 10012807.677 12322397.158 10 1 53632 5387.000000 0 -20283744.971 8635744.185 14508754.133 10 1 53632 6287.000000 0 -19404309.723 7033383.207 16440612.941 10 1 53632 7187.000000 0 -18491923.097 5219943.579 18083964.528 ... 99
Prediction Generation • Interpolate satellite positions for reflection times in appropriate intervals during satellite pass • Interpolation: Sr HERMITE • Iteration • Compute • Ranges / flight times(subtract corner cube z positions for GPS, Glonass) • Pointing elements (azimuth, elevation) • Point-behind angle • Allow for • Tropospheric corrections • Time biases
Ranges and pointing angles tb tt tr Satellite tb-1 rtt rtb rbr rrr rbb point– behind angle tb Station tt tr tt: transmit time tb: bounce time tr: receive time r = rtb + rbr 2 * rbb
Lagrange Polynomial Interpolation • Easy to program • Use n points to interpolate with polynomial of degree n-1 • No need for equally spaced points • Apply formula to center interval of given values only • First derivative of the formula gives velocities • Separate interpolation for x, y, z • Does not explicitly give polynomial coefficients • Not optimized for speed n=6 1 2 3 4 5 6
Lagrange Polynomial Interpolation • Easy to program • Use n points to interpolate with polynomial of degree n-1 • No need for equally spaced points • Apply formula to center interval of given values only • First derivative of the formula gives velocities • Separate interpolation for x, y, z • Does not explicitly give polynomial coefficients • Not optimized for speed n=6 1 2 3 4 5 6
Software: Interpolation Subroutine SUBROUTINE HERMITE(ITYP,X,Y,Z,NMAX,NVAL,XP,YP,ZP,IRCODE) -------------------------------------------------------- Interpolation by a polynomial using NVAL out of NMAX given data points Input : ITYP : 1: use Lagrange polynomial of degree NVAL-1 2: use Hermite formula: Polynomial of degree 2*NVAL-1 NVAL : number of points to use for interpolation NMAX : number of given points in list X(I) : arguments of given values (I=1,...,NMAX) Y(I) : functional values Y=f(X) Z(I) : derivatives Z=f’(X) XP : interpolation argument Output: YP : interpolated value at XP ZP : first derivative of YP (ITYP=1 only) IRCODE: return code (0=ok, 2=error) The function selects the NVAL values to be used for interpolation such that the interpolated data point is located in the center interval. (Works best for NVAL = even number, of course).
Subroutine CPF_INTER ******************** INPUT: TT : EPOCH (TRANSMIT=FIRING TIME) MODE : 0: NO FLIGHT TIME APPLIED FLIGHT TIME = 2 * INSTANT RANGE AT EPOCH TT 1: OUTBOUND VECTOR (AZIMUTH, ELEVATION) FLIGHT TIME = 2 * INSTANT RANGE AT BOUNCE TIME 2: OUTBOUND AND INBOUND VECTOR FLIGHT TIME = OUTBOUND + INBOUND STAGEO() : GEOCENTRIC STATION COORDINATES XYZ STALON : STATION LONGITUDE (EAST > 0, RADIANS) STALAT : STATION LATITUDE (NORTH > 0, RADIANS) TTAB() : TABULATED EPOCHS OBJTABX(): TABULATED X-COORD. OF OBJECT (ITRF) OBJTABY(): TABULATED Y-COORD. OF OBJECT (ITRF) OBJTABZ(): TABULATED Z-COORD. OF OBJECT (ITRF) NTAB : NUMBER OF TABULATED EPOCHS/COORDINATES NINT : NUMBER OF TABULATED VALUES TO USE OUTPUT: RANGE : ONE-WAY RANGE (M) FLTIME : TWO-WAY FLIGHT TIME (SEC) AZIOUT : OUTBOUND AZIMUTH (DEG) ELEOUT : OUTBOUND ELEVATION (DEG) DIFAZI : POINT-BEHIND (AZIMUTH, ARC SECONDS) DIFELE : POINT-BEHIND (ELEVATION, ARC SECONDS) DIFFERENCE INBOUND MINUS OUTBOUND AT EPOCH TT Subroutine CPF_INTER
Flight time difference CPF-IRV (GPS-36) / NSGF (6 hrs)
Earth Tides applied not applied
Performance • GPS CODE < 2 ns (!) • Glonass CODE < 4 ns • Ajisai NSGF < 10 ns • BE-C NSGF < 200 ns (occ. up to 500 ns) • Envisat NSGF < 20 ns (IRV ESOC up to500 ns!) • ICESat UTX < 200 ns (occ. up to 1000 ns) • Lageos NSGF < 7 ns • Larets HTSI < 100 ns (recently worse)
Conclusions • Relatively easy to implement • Core computation easy • Handling of CPF files: Merge daily mails or ftp-ed files, keep them limited in size • Significant improvement of prediction accuracy • Approach all prediction providers to generate CPF in parallel with IRV • Encourage stations to switch to CPF predictions (allow for both, CPF and IRV, in the transition phase)