Talk:Verlet integration

message: It might seem misleading when one uses t_0 for the current time. Normally one mentions t_0 as the initial time and uses t further on. Also all positions, velocities and accelerations should be in vector notation. It should be mentioned for the Basic Verlet algorithm that for the first time step one should use another formula, while x(t - \Delta t) is not known at t = 0.
Shouldn't
\nabla^2\vec{x}(t) = \frac{\vec{x}(t+\Delta t) - 2\vec{x}(t) + \vec{x}(t)}{\Delta t^2} + \mathcal{O}(\Delta t^4)
be
\nabla^2\vec{x}(t) = \frac{\vec{x}(t+\Delta t) - 2\vec{x}(t) + \vec{x}(t-\Delta t)}{\Delta t^2} + \mathcal{O}(\Delta t^4)
instead?  -- Jagot 17:01, 5th June 2009 (GMT+1)  —Preceding undated comment added 15:01, 5 June 2009 (UTC)
thread_title:  Basic Verlet 

message: This should be a slightly more efficient way of doing what is currently demonstrated in the Constraints section.
:\Delta x = x_1 - x_2\,
:d=0.5\left(1.0 - \frac{r}{\sqrt{\Delta x^2}}\right)\,
:x_1 = x_1 - \Delta x d\,
:x_2 = x_2 + \Delta x d\,
And some pseudo-code:
/* Pre-defined variables */
vector x1, x2  // Positions of the particles
double r       // The length at which the constraint is at rest
vector delta = x1 - x2
double d = 0.5 * (1.0 - r / sqrt(delta * delta))
x1 -= delta * d
x2 += delta * d
N.B. The described constraint method (e.g. Jacobsen's Verlet projection method, which it is popularly referred to in the game physics litterature) isn't faithful to the scientific literature.
It would be more apropriate to describe the RATTLE and SHAKE methods, and show that in velocity form, with the right hand side terms neglected, we end up having a simple, but often broken (very heavily damped) method, which indeed is this projection method by Verlet integration that is described here.  —Preceding unsigned comment added by 89.160.50.2 (talk) 18:51, 17 September 2007 (UTC)
replies: text: sorry for nitpicking, isn't is cleaner with |x| rather than with sqrt(sqr(x)) ;)? --- ca1 147.229.179.174 (talk) 16:06, 7 April 2008 (UTC)
thread_title:  Constraints 

message: In regards to Arnero's edit, while my gut tells me that this is right, that satisfying constraints is similar to matrix inversion, I don't have the mathematical background to see it, let alone put it to practical use.  I'm sure others are in the same boat.
I would appreciate a simple explanation of what the matrix would even be or look like (if you would construct such a matrix), where to start, how to compare my "home grown" constraint satisfier with gaussian elimination or other methods, etc.
The two primary concerns in a constraint satisfier in any real time application are the order of convergence (how many time steps it takes to reach an acceptable answer) and overall stability over time (more difficult to quantify).  If techniques from linear algebra can provide better solutions, I'd personally like to explore them.
--Numsgil 23:13, 2 November 2006 (UTC)
thread_title:  Inverting a Matrix 

message: === acceleration ===
:x(t_0 + \Delta t) = 2x(t_0) - x(t_0 - \Delta t) + a\Delta t^2
Is the acceleration a in time t0? So is it a(t0)? Or is it something different?
But what if in my problem the a(t) depends on v(t)? (For example air drag, where air drag force depends on the speed and the acceleration depend on this force.) It seems that I can't use this integration method for such problem. Or can anybody explain better the part of this article with the "very simple damping effect"?
: \vec{a}(t + \Delta t) is calculated using values of \vec{x} and \vec{v} dependent on the potential of the interaction.
You can probably use the old v(t - dt). But the damping effect can be also implemented directly into the Verlet equations, as shown in the article. Note that it is better to scale the constant f with the current dt (i.e. use coefficients (2-f*dt) and (1-f*dt), where f is a constant, and 0 < f*dt < 1).
=== another methods ===
Could anybody please compare Verlet integration with another integration methods? (I don't call Euler integration a "method".)
: Range-Kutta? Predictor-Corrector.
=== constraints ===
Could anybody please compare kind of solving constraints mentioned in this article with Lagrange multipliers?
--147.230.151.146 12:20, 30 November 2006 (UTC)
thread_title:  acceleration, another methods, constraints 

message: Could anybody please compare kind of solving constraints mentioned in this article with Lagrange multipliers?
--147.230.151.146 12:20, 30 November 2006 (UTC)
thread_title:  constraints 

message: The recommendation of this article is to take the position at time t + h and time t - h, and use the mean value theorem to approximate the slope (velocity).  However, I've been doing some experimenting, and it seems to me that taking the position at time t and t + h gives a better approximation to the velocity.  This makes intuitive sense, as well, since the velocity term will respond better to local changes in force.  My test cases are all damped spring equations where the force (acceleration) is related to position and velocity.  So, I guess my point is that either I'm not understanding something, or the bit about approximating the velocity should be changed. --Numsgil (talk) 05:58, 2 June 2008 (UTC)
thread_title:  Estimating velocity using the mean value theorem 

message: In the opening paragraph, it says:
"However, this kind of integration suffers from many problems, as discussed at Euler integration. Stability of the technique depends fairly heavily upon either a uniform update rate, or the ability to accurately identify positions at a small time delta into the past."
This is a bit unclear -- the stability of "the technique" refers to Euler, or to Verlet? Can whoever wrote this please clarify?  Thanks, 71.130.208.192 (talk) 20:31, 29 November 2008 (UTC)
thread_title:  unclear wording 

message: The article implies they are the same thing, whereas if you go to the link that is references there, a distinction is made between the two methods.
: I agree here. They are not the same.  —Preceding unsigned comment added by 88.67.163.187 (talk) 18:35, 22 June 2010 (UTC)
replies: text: I think they are the same. One can write the velocity at either the current time step, or half-way between the current and next time step; both equations are usually presented when describing Velocity Verlet (see for instance Hairer et al 2006 page 8) and are easily shown to be mathematically equivalent. TotientDragooned (talk) 20:33, 5 August 2010 (UTC)
thread_title:  Velocity verlet is not equal to leapfrog verlet =

message: It should be possible to quickly find the numerical method that is used in Verlet integration. This is not the case now. By looking at the section headings, you will first find "Basic Störmer–Verlet", followed by "Velocity Verlet" which is clearly not the same thing as Verlet integration. So is maybe "Basic Störmer–Verlet" the same thing as Verlet integration? Okay, let's give it a shoot.
The subsections under "Basic Störmer–Verlet" reads "Equations of motion" — which is clearly not what we are looking for, since this contains no temporally discretized equations — then "Störmer's method" and then comes examples, so Verlet integration must have already been presented, hence in the subsection "Störmer's method". But "Störmer's method", who the heck is Störmer? I wanted to read about Verlet integration.
Then, if you start the read the article from the beginning, in the leading paragraph it becomes apparent that Störmer appears to have been the first guy we know of who has used Verlet integration, and that therefore the method is also called "Störmer's method". This still doesn't make it okay to suddenly change from "Verlet integration", which after all is the title of the article and what the reader is looking for in the article and expects to find, to "Störmer's method". This is inconsistent and makes the reader confused, and heck, it has made me write all this section ranting about this bad section naming instead of just simply change the section name from "Störmer's method" to "Verlet integration". —Kri (talk) 15:50, 15 November 2013 (UTC)
thread_title:  This article hides how Verlet integration works 

message: The formula at the end of this section seems to have an error: as it stands, the \frac{\Delta t_{i-1} + \Delta t_{i-1}}{2} term could be simplified to just \Delta t_{i-1}. I'm not sure what the correct formula is, but I suspect that one of the \Delta t_{i-1} should be a \Delta t_i? Corryn (talk) 10:33, 22 April 2014 (UTC)
thread_title:  Error in 'Non-constant time differences' formula? 

message: The tone seems very instructional and conversational, in addition it seems a bit out of context, like it was just pasted from a lecture somewhere.  I can't quite figure out what this section is about.  If it is about Verlet integration in solving multiple-particle systems, it should be retitled and replaced with an overview of that.Cyrej (talk) 17:39, 12 October 2015 (UTC)
replies: text: I've removed some details and rewritten the same content in hopefully clearer and more encyclopedic style, still not sure about the content itself.  The section should include a better overview of constraints or multiple-particle problems or whatever it is about.  — Preceding unsigned comment added by Cyrej (talk • contribs) 20:02, 12 October 2015 (UTC)
thread_title:  Constraints Section - tone 

message: This article should not be referenced, because "the article either misapplies or misderives every integration method it demonstrates" (quoting myself here).
This is the article http://www.gamedev.net/page/resources/_/technical/math-and-physics/a-simple-time-corrected-verlet-integration-method-r2200
Here's my StackOverflow answer about it http://stackoverflow.com/questions/32709599/the-time-corrected-verlet-numerical-integration-fomula?lq=1
Here's another http://stackoverflow.com/questions/10139670/time-corrected-verlet-integration-and-too-big-timesteps/28061393#28061393
I was the "Aru" person there. It was rather easy to derive this for myself, which is why I was concerned that it seemed so many people could be taking this article seriously, when it's clearly wrong, and takes a misleading approach to everything. It's misapplying methods right from the start, using them with silly assumptions and ignoring their conditions. And I see now that it has even leaked it's way into wikipedia, which seems like the opposite of the right direction.
I haven't looked at this in a long time, and I could re-derive it if I really have to, but I assume any of you could do it easily as well. So, please remove all references to this article, and fix anything it has tainted in the wikipedia article? In fact, in might even be a good idea to mention that the article's proposed "method", the "time-corrected verlet", is patently wrong, just so that readers coming here are no longer confused by it.
edit: I guess, I'm saying this instead of "being bold" because I know that if I just remove it myself, someone will revert. Even if I both remove it and explain why here, some will revert. So, I'm explaining why, and someone else can remove it (or give me permission to do so).
LieAfterLie (talk) 03:50, 6 March 2016 (UTC)
thread_title:  Anything referencing Jonathan Dummer should be removed 

message: Substituted at 02:40, 5 May 2016 (UTC)
thread_title: Assessment comment

message: The algorithm was first used in 1791 by Delambre and has been rediscovered many times since then, most recently by Loup Verlet in the 1960s for use in molecular dynamics.
Should these just be reversed or is there something more to it?
Sobeita (talk) 20:57, 29 March 2018 (UTC)
thread_title:  Speaking of 'Time Reversibility'...