Trajectory in gravitational field

AI Thread Summary
The discussion revolves around programming orbital mechanics in Unity, specifically seeking equations for r and phi as functions of time. The gravitational potential equation U(r) is introduced, leading to confusion about integrating it to find r(t). Participants clarify that numerical integration of differential equations of motion is necessary, emphasizing the use of polar coordinates and energy conservation principles. The conversation highlights the need to convert the equations into a format suitable for numerical methods without altering their structure. Ultimately, the focus is on learning numerical solutions to derive the desired time-dependent functions.
GhostLoveScore
Messages
149
Reaction score
9
So, I'm attempting to programm orbit in Unity game engine. So I need equation that shows r and phi depending on time.

Equation for gravitational potential is

U(r)=-k/r+M^2/(2*μ*r^2). Force is -1*derivation of U(r) by r. So I get lots of stupid stuff.

If anybody could help me to integrate this equation to get r(t) I would be grateful.
 
Physics news on Phys.org
It doesn't work that way. You should integrate the differential equations of motion numerically.
 
Can you please explain, what differential equations? Is it m*d^2(x)/dt^2=gravitational force + centrifugal force?
 
If you use polar coordinates (\rho,\varphi), then the equations are:

\rho^3\ddot \rho+GM \rho=R^4 \omega^2
and
\rho^2 \dot\varphi=R^2 \omega

where R is the initial distance from the centre of force and \omega is the initial angular speed.
 
Actually I'm using spherical coordinate system
 
GhostLoveScore said:
Actually I'm using spherical coordinate system

Well, there is absolutely no difference. Because the orbits of an inverse-square field lie on a plane and so the problem is two dimensional and spherical coordinates reduce to polar coordinates in two dimensions.
 
Don't forget that
M=\mu r^2 \dot{\varphi}=\text{const}.
Then you can use the energy-conservation Law
\frac{\mu}{2} \dot{r}^2 +U(r)=E=\text{const}
substitute
\dot{r}=\frac{\mathrm{d}r}{\mathrm{d} \varphi} \dot \varphi=\frac{\mathrm{d}r}{\mathrm{d} \varphi} \frac{M}{\mu r^2}.
With this you get a differential equation for the orbit in terms of polar coordinates r=r(\varphi).

To integrate it, just substitute
s=\frac{1}{r}
into this differential equation.

You find the calculation in my mechanics FAQ (which is, however, in German, but with a lot of equations, so that you should be able to follow the arguments with the above given summary).

http://theory.gsi.de/~vanhees/faq/mech/node42.html
 
Thanks guys, that will help.

vanhees71 - in the end I get r=r(phi), but I need r=r(t) and phi=phi(t).

From shyan's equation I get

d\varphi/dt=R^2*\omega/ρ^2. I don't know how to get dρ/dt
 
Last edited:
The equations I gave are already proper for being integrated numerically. You don't need to change them. You only need to learn about some methods of numerically solving differential equations.
 
  • #10
OK, I will look into that. Few years ago we were solving it in Sage (python).
 
Back
Top