Source: https://guthlabs.ai/docs/instruments/standard-atmosphere-isa-calculator/

instrument / verified-clean

# Standard Atmosphere (ISA) Calculator

The current ledger marks this instrument verified clean within the source-bound verification corpus.

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

## Inspectable records

[01**Overview**Purpose and lifecycle](<https://guthlabs.ai/docs/instruments/standard-atmosphere-isa-calculator/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/standard-atmosphere-isa-calculator/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/standard-atmosphere-isa-calculator/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/standard-atmosphere-isa-calculator/qualification/>)

## Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

**Area**: Thermodynamics, Fluids & Aero

**Tranche**: tranche-6

**Evidence ID**: t6-055

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The stated concept is standard-day ISA, and the numerical method is appropriate when the complete ICAO layer constants and dry-air assumptions are supplied. Verdict is NEEDS_REVIEW because the layer data, density formula, sound-speed formula, altitude definition, valid range, and pressure-altitude handling are not fully specified. The honest label correctly warns that real atmospheric conditions vary.

### Formula and scope findings

- The specification names layered lapse-rate and barometric equations but does not provide the complete ICAO/ISA layer table, including base geopotential heights, base temperatures, base pressures, and lapse rates.

- Density and relative density formulas are omitted; they should be rho = P/(R*T) and sigma = rho/rho0, respectively.

- Speed of sound is omitted; for the dry-air ISA model it should be a = sqrt(gamma*R*T), with gamma = 1.4 and R = 287.05287 J/(kg*K).

- The stated troposphere equation is valid only for the 0-11 km geopotential layer and only when h is in metres: T = 288.15 - 0.0065*h.

- The input does not distinguish geometric altitude from geopotential altitude or define how pressure altitude is interpreted and converted.

- The valid altitude range and behavior for negative altitude or altitudes above the highest ISA layer are unspecified.

### Unit assumptions

- Altitude in these vectors is geopotential altitude in metres.

- Temperature is in kelvins, pressure in pascals, density in kg/m^3, and speed of sound in m/s.

- Dry-air constants used: g0 = 9.80665 m/s^2, R = 287.05287 J/(kg*K), gamma = 1.4, T0 = 288.15 K, P0 = 101325 Pa, rho0 = 1.22500 kg/m^3.

- ISA layer boundaries used here are 0 km, 11 km, and 20 km; the 0-11 km lapse rate is -0.0065 K/m and the 11-20 km layer is isothermal at 216.65 K.

- Pressure in a lapse-rate layer uses P = Pb*(T/Tb)^(-g0/(L*R)); pressure in an isothermal layer uses P = Pb*exp(-g0*(h-hb)/(R*T)).

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

An extreme finite altitude such as 1e308 m can drive the piecewise arithmetic into overflow and a negative-temperature, non-integer-power domain error unless the input is range-checked and rejected. The branch boundary also requires an explicit convention for whether exactly 11000 m belongs to the lower or upper layer.

## Errata and corrections

No applied erratum is attached to this unique-name record.

## Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

````
{
  "inputs": {
    "geopotential_altitude_m": 0
  },
  "expected_outputs": {
    "T_K": 288.15,
    "P_Pa": 101325,
    "rho_kg_m3": 1.225,
    "a_m_s": 340.294,
    "sigma": 1
  },
  "working": "At sea level: T = 288.15 - 0.0065*(0) = 288.15 K. P = P0 = 101325 Pa. rho = P/(R*T) = 101325/(287.05287*288.15) = 101325/82714.2845 = 1.22500 kg/m^3. a = sqrt(gamma*R*T) = sqrt(1.4*287.05287*288.15) = sqrt(115799.998) = 340.294 m/s. sigma = rho/rho0 = 1.22500/1.22500 = 1.00000."
}
````

## Related workflows

No source-defined multi-instrument workflow membership is recorded.

## Sources and evidence

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

- `VERIFIED_LEDGER.json · VERIFIED_CLEAN`

- `evidence-tranche6/tranche6-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
