Mission to SGL beyond 550 AU
Use FlybyOptimal to analyse a solar gravity lens mission that must go beyond 550 AU. Best SNR is achieved at 650 AU or greater.
See also: StraightLineOptimal, FlybyOptimal, SimulateFlyby
Contents
%--------------------------------------------------------------------- % Copyright (c) 2017 Princeton Satellite Systems, Inc. % All rights reserved. %--------------------------------------------------------------------- payload = 1000; % kg nAU = 600; % number of AU aU = Constant('au'); c = Constant('speed of light'); year = 365*86400; nYear = 15:3:30; p = zeros(6,length(nYear)); d = Straight2DStructure; d.mP = payload; d.dF = nAU*aU; d.sigma = 1*1000; d.thrustRange = [0 60]; d.uEConst = 200; % constant uE works much better... d.uERange = [80 10000]; for k = 1:length(nYear) d.tF = nYear(k)*year; [uE, thrust, data] = FlybyOptimal( d ); fprintf(1,'\nStraight Line Flyby Demo to %10.0f AU:\n',nAU); fprintf(1,'Desired distance %12.2f AU\n',d.dF/aU); fprintf(1,'Travel time %12.2f years\n',d.tF/year); fprintf(1,'Payload %12.2f kg\n',d.mP); fprintf(1,'Specific Power %12.2f kW/kg\n',d.sigma/1000); fprintf(1,'Exhaust velocity %12.2f km/s\n--\n',uE); fprintf(1,'Thrust %12.2f N\n',thrust); fprintf(1,'Power %12.2f MW\n',data.p/1e6); fprintf(1,'Mass Dry %12.2f kg\n',data.mD); fprintf(1,'Mass Fuel %12.2f kg\n',data.mF); data.tF = d.tF; x = SimulateFlyby( data.mD, data.mF, thrust, uE, d.tF ); p(1,k) = x(2,end)/c; p(2,k) = (data.mD + data.mF)/1000; p(3,k) = thrust; p(4,k) = uE; p(5,k) = data.p/1e6; p(6,k) = x(1,end)/aU; end fprintf(1,'Final Velocity %12.4f c\n',x(2,end)/c); pL = {'V_{f} (c)', 'Mass (MT)' 'Thrust (N)', 'u_e (km/s)' 'Power (MW)' 'Distance (AU)'}; xL = sprintf('Time to %d AU (Years)',nAU); Plot2D(nYear,p,xL,pL,'SGL Mission');
thrust0 =
0.80225
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 2 3.192924e+03 5.342e+10 0.000e+00
1 4 1.082545e+04 3.494e+10 2.400e+03 2.792e+00
2 6 5.177396e+04 2.702e+10 1.927e+03 1.498e+01
3 8 1.644414e+05 2.543e+10 8.730e+02 4.122e+01
4 10 1.650048e+05 2.543e+10 8.856e+02 2.061e-01
5 12 1.650062e+05 2.543e+10 0.000e+00 5.152e-04
6 14 1.650069e+05 2.543e+10 4.547e-13 2.589e-04
7 16 1.650072e+05 2.543e+10 4.547e-13 1.301e-04
8 18 1.650074e+05 2.543e+10 9.095e-13 6.537e-05
9 20 1.650075e+05 2.543e+10 0.000e+00 3.285e-05
10 22 1.650076e+05 2.543e+10 6.939e-18 1.651e-05
11 24 1.650076e+05 2.543e+10 3.469e-18 8.295e-06
12 26 1.650076e+05 2.543e+10 0.000e+00 4.168e-06
13 28 1.650076e+05 2.543e+10 0.000e+00 2.095e-06
14 30 1.650076e+05 2.543e+10 4.547e-13 1.052e-06
15 32 1.650076e+05 2.543e+10 4.547e-13 5.289e-07
16 34 1.650076e+05 2.543e+10 0.000e+00 2.658e-07
17 36 1.650076e+05 2.543e+10 4.547e-13 1.335e-07
18 38 1.650076e+05 2.543e+10 0.000e+00 6.711e-08
19 40 1.650076e+05 2.543e+10 1.282e-31 3.372e-08
20 42 1.650076e+05 2.543e+10 4.547e-13 1.694e-08
21 44 1.650076e+05 2.543e+10 4.547e-13 8.515e-09
22 46 1.650076e+05 2.543e+10 2.034e-33 4.279e-09
Optimization stopped because the relative changes in all elements of x are
less than options.StepTolerance = 1.000000e-10, but the relative maximum constraint
violation, 4.760075e-01, exceeds options.ConstraintTolerance = 1.000000e-06.
Consider enabling the interior point method feasibility mode.
Warning: Did not converge: -2
Straight Line Flyby Demo to 600 AU:
Desired distance 600.00 AU
Travel time 15.00 years
Payload 1000.00 kg
Specific Power 1.00 kW/kg
Exhaust velocity 200.00 km/s
--
Thrust 60.00 N
Power 15.00 MW
Mass Dry 23095.60 kg
Mass Fuel 141912.00 kg
thrust0 =
0.55712
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 2 2.799581e+03 4.901e+10 4.547e-13
1 4 7.397138e+03 2.741e+10 2.592e+03 1.423e+00
2 6 2.041697e+04 1.655e+10 1.561e+03 4.031e+00
3 8 7.020428e+04 1.151e+10 2.054e+03 1.541e+01
4 10 1.941861e+05 1.011e+10 3.072e+03 3.838e+01
5 12 1.948060e+05 1.010e+10 3.073e+03 1.919e-01
6 14 1.948076e+05 1.010e+10 0.000e+00 4.798e-04
7 16 1.948083e+05 1.010e+10 0.000e+00 2.411e-04
8 18 1.948087e+05 1.010e+10 4.547e-13 1.211e-04
9 20 1.948089e+05 1.010e+10 4.547e-13 6.088e-05
10 22 1.948090e+05 1.010e+10 9.095e-13 3.059e-05
11 24 1.948091e+05 1.010e+10 2.993e-26 1.537e-05
12 26 1.948091e+05 1.010e+10 7.519e-27 7.724e-06
13 28 1.948091e+05 1.010e+10 4.547e-13 3.881e-06
14 30 1.948091e+05 1.010e+10 4.747e-28 1.950e-06
15 32 1.948091e+05 1.010e+10 4.547e-13 9.801e-07
16 34 1.948091e+05 1.010e+10 4.547e-13 4.925e-07
17 36 1.948091e+05 1.010e+10 4.547e-13 2.475e-07
18 38 1.948091e+05 1.010e+10 5.421e-20 1.244e-07
19 40 1.948091e+05 1.010e+10 2.711e-20 6.249e-08
20 42 1.948091e+05 1.010e+10 0.000e+00 3.140e-08
21 44 1.948091e+05 1.010e+10 4.547e-13 1.578e-08
22 46 1.948091e+05 1.010e+10 7.537e-33 7.929e-09
23 48 1.948091e+05 1.010e+10 0.000e+00 3.984e-09
Optimization stopped because the relative changes in all elements of x are
less than options.StepTolerance = 1.000000e-10, but the relative maximum constraint
violation, 2.061856e-01, exceeds options.ConstraintTolerance = 1.000000e-06.
Consider enabling the interior point method feasibility mode.
Warning: Did not converge: -2
Straight Line Flyby Demo to 600 AU:
Desired distance 600.00 AU
Travel time 18.00 years
Payload 1000.00 kg
Specific Power 1.00 kW/kg
Exhaust velocity 200.00 km/s
--
Thrust 60.00 N
Power 15.00 MW
Mass Dry 24514.72 kg
Mass Fuel 170294.40 kg
thrust0 =
0.40931
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 2 2.525443e+03 4.528e+10 0.000e+00
1 4 5.563341e+03 2.162e+10 2.696e+03 8.151e-01
2 6 1.080697e+04 9.540e+09 1.097e+03 1.407e+00
3 8 1.817785e+04 3.613e+09 5.291e+01 1.978e+00
4 10 2.539707e+04 9.728e+08 1.401e+03 1.937e+00
5 12 2.903644e+04 1.160e+08 2.506e+02 9.765e-01
6 14 2.959612e+04 2.089e+06 6.599e+01 1.502e-01
7 16 2.960657e+04 7.023e+02 1.140e-01 2.804e-03
8 18 2.960657e+04 1.221e-04 1.718e-03 9.431e-07
Optimization completed: The relative first-order optimality measure, 4.610381e-07,
is less than options.OptimalityTolerance = 1.000000e-06, and the relative maximum constraint
violation, 2.695984e-15, is less than options.ConstraintTolerance = 1.000000e-06.
Straight Line Flyby Demo to 600 AU:
Desired distance 600.00 AU
Travel time 21.00 years
Payload 1000.00 kg
Specific Power 1.00 kW/kg
Exhaust velocity 200.00 km/s
--
Thrust 7.68 N
Power 1.92 MW
Mass Dry 4189.79 kg
Mass Fuel 25416.78 kg
thrust0 =
0.31338
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 2 2.323571e+03 4.209e+10 0.000e+00
1 4 4.465435e+03 1.721e+10 2.732e+03 5.071e-01
2 6 6.946102e+03 5.369e+09 7.143e+02 5.873e-01
3 8 8.575262e+03 8.992e+08 4.721e+02 3.857e-01
4 10 8.968647e+03 3.474e+07 1.164e+02 9.314e-02
5 12 8.985091e+03 5.596e+04 1.319e+00 3.893e-03
6 14 8.985118e+03 1.478e-01 7.675e-04 6.292e-06
Optimization completed: The relative first-order optimality measure, 1.817287e-07,
is less than options.OptimalityTolerance = 1.000000e-06, and the relative maximum constraint
violation, 3.511344e-12, is less than options.ConstraintTolerance = 1.000000e-06.
Straight Line Flyby Demo to 600 AU:
Desired distance 600.00 AU
Travel time 24.00 years
Payload 1000.00 kg
Specific Power 1.00 kW/kg
Exhaust velocity 200.00 km/s
--
Thrust 1.89 N
Power 0.47 MW
Mass Dry 1830.39 kg
Mass Fuel 7154.73 kg
thrust0 =
0.24761
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 2 2.168770e+03 3.932e+10 0.000e+00
1 4 3.752880e+03 1.384e+10 2.721e+03 3.356e-01
2 6 5.069626e+03 3.033e+09 4.538e+02 2.790e-01
3 8 5.541754e+03 2.175e+08 6.020e+01 1.000e-01
4 10 5.581054e+03 1.286e+06 3.844e+00 8.326e-03
5 12 5.581289e+03 4.544e+01 3.842e-03 4.981e-05
Optimization completed: The relative first-order optimality measure, 8.139675e-07,
is less than options.OptimalityTolerance = 1.000000e-06, and the relative maximum constraint
violation, 1.155457e-09, is less than options.ConstraintTolerance = 1.000000e-06.
Straight Line Flyby Demo to 600 AU:
Desired distance 600.00 AU
Travel time 27.00 years
Payload 1000.00 kg
Specific Power 1.00 kW/kg
Exhaust velocity 200.00 km/s
--
Thrust 0.97 N
Power 0.24 MW
Mass Dry 1449.24 kg
Mass Fuel 4132.05 kg
thrust0 =
0.20056
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 2 2.046321e+03 3.690e+10 9.095e-13
1 4 3.261654e+03 1.125e+10 2.679e+03 2.330e-01
2 6 4.023127e+03 1.745e+09 2.896e+02 1.460e-01
3 8 4.188456e+03 5.613e+07 3.682e+01 3.169e-02
4 10 4.194132e+03 6.177e+04 6.781e-01 1.088e-03
5 12 4.194139e+03 7.571e-02 1.273e-04 1.200e-06
Optimization completed: The relative first-order optimality measure, 2.439740e-08,
is less than options.OptimalityTolerance = 1.000000e-06, and the relative maximum constraint
violation, 2.051684e-12, is less than options.ConstraintTolerance = 1.000000e-06.
Straight Line Flyby Demo to 600 AU:
Desired distance 600.00 AU
Travel time 30.00 years
Payload 1000.00 kg
Specific Power 1.00 kW/kg
Exhaust velocity 200.00 km/s
--
Thrust 0.61 N
Power 0.15 MW
Mass Dry 1297.88 kg
Mass Fuel 2896.26 kg
Final Velocity 0.0008 c
Simulate one example
d.tF = mean(nYear)*year; [uE, thrust, data] = FlybyOptimal( d ); SimulateFlyby( data.mD, data.mF, thrust, uE, d.tF ); %-------------------------------------- % $Id: 24cd2517373ae8a5db3e96f29d3efac508b437cc $
thrust0 =
0.35656
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 2 2.417380e+03 4.362e+10 0.000e+00
1 4 4.950757e+03 1.927e+10 2.721e+03 6.373e-01
2 6 8.497434e+03 7.164e+09 8.901e+02 8.922e-01
3 8 1.182487e+04 1.827e+09 6.819e+02 8.371e-01
4 10 1.335297e+04 1.905e+08 2.379e+02 3.844e-01
5 12 1.355143e+04 2.539e+06 3.674e+01 4.992e-02
6 14 1.355414e+04 4.630e+02 1.557e-01 6.836e-04
7 16 1.355415e+04 9.155e-05 2.376e-03 1.247e-07
Optimization completed: The relative first-order optimality measure, 5.977092e-07,
is less than options.OptimalityTolerance = 1.000000e-06, and the relative maximum constraint
violation, 2.098712e-15, is less than options.ConstraintTolerance = 1.000000e-06.
Final position simulation 600.00 Distance (AU)
Final velocity simulation 350.48 km/s
Final time simulation 22.48 year