Hacker News new | past | comments | ask | show | jobs | submit login
Orbital Mechanics and Astrodynamics (orbital-mechanics.space)
42 points by kavouras 8 months ago | hide | past | favorite | 15 comments



Go play a bit of KSP. NASA employees have stated that Kerbal Space Program has given them an intuition of orbital mechanics that a degree didn't.

And working with things that make you go _slower_ when turning on your engine to push you in the direction of travel needs intuition to even begin. Yes, once you get to the other side of the planet you are orbiting, you are going slower than if you didn't use your engine at all.


The issue with ksp is that you first need to figure out the rocket design before you start on orbital mechanics (that's why I ended up building my own web simulator for that part anyway, and also because ksp doesn't support my OS)


> I ended up building my own web simulator for that part anyway

Is it public?


Sure, didn't want it to seem like an ad, also because it's not quite ready for prime time, I still intend to make a better UI... https://lgms.nl/p/badgravity/

For something ksp-like, I guess the easiest is to press "play" on the Pluto scenario on the left. Note the hints in the top left. Trying it myself now, it seems the scenario is set quite quickly, so I'd set the simulation "steps per run" to maybe 5, and the thrust should be something on the order of 1 (I thought the scenario data should have set that appropriate to the craft but apparently not)

Edit: oh yeah and it expects arrow keys and a scroll wheel, there is no button overlay implemented for mobile yet


Thank you, it's really cool! I started something similar, but way less sophisticated. Basically i implemented a n-Body solver in Julia, compiled it to Webassembly and did the drawing with canvas, like you. This motivated me to work on it again.

> The issue with ksp is that you first need to figure out the rocket design before you start on orbital mechanics

Come on, it's not rocket science.


> a n-Body solver in Julia, compiled it to Webassembly and did the drawing with canvas

Awesome, do you have GitHub repo with the code? or a website with it running? would love to see it


Unfortunately not, i couldn't solve some (numerical) stability issues and i buried it in my "dev directory". But if i'll get it presentable, i'll be doing a Show HN.


Thank you. It would be great if you posted it!

I’ve been simulating some halo orbits and also running into stability issues

It seems it’s pretty typical and depends on the integration method used, as well as the timestep

In general it is quite a hard problem to solve. Mathematically, it’s a very difficult problem. But also computationally, it is almost impossible to fully simulate an n-body system without getting chaotic orbits. Then you have to either cheat (by manually tweaking trajectories) or just picking a pretty small time range for the simulation


Exactly. What i also learned was, that i had to take a (primitive) collision detection into account. Otherwise bodies can come so close to each other, that the gravitational forces can go very high or even to (machine) infinity.


The design requirements are pretty forgiving and as I recall there are some pre-built rockets you can use.


Getting to orbit (or anywhere really) is very well documented in the KSP world. There are tutorials, videos, and guides galore.

This tutorial[1] includes details on how to build your rocket, how to fly your rocket and how to do successful reentry.

[1] https://wiki.kerbalspaceprogram.com/wiki/Tutorial:_How_to_Ge...


100%. It’s obvious that text based learning is not the best for many fields. An image, diagram, animation or game mechanic can make concepts “click” much quicker and better. With the ever increasing sophistication of society we need to focus on better ways of learning.

On the other hand, text is the universal interface…


Off topic but I have never understood this quote. can anyone please explain. "In order to go fast, slow down, anybody who has learnt orbital mechanics know this"


My understanding is as follows: Lower orbits are faster because you need more radial ("forward" or outward) velocity to keep the orbit in equilibrium with the stronger pull of gravity as you get closer to the orbited body. In to reach a lower orbit from a higher one, though, and thus go faster, you essentially must slow down (remove energy) to fall toward the body which results in a faster speed when you reach the other side of the orbit


Very distant objects need very little speed to orbit, take for instance a geosynchronous orbit that orbits every 24 hours, which enables it to hover over the same part of the equator indefinitely.

With a braking burn from geosync orbit your orbital period would keep decreasing from 24 hours as your orbital velocity keeps increasing. The ISS and similar low earth orbits have a period of 90 minutes.

Keep in mind if trying to speed up/catch another object you can just use more thrust and keep adjusting your angle. But it's fuel intensive and when you stop thrusting you might well be in a crazy orbit, very different than the target you are trying to catch.

There's a game called Osmos on most platforms that turns this kind of thing into a game, I recommend it. As mentioned elsewhere there's kerbel space program, however there's much more than orbital mechanics involved.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: