Skip to content

RemoteSensingTools/AtmosphericAbsorption.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AtmosphericAbsorption.jl

Clean-slate, GPU-accelerated molecular absorption cross-sections for atmospheric radiative transfer — a standalone successor to vSmartMOM's Absorption module.

Goals

  • Pluggable line-list sources behind one interface: HITRAN, ExoMol, … (the "Port" hierarchy).
  • Advanced line shapes: Voigt → speed-dependent Voigt → Hartmann-Tran, plus line mixing.
  • Water-vapor continuum (MT_CKD) and CIA.
  • One KernelAbstractions compute core running on CPU, CUDA, and Metal.
  • Type-stable and correct in both Float32 and Float64 to machine precision.
  • Validated against hapi2 as a golden-file benchmark.

Status

Early development, built in phases:

  • Phase 0 ✓ — line-shape math + core abstractions: Architectures, Constants (TOML-defined), LineShapes (complex probability function + Doppler/Lorentz/Voigt), PartitionFunctions.
  • Phase 1 ✓ — HITRAN Voigt parity + GPU: columnar LineDatabase, the Port interface, the HitranPort (.par parser + TIPS-2017), the unified KernelAbstractions compute core, and CUDA/Metal extensions. Validated to <5×10⁻³ of HAPI on real CO2/H2O; ~10× faster than HAPI on CPU and ~1900× on an A100 GPU (see benchmark/).
  • Phase 2 — advanced shapes (HT/SDV); Phase 3 — ExoMol; Phase 4 — line mixing + continuum; Phase 5 — vSmartMOM integration.

HITRAN API key (for non-Voigt parameters)

Standard HITRAN line data and ExoMol downloads need no credentials. Fetching HITRAN non-Voigt parameters (Hartmann-Tran / speed-dependent / line-mixing) uses the authenticated HITRANonline API and requires your own key from your profile at https://hitran.org. Supply it in-memory (never stored on disk or in this repo):

activate_hitran!("your-key")          # or set the HITRAN_API_KEY environment variable

Develop

julia --project=. -e 'using Pkg; Pkg.test()'

About

GPU-accelerated molecular absorption cross-sections for atmospheric radiative transfer — HITRAN & ExoMol, Voigt to Hartmann-Tran, line mixing, MT_CKD/CIA continuum. Validated against HAPI.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors