Talk:Semi-implicit Euler method

Initial discussion

 * This discussion was initiated at User talk:DJIndica and User talk:Jitse Niesen; I copied it from there. -- Jitse Niesen (talk) 11:50, 6 March 2007 (UTC)

Hello. I'm intrigued by the article on the Euler-Cromer algorithm that you created, because it looks like I should know about this method. I have a couple of questions which I hope you could answer: I realize that you may not know all the answers, but anything you can say would be much appreciated. Cheers, Jitse Niesen (talk) 12:29, 3 March 2007 (UTC)
 * You wrote it performs better for oscillatory solutions. What is the basis for the statement? I find it hard to believe that this is true in general, but it may well be true in special cases (and these special cases may constitute the majority of problems of interest).
 * Can you look at the method again and tell me where the functions a and v that appear in the ODE come in? I suppose that $$a_n$$ stands for $$a(v_n,x_n,t_n)$$?
 * Any references? Where did you get the method from? Mr Google confirms that the method exist, but I can't find much analysis. To be honest, the method looks very similar to Verlet integration (which sorely needs to be cleaned up; there is always so much more work to be done here).


 * Hi Jitse,


 * Hopefully my answers below, combined with the details I have added to the article will answer your questions. I haven't used this algorithm extensively, but feel free to ask if you have any further questions.


 * I originally found this algorithm in Computational Physics, by Giordano, which stated without explanation that it works better than the Euler method for oscillatory solutions; this University of Delaware webpage gives more details.


 * I chose x, v and a because they are quite intuitive, I have added a (very) simple example which illustrates how the method can be used. an refers to acceleration at timestep n.


 * I have added references. Euler-Cromer differs from Verlet integration in that it still uses the velocity to calculate position (velocity at the current timestep).


 * --DJIndica 15:55, 3 March 2007 (UTC)

Thanks for your answer. Could you please check this edit of mine where I tried to clarify a couple of things, especially about the form of the equation? After quickly reading Verlet integration, it seems that that article describes a different method than the method I have in mind; I need to find out what's going on here. I'll need to think a bit more about the connection with the Verlet method. -- Jitse Niesen (talk) 11:02, 4 March 2007 (UTC)


 * I like your edit, I think we are converging on something useful. Whatever the shortcomings of the article on Verlet integration (and I don't see any major problems), I believe it gives the correct algorithm and it differs significantly from Euler-Cromer.--DJIndica 16:48, 4 March 2007 (UTC)

I sat down with a piece of paper and thought it over. I quickly discovered that the main problem with the article on Verlet integration is in my own mind. The algorithm that I'm used to is slightly different from (but equivalent to) the algorithm in that article. The article Verlet integration is biased towards mechanics, but I agree that it is mostly correct.

I found that I know the Euler-Cromer method under the name "symplectic Euler", so I added that to the article. I also added a reference which states that these methods are indeed the same. Anyway, the article is expanding nicely. -- Jitse Niesen (talk) 11:55, 6 March 2007 (UTC)


 * I think it is worth mentioning that Euler-Cromer performs well for oscillatory functions, I do not believe that it is significantly better then Euler for the general case.


 * In every example I have ever seen, the Euler method leads to an increase in energy. I am not 100% confident that this will always be the case, but I suspect it may be so.  Either way I don't think it is appropriate to say that the Euler method "often" leads to decreasing energy.--DJIndica 21:41, 6 March 2007 (UTC)

I removed the fact that Euler-Cromer performs well for oscillatory functions because I have a hard time believing it. You say that Giardano's book does not give any evidence, and the only evidence from the Delaware web page is that it works well for the harmonic oscillator. However, the good performance for the harmonic oscillator is explained by the fact that Euler-Cromer is a symplectic method and the harmonic oscillator is a Hamiltonian system. I don't see a reason why Euler-Cromer would perform well for non-Hamiltonian oscillators.

You're right that the Euler method usually increases energy. That was a mistake on my part, now fixed. Thanks for noticing that. -- Jitse Niesen (talk) 06:36, 7 March 2007 (UTC)

Method name
This is the same thing as semi-explicit Euler, right? Would it anger anyone if suggested the article be renamed to either Semi-explicit Euler or Symplectic Euler since those are the names people are familiar with? --Numsgil (talk) 18:36, 29 May 2008 (UTC)

Agreed. I was surprised to see this labeled as "semi-implicit" Euler. Under that name I would have expected something like the Crank-Nicolson method. — Preceding unsigned comment added by 24.163.53.10 (talk) 01:49, 1 October 2015 (UTC)

This name is vague to me, since I've seen semi-implicit Euler to mean many things. Some people call any IMEX semi-implicit Euler, e.g. This is the first time I've seen it used for symplectic Euler. I don't know if the best way to address this is to create multiple sections for the different meanings. Fish sounds (talk) 02:37, 31 July 2020 (UTC)

Indeed the name is overloaded. At the very least this page should warn readers that there are a large group of people who use this term to mean something else. See for instance the paper "One-step and Extrapolation Methods for Differential-Algebraic Systems" published in Numer. Math. 51,501-516 (1987).

Arguments of f and g
When solving the equations of motion for a damped, driven oscillator the acceleration is a function of both x and v and I don't see in principle why the velocity couldn't also be a function of x. I was going to make this change but I wonder if this would have a bearing on whether the system is a Hamiltonian system. Does anyone have any thoughts on this?

I have used this method to obtain solutions for the damped, driven oscillator and the results seem to agree with other methods.--DJIndica (talk) 20:40, 2 October 2009 (UTC)

Assessment comment
Substituted at 18:35, 17 July 2016 (UTC)

Newton–Størmer–Verlet
The beginning of the article claims that the semi-implicit Euler method is also called Newton–Størmer–Verlet, but I believe that's incorrect. Newton–Størmer–Verlet (NSV) integration is also known as:


 * Størmer–Verlet integration
 * Størmer integration
 * Verlet integration
 * Leapfrog integration
 * Encke integration

The Semi-implicit Euler method is not the same as the Verlet method, but the two are related. If your acceleration depends only on position, one step of Verlet integration can be composed from two half steps of Semi-implicit Euler (using one of each of the two variants) pp.4,5. SaltedPretzel (talk) 08:42, 17 April 2020 (UTC)