New Reply

Velocity verlet versus other integration techniques

 
Share Thread
Jul12-11, 12:20 PM   #1
 

Velocity verlet versus other integration techniques


Mentor comments:
This thread was split from an OLD thread that was inadvertently resurrected from the dead. The original thread is http://www.physicsforums.com/showthread.php?t=182831.


Quote by genneth View Post
Btw, for orbiting systems, Verlet integration is a very good way to go, as it preserves energy in this case.
Out of curiosity, do you mean to basic Verlet or the Velocity Verlet?

I've been doing something like the OP's simulation using the velocity Verlet, and yes, it seems to preserve energy pretty nicely...but I've noticed that elliptical orbits tend to show "apsidal precession" (like Mercury's orbit tracing out a rosette) ... which they shouldn't in a purely classical simulation, right?

Are there any common errors that lead to this, or corrections to deal with it? Or is it an unavoidable artifact of using discrete timesteps?

Thanks!
PhysOrg.com physics news on PhysOrg.com

>> Cheap, color, holographic video: Better holographic video displays
>> First entanglement between light and optical atomic coherence
>> EUROnu project recommends building Neutrino Factory
Jul12-11, 12:39 PM   #2
 
Recognitions:
Gold Membership Gold Member
Quote by cephron View Post
Out of curiosity, do you mean to basic Verlet or the Velocity Verlet?

I've been doing something like the OP's simulation using the velocity Verlet, and yes, it seems to preserve energy pretty nicely...but I've noticed that elliptical orbits tend to show "apsidal precession" (like Mercury's orbit tracing out a rosette) ... which they shouldn't in a purely classical simulation, right?

Are there any common errors that lead to this, or corrections to deal with it? Or is it an unavoidable artifact of using discrete timesteps?

Thanks!
No, I get elliptical orbits with discrete timesteps. One thing that appears to be missing in the original question is the initial speed and direction of the earth and the sun (ie. the position of the earth on the next timestep not only depends on the force from the sun, but the momentum of the earth in the last timestep). I am not sure how you are accounting for this as it ends up being very important.
Jul12-11, 01:03 PM   #3
 
Oh, I do give initial position and velocity to all bodies involved, for sure.

About the orbit - sorry, I wasn't meaning that you can watch it trace out a rosette with its orbit. For any given single orbit, it's elliptic. It's just that if you walked away for five minutes and came back, the major axis would be pointing in a slighty, but visibly, different direction. Over hours the major axis will do full rotations around the 'sun'. Maybe I should check how many orders of magnitude of timesteps it takes to do one rotation; that would give a better idea of the level of the issue...
Jul12-11, 01:10 PM   #4
 
Recognitions:
Gold Membership Gold Member

Velocity verlet versus other integration techniques


Quote by cephron View Post
Oh, I do give initial position and velocity to all bodies involved, for sure.

About the orbit - sorry, I wasn't meaning that you can watch it trace out a rosette with its orbit. For any given single orbit, it's elliptic. It's just that if you walked away for five minutes and came back, the major axis would be pointing in a slighty, but visibly, different direction. Over hours the major axis will do full rotations around the 'sun'. Maybe I should check how many orders of magnitude of timesteps it takes to do one rotation; that would give a better idea of the level of the issue...
Interesting, how accurate is a single orbit? Ie, given the correct masses and initial conditions does one orbit come out to pretty close to 365 1/4 days and does the orbit have the correct close point and far point?
Jul12-11, 01:51 PM   #5
 
I haven't tried an actual, unit-correct earth-sun system yet (I actually just got the simulator working last night, tbh). But I have played around with realistic units in this kinda thing before. I'll see if I can give it a shot and post some interesting info tomorrow.
Jul12-11, 02:26 PM   #6
D H
 
Mentor
Quote by cephron View Post
I've been doing something like the OP's simulation using the velocity Verlet, and yes, it seems to preserve energy pretty nicely...but I've noticed that elliptical orbits tend to show "apsidal precession" (like Mercury's orbit tracing out a rosette) ... which they shouldn't in a purely classical simulation, right?
TBH, velocity verlet is a pretty lousy integrator. People legitimately use a lousy integrator such as velocity verlet in an N-body simulations when they realistically can't use a better choice (e.g., N or the time scale is extremely large). In this case, N is not "very, very large", and much better integrators can be used.
Jul12-11, 11:41 PM   #7
 
Ok - so, is Velocity Verlet, like, the top one of its class (in computational expense), and to do better requires a higher class of integrator (ie. more computationally expensive)?

My instinct would have been to look at RK4 next, but there seem to be some concerns circulating the nets that it loses energy...
http://www.gamedev.net/topic/387065-...me-situations/
(I also noted: this person's experiments also found that Velocity Verlet orbits tend to precess)

If one were assuming the goals of (1) maintaining energy and stability, and (2) improving accuracy over Velocity Verlet, what integrators might be next in line? How much more computationally expensive are they?

I'm interested in any input.(and to the original poster, let me know if you consider this to be hijacking your thread beyond your purposes; I'll apologize and start a new one...)
Jul13-11, 11:27 AM   #8
 
Recognitions:
Gold Membership Gold Member
This page on wiki talks about these types of simulations and at the bottom, gives links to some simulation methods.

I am not sure what you are trying to simulate, but if we stick to the sun/earth system for the moment, there is a very important comment to make when dealing with descrete timesteps. Do NOT use the tangent to the line as shown in the Euler example. DO use the proper prior position of your objects from the previous timestep that you MUST calculate by hand.

To illustrate this, assuming you choose the mass of the earth and sun to say 6 digits accuracy, you then choose the distance between the earth and sun on some particular day to start at say 6 digits accuracy. Using the tangent to calculate the momentum will result in an orbit that is days out from a proper 365 day orbit (ie, it will not even be within 2 digits accurate even if you did a calculation for every second of the year) and the wiki page illustrates how that error is propagated. If you calculate by hand where the earth and sun would be prior to the first timestep to the same accuracy (6 digits) to get the proper momentum rather then using the tangent value, you will be able to get the orbit to within minutes of being correct, even if you only use hours or days as calculation timesteps.

Also note that if you switch from daily calculation timesteps to hourly calculation timesteps, you cannot divide your momentum by 24 and use the same direction, you must recalculate your first prior position (and hence the direction of the momentum of the earth) based on the new timesteps. In summary, the direction of the momentum of the Earth to start is dependent on the timeframe you choose to do your calculations. Using the tangent, does not take this into account.

Switching to this method causes the opposite problem compared to what you are seeing. You will not be able to simulate a precessing orbit as all orbits, no matter how you start them or what masses you use, will turn into perfect ellipses (samples here).

Hope this post is of some help.
Jul13-11, 10:44 PM   #9
 
Thanks, edguy, for the explanation. I think I follow what you're talking about.

I also came across D_H's post in another thread, which gives a lot of helpful info:
http://www.physicsforums.com/showthread.php?t=380098
New Reply

Similar discussions for: Velocity verlet versus other integration techniques
Thread Forum Replies
Simulating relativity in a velocity verlet algorithm Special & General Relativity 4
Integration techniques Calculus & Beyond Homework 6
Velocity Verlet Integration Classical Physics 2