Software
Software for Fractional Differential Equations and related problems:
A tutorial on solving fractional differential equations (and Matlab codes)
Matlab ml.m code: evaluation of the Mittag-Leffler function with 1, 2 and 3 parameters (the latter case is the Prabhakar function). The code is based on the paper: R.Garrappa, "Numerical evaluation of two and three parameter Mittag-Leffler functions", SIAM Journal on Numerical Analysis 2015, 53(3), 1350-1369. Updated list of various versions of this code:
- Matlab ml.m code by Roberto Garrappa
- R package for Mittag-Leffler distriibutions, thanks to Peter Straka
- Fortran code, thanks to Tran Quoc Viet
- Stata/Mata implemantation, thanks to David Roodman
Matlab ml_matrix.m code: evaluation of the Mittag-Leffler function with matrix arguments. The algorithm is described in the paper: R.Garrappa, M.Popolizio, "Computing the matrix Mittag-Leffler function with applications to fractional calculus", Journal of Scientific Computing, doi: https://doi.org/10.1007/s10915-018-0699-5 [Read it]
FLMM2 Matlab code: three implicit fractional linear multistep methods of the second order for numerically solving fractional differential equations. For details see the paper:
R.Garrappa, Trapezoidal methods for fractional differential equations: theoretical and computational aspects, Mathematics and Computers in Simulation, 2015, 110, 96-112
doi: 10.1016/j.matcom.2013.09.012 [Preprint]
FDE12 Matlab code: a code for numerically solving fractional differential equations. For details see the papers:
R.Garrappa, On linear stability of predictor-corrector algorithms for fractional differential equations, International Journal of Computer Mathematics, 2010, 87(10), 2281-2290
doi: 10.1080/00207160802624331
Matlab rouitne for solving systems or multi-order systems (MOSs) of fractional differential equations (FDEs). MOS are systems of FDEs in which each equation has a different fracrional order. For a detailed description see the paper:
R.Garrappa, Numerical Solution of Fractional Differential Equations: A Survey and a Software Tutorial, Mathematics 2018, 6(2), 16
doi:10.3390/math6020016 (download pdf file)
- FDE_PI1_Ex.m - Explicit Product-Integration of rectanguar type
- FDE_PI1_Im.m - Implicit Product-Integration of rectanguar type
- FDE_PI2_Im.m - Implicit Product-Integration of trapezoidal type
- FDE_PI12_PC.m - Product-Integration with predictor-corrector
Matlab rouitne for solving linear multi-term fractional differential equations of systems of linear multi-term fractional differential equations with a possible nonlinear source term. For a detailed description see the paper:
R.Garrappa, Numerical Solution of Fractional Differential Equations: A Survey and a Software Tutorial, Mathematics 2018, 6(2), 16
doi:10.3390/math6020016 (download pdf file)
- MT_FDE_PI1_Ex.m - Explicit Product-Integration of rectanguar type
- MT_FDE_PI1_Im.m - Implicit Product-Integration of rectanguar type
- MT_FDE_PI2_Im.m - Implicit Product-Integration of trapezoidal type
- MT_FDE_PI12_PC.m - Product-Integration with predictor-corrector
In most of the codes for solving fractional differential equations, the discrete convolutions are evaluated by means of a FFT algorithm which keeps the computational cost proportional to N*log(N)^2 instead of N^2 as in standard implementation (N is the number of time-points in which the solution is evaluated). This algorithm has been proposed in