# A note about fractional derivatives

Fractional derivatives (a derivative with order $\alpha$ such as $d^{\alpha}/dt^{\alpha}$ where $\alpha$ is a real or complex value) are used in many fields of science and in particular in modeling the behavior of visco-elastic materials i.e defining stress ($\sigma$) - strain ($\varepsilon$) relations. Indeed, a fractional derivative provides an additional degree of freedom without adding a new element to simple conventional visco-elastic models like e.g. the ones by Maxwell, Kelvin & Voigt or Zener.

Hooke model makes use of a single elastic spring element.
$\sigma = E \varepsilon$

Stokes model makes use of a single dashpot element.
$\sigma = \eta d\varepsilon/dt$

Maxwell model cannot describe creep or recovery.
$1/E \times d\sigma/dt + \sigma/\eta = d\varepsilon/dt$

Kelvin–Voigt model cannot describe stress relaxation.
$\sigma = E\varepsilon + \eta d\varepsilon/dt$

Zener model is the simplest model which can describe both phenomena.
$\sigma + \eta/E_2 \times d\sigma/dt$
$= E_1\varepsilon + \eta(E_1+E_2)/E_2 \times d\varepsilon/dt$

In a thread following a tweet by Gabriel Peyré, I discovered an original way of using (and further familiarize oneself with) fractional derivatives, illlustrated by Dillon Berger (and further explained by Gen Kuroki - in Japanese) : to smooth the animation between powers of the Taylor series of a function.

The Taylor series of an infinitely differentiable function $f$ around the real (or complex) value $a$ is : $f(x) = f(a) + \displaystyle\frac{f'(a)}{1!}(x-a) + \displaystyle\frac{f''(a)}{2!}(x-a)^2 + \displaystyle\frac{f'''(a)}{3!}(x-a)^3 + O(x^4)$

As an example, the Taylor series expansion of $\sin(x)$, around $x=0$ (a.k.a. the MacLaurin series), is :

$\sin(x) = x - \frac{x^3}{3!} + \frac{x^5}{5!} - \frac{x^7}{7!} + O(x^9)$ or $\sin(x) = x - \frac{x^3}{\Gamma(3+1)} + \frac{x^5}{\Gamma(5+1)} - \frac{x^7}{\Gamma(7+1)} + O(x^9)$ where $\Gamma$ denotes the Gamma function i.e., in short, an extension of the factorial function ($!$) to real (and even to complex) numbers.

Below, use the + and - buttons to increase or decrease the power expansion for $\sin(x)$ Taylor series. Note that the terms with even numbers for the powers of $x$ are not used in the equation above and thus they change nothing to the approximation of $\sin(x)$ :
$\sin(x)$
$\simeq$
$x$
To animate the transition between powers with fractional derivatives, the trick is to use the Taylor series expansion of exponential and its relation with $\sin$ : $e^x = \frac{x^0}{0!} + \frac{x^1}{1!} + \frac{x^2}{2!} + \frac{x^3}{3!} + O(x^4)$ and $\sin(x) = \textrm{Imag}(e^{ix})$ The Taylor series for $e$ can be written as : $\sum_{k=0}^n \frac{(ix)^k}{k!} = e^{ix} - \sum_{k=n+1}^\infty \frac{(ix)^k}{k!}$ or $\sum_{k=0}^n \frac{(it)^k}{k!} = e^{ix} - \sum_{\nu=0}^\infty \frac{(ix)^{n+\nu}}{\Gamma(n+\nu+1)}$ where $\nu$ can take any real values (not just integer values) and $\sin$ is recovered as the imaginary part of $e$.
Below is the animation for $\sin(x)$ with a step of 0.2 for $\nu$ between two plots. The value of the maximum power is

The Gamma function implemented in this page is an approximation proposed by Gergo Nemes (see the wikipedia page on Stirling's approximation). It was reported as a simpler and faster but not as much accurate as Lanczos approximation by Peter Olson in his answer to a stackoverflow question on the Gamma function implementation in Javascript.