kerbaldyn 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. data/.rspec +2 -0
  2. data/Gemfile +11 -0
  3. data/README.rdoc +57 -0
  4. data/Rakefile +23 -0
  5. data/kerbaldyn.gemspec +30 -0
  6. data/lib/kerbaldyn.rb +14 -0
  7. data/lib/kerbaldyn/body.rb +48 -0
  8. data/lib/kerbaldyn/constants.rb +12 -0
  9. data/lib/kerbaldyn/data.rb +56 -0
  10. data/lib/kerbaldyn/data/planet_data.json +249 -0
  11. data/lib/kerbaldyn/mixin.rb +2 -0
  12. data/lib/kerbaldyn/mixin/options_processor.rb +17 -0
  13. data/lib/kerbaldyn/mixin/parameter_attributes.rb +38 -0
  14. data/lib/kerbaldyn/orbit.rb +379 -0
  15. data/lib/kerbaldyn/orbital_maneuver.rb +6 -0
  16. data/lib/kerbaldyn/orbital_maneuver/base.rb +159 -0
  17. data/lib/kerbaldyn/orbital_maneuver/bielliptic.rb +61 -0
  18. data/lib/kerbaldyn/orbital_maneuver/burn_event.rb +57 -0
  19. data/lib/kerbaldyn/orbital_maneuver/hohmann.rb +48 -0
  20. data/lib/kerbaldyn/orbital_maneuver/inclination_change.rb +0 -0
  21. data/lib/kerbaldyn/part.rb +15 -0
  22. data/lib/kerbaldyn/part/base.rb +154 -0
  23. data/lib/kerbaldyn/part/fuel_tank.rb +11 -0
  24. data/lib/kerbaldyn/part/generic.rb +10 -0
  25. data/lib/kerbaldyn/part/liquid_fuel_engine.rb +69 -0
  26. data/lib/kerbaldyn/part/mixin.rb +1 -0
  27. data/lib/kerbaldyn/part/mixin/fuel_tank.rb +35 -0
  28. data/lib/kerbaldyn/part/rcs_fuel_tank.rb +10 -0
  29. data/lib/kerbaldyn/part/solid_rocket.rb +30 -0
  30. data/lib/kerbaldyn/part_library.rb +55 -0
  31. data/lib/kerbaldyn/planetoid.rb +214 -0
  32. data/lib/kerbaldyn/version.rb +13 -0
  33. data/spec/bielliptic_orbital_maneuver_spec.rb +60 -0
  34. data/spec/constants_spec.rb +9 -0
  35. data/spec/hohmann_orbital_maneuver_spec.rb +385 -0
  36. data/spec/options_processor_spec.rb +33 -0
  37. data/spec/orbit_spec.rb +357 -0
  38. data/spec/orbital_maneuver_base_spec.rb +74 -0
  39. data/spec/parameter_attributes_spec.rb +82 -0
  40. data/spec/part_library_spec.rb +21 -0
  41. data/spec/part_spec.rb +218 -0
  42. data/spec/planetoid_spec.rb +117 -0
  43. data/spec/spec_helper.rb +110 -0
  44. data/spec/support/parts/RCSFuelTank/part.cfg +42 -0
  45. data/spec/support/parts/fuelTank/part.cfg +48 -0
  46. data/spec/support/parts/liquidEngine1/part.cfg +60 -0
  47. data/spec/support/parts/liquidEngine2/part.cfg +64 -0
  48. data/spec/support/parts/solidBooster/part.cfg +67 -0
  49. data/spec/support/planet_test_data.json +340 -0
  50. metadata +95 -0
@@ -0,0 +1,42 @@
1
+ // Kerbal Space Program - Part Config
2
+
3
+ // --- general parameters ---
4
+ name = RCSFuelTank
5
+ module = RCSFuelTank
6
+ author = Mrbrownce || HarvesteR
7
+
8
+ // --- asset parameters ---
9
+ mesh = model.mu
10
+ scale = 0.1
11
+
12
+
13
+ // --- node definitions ---
14
+ node_stack_top = 0.0, 4.64624, 0.0, 0.0, 1.0, 0.0
15
+ node_stack_bottom = 0.0, 0.23193, 0.0, 0.0, 1.0, 0.0
16
+
17
+ // --- editor parameters ---
18
+ cost = 800
19
+ category = 0
20
+ subcategory = 0
21
+ title = FL-R25 RCS Fuel Tank
22
+ manufacturer = Jebediah Kerman's Junkyard and Spaceship Parts Co.
23
+ description = These fuel tanks carry pressurized gas propellant for RCS thrusters. New advances in plumbing technology made it possible to route RCS lines to any point in the ship. So unlike liquid fuel tanks, RCS Fuel tanks can be placed anywhere.
24
+
25
+ // attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
26
+ attachRules = 1,0,1,1,0
27
+
28
+ // --- standard part parameters ---
29
+ mass = 0.5
30
+ dragModelType = default
31
+ maximum_drag = 0.2
32
+ minimum_drag = 0.2
33
+ angularDrag = 2
34
+ crashTolerance = 12
35
+ maxTemp = 2900
36
+
37
+ // --- rcs fuel tank parameters ---
38
+
39
+ fuel = 200
40
+ dryMass = 0.1
41
+ fullExplosionPotential = 0.7
42
+ emptyExplosionPotential = 0.1
@@ -0,0 +1,48 @@
1
+ // Kerbal Space Program - Part Config
2
+ // FL-T500 Fuel Tank
3
+ //
4
+
5
+ // --- general parameters ---
6
+ name = fuelTank
7
+ module = FuelTank
8
+ author = Mrbrownce
9
+
10
+ // --- asset parameters ---
11
+ mesh = model.mu
12
+ scale = 0.1
13
+
14
+
15
+ // --- node definitions ---
16
+ node_stack_top = 0.0, 7.72552, 0.0, 0.0, 1.0, 0.0
17
+ node_stack_bottom = 0.0, -7.3, 0.0, 0.0, 1.0, 0.0
18
+ node_attach = 5.01, 0.0, 0.0, 1.0, 0.0, 0.0, 1
19
+
20
+
21
+ // --- editor parameters ---
22
+ cost = 850
23
+ category = 0
24
+ subcategory = 0
25
+ title = FL-T400 Fuel Tank
26
+ manufacturer = Jebediah Kerman's Junkyard and Spaceship Parts Co.
27
+ description = The FL series was received as a substantial upgrade over previous fuel containers used in the Space Program, generally due to its ability to keep the fuel unexploded more often than not. Fuel tanks are useless if there isn't a Liquid Engine attached under it. They can also be stacked with other fuel tanks to increase the amount of fuel for the engine below.
28
+
29
+ // attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
30
+ attachRules = 1,1,1,1,0
31
+
32
+ // --- standard part parameters ---
33
+ mass = 2.25
34
+ dragModelType = default
35
+ maximum_drag = 0.2
36
+ minimum_drag = 0.3
37
+ angularDrag = 2
38
+ crashTolerance = 6
39
+ breakingForce = 50
40
+ breakingTorque = 50
41
+ maxTemp = 2900
42
+
43
+ // --- fuel tank parameters ---
44
+
45
+ fuel = 400.0
46
+ dryMass = 0.25
47
+ fullExplosionPotential = 0.9
48
+ emptyExplosionPotential = 0.1
@@ -0,0 +1,60 @@
1
+ // Kerbal Space Program - Part Config
2
+ // LV-T30 Liquid Fuel Engine
3
+ //
4
+
5
+ // --- general parameters ---
6
+ name = liquidEngine
7
+ module = LiquidFuelEngine
8
+ author = Mrbrownce
9
+
10
+ // --- asset parameters ---
11
+ mesh = model.mu
12
+ scale = 0.1
13
+
14
+
15
+ // --- node definitions ---
16
+ node_stack_top = 0.0, 7.21461, 0.0, 0.0, 1.0, 0.0
17
+ node_stack_bottom = 0.0, -7.27403, 0.0, 0.0, 1.0, 0.0
18
+
19
+
20
+ // --- FX definitions ---
21
+
22
+ fx_exhaustFlame_blue = 0.0, -10.3, 0.0, 0.0, 1.0, 0.0, active
23
+ fx_exhaustLight_blue = 0.0, -10.3, 0.0, 0.0, 0.0, 1.0, active
24
+ fx_smokeTrail_light = 0.0, -10.3, 0.0, 0.0, 1.0, 0.0, active
25
+
26
+ // --- Sound FX definition ---
27
+
28
+ sound_vent_medium = activate
29
+ sound_rocket_hard = active
30
+ sound_vent_soft = deactivate
31
+
32
+ // --- editor parameters ---
33
+ cost = 850
34
+ category = 0
35
+ subcategory = 0
36
+ title = LV-T30 Liquid Fuel Engine
37
+ manufacturer = Jebediah Kerman's Junkyard and Spaceship Parts Co.
38
+ description = Although criticized by some due to its not unsignificant use of so-called "pieces found lying about", the LV-T series has proven itself as a comparatively reliable engine. The T30 model boasts a failure ratio below the 50% mark. This has been considered a major improvement over previous models by engineers and LV-T enthusiasts.
39
+
40
+ // attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
41
+ attachRules = 1,0,1,0,0
42
+
43
+ // --- standard part parameters ---
44
+ mass = 1.25
45
+ dragModelType = default
46
+ maximum_drag = 0.2
47
+ minimum_drag = 0.2
48
+ angularDrag = 2
49
+ crashTolerance = 7
50
+ maxTemp = 3600
51
+
52
+ // --- liquid engine parameters ---
53
+
54
+ maxThrust = 215
55
+ minThrust = 0
56
+ heatProduction = 400
57
+ Isp = 320
58
+ vacIsp = 370
59
+
60
+
@@ -0,0 +1,64 @@
1
+ // Kerbal Space Program - Part Config
2
+ // LV-T45 Liquid Fuel Engine
3
+ //
4
+
5
+ // --- general parameters ---
6
+ name = liquidEngine2
7
+ module = LiquidFuelEngine
8
+ author = Mrbrownce
9
+
10
+ // --- asset parameters ---
11
+ mesh = model.mu
12
+ scale = 0.1
13
+
14
+
15
+ // --- node definitions ---
16
+ node_stack_top = 0.0, 7.21461, 0.0, 0.0, 1.0, 0.0
17
+ node_stack_bottom = 0.0, -5.74338, 0.0, 0.0, 1.0, 0.0
18
+
19
+
20
+ // --- FX definitions ---
21
+
22
+ fx_exhaustFlame_blue = 0.0, -5.74338, 0.0, 0.0, 1.0, 0.0, active
23
+ fx_exhaustLight_blue = 0.0, -5.74338, 0.0, 0.0, 0.0, 1.0, active
24
+ fx_smokeTrail_light = 0.0, -5.74338, 0.0, 0.0, 1.0, 0.0, active
25
+
26
+ // --- Sound FX definition ---
27
+
28
+ sound_vent_medium = activate
29
+ sound_rocket_hard = active
30
+ sound_vent_soft = deactivate
31
+
32
+ // --- editor parameters ---
33
+ cost = 950
34
+ category = 0
35
+ subcategory = 0
36
+ title = LV-T45 Liquid Fuel Engine
37
+ manufacturer = Jebediah Kerman's Junkyard and Spaceship Parts Co.
38
+ description = The LV-T45 engine was considered another breakthrough in the LV-T series, due to its Thrust Vectoring feature. The LV-T45 can deflect its thrust to aid in craft control. All these added mechanics however, make for a slightly smaller and less powerful engine in comparison with earlier LV-T models.
39
+
40
+ // attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
41
+ attachRules = 1,0,1,0,0
42
+
43
+ // --- standard part parameters ---
44
+ mass = 1.5
45
+ dragModelType = default
46
+ maximum_drag = 0.2
47
+ minimum_drag = 0.2
48
+ angularDrag = 2
49
+ crashTolerance = 7
50
+ maxTemp = 3600
51
+
52
+ // --- liquid engine parameters ---
53
+
54
+ maxThrust = 200
55
+ minThrust = 0
56
+ heatProduction = 440
57
+ fuelConsumption = 7
58
+ Isp = 320
59
+ vacIsp = 370
60
+
61
+ thrustVectoringCapable = True
62
+ gimbalRange = 1.0
63
+
64
+
@@ -0,0 +1,67 @@
1
+ // Kerbal Space Program - Part Config
2
+ // RT-10 Solid Fuel Booster
3
+ //
4
+
5
+ // --- general parameters ---
6
+ name = solidBooster
7
+ module = SolidRocket
8
+ author = Il Carnefice
9
+
10
+ // --- asset parameters ---
11
+ mesh = model.mu
12
+ scale = 0.1
13
+
14
+
15
+ // --- node definitions ---
16
+ node_stack_bottom = 0.0, -12.5127, 0.0, 0.0, 1.0, 0.0, 1
17
+ node_stack_top = 0.0, 10.2547, 0.0, 0.0, 1.0, 0.0, 1
18
+ node_attach = 0.0, 0.0, -5, 0.0, 0.0, 1.0, 1
19
+
20
+ // --- FX definitions ---
21
+
22
+ fx_exhaustFlame_yellow = 0.0, -11.2673, 0.0, 0.0, 1.0, 0.0, active
23
+ fx_exhaustSparks_yellow = 0.0, -11.2673, 0.0, 0.0, 1.0, 0.0, active
24
+ // fx_exhaustLight_yellow = 0.0, -11.2673, 0.0, 0.0, 0.0, 1.0, active
25
+ fx_smokeTrail_medium = 0.0, -11.2673, 0.0, 0.0, 1.0, 0.0, active
26
+
27
+ // --- Sound FX definition ---
28
+
29
+ sound_vent_medium = activate
30
+ sound_rocket_hard = active
31
+ sound_vent_soft = deactivate
32
+
33
+ // --- editor parameters ---
34
+ cost = 450
35
+ category = 0
36
+ subcategory = 0
37
+ title = RT-10 Solid Fuel Booster
38
+ //manufacturer = Jebediah Kerman's Junkyard and Spaceship Parts Co.
39
+ description = While considered by some to be little more than "a trash bin full o' boom", The RT-10 is used in many space programs, whenever the need to save cash is greater than the need to keep astronauts alive. Use with caution, though. Once lit, solid fuel motors cannot be put out until the fuel runs out.
40
+
41
+ // attachment rules: stack, srfAttach, allowStack, allowSrfAttach, allowCollision
42
+ attachRules = 1,1,1,1,0
43
+
44
+ // --- standard part parameters ---
45
+ mass = 1.8
46
+ dragModelType = default
47
+ maximum_drag = 0.3
48
+ minimum_drag = 0.2
49
+ angularDrag = 2
50
+ crashTolerance = 7
51
+ maxTemp = 3600
52
+
53
+ // --- solid booster parameters ---
54
+
55
+ thrust = 250
56
+ dryMass = 0.36
57
+ heatProduction = 550
58
+ fuelConsumption = 4
59
+ internalFuel = 100
60
+
61
+ fullExplosionPotential = 0.8
62
+ emptyExplosionPotential = 0.1
63
+
64
+ thrustCenter = 0, -0.5, 0
65
+ thrustVector = 0, 1, 0
66
+
67
+
@@ -0,0 +1,340 @@
1
+ {
2
+ "kerbin": {
3
+ "planetoid": {
4
+ "name": "Kerbin",
5
+ "gravitational_parameter": 3531600000000.0,
6
+ "radius": 600000.0,
7
+ "rotational_period": 21600.0
8
+ },
9
+ "orbit": {
10
+ "primary_body": "kerbol",
11
+ "secondary_body": "kerbin",
12
+ "semimajor_axis": 13599840256.0,
13
+ "eccentricity": 0.0,
14
+ "mean_anomaly": 3.1400001049041752,
15
+ "inclination": 0.0,
16
+ "longitude_of_ascending_node": 0.0,
17
+ "argument_of_periapsis": 0.0,
18
+ "epoch": 0.0,
19
+ "name": "Kerbin",
20
+ "apoapsis": 13599840256.0,
21
+ "periapsis": 13599840256.0,
22
+ "period": 9203544.61750141,
23
+ "specific_energy": -43100976.6572545,
24
+ "specific_angular_momentum": 126267726424679.0,
25
+ "kerbal_sphere_of_influence": 196414707.77848
26
+ }
27
+ },
28
+ "mun": {
29
+ "planetoid": {
30
+ "name": "Mun",
31
+ "gravitational_parameter": 65138397520.7806,
32
+ "radius": 200000.0,
33
+ "rotational_period": 138984.376574476
34
+ },
35
+ "orbit": {
36
+ "primary_body": "kerbin",
37
+ "secondary_body": "mun",
38
+ "semimajor_axis": 12000000.0,
39
+ "eccentricity": 0.0,
40
+ "mean_anomaly": 1.7000000476837156,
41
+ "inclination": 0.0,
42
+ "longitude_of_ascending_node": 0.0,
43
+ "argument_of_periapsis": 0.0,
44
+ "epoch": 0.0,
45
+ "name": "Mun",
46
+ "apoapsis": 12000000.0,
47
+ "periapsis": 12000000.0,
48
+ "period": 138984.376574476,
49
+ "specific_energy": -147150.0,
50
+ "specific_angular_momentum": 6509930875.1894,
51
+ "kerbal_sphere_of_influence": 3170563.33757116
52
+ }
53
+ },
54
+ "minmus": {
55
+ "planetoid": {
56
+ "name": "Minmus",
57
+ "gravitational_parameter": 1765800026.31247,
58
+ "radius": 60000.0,
59
+ "rotational_period": 40400.0
60
+ },
61
+ "orbit": {
62
+ "primary_body": "kerbin",
63
+ "secondary_body": "minmus",
64
+ "semimajor_axis": 47000000.0,
65
+ "eccentricity": 0.0,
66
+ "mean_anomaly": 0.8999999761581429,
67
+ "inclination": 0.10471975511965977,
68
+ "longitude_of_ascending_node": 1.361356816555577,
69
+ "argument_of_periapsis": 0.6632251157578452,
70
+ "epoch": 0.0,
71
+ "name": "Minmus",
72
+ "apoapsis": 47000000.0,
73
+ "periapsis": 47000000.0,
74
+ "period": 1077310.52101881,
75
+ "specific_energy": -37570.2127659575,
76
+ "specific_angular_momentum": 12883524362.482,
77
+ "kerbal_sphere_of_influence": 3730392.49065433
78
+ }
79
+ },
80
+ "duna": {
81
+ "planetoid": {
82
+ "name": "Duna",
83
+ "gravitational_parameter": 301363211975.098,
84
+ "radius": 320000.0,
85
+ "rotational_period": 65517.859375
86
+ },
87
+ "orbit": {
88
+ "primary_body": "kerbol",
89
+ "secondary_body": "duna",
90
+ "semimajor_axis": 20726155264.0,
91
+ "eccentricity": 0.0509999990463257,
92
+ "mean_anomaly": 3.1400001049041752,
93
+ "inclination": 0.0010471975277899085,
94
+ "longitude_of_ascending_node": 2.3649211364523164,
95
+ "argument_of_periapsis": 0.0,
96
+ "epoch": 0.0,
97
+ "name": "Duna",
98
+ "apoapsis": 21783189162.698,
99
+ "periapsis": 19669121365.302,
100
+ "period": 17315400.1425698,
101
+ "specific_energy": -28281482.5012339,
102
+ "specific_angular_momentum": 155675150737745.0,
103
+ "kerbal_sphere_of_influence": 125063736.748336
104
+ }
105
+ },
106
+ "ike": {
107
+ "planetoid": {
108
+ "name": "Ike",
109
+ "gravitational_parameter": 18568368573.1441,
110
+ "radius": 130000.0,
111
+ "rotational_period": 65517.8621348081
112
+ },
113
+ "orbit": {
114
+ "primary_body": "duna",
115
+ "secondary_body": "ike",
116
+ "semimajor_axis": 3200000.0,
117
+ "eccentricity": 0.0299999993294477,
118
+ "mean_anomaly": 1.7000000476837156,
119
+ "inclination": 0.00349065855600352,
120
+ "longitude_of_ascending_node": 0.0,
121
+ "argument_of_periapsis": 0.0,
122
+ "epoch": 0.0,
123
+ "name": "Ike",
124
+ "apoapsis": 3295999.99785423,
125
+ "periapsis": 3104000.00214577,
126
+ "period": 65517.8621348081,
127
+ "specific_energy": -47088.0069888677,
128
+ "specific_angular_momentum": 981577481.559739,
129
+ "kerbal_sphere_of_influence": 1225978.58343316
130
+ }
131
+ },
132
+ "moho": {
133
+ "planetoid": {
134
+ "name": "Moho",
135
+ "gravitational_parameter": 245250003654.51,
136
+ "radius": 250000.0,
137
+ "rotational_period": 2215754.21968432
138
+ },
139
+ "orbit": {
140
+ "primary_body": "kerbol",
141
+ "secondary_body": "moho",
142
+ "semimajor_axis": 5263138304.0,
143
+ "eccentricity": 0.200000002980232,
144
+ "mean_anomaly": 3.1400001049041752,
145
+ "inclination": 0.12217304763960307,
146
+ "longitude_of_ascending_node": 1.2217304763960306,
147
+ "argument_of_periapsis": 0.2617993877991494,
148
+ "epoch": 0.0,
149
+ "name": "Moho",
150
+ "apoapsis": 6315765980.48537,
151
+ "periapsis": 4210510627.51463,
152
+ "period": 2215754.21968432,
153
+ "specific_energy": -111372030.060971,
154
+ "specific_angular_momentum": 76963261655559.6,
155
+ "kerbal_sphere_of_influence": 24995057.3375388
156
+ }
157
+ },
158
+ "eve": {
159
+ "planetoid": {
160
+ "name": "Eve",
161
+ "gravitational_parameter": 8171730229210.85,
162
+ "radius": 700000.0,
163
+ "rotational_period": 80500.0
164
+ },
165
+ "orbit": {
166
+ "primary_body": "kerbol",
167
+ "secondary_body": "eve",
168
+ "semimajor_axis": 9832684544.0,
169
+ "eccentricity": 0.00999999977648258,
170
+ "mean_anomaly": 3.1400001049041752,
171
+ "inclination": 0.03665191262740527,
172
+ "longitude_of_ascending_node": 0.2617993877991494,
173
+ "argument_of_periapsis": 0.0,
174
+ "epoch": 0.0,
175
+ "name": "Eve",
176
+ "apoapsis": 9931011387.24222,
177
+ "periapsis": 9734357700.75778,
178
+ "period": 5657995.14648303,
179
+ "specific_energy": -59614075.3619559,
180
+ "specific_angular_momentum": 107359330448592.0,
181
+ "kerbal_sphere_of_influence": 185949494.965972
182
+ }
183
+ },
184
+ "gilly": {
185
+ "planetoid": {
186
+ "name": "Gilly",
187
+ "gravitational_parameter": 8289449.81471635,
188
+ "radius": 13000.0,
189
+ "rotational_period": 28255.0
190
+ },
191
+ "orbit": {
192
+ "primary_body": "eve",
193
+ "secondary_body": "gilly",
194
+ "semimajor_axis": 31500000.0,
195
+ "eccentricity": 0.550000011920929,
196
+ "mean_anomaly": 0.8999999761581429,
197
+ "inclination": 0.20943951023931953,
198
+ "longitude_of_ascending_node": 1.3962634015954636,
199
+ "argument_of_periapsis": 0.17453292519943295,
200
+ "epoch": 0.0,
201
+ "name": "Gilly",
202
+ "apoapsis": 48825000.3755093,
203
+ "periapsis": 14174999.6244907,
204
+ "period": 388587.376847929,
205
+ "specific_energy": -129710.058691725,
206
+ "specific_angular_momentum": 13399370299.4996,
207
+ "kerbal_sphere_of_influence": 142427.423478875
208
+ }
209
+ },
210
+ "jool": {
211
+ "planetoid": {
212
+ "name": "Jool",
213
+ "gravitational_parameter": 282528004209995.0,
214
+ "radius": 6000000.0,
215
+ "rotational_period": 36000.0
216
+ },
217
+ "orbit": {
218
+ "primary_body": "kerbol",
219
+ "secondary_body": "jool",
220
+ "semimajor_axis": 68773560320.0,
221
+ "eccentricity": 0.0500000007450581,
222
+ "mean_anomaly": 0.10000000149011617,
223
+ "inclination": 0.022759093795545936,
224
+ "longitude_of_ascending_node": 0.9075712110370514,
225
+ "argument_of_periapsis": 0.0,
226
+ "epoch": 0.0,
227
+ "name": "Jool",
228
+ "apoapsis": 72212238387.2403,
229
+ "periapsis": 65334882252.7597,
230
+ "period": 104661432.107989,
231
+ "specific_energy": -8523135.84897254,
232
+ "specific_angular_momentum": 283591143063510.0,
233
+ "kerbal_sphere_of_influence": 4065824625.34358
234
+ }
235
+ },
236
+ "vall": {
237
+ "planetoid": {
238
+ "name": "Vall",
239
+ "gravitational_parameter": 207481499473.751,
240
+ "radius": 300000.0,
241
+ "rotational_period": 105962.088893924
242
+ },
243
+ "orbit": {
244
+ "primary_body": "jool",
245
+ "secondary_body": "vall",
246
+ "semimajor_axis": 43152000.0,
247
+ "eccentricity": 0.0,
248
+ "mean_anomaly": 0.8999999761581429,
249
+ "inclination": 0.0,
250
+ "longitude_of_ascending_node": 0.0,
251
+ "argument_of_periapsis": 0.0,
252
+ "epoch": 0.0,
253
+ "name": "Vall",
254
+ "apoapsis": 43152000.0,
255
+ "periapsis": 43152000.0,
256
+ "period": 105962.088893924,
257
+ "specific_energy": -3273637.42364196,
258
+ "specific_angular_momentum": 110415797953.03,
259
+ "kerbal_sphere_of_influence": 3893201.55262435
260
+ }
261
+ },
262
+ "laythe": {
263
+ "planetoid": {
264
+ "name": "Laythe",
265
+ "gravitational_parameter": 1962000029236.08,
266
+ "radius": 500000.0,
267
+ "rotational_period": 52980.8790593796
268
+ },
269
+ "orbit": {
270
+ "primary_body": "jool",
271
+ "secondary_body": "laythe",
272
+ "semimajor_axis": 27184000.0,
273
+ "eccentricity": 0.0,
274
+ "mean_anomaly": 3.1400001049041752,
275
+ "inclination": 0.0,
276
+ "longitude_of_ascending_node": 0.0,
277
+ "argument_of_periapsis": 0.0,
278
+ "epoch": 0.0,
279
+ "name": "Laythe",
280
+ "apoapsis": 27184000.0,
281
+ "periapsis": 27184000.0,
282
+ "period": 52980.8790593796,
283
+ "specific_energy": -5196586.30462764,
284
+ "specific_angular_momentum": 87636985721.9069,
285
+ "kerbal_sphere_of_influence": 5186318.66159496
286
+ }
287
+ },
288
+ "tylo": {
289
+ "planetoid": {
290
+ "name": "Tylo",
291
+ "gravitational_parameter": 2825280042099.95,
292
+ "radius": 600000.0,
293
+ "rotational_period": 211926.35802123
294
+ },
295
+ "orbit": {
296
+ "primary_body": "jool",
297
+ "secondary_body": "tylo",
298
+ "semimajor_axis": 68500000.0,
299
+ "eccentricity": 0.0,
300
+ "mean_anomaly": 3.1400001049041752,
301
+ "inclination": 0.00043633231950044,
302
+ "longitude_of_ascending_node": 0.0,
303
+ "argument_of_periapsis": 0.0,
304
+ "epoch": 0.0,
305
+ "name": "Tylo",
306
+ "apoapsis": 68500000.0,
307
+ "periapsis": 68500000.0,
308
+ "period": 211926.35802123,
309
+ "specific_energy": -2062248.20591237,
310
+ "specific_angular_momentum": 139115665143.263,
311
+ "kerbal_sphere_of_influence": 14757877.6267184
312
+ }
313
+ },
314
+ "bop": {
315
+ "planetoid": {
316
+ "name": "Bop",
317
+ "gravitational_parameter": 2486834944.41491,
318
+ "radius": 65000.0,
319
+ "rotational_period": 12950.0
320
+ },
321
+ "orbit": {
322
+ "primary_body": "jool",
323
+ "secondary_body": "bop",
324
+ "semimajor_axis": 104500000.0,
325
+ "eccentricity": 0.234999999403954,
326
+ "mean_anomaly": 0.8999999761581429,
327
+ "inclination": 0.2617993877991494,
328
+ "longitude_of_ascending_node": 0.17453292519943295,
329
+ "argument_of_periapsis": 0.4363323129985824,
330
+ "epoch": 0.0,
331
+ "name": "Bop",
332
+ "apoapsis": 129057499.937713,
333
+ "periapsis": 79942500.0622869,
334
+ "period": 399322.290201907,
335
+ "specific_energy": -1351808.88093213,
336
+ "specific_angular_momentum": 167014082652.679,
337
+ "kerbal_sphere_of_influence": 1650591.27782792
338
+ }
339
+ }
340
+ }