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