Talk:Runge-Kutta methods
September 2, 2007: This is my final comment on this article. I knew from the outset that John Butcher would write this article in the way that would be most appropriate for the interested readers of Scholarpedia. While I thought the initial submission needed much improvement, the author has incorporated all of my suggestions in a format that was far cleared than I could have written myself. I applaud the author for continuing to respond to my several reviews over the past six months.
I now approve the publication of this article with
no reservations.
This is my THIRD REVIEW of this article as of August 30, 2007.
The author's revision of August 28 covers items 1. and 2. of my SECOND REVISION.
However, I still believe a significant revision of the section entitled Implementation Costs is required before the item is acceptable.
In its present form, even a knowledgeable researcher of Runge- Kutta methods would have difficulty following the ideas intended.
I would like to see something along the lines of the following:
"As a general guide, nonstiff problems should be solved by explicit methods in order to achieve good results with efficiency of computation. In contrast, stiff problems need to be treated at least where stiffness dominates the behaviour of the solution by implicit methods.
Explicit Runge-Kutta methods are characterized by computation measured by s function evaluations per step. In contrast, explicit linear multistep methods, require only one or two functions evaluations per step, and accordingly appear to be more efficient. In practice, this is not always the case because explicit Runge-Kutta methods can achieve the same accuracy with larger stepsizes, and have the facility of a simple change of stepsize, and for many methods good error estimators are known. Hence, it turns out that computer codes based on both explicit Runge-Kutta pairs and on linear multistep predictor-corrector formulas are both available in the public software domain.
Otherwise, for solving stiff problems, codes based on implicit Runge-Kutta methods are appropriate." (Here, the author should include his discussion as in the original version.)
The point I am trying to make here is that I do not
understand the discussion presented by the author on
the topic of Implementation Costs, and accordingly
expect the less knowledgeable reader to have the
same difficulty. I think the entries in Scholarpedia
need to be a transparent, straightforward interpretation
of what the methods are, and how they are commonly used.
The SECOND REVIEW following was submitted August 23. As of August 27, the author
has made no changes to reflect the three suggestions made in this review.
(The Review which follows thereafter was submitted by this reviewer in April, 2007.)
I suspect that the AUTHOR has not been able to retrieve my suggestions in this SECOND REVIEW.
MY SECOND REVIEW OF THIS ARTICLE
Contents |
====================
John Butcher has much improved the presentation with his editings of the article.
Some DETAILED suggestions remain:
1. Line About 3 lines above Runge-Kutta Pairs: should read
"... low orders, a simple procedure exists..."
2. Line 363: there is an apparent misleading notation in using R(x) with R^s (Latter might be better as {IR}^s, showing a normal notation for the Real numbers.)
3. The author now has provided a more balanced description of Explicit and Implicit Runge--Kutta methods. HOWEVER, The three sentences beginning the section on "Implementation Costs" have the undesirable implication that explicit Runge-Kutta methods "compare unfavourably with linear multistep and predictor methods", and that this deficiency is overcome "when stiff problems come into consideration."
I have changed the context slightly to try to illustrate
what I see as the problem. The author should rewrite these sentences
to clearly indicate that explicit Runge-Kutta methods in the form
of error estimating pairs with stepsize control are a competitive
alternative to (explicit) linear multistep or predictor-corrector
methods for non-stiff problems because of the ease of implementation
of step-size change, and there is a potential for improvement
in efficiency, even though there is an apparent advantage of the linear
multistep and predictor-corrector methods.
Then, he should introduce the quite different considerations required for stiff problems, and the known approaches to improving the efficiency basically through implicit methods, and then through special designs for improving efficiency.
I think by separating the roles that explicit and implicit methods have in the types of problems for which they are appropriate the article will be a better guide for the reader.
(In the present form, I think that the sentences I find
misleading first compare explicit RK methods negatively to explicit
multistep methods, and then confuse the contrast further, by
introducing the role of special implicit Runge--Kutta methods
for stiff problems. Ideally, after separating these two
aspects of Runge--Kutta methods, the author could add a summary
sentence stating that codes based on explicit RK pairs are
efficient for non-stiff problems, and those based on special
implicit RK methods such as the DIRK methods are efficient for
stiff problems.)
In defense of this perspective, I would add that the author has contrasted explicit RK methods to linear multistep methods, but has not contrasted implicit RK methods to BDF methods.
My FIRST REVIEW OF THIS ARTICLE
===================
This article is submitted by an author who is well qualified to describe Runge--Kutta methods. I have two major reservations (connected), and a number of minor reservations which I list under Detailed Comment.
1. The article begins with a general description of Runge--Kutta methods, but fails to state explicitly that the paragraph beginning "Although it is not known, for arbitrary orders...." before Table 2 now refers ONLY to Explicit Runge--Kutta methods. I would suggest that this paragraph be preceded by the title "Explicit Runge--Kutta Methods" so that this section is distinguished from that which follows.
The serious reservation I have connected with this suggestion is that the article focuses on "Implicit Runge--Kutta Methods", and much of the description and discussion of implementation refers to the use of these methods, and the accepted fact that they are efficient methods for treating stiff-problems. I have given more detail below. In particular, the examples of explicit Runge--Kutta methods cited are those primarily of historical interest. Under implementation, there is no description or citation of development and implementation of Explicit Runge--Kutta pairs: such formulas are to be found as the basic formulas used in the practical implementations of MATLAB and MAPLE, and perhaps other software environments.
2. The second serious reservation I have is connected to the first: under the section describing Implementation costs, the author implies that Explicit Runge--Kutta methods are perhaps inefficient when compared to linear multistep and predictor methods, the fact that the former methods have an advantage over the latter when moderately changing values of $f$ allow improvements in efficiency by changing stepsizes.
It seems to me that a balanced article should explain that for non-stiff problems, implementation with step-size changes is the norm, and that some articles such as those by Fehlberg, Verner, Dormand-Prince and others might be cited. In doing so, the article also locates articles giving coefficients of explicit methods up to the orders given in Table 2. Hence, I suggest that the section on Implementation Costs be perhaps equally divided between costs for implementing Explicit and Implicit methods, rather than focussed on the latter.
Detailed Comment
Location:
"The Euler method ...poor accuracy..... because it is based on theunderlying...
Comment:
This is only a partial reason: "Poor accuracy arises with Euler's method partly because the short stepsizes that would potentially give adequate or even high accuracy lead to an accumulation of errors due to arithmetic truncation error through finite precision arithmetic, and partly because to obtain high accuracy with Euler's method and high digit precision would require a large amount of computing time.
The problem is that as written, the statement implies that Euler's method is not "good enough" to solve differential equations: I think the idea that should be expressed is that convergence of Euler's method establishes that theoretically it is good enough to get an accurate solution, but that efficiency and accuracy requirements make this impractical when a solution is required.
In Line 2 following the Butcher tableau:
I suggest: "For example, the two methods of order 2 already introduced above from the work of Runge..."
In the three tables of explicit coefficients:
Extend the horizontal bar to cover the weights.
Line 2 in "Order Conditions"
"...multi-dimensional." (Period, not a comma)
Line 2 after Table 1:
".."for the high-dimensional general problem..." would be clearer
Prior to "Although it is nont known,
Begin a new section with title: "Explicit Runge-Kutta Methods." (What follows is specific to ERK methods only both for achievable order and solution of the order equations.)
Following equation (9)
Change sentence for improvement as "...derive specific methods becomes increasingly more complicated as the order increases. However, for low orders, a simple procedure exists and consists of three steps..."
Paragraph before section on Stability:
The last sentence ending "there are effectively only 3 stages per step." might be made more precise if there had been some prior discussion of error control mechanisms: ie. I think the efficiency is realized for every accepted step.
Stability
This appears to be the first time "Explicit RK methods" have been identified as such in this article. These might have been identified usefully with the first specification of a Butcher tableau.
Implementation Costs
"..requires $s$ evaluations of the function $f$." (Interchange s and f.)
As mentioned above, Butcher implies that explicit Runge--Kutta methods seem to be less efficient than linear multistep and predictor methods .... Even though he qualifies this a little, he should state that such methods are available for solving non-stiff problems in some software packages, and can provide accurate solutions efficiently. Some discussion of the availability of ERK pairs for error estimation might be an added benefit.
Stiff problems might be briefly described:
"... when stiff problems (those characterized by a rapid change in one or more solution components over part or all of the interval of solution)...."
As of August 27, 2007, I made three comments in the REVIEW SECTION. The Scholarpedia software does not seem to allow this infomration to easily pass to the AUTHOR.
User 3: polynomial root
I used Pari/GP's Solve function to check the numerics for root of the gamma polynomial and it returned root=0.159. I did not hand check/verify ...--Billymac00 23:22, 24 March 2009 (EDT) Response by Butcher: There are three roots to this polynomial equation, approximately 2.4051, 0.4359, 0.1590. Only the second of these leads to an A-stable RK method.