{
  "id": "hyperbola",
  "version": "c202a1242f0d",
  "status": "published",
  "name": "Hyperbola Calculator",
  "question": "Where are the hyperbola’s foci?",
  "summary": "Finds a hyperbola’s center, vertices, co-vertices, foci, asymptotes, eccentricity and standard-form equation from its standard form or its general form Ax² + Cy² + Dx + Ey + F = 0.",
  "category": "math",
  "subcategory": "geometry",
  "url": "https://www.acalculator.org/math/hyperbola-calculator",
  "markdown": "https://www.acalculator.org/math/hyperbola-calculator.md",
  "kind": "function",
  "method": "(x − h)²/a² − (y − k)²/b² = 1 or (y − k)²/a² − (x − h)²/b² = 1; c² = a² + b²; vertices a and foci c from the center along the transverse axis; asymptotes y = ±(b/a)(x − h) + k (or ±(a/b)); e = c ÷ a. The general form is completed to the square.",
  "assumptions": [
    "The hyperbola’s axes are parallel to the x and y axes (no xy term).",
    "Typed numbers are read as exact decimals; a root that is not exact is rounded once."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "form": {
        "title": "Equation",
        "description": "Type the standard form’s numbers, or the coefficients of the general form.",
        "type": "string",
        "enum": [
          "standard",
          "general"
        ]
      },
      "axis": {
        "title": "Opens",
        "description": "Left and right: (x − h)²/a² − (y − k)²/b² = 1. Up and down: (y − k)²/a² − (x − h)²/b² = 1.",
        "type": "string",
        "enum": [
          "x",
          "y"
        ]
      },
      "a2": {
        "title": "a² (under the positive term)",
        "description": "The number under the squared term with the plus sign: a is the distance from the center to a vertex.",
        "type": "number",
        "minimum": 1e-12,
        "maximum": 1000000000000
      },
      "b2": {
        "title": "b² (under the negative term)",
        "description": "The number under the squared term with the minus sign: b is the distance from the center to a co-vertex.",
        "type": "number",
        "minimum": 1e-12,
        "maximum": 1000000000000
      },
      "h": {
        "title": "Center x (h)",
        "description": "The x coordinate of the center; 0 when left empty.",
        "type": "number",
        "minimum": -1000000000000,
        "maximum": 1000000000000
      },
      "k": {
        "title": "Center y (k)",
        "description": "The y coordinate of the center; 0 when left empty.",
        "type": "number",
        "minimum": -1000000000000,
        "maximum": 1000000000000
      },
      "A": {
        "title": "A (x²)",
        "description": "The coefficient of x².",
        "type": "number",
        "minimum": -1000000000000,
        "maximum": 1000000000000
      },
      "C": {
        "title": "C (y²)",
        "description": "The coefficient of y²; it must have the opposite sign to A.",
        "type": "number",
        "minimum": -1000000000000,
        "maximum": 1000000000000
      },
      "D": {
        "title": "D (x)",
        "description": "The coefficient of x.",
        "type": "number",
        "minimum": -1000000000000,
        "maximum": 1000000000000
      },
      "E": {
        "title": "E (y)",
        "description": "The coefficient of y.",
        "type": "number",
        "minimum": -1000000000000,
        "maximum": 1000000000000
      },
      "F": {
        "title": "F (constant)",
        "description": "The constant term.",
        "type": "number",
        "minimum": -1000000000000,
        "maximum": 1000000000000
      }
    }
  },
  "outputs": {
    "equation": {
      "label": "Standard form",
      "description": "The hyperbola’s equation in standard form.",
      "format": "text"
    },
    "center": {
      "label": "Center (h, k)",
      "description": "The point midway between the vertices.",
      "format": "text"
    },
    "vertices": {
      "label": "Vertices",
      "description": "The two points where the curve turns, a from the center.",
      "format": "text"
    },
    "coVertices": {
      "label": "Co-vertices",
      "description": "The ends of the conjugate axis, b from the center.",
      "format": "text"
    },
    "foci": {
      "label": "Foci",
      "description": "The two focus points, c from the center on the transverse axis.",
      "format": "text"
    },
    "asymptotes": {
      "label": "Asymptotes",
      "description": "The two lines the curve approaches, through the center.",
      "format": "text"
    },
    "a": {
      "label": "a",
      "description": "The distance from the center to each vertex.",
      "format": "number"
    },
    "b": {
      "label": "b",
      "description": "The distance from the center to each co-vertex.",
      "format": "number"
    },
    "c": {
      "label": "Focal distance c",
      "description": "The distance from the center to each focus: √(a² + b²).",
      "format": "number"
    },
    "e": {
      "label": "Eccentricity e",
      "description": "c ÷ a, always above 1 for a hyperbola.",
      "format": "number"
    },
    "transverse": {
      "label": "Transverse axis length",
      "description": "2a: the distance between the vertices.",
      "format": "number"
    },
    "conjugate": {
      "label": "Conjugate axis length",
      "description": "2b: the distance between the co-vertices.",
      "format": "number"
    },
    "latus": {
      "label": "Latus rectum",
      "description": "The chord through a focus at a right angle to the transverse axis: 2b² ÷ a.",
      "format": "number"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "form": "standard",
      "axis": "x",
      "a2": 9,
      "b2": 16,
      "h": 0,
      "k": 0,
      "A": 9,
      "C": -4,
      "D": -36,
      "E": -40,
      "F": -388
    },
    "outputs": {
      "equation": "x²/9 − y²/16 = 1",
      "center": "(0, 0)",
      "vertices": "(−3, 0), (3, 0)",
      "coVertices": "(0, −4), (0, 4)",
      "foci": "(−5, 0), (5, 0)",
      "asymptotes": "y = ±(4/3)x",
      "a": 3,
      "b": 4,
      "c": 5,
      "e": 1.6666666666666667,
      "transverse": 6,
      "conjugate": 8,
      "latus": 10.666666666666666
    },
    "text": "The hyperbola x²/9 − y²/16 = 1 has foci (−5, 0), (5, 0) and asymptotes y = ±(4/3)x."
  },
  "examples": [
    {
      "given": {
        "form": "standard",
        "axis": "y",
        "a2": 49,
        "b2": 32
      },
      "expect": {
        "vertices": "(0, −7), (0, 7)",
        "foci": "(0, −9), (0, 9)",
        "c": 9,
        "a": 7,
        "e": 1.2857142857142858
      },
      "source": "OpenStax, Precalculus 2e, §10.2 The Hyperbola (standard forms centered at (0, 0) and (h, k), c² = a² + b², vertices, co-vertices, foci and asymptotes y = ±(b/a)(x − h) + k; Example 1: y²/49 − x²/32 = 1 has vertices (0, ±7) and foci (0, ±9); Example 3: (x − 3)²/9 − (y + 2)²/16 = 1 has vertices (0, −2), (6, −2) and foci (−2, −2), (8, −2); Example 5: 9x² − 4y² − 36x − 40y − 388 = 0 is (x − 2)²/36 − (y + 5)²/81 = 1), https://openstax.org/books/precalculus-2e/pages/10-2-the-hyperbola (retrieved 2026-10-19)"
    },
    {
      "given": {
        "form": "standard",
        "axis": "x",
        "a2": 9,
        "b2": 16,
        "h": 3,
        "k": -2
      },
      "expect": {
        "equation": "(x − 3)²/9 − (y + 2)²/16 = 1",
        "center": "(3, −2)",
        "vertices": "(0, −2), (6, −2)",
        "coVertices": "(3, −6), (3, 2)",
        "foci": "(−2, −2), (8, −2)",
        "asymptotes": "y = ±(4/3)(x − 3) − 2",
        "c": 5,
        "e": 1.6666666666666667,
        "latus": 10.666666666666666
      },
      "source": "OpenStax, Precalculus 2e, §10.2 The Hyperbola (standard forms centered at (0, 0) and (h, k), c² = a² + b², vertices, co-vertices, foci and asymptotes y = ±(b/a)(x − h) + k; Example 1: y²/49 − x²/32 = 1 has vertices (0, ±7) and foci (0, ±9); Example 3: (x − 3)²/9 − (y + 2)²/16 = 1 has vertices (0, −2), (6, −2) and foci (−2, −2), (8, −2); Example 5: 9x² − 4y² − 36x − 40y − 388 = 0 is (x − 2)²/36 − (y + 5)²/81 = 1), https://openstax.org/books/precalculus-2e/pages/10-2-the-hyperbola (retrieved 2026-10-19); OpenStax, Precalculus 2e, §10.5 Conic Sections in Polar Coordinates (eccentricity e = PF ÷ PD; a hyperbola has e > 1), https://openstax.org/books/precalculus-2e/pages/10-5-conic-sections-in-polar-coordinates (retrieved 2026-10-19); hand calculation in content.mdx: e = c ÷ a = 5 ÷ 3, latus rectum 2 × 16 ÷ 3"
    },
    {
      "given": {
        "form": "general",
        "A": 9,
        "C": -4,
        "D": -36,
        "E": -40,
        "F": -388
      },
      "expect": {
        "equation": "(x − 2)²/36 − (y + 5)²/81 = 1",
        "center": "(2, −5)",
        "vertices": "(−4, −5), (8, −5)",
        "coVertices": "(2, −14), (2, 4)",
        "foci": "(−8.816653826, −5), (12.81665383, −5)",
        "asymptotes": "y = ±(3/2)(x − 2) − 5",
        "c": 10.816653826391969
      },
      "source": "OpenStax, Precalculus 2e, §10.2 The Hyperbola (standard forms centered at (0, 0) and (h, k), c² = a² + b², vertices, co-vertices, foci and asymptotes y = ±(b/a)(x − h) + k; Example 1: y²/49 − x²/32 = 1 has vertices (0, ±7) and foci (0, ±9); Example 3: (x − 3)²/9 − (y + 2)²/16 = 1 has vertices (0, −2), (6, −2) and foci (−2, −2), (8, −2); Example 5: 9x² − 4y² − 36x − 40y − 388 = 0 is (x − 2)²/36 − (y + 5)²/81 = 1), https://openstax.org/books/precalculus-2e/pages/10-2-the-hyperbola (retrieved 2026-10-19); hand calculation in content.mdx: c = √117 = 3√13 = 10.81665383"
    },
    {
      "given": {
        "form": "standard",
        "axis": "x",
        "a2": 36,
        "b2": 4
      },
      "expect": {
        "foci": "(−6.32455532, 0), (6.32455532, 0)",
        "asymptotes": "y = ±(1/3)x",
        "c": 6.324555320336759
      },
      "source": "OpenStax, Precalculus 2e, §10.2 The Hyperbola (standard forms centered at (0, 0) and (h, k), c² = a² + b², vertices, co-vertices, foci and asymptotes y = ±(b/a)(x − h) + k; Example 1: y²/49 − x²/32 = 1 has vertices (0, ±7) and foci (0, ±9); Example 3: (x − 3)²/9 − (y + 2)²/16 = 1 has vertices (0, −2), (6, −2) and foci (−2, −2), (8, −2); Example 5: 9x² − 4y² − 36x − 40y − 388 = 0 is (x − 2)²/36 − (y + 5)²/81 = 1), https://openstax.org/books/precalculus-2e/pages/10-2-the-hyperbola (retrieved 2026-10-19); hand calculation in content.mdx: c = √40 = 2√10"
    },
    {
      "given": {
        "form": "general",
        "A": -1,
        "C": 2,
        "D": 0,
        "E": 0,
        "F": -8
      },
      "expect": {
        "equation": "y²/4 − x²/8 = 1",
        "vertices": "(0, −2), (0, 2)",
        "asymptotes": "y = ±0.7071067812x",
        "b": 2.8284271247461903
      },
      "source": "OpenStax, Precalculus 2e, §10.2 The Hyperbola (standard forms centered at (0, 0) and (h, k), c² = a² + b², vertices, co-vertices, foci and asymptotes y = ±(b/a)(x − h) + k; Example 1: y²/49 − x²/32 = 1 has vertices (0, ±7) and foci (0, ±9); Example 3: (x − 3)²/9 − (y + 2)²/16 = 1 has vertices (0, −2), (6, −2) and foci (−2, −2), (8, −2); Example 5: 9x² − 4y² − 36x − 40y − 388 = 0 is (x − 2)²/36 − (y + 5)²/81 = 1), https://openstax.org/books/precalculus-2e/pages/10-2-the-hyperbola (retrieved 2026-10-19); hand calculation in content.mdx: G = 8, G/C = 4, −G/A = 8"
    }
  ],
  "sources": [
    "OpenStax, Precalculus 2e, §10.2 The Hyperbola: standard forms centered at (0, 0) and at (h, k), c² = a² + b², vertices, co-vertices, foci, transverse and conjugate axes (2a and 2b), asymptotes y = ±(b/a)(x − h) + k and y = ±(a/b)(x − h) + k; Examples 1, 2, 3 and 5, retrieved 2026-10-19. https://openstax.org/books/precalculus-2e/pages/10-2-the-hyperbola",
    "OpenStax, Precalculus 2e, §10.5 Conic Sections in Polar Coordinates: eccentricity e = PF ÷ PD, and e > 1 for a hyperbola, retrieved 2026-10-19. https://openstax.org/books/precalculus-2e/pages/10-5-conic-sections-in-polar-coordinates"
  ],
  "related": [
    "ellipse",
    "parabola",
    "equation-of-a-circle",
    "asymptote"
  ],
  "changelog": []
}
