Private API
Note that the following methods are considered private methods, and changes in their behavior are not considered breaking changes.
BasicBSpline.r_nomial
— FunctionCalculate $r$-nomial coefficient
r_nomial(n, k, r)
\[(1+x+\cdots+x^r)^n = \sum_{k} a_{n,k,r} x^k\]
BasicBSpline._vec
— FunctionConvert AbstractKnotVector
to AbstractVector
BasicBSpline._lower
— FunctionInternal methods for obtaining a B-spline space with one degree lower.
\[\begin{aligned} \mathcal{P}[p,k] &\mapsto \mathcal{P}[p-1,k] \\ D^r\mathcal{P}[p,k] &\mapsto D^{r-1}\mathcal{P}[p-1,k] \end{aligned}\]
BasicBSpline._changebasis_R
— FunctionReturn a coefficient matrix A which satisfy
\[B_{(i,p,k)} = \sum_{j}A_{i,j}B_{(j,p',k')}\]
Assumption:
- $P ⊆ P^{\prime}$
BasicBSpline._changebasis_I
— FunctionReturn a coefficient matrix A which satisfy
\[B_{(i,p,k)} = \sum_{j}A_{i,j}B_{(j,p',k')}\]
Assumption:
- $P ⊑ P^{\prime}$
BasicBSpline._changebasis_sim
— FunctionReturn a coefficient matrix A which satisfy
\[B_{(i,p_1,k_1)} = \sum_{j}A_{i,j}B_{(j,p_2,k_2)}\]
Assumption:
- $P_1 ≃ P_2$
BasicBSplineFitting.innerproduct_R
— FunctionCalculate a matrix
\[A_{ij}=\int_{\mathbb{R}} B_{(i,p,k)}(t) B_{(j,p,k)}(t) dt\]
BasicBSplineFitting.innerproduct_I
— FunctionCalculate a matrix
\[A_{ij}=\int_{I} B_{(i,p,k)}(t) B_{(j,p,k)}(t) dt\]