Introduction to the project
Introduction
About me
My name is Michele Ginesi, I obtained a Bachelor's degree in Applied Mathematics in Verona, Italy. Now I am getting a Master degree in Mathematics in the same university.
I was selected to partecipate to the Google Summer of Code under GNU Octave for the project
Make specfuns special again.
About the project
Special functions are an interesting and important topic in Mathematics, and so it is fundamental to have a way to compute them in an accurate way.
Some examples of special functions (whith some important application of the same) are:

Gamma function $\Gamma$. This is one of the most important: it can
be viewed as the extension of the factorial function ($\Gamma(n)=(n1)!$, for $n\in\mathbb{N}$) and it is a component in various distribution functions in probability theory.

Beta function $B$. This was the first known Scattering amplitude in String theory.

Bessel functions. These are the canonical solutions $u(r)$ of the Bessel's differential equation
$$r^2\frac{d^2u}{dr^2}+r\frac{du}{dr}+(r^2\alpha^2)u=0 $$
for any complex number $\alpha$. At a first approach may seems that they are an end in themselves, but actually the Bessel equation describes the radial component of the two dimensional wave equation ($u_{tt}c^2\Delta u = 0$) applied on a disc.
The most common strategies used to approximate special functions are
Taylor series and
continued fractions, sometimes
asymptotic series. Some particular functions can be implemented via recurrence formula or other type relations with other functions (for example, $B(z,w) = \Gamma(z)\Gamma(w)/\Gamma(z+w)$).
This project will be divided into three main parts:

Fix the already known bugs related to special functions (e.g. #48316, #47800, #48036).

When the known bugs will be fixed, I will proceed to add new tests to make sure that all the functions are accurate.

Fix the new problems/bugs that, eventually, will be found during the second phase.
The main reference for this work will be
Handbook of Mathematical Functions by Irene Stegun and Milton Abramowitz which contains all the functions I will work on completed with (almost) all the expansions that are needed to implement them; and
Handbook of Continued Fractions for Special Functions by Annie Cuyt, Vigdis Brevik Petersen, Brigitte Verdonk, Haakon Waadeland and William B. Jones.
To test the functions I will use, in addition to the Handbook of Mathematical Functions,
Sage and the Octave symbolic package to get a reference value.
Here you can find my repository on which I will work.