FractionalCalculus.jl provides support for fractional calculus computing.
If you have already install 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, RLDiffApprox())
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
| | ├── CaputoPiecewise
| | ├── CaputoDiethelm
| | ├── CaputoHighPrecision
| | └── CaputoHighOrder
| |
│ ├── Grünwald Letnikov
| | ├── GLDirect
| | ├── GLMultiplicativeAdditive
| | ├── GLLagrangeThreePointInterp
| | └── GLHighPrecision
| |
| ├── Riemann Liouville
| | ├── RLDiffApprox
| | ├── 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 the 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!!