High-Order Special Two-Derivative Runge–Kutta Pairs
Abstract
1. Introduction
2. Order Conditions Derivation
| Listing 1. Mathematica function producing the equations of the condition and a list of them through the ninth order. |
![]() |
- Let be the i-th operator sequence, originally derived from a permutation of a composition of into 1s and 2s.
- Each 2 (mapped to A) is replaced by {1,1}, and each 1 (mapped to C) is replaced by 0.
- All 0s are then mapped to 1. The result is a list of 1s, whose length reflects the “weight” or “multiplicity” of the term.
- ℓ is the length of the operator sequence ,
- are the weights from the transformed sequence described above,
- The product corresponds to a descending factorial (e.g., when ),
- The weights are all 1s, but repeated depending on the number of 2s in the original partition.
3. Derivation of the New Pair
4. Numerical Tests
- RKPT7(5), a nine-stage pair presented in [6].
- DP5(4), the almost classical six-stage FSAL pair due to Dormand and Prince [14].
- STDRK7(5), the five-plus one-stage FSAL pair proposed in this study.
5. Conclusions
- High-order accuracy: Development of seventh-order STDRK pairs with embedded fifth-order error control.
- Computational efficiency: Significant reduction in function evaluations through the use of second-derivative information.
- Practical framework: Provision of a symbolic construction and verification tool in Mathematica.
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Appendix A
| function [tout, yout, ireject] = stdrk75(fcn, gcn, t0, tfinal, y0, tol) % SDRK75: Second-derivative explicit Runge-Kutta method (7th/5th order) % Solves y’ = f(y), y’’ = f’(y) * f(y) = g(y) % Inputs: % fcn - function handle for f(y) % gcn - function handle for g(y) % t0 - initial time % tfinal - final time % y0 - initial condition % tol - tolerance for adaptive step size % Outputs: % tout - time values % yout - solution values % ireject - number of rejected steps |
| % Coefficients | |||||||
| a | = | [ 0 | 0 | 0 | 0 | 0 | 0; |
| 1/98 | 0 | 0 | 0 | 0 | 0; | ||
| -1/98 | 5/49 | 0 | 0 | 0 | 0; | ||
| 169/1024 | -119/2048 | 357/2048 | 0 | 0 | 0; | ||
| -29/18 | 231/85 | -112/135 | 512/2295 | 0 | 0; | ||
| 11/270 | 2401/12240 | 2401/12960 | 512/6885 | 1/288 | 0]’; | ||
| b | = | [11/270, 2401/12240, 2401/12960, 512/6885, 1/288, 0]; | |||||
| bb | = | [53/270, -(343/2448), 6517/12960, -832/6885, -11/288, 1/10]; | |||||
| c | = | [0, 1/7, 3/7, 3/4, 1, 1]’; | |||||
| % Initialization t = t0; y = y0(:); s = length(c); g = zeros(length(y), s); |
| % Estimate initial step size f = fcn(y); pow = 1/7; h = tol^pow / max(max(abs(f)), 1e-2); hmax = (tfinal - t) / 5; hmin = (tfinal - t) / 2e6; h = min(hmax, max(h, hmin)); |
| % Preallocate output buffers (initial guess) max_steps = ceil((tfinal - t0) / hmin); tout = zeros(max_steps, 1); yout = zeros(max_steps, length(y)); tout(1) = t; yout(1, :) = y.’; step = 1; |
| % Initial second derivative g(:,1) = gcn(y); ireject = 0; |
| % Main integration loop while t < tfinal && h >= hmin if t + h > tfinal h = tfinal - t; end |
| % Compute g at intermediate stages for j = 2:s y_stage = y + c(j)*h*f + h^2 * g * a(:,j); g(:,j) = gcn(y_stage); end |
| % Error estimation (embedded method) delta = norm(h * g * (b - bb)’, inf)^(1.1666); |
| if delta <= tol % Accept step t = t + h; y = y + h * f + h^2 * g * b’; f = fcn(y); % next step’s f g(:,1) = g(:,s); % FSAL: reuse last g step = step + 1; tout(step) = t; yout(step, :) = y.’; else ireject = ireject + 1; end |
| % Adjust step size if delta ~= 0 h = min(hmax, 0.8 * h * (tol / delta)^pow); end end |
| % Trim unused preallocated space tout = tout(1:step); yout = yout(1:step, :); |
| % Warn if failed if t < tfinal warning(’Singularity likely. Integration stopped at t = %g.’, t); end end |
| >> xi=200; [tout, yout, ireject] = stdrk75(@(y) [-y(1)*(1+y(1))+y(2); ... xi*(y(1)^2-y(2))-2*y(2)], ... @(y) [y(1)+(3 + xi)*y(1)^2+2*y(1)^3-(xi + 3)*y(2)-2*y(1)*y(2); ... -(4*xi+xi^2)*y(1)^2-2*xi*y(1)^3+2*xi*y(1)*y(2)+(xi + 2)^2*y(2)], ... 0, 10*pi, [1 1]’, 1e-9); fprintf(’stages=%6.0f\n’, length(tout)*6 + ireject*5); fprintf(’max abs error=%9.2e\n’, ... max(max(abs(yout - [exp(-tout) exp(-2*tout)])))); |
| stages= 11073 max abs error= 7.72e-10 |
References
- Butcher, J.C. Numerical Methods for Ordinary Differential Equations; Wiley: Chichester, UK, 2008. [Google Scholar]
- Famelis, I.T.; Tsitouras, C. Symbolic derivation of order conditions for hybrid Numerov-type methods solving y″=f(x,y). J. Comput. Appl. Math. 2008, 218, 543–555. [Google Scholar] [CrossRef]
- Iserles, A. A First Course in the Numerical Analysis of Differential Equations; Cambridge University Press: Cambridge, UK, 2009. [Google Scholar]
- Simos, T.E.; Tsitouras, C. Evolutionary derivation of Runge–Kutta pairs for addressing inhomogeneous linear problems. Numer. Algorithms 2021, 87, 511–525. [Google Scholar] [CrossRef]
- Chan, R.P.K.; Tsai, A.Y.J. On explicit two-derivative Runge–Kutta methods. Numer. Algorithms 2010, 53, 171–194. [Google Scholar] [CrossRef]
- Tsitouras, C.; Papakostas, S.N. Cheap Error Estimation for Runge–Kutta Methods. SIAM J. Sci. Comput. 1999, 20, 2067–2088. [Google Scholar] [CrossRef]
- Abdulsalam, A.; Senu, N.; Majid, Z.A.; Asri, N.M.; Long, N. Adaptive multi-step Runge–Kutta–Nyström methods for general second-order ordinary differential equations. J. Comput. Appl. Math. 2023, 421, 114874. [Google Scholar] [CrossRef]
- Fekete, I.; Conde, S.; Shadid, J.N. Embedded pairs for optimal explicit strong stability preserving Runge–Kutta methods. J. Comput. Appl. Math. 2022, 401, 114325. [Google Scholar] [CrossRef]
- Hairer, E.; Nørsett, S.P.; Wanner, G. Solving Ordinary Differential Equations I: Nonstiff Problems; Springer: Berlin/Heidelberg, Germany, 1993. [Google Scholar]
- Xu, X.; Li, B. Semi-global stabilization of parabolic PDE–ODE systems with input saturation. Automatica 2025, 121, 111931. [Google Scholar] [CrossRef]
- Bo, Y.; Tian, D.; Liu, X.; Jin, Y.F. Discrete Maximum Principle and Energy Stability of the Compact Difference Scheme for Two-Dimensional Allen-Cahn Equation. J. Funct. Spaces 2022, 2022, 8522231. [Google Scholar] [CrossRef]
- Huang, Z.-Y.; Zheng, X.-Q.; Li, C.; Tan, E.L.; Chen, Z.-A.; Shi, L.-H. Piecewise Calculation Scheme for the Unconditionally Stable Chebyshev Finite-Difference Time-Domain Method. IEEE Trans. Microw. Theory Tech. 2025, 73, 4588–4596. [Google Scholar] [CrossRef]
- Wolfram Research, Inc. Mathematica, Version 13.3; Wolfram Research, Inc.: Champaign, IL, USA, 2023.
- Dormand, J.R.; Prince, P.J. A family of embedded Runge–Kutta formulae. J. Comput. Appl. Math. 1980, 6, 19–26. [Google Scholar] [CrossRef]
- The MathWorks, Inc. MATLAB, Version R2024b; The MathWorks, Inc.: Natick, MA, USA, 2024.
- Tsitouras, C. Explicit Runge–Kutta pairs appropriate for engineering applications. Appl. Math. Model. 2002, 26, 77–88. [Google Scholar] [CrossRef]
- Turaci, M.O.; Öziş, T. On explicit two-derivative two-step Runge–Kutta methods. Comput. Appl. Math. 2018, 37, 6920–6945. [Google Scholar] [CrossRef]
- Prothero, A.; Robinson, A. On the stability and accuracy of one-step methods for solving stiff systems of ordinary differential equations. Math. Comput. 1974, 28, 145–162. [Google Scholar] [CrossRef]
- Seinfeld, J.H.; Lapidus, L.; Hwang, M. Review of numerical integration techniques for stiff ordinary differential equations. Ind. Eng. Chem. Fundam. 1970, 9, 266–275. [Google Scholar] [CrossRef]
- Dekker, K.; Verwer, J.G. Stability of Runge–Kutta Methods for Stiff Nonlinear Differential Equations; North-Holland: Amsterdam, The Netherlands, 1984. [Google Scholar]







| n | Compositions with Parts | ||
|---|---|---|---|
| 3 | 0 | (empty sum) | 1 |
| 4 | 1 | 1 | 1 |
| 5 | 2 | 1 + 1, 2 | 2 |
| 6 | 3 | 1 + 1 + 1, 1 + 2, 2 + 1 | 3 |
| 7 | 4 | 1 + 1 + 1 + 1, 1 + 1 + 2, 1 + 2 + 1, 2 + 1 + 1, 2 + 2 | 5 |
| 8 | 5 | (8 compositions) | 8 |
| 0 | ||||||
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Alolyan, I.; Simos, T.E.; Tsitouras, C. High-Order Special Two-Derivative Runge–Kutta Pairs. Mathematics 2025, 13, 3676. https://doi.org/10.3390/math13223676
Alolyan I, Simos TE, Tsitouras C. High-Order Special Two-Derivative Runge–Kutta Pairs. Mathematics. 2025; 13(22):3676. https://doi.org/10.3390/math13223676
Chicago/Turabian StyleAlolyan, Ibraheem, Theodore E. Simos, and Charalampos Tsitouras. 2025. "High-Order Special Two-Derivative Runge–Kutta Pairs" Mathematics 13, no. 22: 3676. https://doi.org/10.3390/math13223676
APA StyleAlolyan, I., Simos, T. E., & Tsitouras, C. (2025). High-Order Special Two-Derivative Runge–Kutta Pairs. Mathematics, 13(22), 3676. https://doi.org/10.3390/math13223676


