, 19 min read
Comparing BDF vs. Tendler vs. Tischer formulas
We tested the BDF, Tendler's formulas, new Tendler-like formulas, and Tischer's formulas on the classical test equation
We used
The radius is fixed to $r=100$, and $\varphi$ varies from 5° to 90° in steps of 5°. $\varphi$ directly tests the Widlund wedge angle of the formula.
The stepsize $h$ of each formula is varied repeatedly from -0.1, -0.01, and -0.001.
Above differential equation is now solved with the following formulas:
- BDF order 1–6
- Tendler order 3–7
- new Tendler-like formulas order 3–9, see Tendler-like formulas
- Tischer's formulas of order 2–8 using $S=0$
This creates 1350 data points. Multiply by 2 machines, and two precisions, gives 5400 records.
We report the summed global error computed as
Computations were done in double precision (double complex).
Results are here.
As the global error $|y(t_i) - y_i|$ per step varies wildly between $10^{-324}$ to $10^{+304}$, we computed
That's what is shown in below graphic.
Computations were done on below machine.
| Hard- and software | Machine 1 | Machine 2 |
|---|---|---|
| CPU | AMD Ryzen 7 5700G with Radeon Graphics | ARM Cortex-A77 |
| CPU max MHz | 4673.8232 | 3187.2000 |
| C compiler | gcc version 15.2.1 20251112 (GCC) | clang version 21.1.7 |
| Floating point arithmetic | IEEE-754 standard compliant floating-point operator (with only minor documented deviations) | IEEE 754 standard |
Below 3D chart can be rotated and zoomed in or out. Clicking on any entry shows the log global error $\hat g_\hbox{err}$.
Once can clearly see that the higher order methods quickly lose precision when a higher Widlund wedge angle is required. This is the reason why GEAR, EPISODE, LSODE and CVODE all do not use BDF6. However, in reality, this is mainly a problem for the stepsize and order control segment to properly switch order.
For the new Tendler-like formulas we intend to use even the higher order methods of order 7, 8, and 9 as we aim to provide a type-insensitive code, which just switches between fixed point iteration and modified Newton method. It is well known, see Montenbruck/Gill (2000) §4.1.6, that higher order methods are indeed required for certain precision.
As Gaffney (1984) noted a sensitivity regarding the used precision, we repeated above test in single precision (float complex) and on another machine.
The qualitative results didn't differ in any way.
Results are here.