Astrodynamics (AERO0024) 5. Numerical Methods Gaëtan Kerschen Space Structures & Systems Lab (S3L)
Why Different Propagators? Analytic propagation: Better understanding of the perturbing forces. Useful for mission planning (fast answer): e.g., lifetime computation. Numerical propagation: The high accuracy required today for satellite orbits can only be achieved by using numerical integration. Incorporation of any arbitrary disturbing acceleration (versatile). 2
6. Numerical Methods r 6.1 Orbit prediction 6.2 Numerical integration tn t n 1 6.3 Single-step methods: Runge-Kutta 6.4 Multi-step methods 6.5 Integrator and step size selection 6.6 ISS example 6.7 GEO satellites 3
STK Propagators 2-body: analytic propagator (constant orbital elements). J2: analytic propagator (secular variations in the orbit elements due to Earth oblateness. HPOP: numerical integration of the equations of motion (periodic and secular effects included). Accurate Versatile Errors accumulation for long intervals Computationally intensive 6.1 Orbit prediction 4
Real-Life Example: German Aerospace Agency 6.1 Orbit prediction 5
Real-Life Example: German Aerospace Agency 6
Further Reading on the Web Site 6.1 Orbit prediction 7
Real-Life Example: Envisat http://nng.esoc.esa.de/envisat/ ENVpred.html 6.1 Orbit prediction 8
Why do the predictions degrade for lower altitudes?
Did you Know? NASA began the first complex numerical integrations during the late 1960s and early 1970s. 1968 1969 6.1 Orbit prediction 10
What is Numerical Integration? Given r r a r r( t ), r( t ) 3 perturbed n t t t n1 n n Compute r( t ), r( t ) n1 n1 6.2 Numerical integration 11
State-Space Formulation r r a r 3 perturbed u f ( u, t) u r r 6-dimensional state vector 6.2 Numerical integration 12
How to Perform Numerical Integration? u( t n ) u( ) tn 1 h h f t h f t hf t f t f t R 2 s! 2 s ( s) ( n ) ( n) '( n) ''( n)... ( n) s Taylor series expansion 6.2 Numerical integration 13
First-Order Taylor Approximation (Euler) along the tangent u( t t) u( t ) t u( t ) n n n u u t f ( u, t ) n1 n n n Euler step 40 35 Exact solution x(t)=t 2 30 25 20 15 10 5 0 0 1 2 3 4 5 6 Time t (s) 6.2 Numerical integration The stepsize has to be extremely small for accurate predictions, and it is necessary to develop more effective algorithms. 14
Numerical Integration Methods m u u t u n1 j n1 j j n1 j j1 j0 State vector m 0 0 Implicit, the solution method becomes iterative in the nonlinear case 0 0, =0 j for j 1, 0 j for j 1 j j Explicit, u n+1 can be deduced directly from the results at the previous time steps Single-step, the system at time t n+1 only depends on the previous state t n Multi-step, the system at time t n+1 depends several previous states t n,t n-1,etc. 6.2 Numerical integration 15
Examples: Implicit vs. Explicit Trapezoidal rule (implicit) u n u u 2 n1 un t Euler backward (implicit) u u t u n1 n n1 n1 r r tn t n 1 tn t n 1 Euler forward (explicit) r u u t u 6.2 Numerical integration n 1 n n tn t n 1 16
Why Different Methods? A variety of methods has been applied in astrodynamics. Each of these methods has its own advantages and drawbacks: Accuracy: what is the order of the integration scheme? Efficiency: how many function calls? Versatility: can it be applied to a wide range of problems? Complexity: is it easy to implement and use? Step size: automatic step size control? 6.1 Orbit prediction 17
Runge-Kutta Family: Single-Step Perhaps the most well-known numerical integrator. Difference with traditional Taylor series integrators: the RK family only requires the first derivative, but several evaluations are needed to move forward one step in time. Different variants: explicit, embedded, etc. 6.3 Single-step methods: Runge-Kutta 18
Runge-Kutta Family: Single-Step u( t ) u u( t) f ( u, t) with 0 0 Slopes at various points within the integration step u u tbk k n1 n i i i1 f u, t c t 1 n n 1 s i1 ki f un t aijk j, tn cit, i 2... s j1 6.3 Single-step methods: Runge-Kutta 19
Runge-Kutta Family: Single-Step The Runge-Kutta methods are fully described by the coefficients: c 1 c 2 a 21 s i1 c 1 b i 0 1 c s a s1 b 1 a s2 b 2 a s,s-1 b s-1 b s c i i1 j1 a ij Butcher Tableau 6.3 Single-step methods: Runge-Kutta 20
RK4 (Explicit) u 2 2 k k k k 6 n1 un t 1 2 3 4 k 1 f u n, t n t t k 2 f un k1, tn 2 2 t t k 3 f un k 2, tn 2 2 k f u k t, t t 4 n 3 n Butcher Tableau 6.3 Single-step methods: Runge-Kutta 21
k RK4 (Explicit) 1 u f 2 2 k k k k 6 n1 un t u n, t n t t k 2 f un k1, tn 2 2 t t k 3 f un k 2, tn 2 2 k f u k t, t t 4 n 3 6.3 Single-step methods: Runge-Kutta n 1 2 3 4 Estimated slope (weighted average) Slope at the beginning Slope at the midpoint (k 1 is used to determine the value of u Euler) Slope at the midpoint (k 2 is now used) Slope at the end 22
RK4 (Explicit) u k 4 k 1 k 3 Estimate at new time k 2 t t t/2 n n t n t 6.3 Single-step methods: Runge-Kutta 23
RK4 (Explicit) The local truncation error for a 4 th order RK is O(h 5 ). The accuracy is comparable to that of a 4 th order Taylor series, but the Runge-Kutta method avoids the calculation of higher-order derivatives. Easy to use and implement. The step size is fixed. 6.3 Single-step methods: Runge-Kutta 24
RK4 in STK 6.3 Single-step methods: Runge-Kutta 25
Embedded Methods They produce an estimate of the local truncation error: adjust the step size to keep local truncation errors within some tolerances. This is done by having two methods in the tableau, one with order p and one with order p+1, with the same set of function evaluations: s ( p) ( p) ( p) n1 n tbi i i1 s ( p 1) ( p 1) ( p 1) n 1 n t b i i i1 u u k 6.3 Single-step methods: Runge-Kutta u u k 26
Embedded Methods The two different approximations for the solution at each step are compared: If the two answers are in close agreement, the approximation is accepted. If the two answers do not agree to a specified accuracy, the step size is reduced. If the answers agree to more significant digits than required, the step size is increased. 6.3 Single-step methods: Runge-Kutta 27
Ode45 in Matlab / Simulink Runge-Kutta (4,5) pair of Dormand and Prince: Variable step size. Matlab help: This should be the first solver you try 6.3 Single-step methods: Runge-Kutta 28
Ode45 in Matlab / Simulink edit ode45 6.3 Single-step methods: Runge-Kutta 29
Ode45 in Matlab / Simulink Be very careful with the default parameters! options = odeset('reltol',1e-8,'abstol',1e-8); 6.3 Single-step methods: Runge-Kutta 30
RKF 7(8): Default Method in STK Runge-Kutta-Fehlberg integration method of 7th order with 8th order error control for the integration step size. 31
6.3 Single-step methods: Runge-Kutta
Multi-Step Methods (Predictor-Corrector) They estimate the state over time using previously determined back values of the solution. Unlike RK methods, they only perform one evaluation for each step forward, but they usually have a predictor and a corrector formula. Adams (*) Bashforth - Moulton, Gauss - Jackson. (*) The first with Le Verrier to predict the existence and position of Neptune 6.4 Multi-step methods 33
Multi-Step Methods: Principle u( t) f ( u, t) u t u t f u t dt n1 ( n1) ( ) n (, ) tn t unknown u Four function values interpolated by a third-order polynomial Replace it by a polynomial that interpolates the previous values t 6.4 Multi-step methods 34
Multi-Step Methods: Initiation u( t ) u u( t) f ( u, t) with 0 0 What is the inherent problem? u 6.4 Multi-step methods t 35
Multi-Step Methods: Initiation Because these methods require back values, they are not self-starting. One may for instance use of a single-step method to compute the first four values. 6.4 Multi-step methods 36
Integrator Selection Montenbruck and Gill, Satellite orbits, Springer, 2000 6.5 Integrator and step size selection 37
Integrator Selection Multi-step Single step Pros Very fast Pros Plug and play Error control Cons Special starting procedure Fixed time steps Error control Cons Slower 6.5 Integrator and step size selection 38
Why is the Step Size So Critical? Theoretical arguments: 1. The accuracy and the stability of the algorithm are directly related to the step size. 2. Nonlinear equations of motion. Data for Landsat 4 and 6 in circular orbits around 800km indicates that a one-minute step size yields about 47m error. A three-minute step size produces about a 900m error! 6.5 Integrator and step size selection 39
Why is the Step Size So Critical? More practical arguments: 1. The computation time is directly related to the step size. 2. The particular choice of step size depends on the most rapidly varying component in the disturbing functions (e.g., 50 x 50 gravity field). 6.5 Integrator and step size selection 40
Appropriate Step Size The problem of determining an appropriate step size is a challenge in any numerical process. Fixed step size: applications). t T orbit 100 (rule of thumb for standard But an algorithm with variable step size is really helpful. The step size is chosen in such a way that each step contributes uniformly to the total integration error. 6.5 Integrator and step size selection 41
Three Examples: XMM / OUFTI-1 / ISS Can you plot the step size vs. true anomaly? 6.5 Integrator and step size selection 42
XMM: Report in STK 6.5 Integrator and step size selection 43
6000 5000 XMM (e~0.8) Reproduce this graph during the exercise session! Postprocessing in Matlab Step size (s) 4000 3000 2000 1000 0 0 50 100 150 200 250 300 350 400 True anomaly (deg) 6.5 Integrator and step size selection 44
90 80 Step size (s) 70 60 50 40 OUFTI-1 (e~0.07) 30 0 50 100 150 200 250 300 350 400 True anomaly (deg) 70 65 60 Step size (s) 55 50 45 6.5 Integrator and step size selection 40 35 ISS (e~0) 30 0 50 100 150 200 250 300 350 400 True anomaly (deg)
Difficult Orbits Automatic time step is especially nice on highly eccentric orbits (Molniya, XMM). These orbits are best computed using variable step sizes to maintain some given level of accuracy: Without this variable step size, we waste a lot of time near apoapsis, when the integration is taking too small a step. Likewise, the integrator may not be using a small enough step size at periapsis, where the satellite is traveling fast. 6.5 Integrator and step size selection 46
HPOP Propagator: ISS Example 1. Earth s oblateness only 2. Drag only 3. Sun and moon only 4. SRP only 5. All together. 6.6 ISS example 47
Earth s Oblateness Only: Ω 2-body HPOP J2 6.6 ISS example 48
Earth s Oblateness Only: i, Ω, a HPOP with central body (2,0 + WGS84_EGM96) (without drag/srp/sun and Moon) 6.6 ISS example 49
Drag Only: i, Ω, a HPOP with drag Harris Priester (without oblateness/srp/sun and Moon) 6.6 ISS example 50
Drag: Relationship with Eclipses 51
Drag: Lifetime (Satellite Tools) 6.6 ISS example 52
Sun and Moon Only 6.6 ISS example 53
Sun and Moon Only: i, Ω, a HPOP with Sun and Moon (without oblateness/srp/drag) 6.6 ISS example 54
SRP Only: i, Ω, a HPOP with SRP (without oblateness/drag/sun and Moon) 6.6 ISS example 55
SRP: Relationship with Eclipses 56
All Perturbations Together 6.6 ISS example 57
Practical Example: GEO Satellites Nice illustration of: 1. Perturbations of the 2-body problem. 2. Secular and periodic contributions. 3. Accuracy required by practical applications. 4. The need for orbit correction and thrust forces. And it is a real-life example (telecommunications, meteorology)! 6.7 GEO satellites 58
Three Main Perturbations for GEO Satellites 1. Non-spherical Earth 2. SRP 3. Sun and Moon 6.7 GEO satellites 59
Station Keeping of GEO Satellites The effect of the perturbations is to cause the spacecraft to drift away from its nominal station. If the drift was allowed to build up unchecked, the spacecraft could become useless. A station-keeping box is defined by a longitude and a maximum authorized distance for satellite excursions in longitude and latitude. For instance, TC2: -8º ± 0.07º E/W ± 0.05º N/S 6.7 GEO satellites 60
East-West and North-South Drift What are the perturbations generating these drifts? N/S drift E/W drift 6.7 GEO satellites 61
East-West Drift A GEO satellite drifts in longitude due to the influence of two main perturbations: 1. The elliptic nature of the Earth s equatorial crosssection: J22 (and not from the N/S oblateness J2). 2. v sat ΔV SRP v sat ΔV 6.7 GEO satellites 62
East-West Drift due to Equatorial Ellipticity 6.7 GEO satellites 63
East-West Drift due to Equatorial Ellipticity 6.7 GEO satellites 64
East-West Drift: HPOP (2,0) vs. HPOP (2,2) 6.7 GEO satellites 65
East-West Drift: Stable Equilibirum HPOP with 2,2 (without Sun and moon/srp/drag) 66
East-West Drift: Stable Equilibirum HPOP with 2,2 (without Sun and moon/srp/drag) 67
East-West Drift: Stable Equilibirum HPOP with 2,2 (without Sun and moon/srp/drag) 68
North-South Drift The perturbations caused by the Sun and the Moon are predominantly out-of-plane effects causing a change in the inclination and in the right ascension of the orbit ascending node. Similar effects on the orbit to those of the Earth s oblateness (but here with respect to the ecliptic) A GEO satellite therefore drifts in latitude with a fundamental period equal to the orbit period. 69
North-South Drift Period? HPOP with Sun and Moon (without oblateness/srp/drag) 70
North-South Drift Period? HPOP with Sun and Moon (without oblateness/srp/drag) 71
Thrust Forces for Stationkeeping GEO spacecraft require continual stationkeeping to stay within the authorized box using onboard thrusters. 6.7 GEO satellites 72
6. Numerical Methods r 6.1 Orbit prediction 6.2 Numerical integration tn t n 1 6.3 Single-step methods: Runge-Kutta 6.4 Multi-step methods 6.5 Integrator and step size selection 6.6 ISS example 6.7 GEO satellites 73
Astrodynamics (AERO0024) 5. Numerical Methods Gaëtan Kerschen Space Structures & Systems Lab (S3L)