FractionalCalculus.jl provides support for fractional calculus computing.
If you have already installed Julia, you can install FractionalCalculus.jl in REPL using Julia package manager:
pkg> add FractionalCalculus
To compute the fractional derivative in a specific point, for example, compute
julia> fracdiff(x->x, 0.2, 1, 0.0001, RLDiffL1())
1.0736712740308347
This will return the estimated value with high precision.
To compute the fractional integral in a specific point, for example, compute the semi integral of
julia> fracint(x->x, 0.5, 1, 0.0001, RLIntApprox())
0.7522525439593486
This will return the estimated value with high precision.
Current Algorithms
โโโ FracDiffAlg
โ โโโ Caputo
| | โโโ CaputoDirect
| | โโโ CaputoTrap
| | โโโ CaputoDiethelm
| | โโโ CaputoHighPrecision
| | โโโ CaputoL1
| | โโโ CaputoL2
| | โโโ CaputoHighOrder
| |
โ โโโ Grรผnwald Letnikov
| | โโโ GLDirect
| | โโโ GLMultiplicativeAdditive
| | โโโ GLLagrangeThreePointInterp
| | โโโ GLHighPrecision
| |
| โโโ Riemann Liouville
| | โโโ RLDiffL1
| | โโโ RLDiffL2
| | โโโ RLDiffL2C
| | โโโ RLLinearSplineInterp
| | โโโ RLDiffMatrix
| | โโโ RLG1
| | โโโ RLD
| |
| โโโ Hadamard
| | โโโ HadamardLRect
| | โโโ HadamardRRect
| | โโโ HadamardTrap
| |
| โโโ Riesz
| | โโโ RieszSymmetric
| | โโโ RieszOrtigueira
| |
| โโโ Caputo-Fabrizio
| | โโโ CaputoFabrizioAS
| |
| โโโ Atanagana Baleanu
| โโโ AtanganaSeda
|
โโโ FracIntAlg
โโโ Riemann Liouville
| โโโ RLDirect
| โโโ RLPiecewise
| โโโ RLLinearInterp
| โโโ RLIntApprox
| โโโ RLIntMatrix
| โโโ RLIntSimpson
| โโโ RLIntTrapezoidal
| โโโ RLIntRectangular
| โโโ RLIntCubicSplineInterp
|
โโโ Hadamard
โโโ HadamardMat
For detailed usage, please refer to our manual.
Let's see examples here:
Compute the semi-derivative of
We can see that computing retains high precisionโฌ๏ธ.
Compute different order derivative of
Also different order derivative of
And also different order integral of
Thanks to SymbolicUtils.jl, FractionalCalculus.jl can do symbolic fractional differentiation and integration now!!
julia> using FractionalCalculus, SymbolicUtils
julia> @syms x
julia> semidiff(log(x))
log(4x) / sqrt(ฯx)
julia> semiint(x^4)
0.45851597901024005(x^4.5)
Right now, FractionalCalculus.jl has only supports for little algorithms:
Fractional Derivative:
- Caputo fractional derivative
- Grunwald-Letnikov fractional derivative
- Riemann-Liouville fractional derivative
- Riesz fractional derivative
- Hadamard fractional derivative
- Caputo-Fabrizio fractional derivative
- Atangana-Baleanu fractional derivative
- Marchaud fractional derivative
- Weyl fractional derivative
- ......
Fractional Integral:
- Riemann-Liouville fractional integral
- Hadamard fractional integral
- Atangana-Baleanu fractional integral
- ......
FractionalCalculus.jl is built upon the hard work of many scientific researchers, I sincerely appreciate what they have done to help the development of science and technology.
If you are interested in Fractional Calculus and Julia, welcome to raise an issue or file a Pull Request!!