Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument implementation / implementation-contract

Haversine Sunrise-Azimuth Bearing (great circle course) implementation

A source-bound implementation contract for Haversine Sunrise-Azimuth Bearing (great circle course); deployment and executable qualification remain separate.

Status: VERIFIED_CLEANLifecycle: implementation-contract

Binding contract

This record describes what an executable surface must bind and validate. It does not claim that a public calculator, package, or production route is deployed.

Record owner
Guth Instruments
Lifecycle
verified-clean
Evidence ID
t5-109
Effect
Computation or source lookup only

Input and validation requirements

Coincident points produce atan2(0,0), so both bearings are undefined and must be rejected. The specification also leaves longitude sign, angular units, bearing normalization, and the final-bearing derivation implicit, creating convention-dependent outputs if those conventions are not fixed.

Required corrections

No binding erratum is attached to this unique-name record. Implementers must still preserve the declared units, domain, and failure behavior.

Inspectable interface fixture

The sample below is evidence for interface and validation tests, not a production implementation.

{
  "inputs": {
    "lat1": 0,
    "lon1": 0,
    "lat2": 0,
    "lon2": 90,
    "coordinate_units": "degrees"
  },
  "expected_outputs": {
    "initial_bearing_deg": 90,
    "final_bearing_deg": 90
  },
  "working": "Δλ=90°=π/2; φ1=φ2=0°=0 rad. y=sin(π/2)·cos(0)=1·1=1. x=cos(0)·sin(0)−sin(0)·cos(0)·cos(π/2)=0−0=0. θ=atan2(1,0)=π/2=90°. For the final bearing, reverse the route: bearing(0°,90°→0°,0°)=270°, then (270°+180°) mod 360°=90°."
}

Other records

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json
  • evidence-tranche5/tranche5-results.json