Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r61413 - in sandbox/odeint/libs/numeric/odeint/doc: . html
From: mario.mulansky_at_[hidden]
Date: 2010-04-19 16:04:39


Author: mariomulansky
Date: 2010-04-19 16:04:38 EDT (Mon, 19 Apr 2010)
New Revision: 61413
URL: http://svn.boost.org/trac/boost/changeset/61413

Log:
+doc steppers
Text files modified:
   sandbox/odeint/libs/numeric/odeint/doc/html/index.html | 2
   sandbox/odeint/libs/numeric/odeint/doc/steppers.qbk | 87 +++++++++++++++++++++++++++++++++++++++
   2 files changed, 86 insertions(+), 3 deletions(-)

Modified: sandbox/odeint/libs/numeric/odeint/doc/html/index.html
==============================================================================
--- sandbox/odeint/libs/numeric/odeint/doc/html/index.html (original)
+++ sandbox/odeint/libs/numeric/odeint/doc/html/index.html 2010-04-19 16:04:38 EDT (Mon, 19 Apr 2010)
@@ -256,7 +256,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: April 07, 2010 at 14:12:31 GMT</small></p></td>
+<td align="left"><p><small>Last revised: April 19, 2010 at 19:48:59 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: sandbox/odeint/libs/numeric/odeint/doc/steppers.qbk
==============================================================================
--- sandbox/odeint/libs/numeric/odeint/doc/steppers.qbk (original)
+++ sandbox/odeint/libs/numeric/odeint/doc/steppers.qbk 2010-04-19 16:04:38 EDT (Mon, 19 Apr 2010)
@@ -269,9 +269,92 @@
 
 [section Stepper classes]
 
-overview table
+[table Stepper Algorithms
+ [[Method] [Class] [Order] [Error Estimation]]
+ [[Euler] [stepper_euler] [1] [No]]
+ [[Runge-Kutta 4] [stepper_rk4] [4] [No]]
+ [[Runge-Kutta Cash-Karp] [stepper_rk5_ck] [5] [Yes (Order 4)]]
+ [[Runge-Kutta Fehlberg] [stepper_rk78_fehlberg] [7] [Yes (Order 8)]]
+ [[Midpoint] [stepper_midpoint] [variable] [No]]
+ [[Bulirsch-Stoer] [controlled_stepper_bs] [variable] [Controlled]]
+]
 
-all stepper classes
+[section stepper_euler]
+
+[*Concept:] Basic stepper
+
+[*Accuracy:] That means the produced solution is accurate up to order 1.
+
+[*Complexity:] This method uses 1 function evaluation.
+
+The Euler algorithm used in this class performs one integration
+step according to the formula:
+[: x(t+dt) = x(t) + dt*f(x,t)]
+The Euler stepper is the most simple algorithm to integrate a
+differential equation. It's only purpose in this library is for educational
+reasons - use more sophisticated steppers for real life problems.
+
+[endsect]
+
+[section stepper_rk4]
+
+[*Concept:] Basic stepper
+
+[*Accuracy:] The produced solution is accurate up to order 4.
+
+[*Complexity:] This method uses 4 function evaluations.
+
+The Runge-Kutta 4 algorithm is /the/ classical method to integrate odes.
+The [@http://en.wikipedia.org/wiki/Runge%e2%80%93Kutta_methods#Explicit_Runge.E2.80.93Kutta_methods
+Butcher Tableau] for this method is as follows:
+
+[pre
+Butcher Tableau for Runge-Kutta 4
+ 0 |
+ 1/2 | 1/2
+ 1/2 | 0 1/2
+ 1 | 0 0 1
+ ------------------------
+ | 1/6 1/3 1/3 1/6
+]
+This method produces fast, though not too accurate solutions. Use it for quick
+preliminary results and then switch to error controlled methods like Cash-Karp
+for more reliable calculations.
+
+[endsect]
+
+[section stepper_rk5_ck]
+
+[*Concept:] Error stepper
+
+[*Accuracy:] The produced solution is accurate up to order 5 and the estimated
+error is also of order 5.
+
+[*Complexity:] This method uses 6 function evaluation.
+
+The Runge-Kutta method of order 5 with Cash-Karp coefficients is a good trade-off
+between numerical effort and obtained accuracy with error estimation.
+It is the all-round method and suitable for most problems.
+See [@http://en.wikipedia.org/wiki/Cash%e2%80%93Karp_method wikipedia] for details and
+the Butcher tableau.
+
+[endsect]
+
+[section stepper_rk78_fehlberg]
+
+[*Concept:] Error Stepper
+
+[*Accuracy:] The produced solution is accurate up to order 7 and the estimated
+error is of order 8.
+
+[*Complexity:] This method uses 13 function evaluations.
+
+The Runge-Kutta 78 Fehlberg method is a high-order algorithm that produces very
+good accuracy but for the cost of high numerical effort.
+Whenever extra-ordinarily high precision is required, you can fall back to this
+method.
+
+[endsect]
 
 [endsect]
 


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk