{
  "aliases": null,
  "backlinks": [
    {
      "field": "uses",
      "target": "5F76XA1ABC"
    }
  ],
  "body": "\n## Statement\n\nLet $f$ be a real function that is three times continuously differentiable on an open interval $I$, and let $r \\in I$ satisfy $f(r) = 0$ and $f'(r) \\ne 0$.\nGiven three points $x_{n-2}, x_{n-1}, x_n$ whose values $f_k = f(x_k)$ are pairwise distinct, *inverse quadratic interpolation* defines\n$$x_{n+1} = \\frac{f_{n-1} f_n \\, x_{n-2}}{(f_{n-2} - f_{n-1})(f_{n-2} - f_n)} + \\frac{f_{n-2} f_n \\, x_{n-1}}{(f_{n-1} - f_{n-2})(f_{n-1} - f_n)} + \\frac{f_{n-2} f_{n-1} \\, x_n}{(f_n - f_{n-2})(f_n - f_{n-1})}.$$\nThen there is $\\delta \u003e 0$ with the following property.\nFor all starting points $x_0, x_1, x_2$ within $\\delta$ of $r$ for which the iteration is defined, the iterates [[converge|YWZQC5E54B]] to $r$ with order $q \\approx 1.839$.\nHere $q$ is the real root of $q^3 = q^2 + q + 1$.\n\n## Remarks\n\nThe new point is the value at $y = 0$ of the [[Lagrange interpolation|237KR6FRCK]] polynomial of degree at most $2$ through the points $(f_k, x_k)$.\nThis polynomial approximates the [[inverse function|0J2WAR83WP]] of $f$ near $r$, so its value at $0$ approximates $r = f^{-1}(0)$.\nThe error analysis gives $e_{n+1} \\approx C e_n e_{n-1} e_{n-2}$ for the errors $e_k = x_k - r$, which leads to the stated order.\nInterpolating $x$ as a function of $y$ avoids solving a quadratic equation, unlike Muller's method.\nThe method breaks down when two of the values $f_k$ coincide, and it can diverge from poor starting points.\nFor this reason it is used inside safeguarded methods such as Brent's method.\nWith two points instead of three, the same idea gives the [[secant method|9ZC177PVPC]].\n\n## Explanations\n\n### L1 human\n\nSwap the roles of $x$ and $y$: think of $x$ as a function of $y = f(x)$.\nFit a parabola in this swapped picture through three known points, and read off where it meets $y = 0$.\nThat reading is the next guess for the root.\n\n### L2 human\n\nThe method needs no derivatives and only one new function value per step.\nIts order is a little less than $2$ but better than the secant method's $1.618$.\nIt is fast but fragile, so libraries combine it with bisection to keep a bracket around the root.\n",
  "commit": "ff8a40749dc16545e3d2fc637f6b0196e81d0bfa",
  "front": {
    "about": [
      "TR4CNS5PMJ"
    ],
    "kind": "statement",
    "msc": [
      "65H05",
      "65D05"
    ],
    "name": "Inverse quadratic interpolation",
    "role": "theorem",
    "same_as": {
      "wikidata": "Q3153554",
      "wikipedia": "Inverse quadratic interpolation"
    },
    "sources": [
      {
        "url": "https://en.wikipedia.org/wiki/Inverse_quadratic_interpolation"
      }
    ],
    "tag": "NW1XQ95R5P",
    "uses": [
      "237KR6FRCK",
      "9ZC177PVPC",
      "YWZQC5E54B",
      "0J2WAR83WP"
    ]
  },
  "kind": "statement",
  "link": "https://tamnd.github.io/math2/node/NW1XQ95R5P/",
  "links": [
    {
      "field": "about",
      "target": "TR4CNS5PMJ"
    },
    {
      "field": "uses",
      "target": "237KR6FRCK"
    },
    {
      "field": "uses",
      "target": "9ZC177PVPC"
    },
    {
      "field": "uses",
      "target": "YWZQC5E54B"
    },
    {
      "field": "uses",
      "target": "0J2WAR83WP"
    }
  ],
  "markdown": "https://tamnd.github.io/math2/node/NW1XQ95R5P.md",
  "msc": [
    "65H05",
    "65D05"
  ],
  "name": "Inverse quadratic interpolation",
  "prov": null,
  "role": "theorem",
  "source": "https://github.com/tamnd/math2/blob/main/nodes/NW1/NW1XQ95R5P.md",
  "status": null,
  "tag": "NW1XQ95R5P",
  "uri": "m2://NW1XQ95R5P",
  "url": "https://tamnd.github.io/math2/wiki/inverse-quadratic-interpolation/",
  "writing": {
    "tag": "NW1XQ95R5P",
    "kind": "statement",
    "level": "W0",
    "next": [
      {
        "what": "an inventory row",
        "note": "the row of the inventory that the node accounts for",
        "have": 0,
        "want": 1
      },
      {
        "what": "a source with a locator",
        "have": 0,
        "want": 1
      }
    ]
  }
}
