Difference between revisions of "Gravity Turn Maneuver (Casadi)"

From mintOC
Jump to: navigation, search
m (case sensitive category)
 
Line 457: Line 457:
 
</pre>
 
</pre>
 
   
 
   
[[Category:CasADi]]
+
[[Category:Casadi]]

Latest revision as of 11:01, 15 December 2015

This page contains a discretized version of the OCP Gravity Turn Maneuver in CasADi 2.4.2 format. The continuous model was discretized using a direct multiple shooting approach with 300 shooting nodes distributed equidistantly over a variable time horizon. The control grid is equal to the DMS grid. An initial solution is chosen by linearly interpolating between initial and terminal state.

CasADi

# ----------------------------------------------------------------
# Gravity Turn Maneuver with direct multiple shooting using CVodes
# (c) Mirko Hahn
# ----------------------------------------------------------------
from casadi import *
 
# Artificial model parameters
N = 300                   # Number of shooting intervals
vel_eps = 1e-6            # Initial velocity (km/s)
 
# Vehicle parameters
m0   = 11.3               # Launch mass (t)
m1   = 1.3                # Dry mass (t)
g0   = 9.81e-3            # Gravitational acceleration at altitude zero (km/s^2)
r0   = 6.0e2              # Radius at altitude zero (km)
Isp  = 300.0              # Specific impulse (s)
Fmax = 600.0e-3           # Maximum thrust (MN)
 
# Atmospheric parameters
cd  = 0.021                        # Drag coefficients
A   = 1.0                          # Reference area (m^2)
H   = 5.6                          # Scale height (km)
rho = (1.0 * 1.2230948554874)      # Density at altitude zero
 
# Target orbit parameters
h_obj = 75                # Target altitude (km)
v_obj = 2.287             # Target velocity (km/s)
q_obj = 0.5 * pi          # Target angle to vertical (rad)
 
# Create symbolic variables
x = SX.sym('[m, v, q, h, d]')      # Vehicle state
u = SX.sym('u')                    # Vehicle controls
T = SX.sym('T')                    # Time horizon (s)
 
# Introduce symbolic expressions for important composite terms
Fthrust = Fmax * u
Fdrag   = 0.5e3 * A * cd * rho * exp(-x[3] / H) * x[1]**2
r       = x[3] + r0
g       = g0 * (r0 / r)**2
vhor    = x[1] * sin(x[2])
vver    = x[1] * cos(x[2])
 
# Build symbolic expressions for ODE right hand side
mdot = -(Fmax / (Isp * g0)) * u
vdot = (Fthrust - Fdrag) / x[0] - g * cos(x[2])
hdot = vver
ddot = vhor / r
qdot = g * sin(x[2]) / x[1] - ddot
 
# Build the DAE function
ode = [
    mdot,
    vdot,
    qdot,
    hdot,
    ddot
]
quad = u
dae = SXFunction("dae", daeIn(x=x, p=vertcat([u, T])), daeOut(ode=T*vertcat(ode), quad=T*quad))
I = Integrator("I", "cvodes", dae, {'t0': 0.0, 'tf': 1.0 / N})
 
# Specify upper and lower bounds as well as initial values for DAE parameters,
# states and controls
p_min  = [120.0]
p_max  = [600.0]
p_init = [120.0]
 
u_min  = [0.0]
u_max  = [1.0]
u_init = [0.5]
 
x0_min  = [m0, vel_eps,       0.0, 0.0, 0.0]
x0_max  = [m0, vel_eps,  0.5 * pi, 0.0, 0.0]
x0_init = [m0, vel_eps, 0.05 * pi, 0.0, 0.0]
 
xf_min  = [m1, v_obj, q_obj, h_obj, 0.0]
xf_max  = [m0, v_obj, q_obj, h_obj, inf]
xf_init = [m1, v_obj, q_obj, h_obj, 0.0]
 
x_min  = [m1, vel_eps, 0.0, 0.0, 0.0]
x_max  = [m0,     inf,  pi, inf, inf]
x_init = [0.5 * (m0 + m1), 0.5 * v_obj, 0.5 * q_obj, 0.5 * h_obj, 0.0]
 
# Useful variable block sizes
np = 1                         # Number of parameters
nx = x.size1()                 # Number of states
nu = u.size1()                 # Number of controls
ns = nx + nu                   # Number of variables per shooting interval
 
# Introduce symbolic variables and disassemble them into blocks
V = MX.sym('X', N * ns + nx + np)
P = V[0]
X = [V[np+i*ns:np+i*ns+nx] for i in range(0, N+1)]
U = [V[np+i*ns+nx:np+(i+1)*ns] for i in range(0, N)]
 
# Nonlinear constraints and Lagrange objective
G = []
F = 0.0
 
# Build DMS structure
x0 = p_init + x0_init
for i in range(0, N):
    Y = I({'x0': X[i], 'p': vertcat([U[i], P])})
    G = G + [Y['xf'] - X[i+1]]
    F = F + Y['qf']
 
    frac = float(i+1) / N
    x0 = x0 + u_init + [x0_init[i] + frac * (xf_init[i] - x0_init[i]) for i in range(0, nx)]
 
# Lower and upper bounds for solver
lbg = 0.0
ubg = 0.0
lbx = p_min + x0_min + u_min + (N-1) * (x_min + u_min) + xf_min
ubx = p_max + x0_max + u_max + (N-1) * (x_max + u_max) + xf_max
 
# Solve the problem using IPOPT
nlp = MXFunction("nlp", nlpIn(x=V), nlpOut(f=m0 - X[-1][0], g=vertcat(G)))
S = NlpSolver("S", "ipopt", nlp, {'tol': 1e-5})
r = S({
    'x0' : x0,
    'lbx': lbx,
    'ubx': ubx,
    'lbg': lbg,
    'ubg': ubg
})
 
# Extract state sequences and parameters from result
x = r['x']
f = r['f']
T = x[0]
 
t = [i * (T / N) for i in range(0, N+1)]
m = x[np  ::ns].get()
v = x[np+1::ns].get()
q = x[np+2::ns].get()
h = x[np+3::ns].get()
d = x[np+4::ns].get()
u = x[np+nx::ns].get() + [0.0]

Results

The solution is calculated using IPOPT (3.11.9, default settings with tolerance 1e-5, using linear solver MUMPS in sequential mode on Ubuntu 15.10 for x86-64 with Linux 4.2.0-19-generic, Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz, 16 GB RAM). The objective function value is 9.65080. IPOPT finds the solution in 84 iterations (77.466 seconds proc time).

Solution

The following is a Gnuplot compatible tabular version of the solution:

# t	m	v	beta	h	theta	u
0	11.3	1e-06	2.77860819863e-06	0.0	0.0	0.999871890934
1.12681	11.0703034485	0.0483649064877	3.1715534546e-05	0.0274199153907	1.29929499744e-09	0.998958246276
2.25361	10.8408167849	0.0921925497448	3.72636082804e-05	0.107252362504	5.95514030718e-09	0.326196705112
3.38042	10.7658809267	0.090683693199	4.20453758593e-05	0.210227341355	1.27488341644e-08	0.36077660746
4.50722	10.6830011665	0.0916779384911	4.74523648979e-05	0.312965878384	2.04014332419e-08	0.348216995107
5.63403	10.6030066755	0.0920148841805	5.35065012386e-05	0.416440676184	2.90935384675e-08	0.348162975156
6.76084	10.5230245943	0.0925365990072	6.02966641843e-05	0.5204032739	3.89367692674e-08	0.344819131671
7.88764	10.4438106808	0.0930181089434	6.79018539473e-05	0.624930229321	5.0083520831e-08	0.342374770938
9.01445	10.3651583006	0.0935195865936	7.64151897145e-05	0.730011396396	6.26964446471e-08	0.339711745211
10.1413	10.2871176865	0.0940246707442	8.59376994215e-05	0.835659580289	7.69598912076e-08	0.337150529163
11.2681	10.2096654503	0.0945389717196	9.65812647273e-05	0.941881973673	9.30793785195e-08	0.334568141088
12.3949	10.1328064557	0.0950597343545	0.000108469263306	1.04868760273	1.11285346314e-07	0.332038336386
13.5217	10.056528623	0.0955892162114	0.000121737440866	1.15608504563	1.31834851487e-07	0.329509747357
14.6485	9.98083167285	0.0961262052325	0.000136535062263	1.26408339909	1.55014894122e-07	0.327010078582
15.7753	9.90570896159	0.0966714389773	0.000153026224658	1.37269153914	1.81145560812e-07	0.324528413444
16.9021	9.8311563533	0.0972248963531	0.000171391070942	1.48191873119	2.10583693434e-07	0.322070798124
18.0289	9.75716832309	0.0977869802566	0.000191827201329	1.59177446655	2.43726791529e-07	0.319627886638
19.1557	9.68374149313	0.0983574847092	0.000214551185091	1.70226833537	2.81017264632e-07	0.31721107001
20.2825	9.61086986874	0.098937003886	0.000239800140529	1.81341016432	3.22947209818e-07	0.314811149588
21.4093	9.53854956842	0.0995254924258	0.000267833415404	1.92521007587	3.70063587119e-07	0.312432454392
22.5361	9.46677571619	0.100123238775	0.000298934444328	2.03767833673	4.22973838873e-07	0.310073449285
23.6629	9.39554378872	0.100730432337	0.000333412654684	2.15082548065	4.8235212264e-07	0.307734103495
24.7897	9.32484926976	0.101347278805	0.000371605537268	2.26466226419	5.48946059076e-07	0.305415304594
25.9165	9.25468743916	0.101974058967	0.000413880815239	2.37919971927	6.23584148107e-07	0.303112723465
27.0433	9.18505457126	0.102610772129	0.000460638805631	2.49444902948	7.07183733168e-07	0.300842293289
28.1701	9.11594328017	0.103258535918	0.000512314669319	2.61042203018	8.00760182938e-07	0.29856639394
29.297	9.04735482228	0.10391580613	0.000569381363827	2.72713026137	9.05435602071e-07	0.296333057678
30.4238	8.97927941977	0.104584604775	0.00063235220542	2.84458560489	1.02244990183e-06	0.294107919546
31.5506	8.91171518929	0.105264330731	0.000701783418957	2.96280068854	1.15317229058e-06	0.291904654179
32.6774	8.84465710611	0.105955482276	0.000778277594739	3.08178810404	1.29911291511e-06	0.289719505221
33.8042	8.77810100842	0.106658275558	0.000862486607199	3.20156083904	1.46193653067e-06	0.287553332661
34.931	8.71204253685	0.107373013262	0.000955114979	3.32213217435	1.64347680043e-06	0.285405783978
36.0578	8.64647741301	0.108099987244	0.00105692329751	3.44351572451	1.84575192933e-06	0.283276805784
37.1846	8.58140137077	0.108839503086	0.00116873180087	3.56572543978	2.07098151567e-06	0.281166363371
38.3114	8.51681015199	0.109591868394	0.00129142446873	3.68877571076	2.32160626668e-06	0.279074591534
39.4382	8.45269946754	0.110357438748	0.00142595200563	3.8126811585	2.60030425935e-06	0.277000138296
40.565	8.3890653389	0.111136473076	0.00157333666297	3.93745682923	2.91001532601e-06	0.274947440837
41.6918	8.3259027682	0.111929592965	0.00173467569233	4.06311823087	3.25396235208e-06	0.272899557983
42.8186	8.2632106494	0.112736134768	0.00191114652647	4.1896808402	3.63567518946e-06	0.270895618686
43.9454	8.20097888752	0.113558538722	0.00210400962722	4.31716118699	4.05902022234e-06	0.26888554858
45.0722	8.13920889097	0.114395149167	0.00231461539834	4.44557643334	4.52823353859e-06	0.266904254414
46.199	8.07789404916	0.115247354064	0.00254440411962	4.5749430461	5.04792741452e-06	0.264938553658
47.3258	8.01703077989	0.116115365681	0.00279491448205	4.70527870185	5.62314930667e-06	0.262989088609
48.4527	7.9566153534	0.116999476021	0.00306778844827	4.83660152318	6.25941240849e-06	0.261061056952
49.5795	7.89664284586	0.117900465281	0.00336477191539	4.96892989716	6.96271718178e-06	0.25914680789
50.7063	7.83711009107	0.118818468407	0.00368772122835	5.10228276769	7.73960139672e-06	0.257251762341
51.8331	7.77801267749	0.119754108957	0.00403861111944	5.23667972676	8.59719297438e-06	0.255373633633
52.9599	7.71934671886	0.120707832067	0.00441953501588	5.37214086131	9.54324137038e-06	0.253513463423
54.0867	7.66110808965	0.121680196244	0.00483271074897	5.50868681957	1.0586170107e-05	0.251668719133
55.2135	7.60329324614	0.122671570262	0.00528048506647	5.64633876202	1.17351275208e-05	0.249848290104
56.3403	7.54589660248	0.12368304859	0.00576534128992	5.78511913141	1.30000721019e-05	0.248030023384
57.4671	7.48891766192	0.124713940463	0.00628989313982	5.92504970261	1.43917464287e-05	0.246246828699
58.5939	7.43234836752	0.125766448506	0.00685689740221	6.06615351629	1.59218157566e-05	0.244470147632
59.7207	7.37618722291	0.12684018476	0.00746925356802	6.20845460354	1.76029136875e-05	0.242710243883
60.8475	7.32043037392	0.127935789228	0.00813001041354	6.35197713654	1.94487007846e-05	0.240968981314
61.9743	7.26507353818	0.129054086829	0.00884236627962	6.49674609541	2.14739438826e-05	0.23925307835
63.1011	7.21011088994	0.130196491008	0.00960966899285	6.64278770638	2.36945990586e-05	0.237534777489
64.2279	7.15554298005	0.131361937783	0.0104354233221	6.79012832879	2.61278751366e-05	0.23585143399
65.3547	7.10136177789	0.132552890675	0.0113232895957	6.93879513148	2.87923294653e-05	0.2341728937
66.4816	7.04756618005	0.133768963387	0.0122770825344	7.08881637522	3.17079597105e-05	0.232515140152
67.6084	6.99415141127	0.135011367809	0.0133007756639	7.24022076771	3.489628693e-05	0.230886212442
68.7352	6.94111084951	0.136282024555	0.0143984921845	7.39303874282	3.83804791206e-05	0.229237770352
69.862	6.88844897772	0.137578371059	0.0155745192201	7.54730025492	4.2185403193e-05	0.227651747455
70.9888	6.8361514566	0.138905777722	0.0168332919058	7.70303688792	4.63377844701e-05	0.226040852646
72.1156	6.78422399988	0.140261077142	0.0181793935172	7.86028127533	5.08662980623e-05	0.224478472654
73.2424	6.73265546243	0.141648439305	0.019617556595	8.01906663398	5.58016805566e-05	0.222909371404
74.3692	6.6814473883	0.143066527127	0.0211526505188	8.1794276065	6.11768685792e-05	0.221365434305
75.496	6.63059399664	0.144517323094	0.0227896869811	8.34139913677	6.70270941747e-05	0.219834207182
76.6228	6.58009236763	0.146001557324	0.0245338029641	8.50501755198	7.33900464956e-05	0.218318672364
77.7496	6.52993889635	0.147520328785	0.0263902584024	8.67032007873	8.03059938452e-05	0.216817734448
78.8764	6.4801302295	0.149074677241	0.0283644260742	8.83734499171	8.7817928719e-05	0.215331337971
80.0032	6.43066302655	0.150665696403	0.0304617820826	9.0061315898	9.59717112317e-05	0.213859120912
81.13	6.3815340301	0.152294503944	0.0326878948441	9.17672021654	0.000104816219211	0.212400765796
82.2568	6.33274005571	0.153962249277	0.0350484130922	9.349152266	0.000114403502127	0.210955909902
83.3836	6.28427800226	0.155670111679	0.0375490527181	9.52347018919	0.000124788939302	0.209524141378
84.5104	6.23614486324	0.157419298224	0.0401955825251	9.69971749513	0.000136031401927	0.208105098379
85.6373	6.18833771526	0.159211052039	0.0429938088247	9.87793875239	0.000148193418971	0.206698051968
86.7641	6.14085380241	0.161046616871	0.045949559208	10.0581795713	0.00016134134535	0.20530314624
87.8909	6.09369033564	0.162927336993	0.0490686639898	10.2404865652	0.000175545513359	0.203918747031
89.0177	6.04684490133	0.16485448585	0.0523569342652	10.4249070234	0.000190880274873	0.20254508625
90.1445	6.0003150326	0.166829394827	0.0558201586963	10.6114900844	0.000207424693812	0.201181884102
91.2713	5.95409832682	0.168853490022	0.0594640652613	10.8002854138	0.000225262173161	0.199826900476
92.3981	5.90819289598	0.170928045658	0.0632943074249	10.9913435862	0.00024448081858	0.198484497102
93.5249	5.86259585008	0.173054917608	0.0673164378665	11.1847162704	0.000265173641721	0.197142365834
94.6517	5.8173071266	0.175234631536	0.0715359035273	11.3804566002	0.000287439171446	0.19581509709
95.7785	5.77232331123	0.177469601096	0.0759579928423	11.5786168176	0.00031138025671	0.194489552909
96.9053	5.7276440078	0.179760754068	0.0805878327051	11.7792510207	0.000337105653027	0.193171075564
98.0321	5.68326759288	0.182109772966	0.0854303660891	11.9824138038	0.000364729692297	0.191856546845
99.1589	5.63919315935	0.184518084562	0.0904903229932	12.1881604332	0.000394372482122	0.190545791715
100.286	5.59541984033	0.186987216792	0.0957721994977	12.3965466658	0.000426160059288	0.189237618706
101.413	5.55194704264	0.189518676343	0.101280234021	12.6076286856	0.000460224553006	0.187931319951
102.539	5.50877433572	0.192114007529	0.107018384704	12.8214630013	0.000496704337203	0.186625350468
103.666	5.46590164391	0.194774692175	0.112990307975	13.0381063103	0.000535744169706	0.185319524162
104.793	5.42332893434	0.197502324355	0.119199338779	13.2576151459	0.000577495120379	0.184011250854
105.92	5.38105676913	0.200298298116	0.125648469997	13.4800460779	0.000622114979592	0.182703979499
107.047	5.33908491813	0.203164545399	0.132340326049	13.7054557859	0.000669768442498	0.181380162161
108.173	5.29741718235	0.206100956716	0.139277171443	13.9338999237	0.000720626920245	0.180077851231
109.3	5.25604862124	0.209112305327	0.146460845822	14.1654345222	0.000774868910802	0.178745580145
110.427	5.2149861174	0.212196908766	0.153892770121	14.4001151769	0.000832680144635	0.177419731479
111.554	5.17422819546	0.215357926751	0.161573965652	14.6379957225	0.000894253129205	0.176078216333
112.681	5.13377845439	0.218595754562	0.169505013478	14.8791289352	0.000959787168053	0.174739532299
113.807	5.09363624383	0.221913262603	0.177686016434	15.1235675385	0.00102948975665	0.173382603066
114.934	5.05380575517	0.225310655964	0.186116626604	15.3713624067	0.0011035749808	0.172020176306
116.061	5.01428825134	0.228789934866	0.194796043809	15.622562415	0.00118226385685	0.170646289447
117.188	4.97508636501	0.2323523632	0.203722988155	15.877214973	0.00126578462411	0.169261847706
118.315	4.93620252092	0.235999394966	0.212895709018	16.1353655168	0.00135437257109	0.167861283163
119.441	4.89764042289	0.239731793973	0.222311993235	16.3970570287	0.00144826983087	0.166463174946
120.568	4.85939950665	0.243552876412	0.2319691275	16.6623309109	0.00154772567014	0.16501962689
121.695	4.8214902109	0.247459436029	0.241863982882	16.9312245581	0.00165299550398	0.16362238225
122.822	4.78390189855	0.251460958539	0.251992891186	17.2037747143	0.00176434218206	0.162134758871
123.949	4.74665533193	0.255547831018	0.262351785307	17.4800135557	0.00188203421959	0.160701829941
125.075	4.70973794632	0.25973094261	0.272936178367	17.7599695909	0.00200634617712	0.1592201533
126.202	4.67316094034	0.264006332803	0.283741056751	18.0436703171	0.00213755952957	0.15774077977
127.329	4.63692378489	0.268377382628	0.294761047554	18.3311381431	0.00227596081776	0.156236108649
128.456	4.60103229148	0.272843409621	0.30599036601	18.6223919461	0.00242184208841	0.154730045069
129.583	4.56548678002	0.27740713913	0.317422844501	18.917446631	0.00257550051171	0.15320882695
130.709	4.53029073188	0.282069160196	0.329051922806	19.2163136482	0.00273723839674	0.151675952961
131.836	4.49544682472	0.286830476898	0.340870703168	19.5189999704	0.00290736242692	0.150128335981
132.963	4.46095844539	0.29169151171	0.352871974521	19.8255078969	0.00308618325604	0.148583730647
134.09	4.42682490203	0.296655192076	0.365048192184	20.1358359994	0.00327401577339	0.147026119864
135.217	4.39304918234	0.301721844087	0.377391501787	20.4499789559	0.00347117871009	0.145455052239
136.344	4.35963437771	0.306891570574	0.389893822727	20.7679260117	0.00367799338258	0.143871593177
137.47	4.32658333476	0.312164464356	0.402546877792	21.0896608202	0.00389478318825	0.142322437674
138.597	4.29388817308	0.317547599096	0.415342068751	21.4151650655	0.00412187569805	0.140720554489
139.724	4.26156100558	0.323034257733	0.428270646039	21.7444147977	0.004359599761	0.139150738139
140.851	4.22959446569	0.328630866952	0.441323746735	22.0773802282	0.00460828504446	0.137562931199
141.978	4.19799268631	0.334335652626	0.45449231783	22.4140281884	0.00486826330112	0.135984178842
143.104	4.16675358736	0.340150931485	0.467767226546	22.7543201019	0.00513986653101	0.134403245922
144.231	4.13587766978	0.34607695491	0.481139244329	23.0982130354	0.00542342732277	0.132841183428
145.358	4.10536059853	0.352117124858	0.494599049822	23.4456603121	0.00571927898548	0.131254620191
146.485	4.07520800209	0.358267509454	0.508137339133	23.7966094594	0.00602775334751	0.129734325622
147.612	4.0454046568	0.364538840501	0.521744702397	24.1510059993	0.00634918370875	0.128123375957
148.738	4.01597138851	0.370915585821	0.535411879908	24.5087877147	0.0066838990939	0.126625614658
149.865	3.9868821949	0.377416005355	0.549129633693	24.8698886556	0.0070322276457	0.125095329084
150.992	3.95814454765	0.38403354431	0.562888599047	25.2342434182	0.00739450007803	0.123575720431
152.119	3.92975599399	0.390768746594	0.576679646841	25.6017788148	0.00777104140008	0.122097034422
153.246	3.90170713292	0.397627068094	0.590493700871	25.9724195437	0.00816217536324	0.120619204646
154.372	3.87399776775	0.404606826309	0.604321724176	26.3460879705	0.0085682257792	0.119139279377
155.499	3.84662837986	0.411705602273	0.618154958243	26.7226999116	0.00898950967799	0.11769779346
156.626	3.81959013874	0.418927817944	0.631984801492	27.102167955	0.00942634101953	0.116307720762
157.753	3.79287123344	0.426279963316	0.645802668576	27.4844056908	0.00987903516909	0.114909003327
158.88	3.76647364987	0.433757704622	0.659600164107	27.8693238297	0.0103479041381	0.11353757123
160.006	3.74039111988	0.441362919471	0.673369174971	28.2568283773	0.0108332540078	0.112204126528
161.133	3.71461491679	0.449099234279	0.687101746228	28.6468244024	0.011335389075	0.110874566231
162.26	3.68914414824	0.456963945772	0.700790170594	29.0392141934	0.011854609165	0.109607888423
163.387	3.6639643685	0.46496494706	0.71442692864	29.4338993462	0.0123912120755	0.108325298974
164.514	3.63907923287	0.473095554628	0.728004763443	29.8307792105	0.0129454910787	0.107108345847
165.64	3.614473663	0.481364007654	0.741516681812	30.2297512957	0.0135177352389	0.105909235044
166.767	3.59014356003	0.489769580849	0.754955869712	30.6307139452	0.0141082327998	0.104732160398
167.894	3.56608386169	0.498312231143	0.768315825754	31.0335630805	0.0147172662949	0.103616637213
169.021	3.54228042801	0.506999303827	0.781590244909	31.4381957311	0.0153451175064	0.102496160469
170.148	3.51873439695	0.515825473675	0.794773102357	31.844508028	0.0159920640523	0.10142878261
171.275	3.49543357031	0.524796440273	0.807858677026	32.2523948027	0.016658378763	0.100389183787
172.401	3.47237156654	0.533913028293	0.82084146703	32.6617521896	0.0173443334375	0.0993824292457
173.528	3.44954084044	0.543177025502	0.833716246083	33.0724762574	0.0180501964858	0.0984084054609
174.655	3.42693387291	0.55259019939	0.846478050455	33.4844635523	0.0187762336328	0.0974657610729
175.782	3.40454345529	0.56215406552	0.859122181762	33.897611163	0.0195227078568	0.0965315558344
176.909	3.38236764888	0.571865604518	0.871644264787	34.3118151219	0.0202898762821	0.0957068943634
178.035	3.36038128864	0.58174198669	0.884040049864	34.7269763292	0.0210780009442	0.094840281032
179.162	3.33859401199	0.591770161035	0.896305538814	35.1429969332	0.0218873420712	0.0940267110607
180.289	3.31699363351	0.601956170801	0.908437112046	35.5597765678	0.022718150726	0.0932459914327
181.416	3.29557260661	0.612302073589	0.920431342084	35.9772178831	0.0235706792513	0.0924960269957
182.543	3.27432386603	0.622809582236	0.932285045267	36.3952251234	0.0244451781258	0.0917746516192
183.669	3.25324084411	0.633480049347	0.943995276416	36.813704026	0.0253418962708	0.0910898900904
184.796	3.23231512971	0.644316588802	0.955559310576	37.2325624055	0.0262610820246	0.090427293703
185.923	3.21154163091	0.65531941454	0.966974650269	37.65170988	0.0272029824175	0.0897942524948
187.05	3.19091355812	0.666490384213	0.978239031418	38.0710575809	0.0281678424517	0.0891882862955
188.177	3.17042469152	0.677830948076	0.989350403076	38.4905186651	0.0291559061565	0.0886068954785
189.303	3.15006938549	0.689342139488	1.00030692804	38.9100081591	0.0301674161585	0.0880440118486
190.43	3.12984338845	0.701023799816	1.01110698963	39.3294425734	0.0312026126529	0.0875382504335
191.557	3.10973357796	0.712884233974	1.02174911633	39.7487422093	0.0322617389994	0.0870235258901
192.684	3.08974201306	0.724917596844	1.03223203689	40.1678295171	0.0333450363598	0.086537120412
193.811	3.06986218814	0.737126224337	1.04255469525	40.5866273714	0.0344527434626	0.0860741144014
194.937	3.05008872773	0.749511516905	1.05271620704	41.0050614044	0.0355850978481	0.0856278218239
196.064	3.03041779232	0.762073526423	1.06271585977	41.4230593906	0.0367423358393	0.0851942003027
197.191	3.01084647104	0.774811512158	1.07255312092	41.8405507482	0.037924691048	0.0847615596412
198.318	2.99137453856	0.787722194288	1.08222765337	42.2574657363	0.0391323919262	0.0842795697267
199.445	2.97201333168	0.800790909919	1.09173940723	42.6737319586	0.0403656510967	0.0841413216968
200.571	2.95268388397	0.814092598541	1.10108802381	43.0892950499	0.0416247262083	0.08371610095
201.698	2.93345212052	0.827558922074	1.1102732496	43.504104154	0.0429098783895	0.0833448165924
202.825	2.91430565073	0.841199067207	1.11929539622	43.9180955801	0.0442213211594	0.083004390475
203.952	2.89523738566	0.855017161026	1.12815479474	44.3312114251	0.0455592769976	0.0826886238479
205.079	2.87624166039	0.869016085433	1.13685183841	44.7433979617	0.0469239725813	0.082400617637
206.205	2.85731209763	0.883199637817	1.14538698132	45.1546055514	0.0483156386816	0.0821495834674
207.332	2.83844020394	0.897574012367	1.15376071386	45.5647894136	0.0497345129394	0.081960137606
208.459	2.81961183088	0.912151562027	1.16197350859	45.9739115478	0.0511808468384	0.0818687043771
209.586	2.80080446242	0.926953834018	1.17002573401	46.3819440838	0.0526549174148	0.0810184794884
210.713	2.7821924127	0.941795099108	1.17791881263	46.7888249923	0.0541568708428	0.0808831133172
211.84	2.76361146011	0.956845247323	1.18565429447	47.194492683	0.0556868390995	0.080827711652
212.966	2.74504323472	0.972122260061	1.19323269937	47.5989289316	0.0572451045916	0.080665896085
214.093	2.72651218257	0.987598527983	1.20065468508	48.0021159103	0.0588319415495	0.0805282595747
215.22	2.7080127491	1.00327843628	1.20792110878	48.4040336729	0.0604476050602	0.0804087415234
216.347	2.68954077204	1.01916507272	1.21503284984	48.8046665904	0.0620923559383	0.0803491591294
217.474	2.67108248259	1.03527228985	1.22199076032	49.2040052333	0.0637664684986	0.0803433226464
218.6	2.65262553394	1.05161283419	1.22879561977	49.602048146	0.0654702385192	0.0803953952452
219.727	2.63415662287	1.06820096584	1.23544813994	49.9988017719	0.0672039836808	0.080540416293
220.854	2.61565439668	1.08506048445	1.24194891972	50.3942823812	0.068968052689	0.0805576772919
221.981	2.5971482052	1.1021585369	1.24829866885	50.7885071579	0.070762786835	0.0809357330749
223.108	2.57855516449	1.11958948304	1.25449788852	51.1815072775	0.0725885777319	0.0813221356133
224.234	2.55987335707	1.13735738048	1.26054672644	51.5733337837	0.0744458978783	0.081861685112
225.361	2.54106760111	1.15550502874	1.26644523144	51.9640482138	0.0763352582841	0.0825189622963
226.488	2.52211085151	1.17406709133	1.27219323746	52.3537275816	0.0782572337327	0.08333224628
227.615	2.50296726944	1.19308971657	1.27779037303	52.7424646128	0.0802124655481	0.0843255209936
228.742	2.48359550637	1.21262710527	1.28323600719	53.1303706284	0.0822016777173	0.0853092321033
229.868	2.46399775929	1.23268330501	1.28852943771	53.5175683401	0.0842256421802	0.0865852876951
230.995	2.4441068691	1.2533461489	1.29366978064	53.9041972392	0.086285206336	0.0880049628389
232.122	2.42388984263	1.27466502015	1.2986558255	54.2904203274	0.088381330675	0.08961772197
233.249	2.4033023235	1.29670508795	1.30348615514	54.6764203172	0.090515069772	0.0913338227389
234.376	2.38232057143	1.31950856349	1.30815919766	55.062398376	0.0926875662421	0.092992792808
235.502	2.36095771083	1.34307353464	1.31267347541	55.448564208	0.0948999949359	0.0945613759594
236.629	2.33923450593	1.36738876182	1.31702778019	55.8351287069	0.0971535182586	0.0957450087677
237.756	2.31723938982	1.39235700939	1.32122145538	56.2222910007	0.0994492070068	0.0963657746638
238.883	2.29510166765	1.41782525856	1.32525478595	56.6102196094	0.101787922351	0.0958667702959
240.01	2.27307857975	1.44346922416	1.32912958793	56.99902255	0.104170127492	0.0936552761253
241.136	2.25156352952	1.46877367216	1.3328504636	57.3886979102	0.106595491136	0.0891234503347
242.263	2.23108955742	1.49302151497	1.33642465838	57.7790902667	0.109062846045	0.0820147491897
243.39	2.21224863867	1.51539195732	1.33986364857	58.1698477363	0.111569653825	0.0726437429166
244.517	2.19556048353	1.53513716256	1.34318258005	58.5604226279	0.114112074469	0.0620483143948
245.644	2.18130637361	1.55181548893	1.34639903708	58.9501221026	0.116685280201	0.0515336724654
246.771	2.16946775012	1.5653904307	1.34953108354	59.3382000056	0.119284054766	0.0421259894404
247.897	2.15979031585	1.57615646426	1.35259541422	59.7239485934	0.121903408703	0.0342634635051
249.024	2.15191910807	1.58456007861	1.35560628048	60.1067568268	0.124538977087	0.0279850460781
250.151	2.14549021589	1.59107322418	1.35857521301	60.4861313409	0.127187165729	0.0230792135946
251.278	2.1401883209	1.59611111225	1.36151121354	60.8616893756	0.129845133284	0.0192723655794
252.405	2.1357609578	1.60000920845	1.36442120929	61.2331403757	0.132510673329	0.0163117957553
253.531	2.13201371451	1.60302731013	1.36731051144	61.6002653035	0.13518208346	0.0139923731506
254.658	2.12879930286	1.60536293992	1.3701832064	61.9628986223	0.13785804842	0.0121567791781
255.785	2.12600657483	1.60716546747	1.37304245889	62.3209129774	0.140537547023	0.0106878969273
256.912	2.12355128722	1.60854820219	1.37589074779	62.6742103278	0.143219778877	0.00949910279089
258.039	2.1213690965	1.60959767837	1.3787300343	63.0227146189	0.145904111336	0.00852637828034
259.165	2.11941036589	1.61038059016	1.38156188516	63.366366434	0.148590040294	0.00772216183226
260.292	2.11763638468	1.61094886676	1.38438756316	63.7051190679	0.151277161136	0.00705083136461
261.419	2.11601662552	1.61134336818	1.38720809419	64.0389356246	0.153965147085	0.00648545165605
262.546	2.11452674878	1.61159658188	1.39002431743	64.3677868515	0.156653732907	0.00600544843009
263.673	2.11314714124	1.61173460131	1.3928369233	64.6916495096	0.15934270254	0.00559494427312
264.799	2.11186183718	1.61177858902	1.39564648239	65.0105051351	0.162031879596	0.00524156246773
265.926	2.1106577141	1.61174586829	1.39845346784	65.3243390889	0.164721120006	0.0049355610751
267.053	2.10952388748	1.61165074508	1.40125827282	65.6331398213	0.167410306268	0.00466920081916
268.18	2.10845125074	1.61150513299	1.4040612242	65.9368982974	0.170099342902	0.00443627863935
269.307	2.10743212228	1.61131903248	1.4068625935	66.2356075441	0.172788152832	0.0042317877004
270.433	2.10645997069	1.61110090401	1.40966260562	66.5292622914	0.175476674485	0.00405164403975
271.56	2.10552920279	1.61085795548	1.41246144586	66.817858684	0.178164859439	0.00389250219595
272.687	2.1046349939	1.61059637218	1.41525926568	67.1013940501	0.18085267051	0.00375160097148
273.814	2.10377315369	1.61032149834	1.4180561874	67.379866713	0.183540080182	0.00362664773641
274.941	2.10294001848	1.61003798262	1.42085230804	67.6532758377	0.186227069312	0.00351572859422
276.067	2.10213236428	1.60974989545	1.42364770256	67.9216213051	0.188913626059	0.00341723809927
277.194	2.1013473359	1.60946082434	1.42644242647	68.1849036078	0.191599744985	0.00332982387905
278.321	2.10058238884	1.60917395206	1.42923651814	68.4431237644	0.194285426312	0.00325234271182
279.448	2.09983524122	1.60889212094	1.43203000061	68.6962832473	0.196970675291	0.00318382547898
280.575	2.09910383379	1.60861788637	1.43482288316	68.9443839232	0.199655501671	0.00312344904682
281.701	2.09838629639	1.60835356155	1.43761516269	69.1874280027	0.202339919258	0.00307051360112
282.828	2.09768091964	1.60810125513	1.44040682481	69.4254179988	0.205023945532	0.00302442430625
283.955	2.0969861308	1.60786290323	1.44319784479	69.6583566909	0.207707601336	0.00298467642175
285.082	2.09630047308	1.60764029687	1.44598818834	69.8862470946	0.210390910607	0.00295084320681
286.209	2.09562258772	1.60743510565	1.44877781233	70.1090924367	0.213073900146	0.00292256609331
287.336	2.09495119836	1.60724889839	1.45156666531	70.3268961334	0.215756599439	0.00289954672403
288.462	2.09428509714	1.60708316141	1.454354688	70.5396617733	0.218439040499	0.00288154054241
289.589	2.09362313241	1.6069393148	1.45714181364	70.7473931018	0.221121257741	0.0028683516911
290.716	2.09296419751	1.60681872717	1.45992796832	70.9500940091	0.223803287887	0.00285982903328
291.843	2.09230722047	1.60672272922	1.46271307119	71.1477685198	0.226485169887	0.0028558631563
292.97	2.09165115451	1.60665262645	1.46549703464	71.340420785	0.22916694487	0.0028563851168
294.096	2.09099496863	1.60660971149	1.4682797644	71.5280550754	0.231848656114	0.00286136163324
295.223	2.09033763952	1.60659527504	1.47106115957	71.7106757767	0.234530349031	0.00287079990158
296.35	2.0896781422	1.60661061835	1.47384111263	71.8882873861	0.237212071177	0.00288474419941
297.477	2.08901544151	1.60665706472	1.47661950938	72.0608945098	0.239893872285	0.0029032778177
298.604	2.08834848316	1.60673597171	1.47939622876	72.2285018623	0.242575804306	0.00292652489455
299.73	2.08767618436	1.60684874391	1.4821711427	72.3911142667	0.245257921486	0.00295465315205
300.857	2.08699742376	1.60699684678	1.48494411586	72.5487366557	0.247940280455	0.00298787765288
301.984	2.08631103063	1.60718182171	1.48771500529	72.7013740746	0.250622940342	0.00302646932978
303.111	2.085615772	1.60740530388	1.49048366003	72.8490316847	0.253305962925	0.00307074734279
304.238	2.08491034155	1.60766903776	1.4932499206	72.991714768	0.255989412798	0.00312110771
305.364	2.08419334202	1.60797490196	1.49601361846	73.1294287337	0.25867335758	0.00317801996368
306.491	2.08346326826	1.60832493304	1.49877457522	73.2621791252	0.261357868163	0.0032420432986
307.618	2.08271848668	1.60872135469	1.50153260189	73.389971629	0.264043019002	0.00331384294045
308.745	2.08195721086	1.60916661232	1.50428749781	73.5128120856	0.266728888463	0.00339420586589
309.872	2.08117747359	1.60966341283	1.50703904951	73.6307065011	0.269415559229	0.00348407353736
310.998	2.08037709138	1.61021477528	1.5097870293	73.7436610617	0.272103118785	0.00358457365187
312.125	2.07955362168	1.6108240919	1.51253119359	73.8516821501	0.274791659998	0.00369705055319
313.252	2.07870431311	1.61149519938	1.51527128091	73.9547763649	0.277481281804	0.00382315648821
314.379	2.07782603473	1.61223247999	1.51800700947	74.0529505429	0.280172090043	0.00396487212457
315.506	2.07691520059	1.61304096988	1.52073807422	74.1462117852	0.28286419847	0.00412463871527
316.632	2.07596766391	1.61392651083	1.52346414329	74.2345674886	0.285557729986	0.00430549618982
317.759	2.07497857958	1.61489594764	1.52618485358	74.318025381	0.288252818156	0.00451120539865
318.886	2.07394223849	1.6159573663	1.52889980524	74.3965935655	0.290949609104	0.00474657027049
320.013	2.07285182797	1.61712043842	1.53160855475	74.4702805716	0.293648263889	0.00501780336077
321.14	2.07169910817	1.6183968867	1.53431060608	74.5390954184	0.296348961571	0.00533298325971
322.266	2.07047398336	1.6198011023	1.53700539906	74.6030476925	0.299051903182	0.00570291315691
323.393	2.06916387604	1.62135104651	1.53969229421	74.6621476446	0.301757316978	0.00614227240339
324.52	2.06775283648	1.6230695346	1.54237055211	74.7164063118	0.304465465541	0.0066716645716
325.647	2.06622018179	1.62498619896	1.54503930492	74.765835677	0.307176655608	0.00732079935734
326.774	2.06453840397	1.62714050912	1.5476975157	74.8104488804	0.30989125211	0.00813420296776
327.901	2.06266976621	1.62958668924	1.55034391851	74.8502605097	0.312609698912	0.00918179516576
329.027	2.0605604693	1.63240215293	1.55297692589	74.8852870155	0.315332550824	0.0105798682354
330.154	2.05812999869	1.63570292124	1.55559447858	74.9155473361	0.318060525751	0.0125376174011
331.281	2.05524978223	1.63967454228	1.55819378288	74.9410639077	0.320794595977	0.0154726723698
332.408	2.05169530738	1.64464154972	1.56077080581	74.9618644645	0.323536164085	0.0203575699604
333.535	2.04701864464	1.65125266715	1.5633191592	74.9779857295	0.326287452968	0.0301023710185
334.661	2.04010334791	1.66112886679	1.56582700453	74.9894825064	0.329052592004	0.0591823452511
335.788	2.02650762557	1.68074638777	1.56826352499	74.9964647039	0.331842397989	0.683565584967
336.915	1.86947485066	1.91808365925	1.57012747793	74.9994940577	0.334843797816	0.958845838661
338.042	1.64920304929	2.287	1.57079632679	75.0	0.338347434634	0.0