@@ -32,7 +32,7 @@
<emphasis>CVode</emphasis> and <emphasis>IDA</emphasis> use variable-size steps for the integration.
</para>
<para>
-            A drawback of that is the unpredictable computation time. With DoPri, we do not adapt to the complexity of the problem, but we guarantee a stable computation time.
+            A drawback of that is the unpredictable computation time. With Dormand-Price, we do not adapt to the complexity of the problem, but we guarantee a stable computation time.
</para>
<para>
As of now, this method is explicit, so it is not concerned with Newton or Functional iterations, and not advised for stiff problems.
@@ -48,7 +48,7 @@
By convention, to use fixed-size steps, the program first computes a fitting <emphasis>h</emphasis> that approaches the simulation parameter <link linkend="Simulatemenu_Menu_entries">max step size</link>.
</para>
<para>
-            An important difference of DoPri with the previous methods is that it computes up to the seventh derivative of <emphasis>y</emphasis>, while the others only use linear combinations of <emphasis>y</emphasis> and <emphasis>y'</emphasis>.
+            An important difference of Dormand-Price with the previous methods is that it computes up to the seventh derivative of <emphasis>y</emphasis>, while the others only use linear combinations of <emphasis>y</emphasis> and <emphasis>y'</emphasis>.
</para>
<para>
Here, the next value is determined by the present value
@@ -95,7 +95,7 @@
.
</para>
<para>
-            That error analysis baptized the method <emphasis>Dopri 4(5)</emphasis> :
+            That error analysis baptized the method <emphasis>Dormand-Price 4(5)</emphasis> :
<emphasis>
O(h<superscript>5</superscript>)
</emphasis>
@@ -137,7 +137,7 @@ try xcos_simulate(scs_m, 4); catch disp(lasterror()); end;
]]></scilab:image>
</para>
<para>
-            The integral block returns its continuous state, we can evaluate it with DoPri by running the example :
+            The integral block returns its continuous state, we can evaluate it with Dormand-Price by running the example :
</para>
<para>
<programlisting language="example"><![CDATA[
@@ -145,9 +145,9 @@ try xcos_simulate(scs_m, 4); catch disp(lasterror()); end;
importXcosDiagram("SCI/modules/xcos/examples/solvers/ODE_Example.xcos");
-      scs_m.props.tf = 10000;
+      scs_m.props.tf = 5000;

-      // Select the DoPri solver and set the precision
+      // Select the Dormand-Price solver and set the precision
scs_m.props.tol(6) = 5;
scs_m.props.tol(7) = 10^-2;

@@ -155,18 +155,18 @@ try xcos_simulate(scs_m, 4); catch disp(lasterror()); end;
tic();
try xcos_simulate(scs_m, 4); catch disp(lasterror()); end;
t = toc();
-      disp(t, "Time for DoPri :");
+      disp(t, "Time for Dormand-Price :");
]]></programlisting>
</para>
<para>
The Scilab console displays :
<screen><![CDATA[
-Time for DoPri :
- 31.501
+Time for Dormand-Price :
+ 17.126
]]></screen>
</para>
<para>
-            Now, in the following script, we compare the time difference between DoPri and Sundials by running the example with the five solvers in turn :
+            Now, in the following script, we compare the time difference between Dormand-Price and Sundials by running the example with the five solvers in turn :
Open the script
@@ -174,23 +174,23 @@ Time for DoPri :
<para>
<screen><![CDATA[
Time for BDF / Newton :
- 37.882
+ 12.852

Time for BDF / Functional :
- 32.815
+ 12.343

Time for Adams / Newton :
- 30.108
+ 8.75

Time for Adams / Functional :
- 29.242
+ 7.789

Time for DoPri :
- 31.501
+ 7.606
]]></screen>
</para>
<para>
-            These results show that on a nonstiff problem, for relatively same precision required and forcing the same step size, DoPri's computational overhead is significant. Its error to the solution is althought much smaller than the regular Runge-Kutta 4(5), for a small overhead in time.
+            These results show that on a nonstiff problem, for relatively same precision required and forcing the same step size, Dormand-Price's computational overhead (compared to Runge-Kutta) is significant and is close to <emphasis>Adams/Functional</emphasis>. Its error to the solution is althought much smaller than the regular Runge-Kutta 4(5), for a small overhead in time.
</para>
<para>
Variable step-size ODE solvers are not appropriate for deterministic real-time applications because the computational overhead of taking a time step varies over the course of an application.