Recent Changes - Search:

Information Foreword What is EJS? Demos/Examples Credits Links Webcasts Installation Download & Install EJS Workspaces Running EJS Conditions of Use Documentation EJS Console EJS Interface Description Panel Model Panel View Panel Deployment Elements Reference User Feedback English | Spanish | ? View Edit History Print PDF ## EJS ODE solvers A solver is a computer algorithm that computes a numerical approximation to the solution of an ordinary differential equation (ODE) or, more precisely, of an initial value problem. That is, given the system of ODEs and the state of the system at a given time, the algorithm is able to approximate the solution of the ODE in a future time. Solver algorithms in EJS are all one-step methods, mostly based on Runge-Kutta schemes, can be either explicit and implicit, fixed-step or adaptive, and all use interpolation to provide a dense output (that is, produce solution points at any instant of time). We explain what all this means, as well as explain the many parameters you can play with while fine-tuning your model in this small survey on ODE solvers. Notice: This page and the survey refer to ODE solvers included in EJS version 4.2 and later. Solvers in previous versions of EJS did not use interpolation. ### The solvers Euler refers to the well know Euler method. It is a fixed step, first order algorithm or very little practical use. It is always used to teach how solvers work, but its precision is very poor unless `dt` is prohibitively small. Euler-Richardson, also known as the midpoint method, is a Runge-Kutta improvement of the Euler method. The ER method is a fixed step, second order method that works well for simple problems, such as harmonic oscillators, free fall, and things like these. Runge-Kutta 4 refers to the classical Runge-Kutta method which started it all. It is a fixed step, 4th-order algorithm, that works well in most situations. (A not-very-precise rule of thumb states that RK4 works well for precisions - tolerances- of 10−5 or so. You should also be aware that using an adaptive solver can have a dramatic impact on performance and accuracy for problems with regions of different behavior - sometimes smooth, sometimes quickly changing.) ‘’Bogacki-Shampine 3(2) is an adaptive Runge-Kutta method of order 3. It is based on two embedded RK schemes of order 3 and 2. Cash-Karp 5(4) is an adaptive 4th order method. It is based on two embedded RK schemes of order 5 and 4. Differently to the reference given, we use local extrapolation and accept the 5th order approximation as the solution. This is the default solver for a new page of ODEs because it provides excellent performance in most situations. Fehlberg 8 is a fixed step 8th-order method with the coefficients of the higher order scheme included in the 8(7) Fehlberg RK method described below. Felhberg 8(7) is the adaptive RK method described in Table 5.3 of the Solving Ordinary Differential Equations I.Nonstiff Problems book by Hairer, Nørsett, and Wanner. Dormand-Prince 5(4) is a sophisticated adaptive 4th-order RK method with its own interpolation scheme. Dormand-Prince 8(53) is an 8th order adaptive method from the Dormand-Prince family. It is described in Section II.5, p. 181, of the Solving Ordinary Differential Equations I.Nonstiff Problems book by Hairer, Nørsett, and Wanner. Radau 5(4) is an implicit RK 4th order adaptive method described in the book Solving Ordinary Differential Equations II. Stiff and Differential-Algebraic Problems book by Hairer and Wanner. This method is recommended for stiff equations. QSS 3 is a different story… It is the single non-RK based method in EJS. This is a 3rd order, adaptive method based on the idea of quantized-state systems (QSS). This method is included for research pruposes and is not recommended for non-specialists. You can find information about QSS on the work by Ernesto Kofman. #### Copyright Notices All the solvers are implemented as part of the Open Source Physics numerics package. The implementation of the Dormand-Prince and Radau methods are based on work by Andrei Goussev under the guidance of Yuri Senichenkov of the Saint Petersburg State Polytechnical University. QSS 3 is a result of joint work with Ernesto Kofman and Gustavo Migoni from the Universidad Nacional de Rosario, Argentina.

Edit - History - Print - Recent Changes - Search
Page last modified on August 05, 2009, at 11:49 PM