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
- Enter semiMajorMeters, flattening, startLatitudeDegrees, startLongitudeDegrees, endLatitudeDegrees, endLongitudeDegrees using the definitions below.
- Run the operation. Resolve input-format errors before interpreting an output.
- 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 field | Meaning and units | Accepted input |
|---|---|---|
| semiMajorMeters | Equatorial semiaxis a in meters, 1–10⁸. It is a radius, not a diameter. | Finite numeric value satisfying the stated comparisons. |
| flattening | Dimensionless ordinary flattening f=(a-b)/a, from zero through 0.02; supply f rather than inverse flattening. | Finite numeric value satisfying the stated comparisons. |
| startLatitudeDegrees | Geodetic start latitude in degrees, north positive, within ±90°. | Finite numeric value satisfying the stated comparisons. |
| startLongitudeDegrees | East-positive start longitude in degrees within ±180°. | Finite numeric value satisfying the stated comparisons. |
| endLatitudeDegrees | Geodetic end latitude in degrees, north positive, within ±90°. | Finite numeric value satisfying the stated comparisons. |
| endLongitudeDegrees | East-positive end longitude in degrees within ±180°. | Finite numeric value satisfying the stated comparisons. |
| Output field | Interpretation |
|---|---|
| result | Object containing the fields below. |
| result.converged | Whether the operation’s stated iteration or reconstruction criterion succeeded; inspect null values and residual/reason evidence. |
| result.iterations | Number of bounded numerical iterations performed. |
| result.distanceMeters | Ellipsoidal surface distance in meters, or null on inverse nonconvergence. |
| result.initialBearingDegrees | Initial forward tangent bearing in [0,360) degrees, or null when undefined. |
| result.finalBearingDegrees | Final forward tangent bearing in [0,360) degrees, not a back azimuth; null when undefined or unconverged. |
{
"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
-
Direct and inverse solutions of geodesics on the ellipsoid with application of nested equations (1975) — T. Vincenty; Survey Review, hosted by NOAA NGS
-
Tool behavior and example: Geodetic Inverse Problem Vincenty Inverse Calculator — tool.io
Similar or alternative tools
- Geodetic Forward Problem Vincenty Direct Calculator
Calculate a Vincenty geodesic destination and final forward bearing from an explicit start, initial bearing and distance.
- Meridian Arc Length Degree Interval Calculator
Calculate signed meridian arc between two geodetic latitudes by numerical quadrature.