Definitions.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. 'use strict';
  2. var ns = require('ns');
  3. var MoonRealOrbit = require('./MoonRealOrbit');
  4. module.exports = [
  5. {
  6. name: 'sun',
  7. title : 'The Sun',
  8. mass : 1.9891e30,
  9. radius : 6.96342e5,
  10. k : 0.01720209895 //gravitational constant (μ)
  11. },
  12. {
  13. name: 'mercury',
  14. title : 'Mercury',
  15. mass : 3.3022e23,
  16. radius:2439,
  17. orbit : {
  18. base : {a : 0.38709927 * ns.AU , e : 0.20563593, i: 7.00497902, l : 252.25032350, lp : 77.45779628, o : 48.33076593},
  19. cy : {a : 0.00000037 * ns.AU , e : 0.00001906, i: -0.00594749, l : 149472.67411175, lp : 0.16047689, o : -0.12534081}
  20. }
  21. },
  22. {
  23. name: 'venus',
  24. title : 'Venus',
  25. mass : 4.868e24,
  26. radius : 6051,
  27. orbit : {
  28. base : {a : 0.72333566 * ns.AU , e : 0.00677672, i: 3.39467605, l : 181.97909950, lp : 131.60246718, o : 76.67984255},
  29. cy : {a : 0.00000390 * ns.AU , e : -0.00004107, i: -0.00078890, l : 58517.81538729, lp : 0.00268329, o : -0.27769418}
  30. }
  31. },
  32. {
  33. name:'earth',
  34. title : 'The Earth',
  35. mass : 5.9736e24,
  36. radius : 3443.9307 * ns.NM_TO_KM,
  37. sideralDay : ns.SIDERAL_DAY,
  38. tilt : 23+(26/60)+(21/3600) ,
  39. orbit : {
  40. base : {a : 1.00000261 * ns.AU, e : 0.01671123, i : -0.00001531, l : 100.46457166, lp : 102.93768193, o : 0.0},
  41. cy : {a : 0.00000562 * ns.AU, e : -0.00004392, i : -0.01294668, l : 35999.37244981, lp : 0.32327364, o : 0.0}
  42. }
  43. },
  44. {
  45. name:'mars',
  46. title : 'Mars',
  47. mass : 6.4185e23,
  48. radius : 3376,
  49. sideralDay : 1.025957 * ns.DAY,
  50. orbit : {
  51. base : {a : 1.52371034 * ns.AU , e : 0.09339410, i: 1.84969142, l : -4.55343205, lp : -23.94362959, o : 49.55953891},
  52. cy : {a : 0.00001847 * ns.AU , e : 0.00007882, i: -0.00813131, l : 19140.30268499, lp : 0.44441088, o : -0.29257343}
  53. }
  54. },
  55. {
  56. name:'jupiter',
  57. title : 'Jupiter',
  58. mass : 1.8986e27,
  59. radius : 71492,
  60. orbit : {
  61. base : {a : 5.20288700 * ns.AU , e : 0.04838624, i: 1.30439695, l : 34.39644051, lp : 14.72847983, o : 100.47390909},
  62. cy : {a : -0.00011607 * ns.AU , e : -0.00013253, i: -0.00183714, l : 3034.74612775, lp : 0.21252668, o : 0.20469106}
  63. }
  64. },
  65. {
  66. name:'saturn',
  67. title : 'Saturn',
  68. mass : 5.6846e26,
  69. radius : 58232,
  70. tilt : 26.7,
  71. orbit : {
  72. base : {a : 9.53667594 * ns.AU , e : 0.05386179, i: 2.48599187, l : 49.95424423, lp : 92.59887831, o : 113.66242448},
  73. cy : {a : -0.00125060 * ns.AU , e : -0.00050991, i: 0.00193609, l : 1222.49362201, lp : -0.41897216, o : -0.28867794}
  74. }
  75. },
  76. {
  77. name: 'uranus',
  78. title : 'Uranus',
  79. mass : 8.6810e25,
  80. radius : 25559,
  81. orbit : {
  82. base : {a : 19.18916464 * ns.AU , e : 0.04725744, i: 0.77263783, l : 313.23810451, lp : 170.95427630, o : 74.01692503},
  83. cy : {a : -0.00196176 * ns.AU , e : -0.00004397, i: -0.00242939, l : 428.48202785, lp : 0.40805281, o : 0.04240589}
  84. }
  85. },
  86. {
  87. name:'neptune',
  88. title : 'Neptune',
  89. mass : 1.0243e26,
  90. radius : 24764,
  91. orbit : {
  92. base : {a : 30.06992276 * ns.AU, e : 0.00859048, i: 1.77004347, l : -55.12002969, lp : 44.96476227, o : 131.78422574},
  93. cy : {a : 0.00026291 * ns.AU, e : 0.00005105, i: 0.00035372, l : 218.45945325, lp : -0.32241464, o : -0.00508664}
  94. }
  95. },
  96. {
  97. name: 'pluto',
  98. title : 'Pluto',
  99. mass : 1.305e22+1.52e21,
  100. radius : 1153,
  101. orbit : {
  102. base : {a : 39.48211675 * ns.AU , e : 0.24882730, i: 17.14001206, l : 238.92903833, lp : 224.06891629, o : 110.30393684},
  103. cy : {a : -0.00031596 * ns.AU , e : 0.00005170, i: 0.00004818, l : 145.20780515, lp : -0.04062942, o : -0.01183482}
  104. }
  105. },
  106. {
  107. name: 'halley',
  108. title : 'Halley\'s Comet',
  109. mass : 2.2e14,
  110. radius : 50,
  111. orbit : {
  112. base : {a : 17.83414429 * ns.AU , e : 0.967142908, i: 162.262691, M : 360 * (438393600 / (75.1 * ns.YEAR * ns.DAY)), w : 111.332485, o : 58.420081},
  113. day : {a : 0 , e : 0, i: 0, M : (360 / (75.1 * 365.25) ), w : 0, o : 0}
  114. }
  115. },
  116. {
  117. name: 'moon',
  118. title : 'The Moon',
  119. mass : 7.3477e22,
  120. radius : 1738.1,
  121. sideralDay : (27.3215782 * ns.DAY) ,
  122. tilt : 1.5424,
  123. fov : 1,
  124. relativeTo : 'earth',
  125. orbitCalculator : MoonRealOrbit,
  126. orbit: {
  127. base : {
  128. a : 384400,
  129. e : 0.0554,
  130. w : 318.15,
  131. M : 135.27,
  132. i : 5.16,
  133. o : 125.08
  134. },
  135. day : {
  136. a : 0,
  137. e : 0,
  138. i : 0,
  139. M : 13.176358,//360 / 27.321582,
  140. w : (360 / 5.997) / 365.25,
  141. o : (360 / 18.600) / 365.25
  142. }
  143. }
  144. }
  145. ];