Cowell's Method

Embed Size (px)

Citation preview

Orbital Mechanics with MATLAB page 1 Cowell's Method This document describes several interactive MATLAB scripts that use Cowells method to predict the long-term behavior of spacecraft and celestial objects subject to perturbations.This technique numerically integrates the equations of motion subject to the central body gravity and other external forces.Algorithms are included for predicting both geocentric and heliocentric orbital motion. cowell1.m perturbed orbital motion of Earth satellites This MATLAB script uses Cowells method to propagate satellites in elliptic Earth orbits.The user can choose to model one or more of the following perturbations: -non-spherical gravity -aerodynamic drag -solar radiation pressure -point mass solar gravity -point mass lunar gravity After the orbit propagation is complete, this application can plot the following classical orbital elements: -semimajor axis -eccentricity -orbital inclination -argument of perigee -right ascension of the ascending node -true anomaly -geodetic perigee altitude -geodetic apogee altitude -geodetic altitude -east longitude -geodetic latitude This script uses the Earth Gravity Model 1996 data file (egm96.dat) as its source of gravity coefficients.This can be changed by editing the call to the readegm.m function. Orbital Mechanics with MATLAB page 2 The user can provide the initial orbital elements for this program interactively or by specifying the name of a data file. The following is a typical data file for this application.When creating this type of ASCII text file the user can change the numeric data and annotation, but do not change the number of lines in the file or the line location of the data.Please note the units and valid range for each data item. semimajor axis (kilometers) (semimajor axis > 0) 6878.14 orbital eccentricity (non-dimensional) (0 initial calendar date 01-Jan-2000 initial universal time00:00:00.000 final calendar date 11-Jan-2000 final universal time00:00:00.000 sma (km)eccentricityinclination (deg) argper (deg) +7.99833514781320e+003+1.07699893674950e-003+2.84904010402501e+001+3.06222317714564e+002 raan (deg)true anomaly (deg) arglat (deg)period (min) +6.02338734067612e+001+3.11514208090868e+002+2.57736525805432e+002+1.18647646343623e+002 degree of gravity model 4 order of gravity model4 simulation includes solar perturbations simulation includes lunar perturbations simulation includes drag perturbations simulation includes srp perturbations Orbital Mechanics with MATLAB page 6 The following is a typical graphics image created with this program. 0 1 2 3 4 5 6 7 8 9 1000.20.40.60.811.21.41.61.8x 103EccentricityLong Term Orbit Evolution Cowells MethodSimulation Time (days) Technical Discussion Cowells method is a special perturbation technique that numerically integrates the vector system of second-order, nonlinear differential equations of motion of a satellite given by ( ) ( ) ( ) ( ) ( ) ( ) , , , , , , , ,g d sm srpt t t t t = = + + + a r v r r r a r a r v a r a r where Universal time inertial position vector of the satellite inertial velocity vector of the satellite acceleration due to gravity acceleration due to atmospheric drag acceleration due togdsmt ======rvaaathe Sun and Moon acceleration due to solar radiation pressuresrp = a The satellites orbital motion is modeled with respect to a true-of-date Earth-centered-inertial (ECI) coordinate system.The origin of this system is the center of the Earth and the fundamental plane is the Earths equator.The x-axis is aligned with the true-of-date Vernal Equinox, the z-Orbital Mechanics with MATLAB page 7 axis is aligned with the Earths spin axis, and the y-axis completes this orthogonal, right-handed coordinate system. This MATLAB script uses a spherical harmonic representation of the Earths geopotential function given by ( ) ( ) ( )0 01 1 1, , sin cosn nnm m mn n n n nn n mR Rr C P u P u S m C mr r r r r | = = =| | | | ( u = + + + || \ . \ . where |is the geocentric latitude of the satellite, is the geocentric east longitude of the satellite and 2 2 2r x y z = = + + ris the geocentric distance of the satellite.In this expression the Ss and Cs are unnormalized harmonic coefficients of the geopotential, and the Ps are associated Legendre polynomials of degree n and order m with argument u = sin|. The software calculates the satellites acceleration due to the Earths gravity field with a vector equation derived from the gradient of the potential function expressed as ( ) ( ) , ,gt t = Vu a r r This acceleration vector is a combination of pure two-body or point mass gravity acceleration and the gravitational acceleration due to higher order nonspherical terms in the Earths geopotential.In terms of the Earths geopotential u, the inertial rectangular cartesian components of the satellites acceleration vector are as follows: 2 22 2 22 22 2 22 221 11 11zx x yr r x yr x yzy y xr r x yr x yx yz zr r rc c cc c| cc c cc c| cc cc c|| || | u u u= | | |++ \ .\ .| || | u u u= +| | |++ \ .\ .| |+ u u| |= +| | |\ .\ . The three partial derivatives of the geopotential with respect to r, , | are given by ( ) ( ) ( )2 011 cos sin sinnN nm m mn n nn mRn C m S m Pr r r rc |c= =u| | | |= + + ||\ . \ . ( ) ( ) ( )12 0cos sin sin tan sinnN nm m m mn n n nn mRC m S m P m Pr rc | | |c|+= =u| | | | ( = + || \ . \ . Orbital Mechanics with MATLAB page 8 ( ) ( )2 0cos sin sinnN nm m mn n nn mRmS m C m Pr rc |c= =u| | | |= ||\ . \ . where radius of the Earth geocentric distance of the satellite,harmonic coefficients geocentric latitude of the satellite arcsin longitude of the satellite right ascension ofm mn ngRrS Czr| o oo===| |= = |\ .= = =the satellite arctan right ascension of Greenwichgyxo| |= |\ .= Right ascension is measure positive east of the vernal equinox, longitude is measured positive east of Greenwich, and latitude is positive above the Earths equator and negative below. Form = 0 the coefficients are called zonal terms, whenm n =the coefficients are sectorial terms, and for n m > = 0 the coefficients are called tesseral terms. The Legendre polynomials with argument sin| are computed using recursion relationships given by: ( ) ( ) ( ) ( ) ( )( ) ( ) ( )( ) ( ) ( ) ( )0 0 01 21112 11sin 2 1 sin sin 1 sinsin 2 1 cos sin , 0,sin sin 2 1 cos sin ,0,n n nn nn nm m mn n nP n P n PnP n P m m nP P n P m m n| | | || | || | | | ( = = = 0 for. The trigonometric arguments are determined from expansions given by ( ) ( )( ) ( )( )sin 2cos sin 1 sin 2cos 2cos cos 1 cos 2tan 1 tan tanm m mm m mm m | | |= = = + Orbital Mechanics with MATLAB page 9 The acceleration experienced by the satellite due to atmospheric drag is computed using the following vector expression: ( ) ( )1, , ,2dd r rCAt tm = a r v r v v where gravitational constant of the Earth satellite velocity vector relative to the atmosphere atmospheric density drag coefficient of the satellite reference area of the satellite mass of thrdCAm======ve satellite During orbit propagation the software uses constant values for the mass, drag coefficient and the reference area of the satellite.Please note that the reference area is measured perpendicular to the relative velocity vector. The aerodynamic drag algorithm assumes that the atmosphere rotates at the same angular speed as the Earth.With this assumption the relative velocity vector is given by r = v v w r where w is the inertial rotation vector of the Earth.The angular velocity vector of the Earth is 001ee( (= ( ( w where7.2921151467E-5ee =radians per second. The cross product expansion of the previous equation gives the three components of the relative velocity vector as follows: x e yr y e xzv rv rvee+ ( (= ( ( v The calculation of atmospheric density in this script is based on the 1976 U.S. Standard atmosphere. The acceleration contribution of the Sun and Moon represented by point masses is given by Orbital Mechanics with MATLAB page 10 ( )3 3 3 3,mb e m s b e ssm m smb e m s b e st | | | |= + +|| ||\ . \ .r r r ra rr r r r where gravitational constant of the Moon gravitational constant of the Sun position vector from the Moon to the satellite position vector from the Sun to the satellite position vector msmbs be m=====rrr from the Earth to the Moon position vector from the Earth to the Sune s = r The solar and lunar ephemerides used in this program are computer implementations of the numerical method described in Low-Precision Formulae for Planetary Positions, T. C. Van Flandern and K. F. Pulkkinen, The Astrophysical Journal Supplement Series, 41:391-411, November 1979.The values of the gravitational constants are as follows: 32km4902.800076secm =32km132712440040.944secs = We can define a solar radiation constant for any satellite as a function of its size, mass and surface reflective properties according to the equation: 2srp sAC P am =where reflectivity constant solar radiation constant astronomical unit surface area normal to the incident radiation mass of the satellitesPaAm ===== The reflectivity constant is a dimensionless number between 0 and 2.For a perfectly absorbent body = 1, for a perfectly reflective body = 2, and for a translucent body < 1.For example, the reflectivity constant for an aluminum surface is approximately 1.96. The value of the solar radiation pressure on a perfectly absorbing satellite surface at a distance of one Astronomical Unit from the Sun is 32 213584.4 10secskg wattsPkm c m= = Orbital Mechanics with MATLAB page 11 where c is the speed of light. The acceleration vector of the satellite due to solar radiation pressure is given by: 3sat to Sunsrp srpsat to SunCr =ra where r r rsat to Sun sat Earth to Sun = rsat = geocentric, inertial position vector of the satellite rEarth to Sun = geocentric, inertial position vector of the Sun During the integration process, the software must determine if the satellite is in Earth shadow or sunlight.Obviously, there can be no solar radiation perturbation during Earth eclipse of the satellite orbit.The software makes use of a shadow parameter to determine eclipse conditions.This parameter is defined by the following expression: ( )sc essc esessign = -r rr rr where rsc = is the geocentric, inertial position vector of the satellite and res = is the geocentric, inertial position vector of the Sun relative to the satellite. The critical values of the shadow parameter for the penumbra (subscript p) and umbra part (subscript u) of the shadow are given by: sinp sc p = r sinu sc u = r The penumbra and umbra shadow angles are found from: p p q u = + quu u= These are the angles between the geocentric anti-Sun vector and the vector to a satellite at the time of shadow entrance or exit. If we represent the shadow as a cylinder, the shadow angle is given by: 1sinescrrq | |= |\ . Orbital Mechanics with MATLAB page 12 The corresponding penumbra and umbra cone angles are as follows: 1sins epesr rru | | += |\ . 1sins euesr rru | | = |\ . where radius of the Earth radius of the Sundistance from the Earth to the Sunesesrrr=== If the condition u p< sis true, the satellite is in the penumbra part of the Earths shadow, and if the inequality 0 s s u is true, the satellite is in the umbra part of the shadow.If the absolute value of the shadow parameter is larger than the penumbra value, the satellite is in full sunlight.The shadow calculations also assume that the Earths atmosphere increases the radius of the Earth by two percent. cowell2.m heliocentric orbit propagation This application uses Cowells method to predict the motion of spacecraft, comets and other celestial bodies in heliocentric elliptic orbits.It includes the point mass gravity perturbations due to the planets Venus, Earth, Mars, Jupiter, Saturn and the Sun. The user can provide the initial orbital elements for this program interactively or by specifying the name of a data file.When creating this type of ASCII text file the user can change the numeric data and annotation, but do not change the number of lines in the file or the line location of the data.Please note the units and valid range for each data item. The following data file defines a simulation for Halleys comet.Please note that the angular orbital elements are with respect to the true-of-date ecliptic and equinox. calendar date of perihelion passage (1