mirror of
https://github.com/cosinekitty/astronomy.git
synced 2026-04-14 03:27:47 -04:00
Use original Pluto gravsim with finer time steps.
I'm getting much better accuracy sticking with my original gravity simulator, just with smaller time increments, than I was with the Runge-Kutta 4 method. The PlutoStateTable gets a bit larger (51 state vectors instead of 41), but the accuracy is so much higher. Removed the Runge-Kutta code because I won't be going back to it.
This commit is contained in:
@@ -3307,52 +3307,62 @@ def _CalcEarth(time):
|
||||
#----------------------------------------------------------------------------
|
||||
# BEGIN Pluto Integrator
|
||||
|
||||
_PLUTO_NUM_STATES = 41
|
||||
_PLUTO_TIME_STEP = 36500
|
||||
_PLUTO_DT = 250
|
||||
_PLUTO_NSTEPS = 147
|
||||
_PLUTO_NUM_STATES = 51
|
||||
_PLUTO_TIME_STEP = 29200
|
||||
_PLUTO_DT = 146
|
||||
_PLUTO_NSTEPS = 201
|
||||
|
||||
_PlutoStateTable = [
|
||||
[ -730000.0, [-26.1182072321076, -14.3761681778250, 3.3844025152995], [ 1.6339372163656e-03, -2.7861699588508e-03, -1.3585880229445e-03]]
|
||||
, [ -693500.0, [ 43.6599275018261, 15.7782921408811, -8.2269833881374], [-2.5043046295860e-04, 2.1163039457238e-03, 7.3466073583102e-04]]
|
||||
, [ -657000.0, [-17.0086014985033, 33.0590743876420, 15.4080189624259], [-1.9676551946049e-03, -1.8337707766770e-03, 2.0125441459959e-05]]
|
||||
, [ -620500.0, [ 26.9005106893171, -21.5285596810214, -14.7987712668075], [ 2.2939261196998e-03, 1.7431871970059e-03, -1.4585639832643e-04]]
|
||||
, [ -700800.0, [ 41.9749052021271, -0.4485029529294, -12.7703515059887], [ 7.3458569351457e-04, 2.2785014891658e-03, 4.8619778602049e-04]]
|
||||
, [ -671600.0, [ 14.7069307807442, 44.2691105400275, 9.3536984747716], [-2.1000147999800e-03, 2.2295915939915e-04, 7.0143443551414e-04]]
|
||||
, [ -642400.0, [-29.4410039299574, -6.4301615305696, 6.8584810113048], [ 8.4495803960544e-04, -3.0783914758711e-03, -1.2106305981192e-03]]
|
||||
, [ -613200.0, [ 39.4443969462341, -6.5579897605705, -13.9137602964634], [ 1.1480029005873e-03, 2.2400006880665e-03, 3.5168075922288e-04]]
|
||||
, [ -584000.0, [ 20.2303809506997, 43.2669666571891, 7.3829660919234], [-1.9754081700585e-03, 5.3457141292226e-04, 7.5929169129793e-04]]
|
||||
, [ -547500.0, [-22.5571440338751, -19.2958112538447, 0.7806423603826], [ 2.1494578646505e-03, -2.4266772630044e-03, -1.4013084013574e-03]]
|
||||
, [ -511000.0, [ 43.0236236810360, 19.6179542007347, -6.8406553041565], [-4.7729923671058e-04, 2.0208979483877e-03, 7.7191815992131e-04]]
|
||||
, [ -474500.0, [-20.4245105862934, 29.5157679318005, 15.3408675727018], [-1.8003167284198e-03, -2.1025226687937e-03, -1.1262333332859e-04]]
|
||||
, [ -554800.0, [-30.6583253646200, 2.0938188745519, 9.8805311380706], [ 6.1010603013347e-05, -3.1326500935382e-03, -9.9346125151067e-04]]
|
||||
, [ -525600.0, [ 35.7377032516732, -12.5877060247644, -14.6778472475634], [ 1.5802939375649e-03, 2.1347678412429e-03, 1.9074436384343e-04]]
|
||||
, [ -496400.0, [ 25.4662951885462, 41.3674783384167, 5.2164768733816], [-1.8054401046468e-03, 8.3283083599510e-04, 8.0260156912107e-04]]
|
||||
, [ -467200.0, [-29.8471749040710, 10.6364263130814, 12.2979041801063], [-6.3257063052907e-04, -2.9969577578221e-03, -7.4476074151596e-04]]
|
||||
, [ -438000.0, [ 30.7746921076872, -18.2366370153037, -14.9455358798963], [ 2.0113162005465e-03, 1.9353827024189e-03, -2.0937793168297e-06]]
|
||||
, [ -401500.0, [ 16.7235440456361, 44.0505598318603, 8.6886113939440], [-2.0565226049264e-03, 3.2710694138777e-04, 7.2006155046579e-04]]
|
||||
, [ -365000.0, [-18.4891734360057, -23.1428732331142, -1.6436720878799], [ 2.5524223225832e-03, -2.0035792463879e-03, -1.3910737531294e-03]]
|
||||
, [ -328500.0, [ 42.0853950560734, 22.9742531259520, -5.5131410205412], [-6.7105845193949e-04, 1.9177289500465e-03, 7.9770011059534e-04]]
|
||||
, [ -408800.0, [ 30.2431533240283, 38.6562678885026, 2.9385017502184], [-1.6052508674468e-03, 1.1183495337525e-03, 8.3333973416824e-04]]
|
||||
, [ -379600.0, [-27.2889847725327, 18.6431621478740, 14.0236336233295], [-1.1856388898191e-03, -2.7170609282181e-03, -4.9015526126399e-04]]
|
||||
, [ -350400.0, [ 24.5196051967735, -23.2457560647266, -14.6268623673677], [ 2.4322321483154e-03, 1.6062008146048e-03, -2.3369181613312e-04]]
|
||||
, [ -321200.0, [ 34.5052748058754, 35.1253385869542, 0.5573614756374], [-1.3824391637782e-03, 1.3833397561817e-03, 8.4823598806262e-04]]
|
||||
, [ -292000.0, [-23.2753639151193, 25.8185142987694, 15.0553815885983], [-1.6062295460975e-03, -2.3395961498533e-03, -2.4377362639479e-04]]
|
||||
, [ -255500.0, [ 33.9015793210130, -14.9421228983498, -14.8664994855707], [ 1.7455105487563e-03, 2.0655068871494e-03, 1.1695000657630e-04]]
|
||||
, [ -219000.0, [ 13.3770189322702, 44.4442211120183, 9.8260227015847], [-2.1171882923251e-03, 1.3114714542921e-04, 6.7884578840323e-04]]
|
||||
, [ -182500.0, [-14.1723844533379, -26.0054690135836, -3.8387026446526], [ 2.8419751785822e-03, -1.5579441656564e-03, -1.3408416711060e-03]]
|
||||
, [ -262800.0, [ 17.0503847980918, -27.1803762901257, -13.6089633216945], [ 2.8175521080578e-03, 1.1358749093955e-03, -4.9548725258825e-04]]
|
||||
, [ -233600.0, [ 38.0936719102855, 30.8805883833368, -1.8436880674133], [-1.1317697153459e-03, 1.6128814698472e-03, 8.4177586176055e-04]]
|
||||
, [ -204400.0, [-18.1978529308782, 31.9328699343091, 15.4382948262792], [-1.9117272501813e-03, -1.9146495909842e-03, -1.9657304369835e-05]]
|
||||
, [ -175200.0, [ 8.5289240399968, -29.6184222000484, -11.8054009942579], [ 3.1034370787005e-03, 5.1393633292430e-04, -7.7293066202546e-04]]
|
||||
, [ -146000.0, [ 40.9468572586403, 25.9049735920209, -4.2563362404988], [-8.3652705194051e-04, 1.8129497136404e-03, 8.1564228273060e-04]]
|
||||
, [ -109500.0, [-25.5839689598009, 22.0699164999425, 14.5902026036780], [-1.3923977856331e-03, -2.5442249745422e-03, -3.7169906721828e-04]]
|
||||
, [ -73000.0, [ 36.4035708396756, -11.7473067389593, -14.6304139635223], [ 1.5037714418941e-03, 2.1500325702247e-03, 2.1523781242948e-04]]
|
||||
, [ -36500.0, [ 10.2436041239517, 44.5280986402285, 10.8048664487066], [-2.1615839201823e-03, -5.1418983893534e-05, 6.3687060751430e-04]]
|
||||
, [ -116800.0, [-12.3269588953252, 36.8818834462925, 15.2171582587111], [-2.1166103705038e-03, -1.4814420035990e-03, 1.7401209844705e-04]]
|
||||
, [ -87600.0, [ -0.6332583759085, -30.0187597947092, -9.1719328749499], [ 3.2016994581737e-03, -2.5279858672148e-04, -1.0411088271861e-03]]
|
||||
, [ -58400.0, [ 42.9360484238833, 20.3446855844523, -6.5880270079125], [-5.0525450073192e-04, 1.9910074335507e-03, 7.7440196540269e-04]]
|
||||
, [ -29200.0, [ -5.9759105529742, 40.6118099584602, 14.4701317236731], [-2.2184202156107e-03, -1.0562361130164e-03, 3.3652250216211e-04]]
|
||||
, [ 0.0, [ -9.8753695807739, -27.9789262247367, -5.7537118247043], [ 3.0287533248818e-03, -1.1276087003636e-03, -1.2651326732361e-03]]
|
||||
, [ 36500.0, [ 39.7009143866164, 28.4327664903825, -3.0906026170881], [-9.7720559866138e-04, 1.7121518344796e-03, 8.2822409843551e-04]]
|
||||
, [ 73000.0, [-27.3620419812795, 18.4265651225706, 13.9975343005914], [-1.1690934621340e-03, -2.7143131627458e-03, -4.9312695340367e-04]]
|
||||
, [ 109500.0, [ 38.3556091850032, -8.7643800131842, -14.2951819118807], [ 1.2922798115839e-03, 2.2032141141126e-03, 2.9606522103424e-04]]
|
||||
, [ 29200.0, [ 43.9588319861654, 14.2141479732919, -8.8083062271628], [-1.4717608981871e-04, 2.1404187242141e-03, 7.1486567806614e-04]]
|
||||
, [ 58400.0, [ 0.6781367635199, 43.0944616393616, 13.2432387807209], [-2.2358226110718e-03, -6.3233636090933e-04, 4.7664798895648e-04]]
|
||||
, [ 87600.0, [-18.2826020968342, -23.3050395866603, -1.7666205080281], [ 2.5567245263557e-03, -1.9902940754171e-03, -1.3943491701082e-03]]
|
||||
, [ 116800.0, [ 43.8733387445258, 7.7007056172154, -10.8142736664251], [ 2.3174803055677e-04, 2.2402163127924e-03, 6.2988756452032e-04]]
|
||||
, [ 146000.0, [ 7.3929490279056, 44.3826789515344, 11.6295002148543], [-2.1932815453830e-03, -2.1751799585364e-04, 5.9556516201114e-04]]
|
||||
, [ 182500.0, [ -5.8649529029432, -29.1987619981354, -7.3502494912123], [ 3.1339384323665e-03, -7.4205968379701e-04, -1.1783357537604e-03]]
|
||||
, [ 219000.0, [ 38.4269476345329, 30.5667598351632, -2.0378379641214], [-1.0958945370084e-03, 1.6194885149659e-03, 8.3705272532546e-04]]
|
||||
, [ 255500.0, [-28.6586488201636, 15.0309000931701, 13.3365724093667], [-9.4611899595408e-04, -2.8506813871559e-03, -6.0508645822989e-04]]
|
||||
, [ 175200.0, [-24.9816902292606, -16.2040128514258, 2.4664575442976], [ 1.8193989149580e-03, -2.6765419531201e-03, -1.3848283502247e-03]]
|
||||
, [ 204400.0, [ 42.5301870395114, 0.8459355080215, -12.5549075276829], [ 6.5059779150669e-04, 2.2725657282262e-03, 5.1133743202822e-04]]
|
||||
, [ 233600.0, [ 13.9995264868224, 44.4623630448942, 9.6694184864653], [-2.1079296569252e-03, 1.7533423831993e-04, 6.9128485798076e-04]]
|
||||
, [ 262800.0, [-29.1840248030306, -7.3712439957619, 6.4932759579280], [ 9.3581363109681e-04, -3.0610357109184e-03, -1.2364201089345e-03]]
|
||||
, [ 292000.0, [ 39.8319806717528, -6.0784057667647, -13.9098153586562], [ 1.1117769689167e-03, 2.2362097830152e-03, 3.6230548231153e-04]]
|
||||
, [ 328500.0, [ 4.8371523764030, 44.0723119541530, 12.3146147867802], [-2.2164547537724e-03, -3.6790365636785e-04, 5.5542723844616e-04]]
|
||||
, [ 365000.0, [ -2.2619763759487, -29.8581508706765, -8.6502366418978], [ 3.1821176368396e-03, -4.0915169873994e-04, -1.0895893040652e-03]]
|
||||
, [ 401500.0, [ 37.1576590087419, 32.3528396259588, -1.0950381786229], [-1.1988412606830e-03, 1.5356290902995e-03, 8.4339118209852e-04]]
|
||||
, [ 321200.0, [ 20.2949551084758, 43.4171904202513, 7.4500919859316], [-1.9742157451535e-03, 5.3102050468554e-04, 7.5938408813008e-04]]
|
||||
, [ 350400.0, [-30.6699923021597, 2.3187435589549, 9.9734809138580], [ 4.5605107450676e-05, -3.1308219926928e-03, -9.9066533301924e-04]]
|
||||
, [ 379600.0, [ 35.6261221559830, -12.8976475092243, -14.7775865084436], [ 1.6015684949743e-03, 2.1171931182284e-03, 1.8002516202204e-04]]
|
||||
, [ 408800.0, [ 26.1331861485607, 41.2321391875990, 5.0064013262205], [-1.7857704419579e-03, 8.6046232702817e-04, 8.0614690298954e-04]]
|
||||
, [ 438000.0, [-29.5767402292299, 11.8635359435865, 12.6313230398719], [-7.2292830060955e-04, -2.9587820140709e-03, -7.0824296450300e-04]]
|
||||
, [ 474500.0, [ 40.9541099577599, -3.6589805945370, -13.4994699563950], [ 9.5387298337127e-04, 2.2572135462477e-03, 4.1826529781128e-04]]
|
||||
, [ 511000.0, [ 2.4859523114116, 43.6181887566155, 12.8914184596699], [-2.2339745420393e-03, -5.1034757181916e-04, 5.1485330196245e-04]]
|
||||
, [ 547500.0, [ 1.0594791441638, -30.1357921778687, -9.7458684762963], [ 3.1921591684898e-03, -1.1305312796150e-04, -9.9954096945965e-04]]
|
||||
, [ 467200.0, [ 29.9108057873914, -19.1590192939999, -15.0133638651945], [ 2.0871080437997e-03, 1.8848372554514e-03, -3.8528655083926e-05]]
|
||||
, [ 496400.0, [ 31.3759574518189, 38.0503727207625, 2.4331383437537], [-1.5546055556611e-03, 1.1699815465629e-03, 8.3565439266001e-04]]
|
||||
, [ 525600.0, [-26.3600713369277, 20.6625059049518, 14.4146962589584], [-1.3142373118349e-03, -2.6236647854842e-03, -4.2542017598193e-04]]
|
||||
, [ 554800.0, [ 22.5994414886480, -24.5088798983064, -14.4840457314680], [ 2.5454108304806e-03, 1.4917058755191e-03, -3.0243665086079e-04]]
|
||||
, [ 584000.0, [ 35.8778640130144, 33.8942263660709, -0.2245246362769], [-1.2941245730845e-03, 1.4560427668319e-03, 8.4762160640137e-04]]
|
||||
, [ 620500.0, [-30.2026537318923, 8.7794211940578, 11.8609238187578], [-4.9002221381806e-04, -3.0438768469137e-03, -8.0605935262763e-04]]
|
||||
, [ 657000.0, [ 41.8536204011376, -1.3790965838042, -13.0624345337527], [ 8.0674627557124e-04, 2.2702374399791e-03, 4.6832587475465e-04]]
|
||||
, [ 693500.0, [ 0.2468843977112, 43.0303960481227, 13.3909343344167], [-2.2436121787266e-03, -6.5238074250728e-04, 4.7172729553196e-04]]
|
||||
, [ 613200.0, [-21.5381497624167, 28.2040682697607, 15.3219737995345], [-1.7312117409010e-03, -2.1939631314577e-03, -1.6316913275180e-04]]
|
||||
, [ 642400.0, [ 13.9715213744146, -28.3399417647887, -13.0837928718857], [ 2.9334630526035e-03, 9.1860931752944e-04, -5.9939422488627e-04]]
|
||||
, [ 671600.0, [ 39.5269420441426, 28.9398973601104, -2.8727995275393], [-1.0068481658095e-03, 1.7021132888090e-03, 8.3578230511981e-04]]
|
||||
, [ 700800.0, [-15.5762007013935, 34.3994129612753, 15.4660337378540], [-2.0098814612884e-03, -1.7191109825989e-03, 7.0414782780416e-05]]
|
||||
, [ 730000.0, [ 4.2432528370899, -30.1182016908248, -10.7074412313491], [ 3.1725847067411e-03, 1.6098461202270e-04, -9.0672150593868e-04]]
|
||||
]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user