Elsevier

Computer Aided Geometric Design

Volume 38, October 2015, Pages 40-50
Computer Aided Geometric Design

A rational cubic clipping method for computing real roots of a polynomial

https://doi.org/10.1016/j.cagd.2015.08.002Get rights and content

Highlights

  • Use two rational cubics as bounding polynomials.

  • Achieve a convergence rate 7 for a single root.

  • It can achieve linear computational complexity O(n) for improved cases.

Abstract

Many problems in computer aided geometric design and computer graphics can be turned into a root-finding problem of a polynomial equation. Among various solutions, clipping methods based on the Bernstein–Bézier form usually have good numerical stability. A traditional clipping method using polynomials of degree r can achieve a convergence rate of r+1 for a single root. It utilizes two polynomials of degree r to bound the given polynomial f(t) of degree n, where r=2,3, and the roots of the bounding polynomials are used for clipping off the subintervals containing no roots of f(t). This paper presents a rational cubic clipping method for finding the roots of a polynomial f(t) within an interval. The bounding rational cubics can achieve an approximation order of 7 and the corresponding convergence rate for finding a single root is also 7. In addition, differently from the traditional cubic clipping method solving the two bounding polynomials in O(n2), the new method directly constructs the two rational cubics in O(n) which can be used for bounding f(t) in many cases. Some examples are provided to show the efficiency, the approximation effect and the convergence rate of the new method.

Introduction

Many problems in computer aided geometric design and computer graphics can be turned into a root-finding problem of polynomial equations, such as curve/surface intersection (Efremov et al., 2005, Liu et al., 2009, Nishita et al., 1990, Patrikalakis and Maekawa, 2002), point projection (Chen et al., 2008), collision detection (Choi et al., 2006, Lin and Gottschalk, 1998), and bisectors/medial axes computation (Elber and Kim, 2001). In principle, a system of polynomial equations of multiple variables can be turned into a univariate polynomial equation by using the resultant theory. This paper discusses the root-finding problem of a univariate polynomial equation within an interval.

Many references turn the given polynomial f(t) into its power series, and a collection of related references can be found in McNamee (1993–2002), Isaacson and Keller (1966), Mourrain and Pavone (2005), Reuter et al. (2007), Rouillier and Zimmermann (2004). The Bernstein–Bézier form of f(t) has a good numerical stability with respect to perturbations of the coefficients (Farouki et al., 1987, Farouki and Goodman, 1996, Jüttler, 1998). Several clipping methods based on the Bernstein–Bézier form are developed (Bartoň and Jüttler, 2007, Liu et al., 2009, Morken and Reimers, 2007, Sederberg and Nishita, 1990). Note that the number of zeros of a Bézier function is less or equal to that of its control polygon. The method in Morken and Reimers (2007) utilizes the corresponding control polygon to approximation f(t), in which the zeros of the control polygon are used to approximate the zeros of f(t) from one side. The method in Morken and Reimers (2007) achieves a convergence rate of 2 for a simple root. In principle, a B-spline (or Bézier) curve is bounded by the convex hull of its control polygon, the corresponding roots are then bounded by the roots of the convex hull. The corresponding approximation order of the approach using convex hull is 2 (Schulz, 2009). Comparing with the method in Morken and Reimers (2007), the r-clipping method in Bartoň and Jüttler (2007), Liu et al. (2009) bounds the zeros of f(t) by using the zeros of two bounding polynomials of degree r, which achieves a higher approximation order r+1, where r=2,3.

In principle, one can also use rational polynomials to bound f(t) for root finding. A rational quadratic polynomial has five free variables, which can achieve an approximation order 5 to f(t). If two rational quadratics are utilized to bound f(t), one can achieve a convergence rate of 5 for a simple root, which is much higher than that of 3 when using a quadratic clipping polynomial. However, in some cases when the curve (t,f(t)) is not convex within [a,b], the denominators of the rational quadratic polynomials for bounding f(t) may have one or more zeros within [a,b], which leads to a bad approximation effect between f(t) and its bounding polynomials.

A rational cubic polynomial, on the other hand, can approximate f(t) in a much better way than that of a rational quadratic polynomial, even in case that (t,f(t)) is not convex within the given interval [a,b]. This paper presents a rational cubic clipping method which utilizes two rational cubic polynomials to bound f(t) for root-finding. The bounding rational cubics achieve the approximation order 7 to f(t) and the corresponding rational cubic clipping method can achieve a convergence rate of 7 for a simple root, which is much higher than that of 4 of previous cubic clipping methods. In addition, the method proposed in this paper directly constructs two rational cubic polynomials interpolating four positions and three derivatives of f(t), which can bound f(t) in many cases and it leads to a much higher computation efficiency. Some numerical examples are provided to show both higher convergence rate and higher computation efficiency of the new method.

The remainder of this paper is organized as follows. Section 2 provides an outline of clipping methods. Section 3 illustrates the rational cubic clipping method for finding two bounding rational cubics in details. Numerical examples and some further discussions are provided in Section 4, and the conclusions are drawn at the end of this paper.

Section snippets

Outline of the clipping methods

Suppose that f(t), t[a,b], is the given polynomial of degree n. The basic idea of the clipping methods is to find two bounding polynomials, and then to clip off the subintervals containing no roots of f(t) by using the roots of the bounding polynomials. The clipping process continues until the lengths of the remaining subintervals are less than a given tolerance. Finally, the middle points of the remaining subintervals are recorded as the roots of f(t).

The numerical convergence rate of a

Finding two rational cubics for bounding f(t)

For the sake of convenience, leth=ba,tj=a+j3h,j=0,1,2,3,dj=f(tj)andvj=f(tj),j=0,1,2,3,g1(t)=(tt0)2(tt1)2(tt2)2(tt3),g2(t)=(tt0)(tt1)2(tt2)2(tt3)2. Let κ=sup0u1|(u0)2(u1/3)2(u2/3)2(u1)|0.00149921. By substituting t=a+uh, we have thatκh7g1(a+uh)=(u0)2(u1/3)2(u2/3)2(u1)h70,0g2(a+uh)=(u0)(u1/3)2(u2/3)2(u1)2h7κh7. We also introduce Theorem 3.5.1 in page 67, Chapter 3.5 of Davis (1975) as follows.

Theorem 2

Let w0, w1,, wr be r+1 distinct points in [a,b], and n0,, nr be r+1

Discussions and numerical examples

For the sake of convenience, let M3, Mr and MI be the cubic clipping method in Liu et al. (2009), the rational cubic clipping method in this paper and the improved method in Remark 1, respectively. If there are many roots of f(t) within [a,b], both of M3 and Mr may converge very slowly. In this paper, at the beginning, if there are four or more zeros of the control polygon of f(t) (in Bézier form), or if the first clipping step fails to clip the given interval, we utilize these zeros to divide [

Conclusions

This paper presents a rational cubic clipping method (denoted as Mr) for finding the roots of a polynomial f(t) within an interval, which can achieve a convergence rate of 7 for a single root by using rational cubic polynomials. Different from previous clipping methods in Bartoň and Jüttler (2007), Liu et al. (2009) for computing two bounding polynomials in O(n2) time, Mr directly constructs two rational cubic polynomials, which can be used to bound f(t) in many cases and leads to a

Acknowledgements

This research was partially supported by the Research Grants Council of Hong Kong Special Administrative Region, China (SRG #7004245), Defense Industrial Technology Development Program and the National Science Foundation of China (61370218, 61379072).

References (21)

There are more references available in the full text version of this article.

Cited by (8)

  • Revisiting the problem of zeros of univariate scalar Béziers

    2016, Computer Aided Geometric Design
    Citation Excerpt :

    A hybrid of the convex hull, sharp bounds (Nairn et al., 2006) and quasi-interpolating bounds (Zhang and Wang, 2006) was used to refine the intervals. Recently, in 2015, Chen et al. (2015) improved the convergence rates achieved by Liu et al. (2009) by bounding the polynomial of interest by a pair of rational cubic polynomials. Our approach, as explained in Section 1.1 uses the fact that polynomials represented in the Bernstein–Bézier form admit efficient algorithms for polynomial multiplication and division (Buse and Goldman, 2007; Goldman, 2002).

View all citing articles on Scopus

This paper has been recommended for acceptance by Michael Floater.

View full text