GraceOrbit2TransplantTimeOffset
This program computes the time shift between two co-orbiting satellites based on dynamic orbit data. When applied to data of the first satellite, the computed time shift virtually shifts data of first satellite into the location of the second satellite. Note that inputfileOrbit1 and inputfileOrbit2 need velocity and acceleration data, which can be computed with OrbitAddVelocityAndAcceleration. The program tries to find a minimum of the objective function \[ f(\Delta t) = \| r_1(t) - r_2(t + \Delta t) \|^2, \]by applying Newton's method to the first derivative, thus iteratively computing \[ \Delta t_{k+1} = \Delta t_k + \frac{f'(\Delta t_k)}{f''(\Delta t_k)}. \]This iteration is stopped when the difference between to consecutive time shift values falls below threshold or maximumIterations is reached. An initialGuess of the time shift can speed up convergence.
See also OrbitAddVelocityAndAcceleration and InstrumentApplyTimeOffset.
Name | Type | Annotation |
---|---|---|
outputfileTimeOffset | filename | estimated time offset in seconds (MISCVALUE) |
inputfileOrbit1 | filename | orbit data of satellite 1 |
inputfileOrbit2 | filename | orbit data of satellite 2 |
interpolationDegree | uint | polynomial degree for the interpolation of position, velocity and acceleration |
initialGuess | double | initial guess for the time shift [seconds] |
maximumIterations | uint | maximum number of iterations |
threshold | double | when the maximum difference between two iterations is below this value, stop [seconds] |