I have asked this question before on MSE but received no answer at all. So I assume that it is proper to ask it here. I am not a mathematician so my language may not be too precise, please correct me wherever it is necessary.

Suppose that a function $f:[0,a]\to\Bbb{R}$ is given. We are interested to find its Bessel-Expansion and study the convergence of this expansion **specially at the end points** $r=0$ and $r=a$.

Consider the following singular Sturm-Liouville systems for zero and first order Bessel functions

\begin{align} A.\,&\frac{d}{dr}\left[r\frac{dR}{dr}\right]+\lambda r R=0 & B.\,&\frac{d}{dr}\left[r\frac{dR}{dr}\right]+\left[\lambda r + \frac{1}{r}\right]R=0\\ &R(0)\lt\infty & &R(0)\lt\infty\\ &\frac{dR}{dr}(a)=0 & &R(a)=0 \tag{1} \end{align}

I know that the eigen-functions of systems $A$ and $B$ can form a basis for all peice-wise continuous functions with peice-wise continuous derivatives (which I denote by $C^1[0,a]$). Then we can construct the Bessel expansions corresponding to systems $A$ and $B$ as

\begin{align} S(r):=\sum_{i=1}^{\infty}C_iR(\lambda_i,r) \tag{2} \end{align}

I know that $S(r)$ converges to $\frac{f(r^+)+f(r^-)}{2}$ at the points in the interval $(0,a)$. Consequently, $S$ will converge to $f$ at the points of coninuity of $f$ inside the aforementioned interval but I don't know what happens at the end points. Here is my question

What are the necessary, sufficient, necessary and sufficient conditions that $S$ converges to $f$ at $r=0$ and $r=a$?

Suppose we answered question $1$. Can this be generalized to any Sturm-Liouville expansions like Fourier, Chebyshev, Hermit, etc?

This animation shows the convergence of the eigen-function expansion of system $A$ to the modified Bessel function of order zero $f(r)=I_0(r)$. In this case convergence at the end points is achieved although $f(r)$ does not satisfy the second BC mentioned in Sturm-Liouville system A.

and this one shows the convergence of the eigen-function expansion of system $B$ to $f(r)=I_0(r)$. It seems that the series does not converge to the function at the end points in this case and $f(r)$ is not satistying the second BC of Sturm-Liouville system B.

Here is the mathematica code for making the animations.

```
ClearAll["Global`*"]
f[r_] := BesselI[0, r]
a = 1;
Subscript[N, max] = 40;
A[n_] = Simplify[\!\(
\*SubsuperscriptBox[\(\[Integral]\), \(0\), \(a\)]\(r*f[r]*
BesselJ[0, \[Alpha][n]*r] \[DifferentialD]r\)\)/\!\(
\*SubsuperscriptBox[\(\[Integral]\), \(0\), \(a\)]\(r*
\*SuperscriptBox[\(BesselJ[
0, \[Alpha][n]*r]\), \(2\)] \[DifferentialD]r\)\),
Assumptions -> {BesselJ[1, \[Alpha][n]*a] == 0}]
(2 BesselI[1, 1])/(BesselJ[0, \[Alpha][n]] (1 + \[Alpha][n]^2))
Eig = Table[{i, N[BesselJZero[1, i]/a]}, {i, 1, Subscript[N, max]}];
Eig = Prepend[Eig, {0, 0}];
(\[Alpha][#] = #2) & @@@ Eig;
BesselSeries[r_, n_] := \!\(
\*SubsuperscriptBox[\(\[Sum]\), \(i = 0\), \(n\)]\(A[i]*
BesselJ[0, \[Alpha][i]*r]\)\)
ConvAnim =
Table[Plot[Evaluate[{f[r], BesselSeries[r, n]}], {r, 0, a},
PlotRange -> {0.9*f[0], 1.1*f[a]}, ImageSize -> Large,
AspectRatio -> Automatic], {n, 1, Subscript[N, max]}];
(*Export["Convergence.gif",ConvAnim,"DisplayDurations"\[Rule]{0.25}]*)
```