Skip to content

Main content

Vincenty Inverse Geodesic Calculator

Solve Vincenty inverse distance and forward endpoint bearings with a 200-iteration cap; near-antipodal failure returns null distances, never a fabricated spherical fallback.

Loading tool…

Description

Calculate Vincenty inverse surface distance and forward endpoint bearings, reporting nonconvergence explicitly.

Geodesy distinguishes a mathematical reference ellipsoid, a realized coordinate datum and the physical gravity field. Geodetic latitude follows the ellipsoid normal; geocentric latitude follows a radius from the center. Ellipsoidal height, orthometric height and geoid undulation are separate signed quantities. Keep the declared ellipsoid, coordinate axes, angular units and time scale with a result.

Calculate Vincenty inverse surface distance and forward endpoint bearings, reporting nonconvergence explicitly.

The direct problem starts with a position, azimuth and distance; the inverse problem starts with two positions. Vincenty’s ellipsoidal equations distinguish a final forward tangent from the reverse azimuth.1

When to use this tool

Use this tool when you need to calculate Vincenty inverse surface distance and forward endpoint bearings, reporting nonconvergence explicitly.

How to use the tool and how it works

  1. Enter semiMajorMeters, flattening, startLatitudeDegrees, startLongitudeDegrees, endLatitudeDegrees, endLongitudeDegrees using the definitions below.
  2. Run the operation. Resolve input-format errors before interpreting an output.
  3. Read result.converged, result.iterations, result.distanceMeters, result.initialBearingDegrees, result.finalBearingDegrees, using the stated boundary, ordering, sign and absence conventions.

Convert geodetic endpoint latitudes to reduced latitudes and iterate Vincenty’s ellipsoidal inverse equations, at most 200 steps with a 10⁻¹³-radian update threshold. On success, return surface distance in meters and initial/final forward tangent bearings normalized to [0,360).2

Input fieldMeaning and unitsAccepted input
semiMajorMetersEquatorial semiaxis a in meters, 1–10⁸. It is a radius, not a diameter.Finite numeric value satisfying the stated comparisons.
flatteningDimensionless ordinary flattening f=(a-b)/a, from zero through 0.02; supply f rather than inverse flattening.Finite numeric value satisfying the stated comparisons.
startLatitudeDegreesGeodetic start latitude in degrees, north positive, within ±90°.Finite numeric value satisfying the stated comparisons.
startLongitudeDegreesEast-positive start longitude in degrees within ±180°.Finite numeric value satisfying the stated comparisons.
endLatitudeDegreesGeodetic end latitude in degrees, north positive, within ±90°.Finite numeric value satisfying the stated comparisons.
endLongitudeDegreesEast-positive end longitude in degrees within ±180°.Finite numeric value satisfying the stated comparisons.
Output fieldInterpretation
resultObject containing the fields below.
result.convergedWhether the operation’s stated iteration or reconstruction criterion succeeded; inspect null values and residual/reason evidence.
result.iterationsNumber of bounded numerical iterations performed.
result.distanceMetersEllipsoidal surface distance in meters, or null on inverse nonconvergence.
result.initialBearingDegreesInitial forward tangent bearing in [0,360) degrees, or null when undefined.
result.finalBearingDegreesFinal forward tangent bearing in [0,360) degrees, not a back azimuth; null when undefined or unconverged.
json
{
  "input": {
    "semiMajorMeters": 10,
    "flattening": 0,
    "startLatitudeDegrees": 0,
    "startLongitudeDegrees": 0,
    "endLatitudeDegrees": 0,
    "endLongitudeDegrees": 90
  },
  "output": {
    "result": {
      "converged": true,
      "iterations": 1,
      "distanceMeters": 15.707963267948966,
      "initialBearingDegrees": 90,
      "finalBearingDegrees": 90
    }
  }
}

Limitations and assumptions

  • Coincident points return zero distance and null bearings. Exact antipodes and nonconvergence return converged=false and null distance/bearings, with reason text; there is no spherical fallback. The final forward bearing is not the back azimuth.
  • All quantities are finite and retain the units stated for this operation. Ellipsoid-parameter tools use semi-major axis 1–10⁸ m and dimensionless flattening 0–0.02; explicit-axis tools use 0.9a≤b≤a unless a tighter bound is stated. These tools do not fetch datums, geoid grids, satellite observations or Earth-orientation updates.
  • Every declared outer field is required and unknown outer fields are rejected. Strings and JSON text have size limits, lists are bounded to 128 entries, and JSON nesting/node counts are bounded. Tighter operation-specific bounds stated above take precedence.
  • Numeric results must be finite. Large physical magnitudes are allowed by the output evidence checks, while integer fields and source schemas retain their exactness rules. Source indexes are zero-based. Floating-point residues can remain even where an ideal formula gives an exact zero.

Alternative or Complementary methods

Use a coordinate transform for a change of representation and explicit datum parameters for a change of reference frame. Preserve model and convergence metadata, and use observation and datum information appropriate to a real survey before interpreting a computed tolerance as accuracy.

References

  1. Direct and inverse solutions of geodesics on the ellipsoid with application of nested equations (1975) — T. Vincenty; Survey Review, hosted by NOAA NGS

  2. Tool behavior and example: Geodetic Inverse Problem Vincenty Inverse Calculator — tool.io

Similar or alternative tools