Solutions Manual Orbital Mechanics for Engineering Students Third Edition Chapter 5
Howard D. Curtis 206 Copyright © 2013, Elsevier, Inc.
clear
global mu
deg = pi/180;
mu = 398600;
Re = 6378;
f = 1/298.26;
%...Data declaration for Problen 5.16:
H = 0;
phi = 29*deg;
t = [ 0 60 120 ];
ra = [ 0 6.59279e+01 7.98500e+01]*deg;
dec = [5.15110e+01 2.79911e+01 1.46609e+01]*deg;
theta = [ 0 2.50684e–01 5.01369e-01]*deg;
%…
%...Equations 5.56 & 5.57:
fac1 = Re/sqrt(1-(2*f – f*f)*sin(phi)^2);
fac2 = (Re*(1-f)^2/sqrt(1-(2*f – f*f)*sin(phi)^2) + H)*sin(phi);
for i = 1:3
R(i,1) = (fac1 + H)*cos(phi)*cos(theta(i));
R(i,2) = (fac1 + H)*cos(phi)*sin(theta(i));
R(i,3) = fac2;
rho(i,1) = cos(dec(i))*cos(ra(i));
rho(i,2) = cos(dec(i))*sin(ra(i));
rho(i,3) = sin(dec(i));
end
%...Algorithms 5.5 and 5.6:
[r, v, r_old, v_old] = gauss(rho(1,:), rho(2,:), rho(3,:), ...
R(1,:), R(2,:), R(3,:), ...
t(1), t(2), t(3));
%...Echo the input data and output the solution to
% the command window:
fprintf(‘–——–—–——––—–—–—–—–—––—–—–—––—–––——–—‘)
fprintf(‘\n Problems 5.16 and 5.17: Orbit determination‘)
fprintf(‘\n by the Gauss method\n’)
fprintf(‘\n Radius of earth (km) = %g‘, Re)
fprintf(‘\n Flattening factor = %g’, f)
fprintf(‘\n Gravitational parameter (km^3/s^2) = %g‘, mu)
fprintf(‘\n\n Input data:\n‘);
fprintf(‘\n Latitude (deg) of tracking site = %g‘, phi/deg);
fprintf(‘\n Altitude (km) above sea level = %g‘, H);
fprintf(‘\n\n Observations:‘)
fprintf(‘\n Right‘)
fprintf(‘ Local‘)
fprintf(‘\n Time (s) Ascension (deg) Declination (deg)’)
fprintf(‘ Sidereal time (deg)‘)
for i = 1:3
fprintf(‘\n %9.4g %11.4f %19.4f %20.4f‘, ...
t(i), ra(i)/deg, dec(i)/deg, theta(i)/deg)
end
fprintf(‘\n\n Solution:\n’)
fprintf(‘\n Without iterative improvement (Problem 5.16)...\n’)
fprintf(‘\n r (km) = [%g, %g, %g]’, r_old(1), r_old(2), r_old(3))