9
$\begingroup$

I know this is considered an old subject long ridiculed by many as the folly of layman. But I work in the field of computer simulation, specifically in producing fully functional 3D interactive systems that are based in physics. I been trying to update a universe simulator, which yes, deals with orbiting planets. But goes much farther and predicts the temperatures of planets. Uses particle physics to generate esoteric things such as comet tails. Black body radiation, Albedo, Light intensity. All without data fitting. (without fudging constants to resolve observed discrepancies). In this system you should be able to take a virtual telescope and see what you would expect in the real world, except it has unlimited range.

My problem is I have never been able to incorporate GR into the system, for a number of reasons. But the most glaring is that it is quite clear that the moment you introduce anything less than zero latency (speed of gravity). The entire system falls apart, planets fly off, everything dissapates. Not even a infinitesimally small amount of latency is tolerated. Not to mention using the fairly big speed of light value for it. There's even issues if I ignore this gravity problem and use it purely for light. I know most will give the usual response with it only works on the macroscale. With numerous examples of why it works in the real world. And how silly of me to even bring up this question. But regardless, of the arguments. I am stuck. I even asked a NASA engineer how they resolve this. And his answer was they don't. They use Newtonian physics. So I don't want to open up a old can of worms and end up sidelining my original issue.

Update: Seems I am unable to reply as it was put on hold for being unclear? My excruciatingly concise and short question is shown in bold as I stated it the first time.

Just want to know how incorporate GR without angular momentum being instantly destroyed.

I don't know how to express this any clearer, other than to reword in some other way. But it seems most people not only understood it, but gave me a path to the solution. And I was unaware of the Einstein toolkit and gravitoelectromagnetism, which I will jump in and give it a shot...

So before I begin you have to understand I am approaching this from n-body simulation point of view which means if I can't represent it as an equation which I can apply to particles (or collection of particles represented as a whole) that interactive with each other then I don't have a simulation. Any esoteric or abstract math cannot be used. Every simulated interaction (even light) has to be boiled down to be applied to each and every particle along with every interaction with every other particle.

The Crux of the matter :)

Newtonian gravity demands that all mass no matter how distant, act with instantaneous response. In GR amongst other things, Gravity cannot respond quicker than the speed of light. (Yes I am simplifying this) So if we take the earth rotating around the sun and only allow gravity to attract the earth at light speed. It will be 8 minutes behind and the earth will immediately pull away from the Sun as the attraction vector is now well beyond perpendicular. In other words I am out of phase and every particle in the entire simulation will separate because the force vector is now not perpendicular with the orbiting body.

If I ignore this gravity problem and just use it for light. I have another problem. Suppose I take a (virtual) laser and attempt to shoot a beam at the moon at a small reflector and expect to get a reflection back in my viewfinder. And let's say the earth is rotating and both the earth and the moon are also moving in their orbits (in other words both the observer and the target are moving through space and not in sync). In my simulation, I "never" see the reflection back, nor am I ever able to hit the target. Because the view I am seeing through my (virtual) laser scope is ~1 second late with the physical target. And also 1 second late on the return trip. Even if I lead my target to compensate, both the earth and moon have moved kilometers from their original position. the Light path would have to appear as if it has an arc in it's path to compensate for all my motions even if it worked. Traveling rectilinearly will be off by thousands of kilometers.

We obviously can shoot a laser now at a small reflector target on the moon even though we know that the observer is seeing the moon one second+ late and it's obviously not kilometers off target. And we get a reflection back right back into the viewfinder rectilinearly.

$\endgroup$
10
  • 1
    $\begingroup$ What do you mean 'zero latency' here? $\endgroup$
    – Kyle Kanos
    Commented May 27, 2015 at 0:42
  • 5
    $\begingroup$ How are you trying to incorporate GR? What approach are you taking? As is, this question is completely unanswerable. $\endgroup$ Commented May 27, 2015 at 1:00
  • 6
    $\begingroup$ Planets flying off? System falling apart? Sounds like a problem with your numerical algorithm (or just a bug), not an issue of physics per se. See for example What is the correct way of integrating in astronomy simulations? $\endgroup$
    – user10851
    Commented May 27, 2015 at 1:25
  • 1
    $\begingroup$ @CuriousOne: the gravitational waves only show up at 2.5 PPN, anyway. I"m skeptical about what the OP is doing, because GR doesn't simply model interacting point masses the way Newtonian mechanics does, and the way that it is implied that the OP's model works. I also contend that tails on comets have nothing to do with particle physics. $\endgroup$ Commented May 27, 2015 at 5:47
  • 1
    $\begingroup$ @JerrySchirmer: it has gotten a lot of people interested, one has to give the OP that much. :-) $\endgroup$
    – CuriousOne
    Commented May 27, 2015 at 7:15

5 Answers 5

10
$\begingroup$

But the most glaring is that it is quite clear that the moment you introduce anything less than zero latency (speed of gravity). The entire system falls apart, planets fly off, everything dissipates.

Newton himself didn't quite like the instantaneous action at a distance as implied by his law of gravitation. The only saving grace is that it worked. Laplace explicitly tried to add a finite transmission speed (non-zero latency) to Newtonian gravitation. He found that the only way to make this work was to make the transmission speed many millions of times that of the speed of light (essentially indistinguishable from instantaneous). Anything less and the solar system blew itself apart.

The solution is "Don't do that then." General relativity doesn't do that.

General relativity is a complex, non-linear system with non-linear feedbacks (gravity begets gravity). If your main concern is modeling the behavior of close binary pair of pulsars, those non-linearities are essential to capturing the essential dynamics; it even won a Nobel prize. The deviations from Newtonian mechanics are tiny if your main concern is modeling behaviors within our solar system, and the non-linear nature of relativistic gravity is tinier yet. Those non-linearities aren't that important even for modeling the relativistic precession of Mercury. This suggests a "simple" solution ("simple" being a relative term), which is to ignore the bulk of the complexity of Einstein's field equations. Linearize the deviations from Newtonian gravity and throw out the rest. This is the core of a post-Newtonian expansion. It works quite nicely in our solar system.

For details, see the references in this answer. It's not nearly as simple as Newtonian gravity, but it is doable.

One last point: If you decide to follow this approach, you need a relativistic model of time. Thanks to the eccentricity of Earth's orbit about the Sun, clocks on the surface of the Earth tick at slightly different rates as the Earth moves into and out of the Sun's gravitational field. JPL (IMO) has the right answer, which is to use a clock that ticks relativistically but on average ticks at the same rate as a clock on the Earth's surface at sea level.

Relativistic religious wars were fought over this issue. Europeans (Russia and France, the only other countries with a stake in the game) wanted to use a (theoretical) clock far removed from the Sun. One second on that clock would always tick faster than an Earth-based clock. JPL's ephemeris time is essentially that far-removed clock, scaled to tick at Earth rate (on average). JPL won that religious war, but perhaps only because they got slightly better results than did the Russian Academy or the Paris Observatory.

I am stuck. I even asked a NASA engineer how they resolve this. And his answer was they don't.

You asked the wrong NASA engineer. You would have received a very different answer had you asked the right person from JPL, APL, or a few other places in NASA.

$\endgroup$
7
$\begingroup$

You have taught yourself through your own experimenting and curiousity a famous lesson. You are indeed doing exactly as Laplace did and your findings are the same as Laplace's.

To add to David Hammen's Answer: David is correct that Laplace's attempts at introducing latency lead to an unstable solar system. But there is a way to mostly succeed with Laplace's method and that is to make the latency Lorentz invariant. That is, you begin with the electrostatic law (or its equivalent Gauss law for gravity), postulate that the Gauss form this holds for dynamic systems and find the simplest Lorentz-invariant tensor that contains your gravity field. The result if you begin with electrostatics is Maxwell's equations and the Lorentz force law; the mathematically wholly analogous result if you begin with Newton's gravitation is Gravitoelectromagnetism. Gravitoelectromagnetism is consistent with all the results of Gravity Probe B and other results observed in the solar system (more on this here, here and here). In particular, although the orbits are still theoretically unstable, they are stable over timeframes many times the age of the universe for all observations made in the solar system. Gravitoelectromagnetism is thus an extremely accurate approximation of General Relativity for our solar system.

The main theoretical difference between GEM and GTR is the source terms. In Maxwell's Equations, the four-current density is the source and is a rank 1 tensor. In GEM, the analogous four gravitational-mass-current density cannot both be a rank 1 tensor and be consistent with the source term in GTR: the stress-energy tensor, which is rank 2. Experimentally, even though the instability in GEM for solar system situations is small enough to be consistent with observations, the instability is still much bigger than that foretold by GTR. We have an observation that can tell the two apart: the Hulse-Taylor binary star system whose spin-down owing to gravitational wave radiation is consistent with GTR but inconsistent with GEM.

$\endgroup$
1
$\begingroup$

You should consider a ground-up approach to simulating the dynamics of general relativity, then, instead of trying to incorporate it with an approach that has no mathematical basis.

David Hammen has already discussed post-Newtonian approximations. This, I think, would be most promising for the kind of problem you want to do.

But alternatively, you can bite the bullet and try to simulate full GR. You'd want to look at the 3+1 decomposition of Einstein's equations, which is the low-level theoretical basis for many numerical approaches--in practice, however, the 3+1 formalism is supplanted by more sophisticated schemes that try to ensure better numerical stability. Two schemes that I've seen used are the BSSN or CCZ4 schemes.

There are already more than a few codes that do general relativity. You'd have your choice of trying to take their spacetime evolution and marry it into your code, or try to take pieces of your code and layer them on top of the other codes' frameworks. I suspect either approach will be...messy, but if that's the work you wanna do, good luck.

Finally, let me say something about hydrodynamics: general relativistic hydrodynamics is the basis for many simulations of matter. Building a good, accurate, and fast scheme for evolving matter in spacetime is a whole different ball of wax from doing spacetime evolution on its own. If you want to do anything beyond modeling objects as fluids of varying complexities, you'd probably have to write your own matter evolution code on top of all that.

Look into some of the extant software. The Einstein Toolkit, for instance, is freely available to the public for download. You can learn a lot by looking into the papers describing some of the software components there, and that can be a jumping off point to try to understand some of the codes that individual groups and universities use on their own that is not freely available.

$\endgroup$
1
  • 3
    $\begingroup$ The tricky part is that GR is decidedly local. It's kind of hard to apply that to the whole Solar system, in real-time (and obviously, much faster than real-time). While we work with local systems all the time (e.g. Conway's Life), they're a lot trickier without the quantization (e.g. Life's cells); not to mention that you need to make many simplifications and optimizations - space is way too big for stupid quantization. $\endgroup$
    – Luaan
    Commented May 27, 2015 at 6:39
1
$\begingroup$

Do you care about actually simulating GR, or just about adding a finite speed of light to your simulation (generally a much more visible effect)?

I've worked on time-delayed solar system simulation before, and the approach I've chosen was rather simple: I stuck with newtonian gravity, but made it work with different time terms as you follow the "ray" cast from the telescope's PoV. This does require a static (well, integrable or at least reversible) solution to the equations of motion, but that's a decent approximation on human time scales - it will not be enough if you want to simulate thousands or millions of years in the future.

In effect, the telescope looks at the world at the time the theoretical photon would have left that particular piece of space. It's actually quite easy to also add "light bending" effects due to gravity (although it's tricky without outright raytracing).

All that said, it doesn't really make much of a difference. Light is so much faster than the movement of planets relative to your telescope that it's actually quite hard to spot the difference - it's easy to see when you look at one picture with the lag correction and another without, but you can't really tell the difference otherwise (outside of long observations of the motion).

In my case, I've designed this for a game, not for an entirely accurate simulation - the key utility of the simulation was that I could simulate not having exact information about the state of the system. E.g., a ship travels in FTL to your system, but you don't see it arriving until hours later - however, it still aligns with the planets and moons properly, no matter your point of view - and your current time lag, with respect to the ship. Including, of course, the ship observing you.

$\endgroup$
0
$\begingroup$

You could use gravitoelectromagnetism as a first approximation for general relativity. It conserves energy, so your solar system shouldn't fly apart.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.