Pros and cons of both methods:
RK4 Pros:
- accuracy (thanks to its better approximation series it yields a 4th order precission)
- artificial/inherently induced damping (a bit like implicit methods do it) adds stability (whereas a simple Euler step doesn't - it does the opposite actually, introducing ghost energy that builds up and could plunge the system into chaos)
RK4 Cons:
- computation expense: while not that demanding in comparison to implicit methods or hybrid IMEX methods, RK4 is 4 times more expensive than the explicit Euler since it requires that many more function evaluations. This shows when aiming for the bleeding edge of optimization.
- still unstable: depending on the types of forces involved, RK4 can be just as unstable as Euler. On average, RK4 is a bit more stable and tends to draw this benefit from its endowed damping "skills".
- Belirsiz olmayan: sayısal sönümleme bir maliyetle gelir - enerji / hacim / vb. Sistemleri simüle edemezsiniz. Kayıp, zaman içerisinde görünür bir etki uygulamamalıdır (örneğin, Moleküler Dinamik, Potansiyel Alan kaynaklı kuvvetler, değişken problemler).
Verlet Artıları:
- Bir Euler adımının karmaşıklığının bir veya iki katı (Verlet lezzetinize bağlı olarak: konum veya hız).
- sempatik: iç enerjiyi korur
- ikinci derece doğruluk: birçok oyun yüksek hassasiyetli kayan nokta sonuçları gerektirmez ve ikinci derece bir oyun senaryosunda göze hoş gelmekten daha fazla bir şey değildir (artı: "keşfedildiğinde" oyun dışı bir senaryo simülasyonunda kullanılmıştır. o kadar da kötü değil)
Verlet Eksileri:
- stable, but still: probably the best explicit method in terms of stability. It tends to win the edge when hard constraints are added to the system, thus allowing for less head-aches when implementing projected constraints in position based dynamics engines. It sets off to infinity if the system is perturbed with large external forces and no damping/friction is added. Even so, there are certain numerically imposed limits to how large the internal (spring) forces can be, but they're higher on average than what RK4 can do
- lower accuracy: not useful if you want high precission estimations
- requires, on average, smaller time-steps than RK4 for some simulations (RK4 benefits from both its accuracy and internal damping)
Birini diğerinin üzerinde kullanmak, senaryoya göre değişir. Sertlik ve büyük dış kuvvetler ve sanal enerjiler bir sorunsa, açıklamalarında / başlıklarında "örtük" kelimesi bulunan diğer yöntemleri düşünün.
Bazı yazarların / kitapların, Verlet'in gerçekten türetildiği, sempatik Euler yöntemi (veya Euler Cromer) olarak adlandırılan gerçek bir açık Euler entegratörü için yarı-örtülü Euler terimini kullandığını unutmayın . Verlet, bazı insanlar tarafından "birdirbir" yöntemi olarak da adlandırılır. Velocity Verlet ve orta nokta yöntemi, bir zaman adımındaki bir tahminden beri oldukça benzerdir.t + 0.5*dt
öngörücü-düzeltici benzeri adım için gereklidir. IMEX yöntemleri (örtük-açık), iki benzer fakat aynı olmayan yaklaşımı isimlendirmek için de kullanılır: hesaplamaları sert ve sert olmayan parçalara ayırmak ve üzerinde farklı entegratörler kullanmak (sert, katı olmayanlar için açık) VEYA Örtük bir güncelleme adımına sahip hız ve pozisyonu açık bir şekilde güncelleyin (bu, sert kısımlar hızlanma hesaplamasını en çok etkilediği için IMEX yöntemlerine düşen karma bir yarı yöntemdir). Örtük yöntemler daha zordur ve tüm konfigürasyon için eşzamanlı doğrusal olmayan denklem sistemlerinin çözülmesini gerektirir. Örtük yöntemler, deforme olabilen cisimler için kullanılır ve genellikle ayrışmış rijit cisimler için kullanılmaz.
As stated in one of the comments, if you can, do not use Euler. Use either the midpoint method, the semi-implicit Euler or, at the same expense, the position-Verlet. All of them have slightly higher accuracy and sensibly more stability than the explicit Euler integrator.
Recommended mini-comparison reading:
http://wiki.vdrift.net/Numerical_Integration