Open-source standard atmosphere models

Calculate the Standard Atmosphere

Atmospheris provides open-source implementations of ISO atmospheric reference standards — from the baseline ISA (ISO 2533) to observed reference atmospheres, wind distributions, and humidity models (ISO 5878) — with interactive calculators, a Ruby gem, and a TypeScript library.

Troposphere0 – 11 kmTropopause · 11–20 kmStratosphere20 – 47 kmStratopause · 47–51 kmMesosphere51 – 71 kmMesopause71 – 80 km011204771km

Quick Calculator

Troposphere
Temperature15.0 °C
Pressure1013.25 mbar
Density1.2250 kg/m³
Speed of Sound340.29 m/s
Gravity9.8066 m/s²
Dynamic Viscosity1.7894e-5 Pa·s
Kinematic Viscosity1.4607e-5 m²/s
Pressure Scale Height8434.5 m

Features

Altitude to Properties

Calculate all 19 atmospheric properties at any altitude from -2,000 m to 80,000 m geopotential.

Try it →

Pressure to Altitude

Reverse lookup: find the altitude corresponding to any atmospheric pressure value.

Try it →

Wind Distributions

Compute scalar mean wind speed and percentile speeds from observed vector components using the Rice distribution (ISO 5878).

Calculator →

Dual Precision

Normal precision for engineering or reduced precision for quick estimates, dynamically calculated per ISO 2533 formulas.

Learn more →

Data Export

Export calculated properties to YAML, XML, and other formats for integration with your tools.

View API →

Dynamically Calculated Tables

Generate custom atmospheric property tables at any step size and altitude range, dynamically computed per the standard.

See constants →

Get Started

TypeScript / JavaScript

Install via npm and calculate atmospheric properties and wind distributions in just a few lines.

npm install atmospheris
import { getAllProperties, computeWindDerived } from "atmospheris"

// Get all properties at 10,000 m geopotential altitude
const result = getAllProperties({
  value: 10000,
  unit: "meters",
  type: "geopotential",
  precision: "normal"
})

console.log(result.temperature.celsius)  // -49.898 °C
console.log(result.pressure.mbar)        // 264.36 mbar

// Wind distribution per ISO 5878
const wind = computeWindDerived(-3.9, -1.2, 5.9)
console.log(wind.Vsc)  // 6.03 m/s — scalar mean wind speed

Ruby

The reference implementation — a comprehensive Ruby gem for ISA calculations and wind modeling.

gem install atmospheris
require "atmospheris"

# Calculate properties at 10,000 m geopotential altitude
result = Atmospheris::Export::AltitudeAttrs.new
result.set_geopotential_altitude(10_000, :meters)
result.realize_values!

puts result.temperature_celsius   #=> -50.0 °C
puts result.pressure_mbar         #=> 264.36 mbar

# Wind distribution per ISO 5878
wind = Atmospheris::Iso5878.compute_wind_derived(-3.9, -1.2, 5.9)
puts wind.vsc  #=> 6.03 m/s