Math 2.0

Numerical analysis Definition

de Boor's algorithm

Builds on B-splineCox–de Boor recursionConvex combination

Definition

Let k≥1k \ge 1 be an order and let (ti)(t_i) be a nondecreasing knot sequence. Let s=∑iciBi,ks = \sum_i c_i B_{i,k}, where Bi,kB_{i,k} are the B-splines of order kk and the cic_i are real numbers or points of ℝd\R^d. Let xx be a point with tj≤x<tj+1t_j \le x < t_{j+1}. De Boor's algorithm computes s(x)s(x) as follows.

  1. Set ci[0]=cic_i^{[0]} = c_i for i=j−k+1,…,ji = j - k + 1, \dots, j.
  2. For r=1,…,k−1r = 1, \dots, k - 1 and i=j−k+1+r,…,ji = j - k + 1 + r, \dots, j, set αi,r=x−titi+k−r−ti,ci[r]=(1−αi,r) ci−1[r−1]+αi,r ci[r−1].\alpha_{i,r} = \frac{x - t_i}{t_{i+k-r} - t_i}, \qquad c_i^{[r]} = (1 - \alpha_{i,r})\, c_{i-1}^{[r-1]} + \alpha_{i,r}\, c_i^{[r-1]}.
  3. Return cj[k−1]c_j^{[k-1]}, which equals s(x)s(x).

Remarks

The denominators are positive, since ti≤tj<tj+1≤ti+k−rt_i \le t_j < t_{j+1} \le t_{i+k-r} in the stated range, and αi,r∈[0,1]\alpha_{i,r} \in [0, 1], so each step is a convex combination. Correctness follows from the Cox–de Boor recursion: one step rewrites ∑iciBi,k(x)\sum_i c_i B_{i,k}(x) as ∑ici[1]Bi,k−1(x)\sum_i c_i^{[1]} B_{i,k-1}(x), and at order 11 only Bj,1(x)=1B_{j,1}(x) = 1 survives. Example: k=2k = 2, knots t0=0,t1=1,t2=2t_0 = 0, t_1 = 1, t_2 = 2, x=1/2x = 1/2, so j=0j = 0; then α0,1=1/2\alpha_{0,1} = 1/2 and s(1/2)=(c−1+c0)/2s(1/2) = (c_{-1} + c_0)/2, which is the piecewise linear interpolant at the midpoint. Non-example: for xx outside [tj,tj+1)[t_j, t_{j+1}) the same formulas with this jj do not give s(x)s(x) in general, because other B-splines are active there. The cost is O(k2)O(k^2) operations per point.

Reading path

To understand this page from the ground up, read these 5 pages in order. The foundations come first.

Show the path as a graph
Each page uses the pages above it. The colour of the bar on a box shows how strong the evidence is, and the box also gives it as text. The list has the same pages.
  • no evidence level
  1. B-spline concept
  2. Convex combination concept
  3. Divided differences concept
  4. Cox–de Boor recursion statement
  5. de Boor's algorithm definition

Further reading

  1. Web https://en.wikipedia.org/wiki/De_Boor%27s_algorithm
About this page
Tag99SCT623E8
URIm2://99SCT623E8
Kinddefinition
WritingW0 stub
MSC65D07, 41A15, 65D17
Definesde Boor's algorithm
UsesB-spline, Cox–de Boor recursion, Convex combination

Markdown · JSON · Edit on GitHub

What this page needs for W1

  • an inventory row: the row of the inventory that the node accounts for (0 of 1)
  • a source with a locator (0 of 1)

The writing levels say how complete the text of a page is. They do not measure its truth.

What links here

No page links to this page yet.