Skip to content

Navigation Menu

Sign in
Sign up
This repository was archived by the owner on Aug 11, 2022. It is now read-only.

Repository files navigation

Actions Status

PyPi version PyPi Download stats

HWM93 in Python

NASA Horizontal Wind Model HWM93 in Python ≥ 3.6

image

Works with many Fortran compilers, including:

  • Gfortran ≥ 5
  • Intel ifort
  • PGI pgf90
  • Nvidia flang

Install

A Fortran compiler such as gfortran is needed. We use f2py (part of numpy) to seamlessly use Fortran libraries from Python. If you don't have a Fortran compiler, here is how to install Gfortran:

  • Linux: apt install gfortran

  • Mac: brew install gcc

  • Windows

    pip install -e .

test by

pytest -sv

Windows

If you get ImportError on Windows for the Fortran module, try from the hwm93 directory:

del *.pyd
python setup.py build_ext --inplace --compiler=mingw32

Usage

HWM93 can be used from the command line or as an imported Python module in other programs. Matlab also can use HWM93.

Command line

python RunHWM93.py -h

Write data to NetCDF (HDF5) with -o option.

import module

import hwm93
from datetime import datetime
winds = hwm93.run(t=datetime(2017,11,12,8), altkm=150.,
 glat=65., glon=-148., f107a=150, f107=150, ap=4)

winds is an xarray.Dataset

 <xarray.Dataset>
Dimensions: (alt_km: 1)
Coordinates:
 * alt_km (alt_km) float64 150.0
Data variables:
 meridional (alt_km) float64 4.827
 zonal (alt_km) float64 -20.5
Attributes:
 time: 2017年11月12日T08:00:00
 glat: 65.0
 glon: -148.0

If you want just a single variable, say

print(winds.zonal.values)

Matlab

You can import this Python module from Matlab as in hwm93.m.

Notes

[Optional] Fortran-only use

Most users don't need this.

meson build
meson test -C build

or

f2py -c src/hwm93_sub.f -m hwm93 only: gws5 :

Reference

Original A. E. Hedin Fortran 77 HWM93 code

Releases

Sponsor this project

Packages

Used by

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /