Source: https://guthlabs.ai/docs/instruments/vis-viva-equation-solver/mechanism/

instrument mechanism / verified-clean

# Vis-Viva Equation Solver mechanism

The inspectable method record for Vis-Viva Equation Solver, kept separate from implementation and qualification.

Status: **VERIFIED_CLEAN**Lifecycle: **verified-clean**

## Model scope

NEEDS_REVIEW because the formula is valid, but the output requires an unstated square-root operation and the units, central body, GM-table selection, and two-body assumptions are not specified. The honest_label field is empty.

- The vis-viva equation is standard for two-body orbital motion, but the displayed formula computes v², while the stated output is velocity; the implementation must return the positive root v = sqrt(GM(2/r - 1/a)).

- The formula assumes an ideal two-body model with negligible third-body, drag, and non-spherical-gravity effects.

## Units and conventions

- GM must be the gravitational parameter of the central body, not G alone.

- GM, r, and a must use mutually consistent units; GM in km³/s² with distances in km produces velocity in km/s, while GM in m³/s² with distances in m produces velocity in m/s.

- r is assumed to be the center-to-object orbital radius, not altitude above the body's surface.

- For an elliptical orbit, a > 0, r > 0, and the radicand must be nonnegative; a physically valid orbit also requires the supplied r to lie within that orbit's periapsis and apoapsis radii.

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "GM_km3_s2": 398600,
    "r_km": 7000,
    "a_km": 7000
  },
  "expected_outputs": {
    "velocity_km_s": 7.5460491
  },
  "working": "v² = 398600 × (2/7000 - 1/7000) = 398600 × (1/7000) = 56.9428571 km²/s². v = sqrt(56.9428571) = 7.5460491 km/s."
}
````

## Failure boundary

**BREAK_CLAIMED** · SELF_FLAGGED

The specification provides no explicit input validation for r=0 or for a negative square-root radicand. Such inputs produce undefined results and must be rejected. The output also lacks a stated sign convention, so it cannot distinguish velocity direction from speed magnitude.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/vis-viva-equation-solver/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/vis-viva-equation-solver/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/vis-viva-equation-solver/qualification/>)

## Sources and evidence

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

- `VERIFIED_LEDGER.json`

- `evidence-tranche4/tranche4-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
