Description
Let $\vec{U}=\{u_0,u_1,\ldots,u_m\}$ denotes a non-decreasing sequence of real numbers, i.e, $u_i\leq u_{i+1} \quad i=0,1,2\ldots m-1$.
and the $i$-th B-spline basis function of $p$-degree, denoted by $N_{i,p}(u)$, is defined as below:
$$N_{i,0}(u)= \begin{cases} 1 & u_i\leq u<u_{i+1}\\ 0 & otherwise \end{cases} $$ $$N_{i,p}(u)=\frac{u-u_i}{u_{i+p}-u_i}N_{i,p-1}(u)+\frac{u_{i+p+1}-u}{u_{i+p+1}-u_{i+1}}N_{i+1,p-1}(u) $$
Aim
Now I want to solve the maximal value point of the $N_{i,p}(u)$, the following steps is my initial trial.
For instance, now I have a knots vector $U=\{0, 0, 0, 0, 1/5, 1/4, 1/3, 1/2, 1, 1, 1, 1\}$. Namely, $m=11$ and I assume that the degree of the basis function is $3$.
- How to solve the maximal value point of the $N_{3,3}(u)$?
Step 1: Calculate the mathematical expression of $N_{3,3}(u)$
To achieve the $N_{3,3}(u)$ expression, I draw the following schematic diagram

Then I ultilize the recursive formula to calculate the mathematical expression of $N_{3,3}(u)$ by hand.
$$ N_{3,3}(x)= \begin{cases} 60 x^3 & 0\leq x<\frac{1}{5} \\ -10 \left(119 x^3-75 x^2+15 x-1\right) & \frac{1}{5}\leq x<\frac{1}{4} \\ 10 \left(73 x^3-69 x^2+21 x-2\right) & \frac{1}{4}\leq x<\frac{1}{3} \\ -10 \left(8 x^3-12 x^2+6 x-1\right) & \frac{1}{3}\leq x\leq \frac{1}{2} \\ \end{cases} $$
Step 2: Differentiate the $N_{3,3}(x)$ expression with respect to the varible $x$ $$ \frac{d}{dx}N_{3,3}(x)= \begin{cases} 180 x^2 & 0\leq x<\frac{1}{5} \\ -10 \left(357 x^2-150 x+15\right) & \frac{1}{5}\leq x<\frac{1}{4} \\ 10 \left(219 x^2-138 x+21\right) & \frac{1}{4}\leq x<\frac{1}{3} \\ -10 \left(24 x^2-24 x+6\right) & \frac{1}{3}\leq x\leq \frac{1}{2} \\ \end{cases} $$
Step 3: Set the $N'_{3,3}(x)$ to $0$. Namely, $$ \begin{cases} 180 x^2=0 & 0\leq x<\frac{1}{5} \\ -10 \left(357 x^2-150 x+15\right)=0 & \frac{1}{5}\leq x<\frac{1}{4} \\ 10 \left(219 x^2-138 x+21\right)=0 & \frac{1}{4}\leq x<\frac{1}{3} \\ -10 \left(24 x^2-24 x+6\right)=0 & \frac{1}{3}\leq x\leq \frac{1}{2} \\ \end{cases} $$ $$ \Rightarrow \quad \left( \begin{array}{c} x_1=0 \\ x_2=\frac{1}{119} \left(25-\sqrt{30}\right) \\ x_3=\frac{1}{73} \left(23-3 \sqrt{2}\right) \\ x_4=\frac{1}{2} \\ \end{array} \right) $$
Step 4: Compare to the value of $N_{3,3}(x_1),N_{3,3}(x_2),N_{3,3}(x_3)$ and $N_{3,3}(x_4)$
By the calculation, I discovered that the maximal value point is
$$x_3=\frac{1}{73} \left(23-3 \sqrt{2}\right)$$
QUESTION
- However, I think my initial trial is very
complicatedand verytime-consuming. I would like to know is there asimple/elegant methodto solve this question. Because in my actual work, I need to calculateall the maximal value pointof $N_{i,p}(u)$ where, $i \in [0, m-n-1]$. Thanks a lot sincerely!
B-spline basis functions are piecewise polynomials, so this is a problem of finding the maximum value of a polynomial. There is nothing special about the polynomials that occur in b-spline basis functions. Or, saying it another way, every polynomial will show up somewhere as part of some b-spline basis function, so there can be no special tricks for finding their maxima.
For cubic b-splines, you can find the maxima by solving quadratics, as you did.
For higher degrees, numerical methods will be needed. You can take advantage of the fact that a b-spline basis function always has a single maximum. And this maximum will always occur on the middle segment of the support (for even degree splines) or on one of the two middle segments (for odd degree splines), so no point doing any analysis of the other segments.