Skip to main content

Rust-powered WRF post-processing with corrected effective severe diagnostics, ECAPE support, raw staggered support, and 92 diagnostic variables

Project description

wrf-rust

Rust-powered WRF post-processing with Python bindings. 85 diagnostic variables, built-in plotting, and parallel computation.

Install

pip install wrf-rust

Pre-built wheels for Python 3.10-3.13 on Linux, macOS, and Windows. No Rust toolchain, no system libraries, no conda required.

Community Guide

The repo now includes a full WRF community setup guide for Windows, WSL 2, real-data initialization, domain sizing, and troubleshooting:

Scientific Notes

Recent correctness work tightened the severe-weather diagnostics without changing the basic getvar() workflow:

  • effective_inflow now returns the actual effective inflow base/top heights, not the MU parcel EL.
  • Effective stp and scp now use effective SRH plus effective bulk wind difference (EBWD).
  • bri now uses BRN shear instead of plain 0-6 km bulk shear.
  • Raw staggered fields (U, V, W) keep their native WRF shapes, and ALL_TIMES stacking now runs in Rust.

Usage

import numpy as np
from wrf import WrfFile, getvar

f = WrfFile("wrfout_d01_2024-06-01_00:00:00")

# Basic fields
temp = getvar(f, "temp", units="degC")
slp  = getvar(f, "slp",  units="hPa")
wspd = getvar(f, "wspd", units="knots")

# CAPE with parcel selection
sbcape = getvar(f, "sbcape")
mlcape = getvar(f, "mlcape")
mucape = getvar(f, "mucape")
sb3cap = getvar(f, "sbcape", top_m=3000)           # 0-3 km CAPE

# Custom parcel
cape = getvar(f, "cape", parcel_pressure=850,
              parcel_temperature=20, parcel_dewpoint=15)

# ECAPE family
ecape = getvar(f, "ecape", storm_motion_type="bunkers_rm",
               entrainment_rate=0.0005, pseudoadiabatic=False)
ecin  = getvar(f, "ecin", storm_motion_type="mean_wind")

# SRH with Bunkers storm motion
srh1 = getvar(f, "srh1")                            # 0-1 km
srh3 = getvar(f, "srh3")                            # 0-3 km
srh  = getvar(f, "srh", depth_m=1500, storm_motion=(12, 8))
srh_pw = getvar(f, "srh1", storm_motion_method="pressure_weighted")

# Per-grid custom storm motion
sm_u = np.full((f.ny, f.nx), 12.0)
sm_v = np.full((f.ny, f.nx), 8.0)
srh_custom = getvar(f, "srh", depth_m=1500, storm_motion=(sm_u, sm_v))

# Effective inflow layer
eff_srh  = getvar(f, "effective_srh")
eff_cape = getvar(f, "effective_cape")

# Severe composites
stp     = getvar(f, "stp")                           # fixed-layer
stp_eff = getvar(f, "stp", layer_type="effective")   # effective-layer
scp     = getvar(f, "scp")
ehi     = getvar(f, "ehi", depth_m=3000)             # 0-3 km EHI

# Configurable layers
shear = getvar(f, "bulk_shear", bottom_m=1000, top_m=6000)
mw    = getvar(f, "mean_wind",  bottom_m=0, top_m=6000)
lr    = getvar(f, "lapse_rate", bottom_p=700, top_p=500)
lr_v  = getvar(f, "lapse_rate", bottom_m=0, top_m=3000, use_virtual=True)

# Lake interpolation (removes 2m artifacts over water bodies)
cape = getvar(f, "sbcape", lake_interp=1000)         # interp lakes < 1000 km2

# All timesteps
slp_all = getvar(f, "slp", timeidx=None)             # shape (nt, ny, nx)

Also accepts netCDF4.Dataset directly:

from netCDF4 import Dataset
slp = getvar(Dataset("wrfout_d01..."), "slp")

Note: dataset inputs are reopened by filepath under the hood. On Windows, do not keep a netCDF4.Dataset open while calling wrf-rust on that same file, especially in subprocesses. Close the dataset first or pass a file path / WrfFile instead.

Plotting

from wrf import plot_field, plot_wind, plot_skewt, panel

plot_field(f, "sbcape")                               # auto colormap + cartopy
plot_field(f, "sbcape", style="solar7")               # Solarpower07 colormaps
plot_wind(f)                                           # wind barbs
plot_skewt(f, point=(35.0, -97.5))                    # Skew-T with hodograph
panel(f, ["sbcape", "srh1", "stp", "shear_0_6km"])   # multi-panel

# Multi-timestep with consistent scale + GIF
from wrf.plot import render_timesteps
render_timesteps(f, "sbcape", timesteps=[0,1,2,3],
                 gif=True, fixed_scale=True)

CLI

python -m wrf info  wrfout_d01_2024-06-01_00:00:00
python -m wrf stats wrfout_d01_2024-06-01_00:00:00 sbcape slp temp
python -m wrf plot  wrfout_d01_2024-06-01_00:00:00 slp -o slp.png
python -m wrf panel wrfout_d01_2024-06-01_00:00:00 sbcape srh1 stp -o severe.png

Benchmark vs wrf-python

Benchmarked on a 199x199x79 WRF grid. The fields below matched wrf-python on that case, but broader scientific equivalence still depends on variable and workflow.

Variable wrf-python wrf-rust Speedup
Temperature 0.268s 0.004s 76x
Potential temp 0.088s 0.003s 26x
Abs. vorticity 0.173s 0.015s 11x
Relative humidity 0.353s 0.097s 4x
Precipitable water 0.224s 0.077s 3x
Reflectivity 0.494s 0.234s 2x
SLP 0.517s 0.497s 1x
Wind destagger 0.089s 0.081s 1x

Plus 23 variables wrf-python doesn't have (STP, SCP, EHI, critical angle, ECAPE, shear, Bunkers, lapse rates, fire indices, effective inflow layer).

Variables

92 diagnostic variables. All support units= parameter.

Thermodynamics

temp tc theta theta_e theta_w tv twb td rh

Pressure & height

pressure slp height height_agl terrain geopt omega

pressure defaults to hPa for wrf-python compatibility. Use pres / p or units="Pa" when you want Pascals.

Moisture

pw rh2m dp2m mixing_ratio specific_humidity

CAPE & convection

sbcape sbcin mlcape mlcin mucape mucin cape cin lcl lfc el effective_cape effective_inflow cape2d cape3d

All CAPE variables support top_m for truncated integration (e.g. top_m=3000 for 3CAPE). Generic cape/cin accept parcel_type or custom parcel (parcel_pressure, parcel_temperature, parcel_dewpoint). effective_inflow returns a two-plane output: effective layer base followed by effective layer top, both in meters AGL.

ECAPE-family variables use the same getvar() entry point but also accept storm_motion_type, entrainment_rate, and pseudoadiabatic. They support parcel_type="sb", "ml", or "mu", but they do not currently support the generic custom parcel thermodynamics (parcel_pressure, parcel_temperature, parcel_dewpoint).

Wind

ua va wa wspd wdir wspd10 wdir10 uvmet uvmet10

SRH & shear

srh1 srh3 srh effective_srh shear_0_1km shear_0_6km bulk_shear mean_wind bunkers_rm bunkers_lm mean_wind_0_6km

SRH/Bunkers diagnostics default to pressure-weighted Bunkers layer means when pressure is available. Set storm_motion_method="non_pressure_weighted" (or "classic") to force the non-pressure-weighted path. storm_motion=(u, v) accepts either scalar components or (ny, nx) component grids.

Severe composites

stp stp_fixed stp_effective scp ehi critical_angle ship bri

STP supports layer_type="effective" for the 5-term formula with MLCIN. Effective stp uses ESRH + EBWD, and scp uses MUCAPE + effective SRH + EBWD.

ECAPE

ecape ncape ecape_cape ecape_cin ecape_lfc ecape_el

ECAPE diagnostics accept parcel_type, storm_motion or storm_motion_type, entrainment_rate, and pseudoadiabatic.

Radar & cloud

dbz maxdbz ctt cloudfrac uhel

Vorticity

avo pvo

Lapse rates & levels

lapse_rate_700_500 lapse_rate_0_3km lapse_rate freezing_level wet_bulb_0

Generic lapse_rate accepts bottom_m/top_m or bottom_p/top_p, plus use_virtual=True.

Fire weather

fosberg haines hdw

Parameters

Parameter Description
units Output unit conversion (every variable)
parcel_type "sb", "ml", "mu" for CAPE
parcel_pressure/temperature/dewpoint Custom parcel (hPa, degC, degC)
top_m / bottom_m Layer bounds in m AGL
top_p / bottom_p Layer bounds in hPa
depth_m SRH/EHI depth (m AGL)
storm_motion Custom storm motion (u, v) in m/s; each component may be a scalar or (ny, nx) grid
storm_motion_method Default Bunkers method: "pressure_weighted" (default) or "non_pressure_weighted" / "classic"
storm_motion_type ECAPE storm-motion type: "bunkers_rm", "bunkers_lm", or "mean_wind"
entrainment_rate ECAPE entrainment rate passed through to the core implementation
pseudoadiabatic ECAPE pseudoadiabatic toggle
layer_type "fixed" or "effective" for STP
use_virtual Virtual temperature for lapse rates
lake_interp Interpolate 2m fields over lakes < N km2

Unit strings

Every registered variable supports units=. Raw WRF variables (RAINNC, T2, PSFC, etc.) also support conversion when their default unit is known. Case-insensitive.

Category Strings Example
Temperature K, degC, C, celsius, degF, F, fahrenheit units="degF"
Pressure Pa, hPa, mb, mbar, inHg units="hPa"
Speed m/s, knots, kt, kts, mph, kph, km/h units="knots"
Length/Height m, ft, km, mi, dam units="dam"
Depth mm, in, inches units="in"
Moisture kg/kg, g/kg units="g/kg"

Raw WRF variables

Any variable name not in the computed registry is read directly from the file. Common ones:

Variable Default unit Description
RAINNC mm Grid-scale accumulated precipitation
RAINC mm Convective accumulated precipitation
T2 K 2-m temperature (also available as t2)
PSFC Pa Surface pressure
TSK K Skin temperature
SST K Sea surface temperature
PBLH m PBL height
HFX W/m2 Sensible heat flux
LH W/m2 Latent heat flux
SWDOWN W/m2 Downwelling shortwave
GLW W/m2 Downwelling longwave
OLR W/m2 Outgoing longwave
UST m/s Friction velocity
SNOWH m Snow depth
LU_INDEX -- Land use category
U10 / V10 m/s 10-m wind components
# These all work:
rain = getvar(f, "RAINNC", units="in")     # accumulated precip in inches
tsk  = getvar(f, "TSK", units="degF")      # skin temp in Fahrenheit
pblh = getvar(f, "PBLH", units="ft")       # PBL height in feet

Building from source

Only needed for development. Users should pip install wrf-rust.

git clone https://github.com/FahrenheitResearch/wrf-rust.git
cd wrf-rust
pip install maturin
maturin develop --release

Acknowledgments

Special thanks to Solarpower07 for the underlying Solar7 colormaps and product definitions, and for substantial guidance on severe-weather diagnostics, storm motion, SRH, and ECAPE. A lot of the recent correctness work in wrf-rust is better because of that help.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wrf_rust-0.2.32.tar.gz (195.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

wrf_rust-0.2.32-cp313-cp313-win_amd64.whl (903.6 kB view details)

Uploaded CPython 3.13Windows x86-64

wrf_rust-0.2.32-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

wrf_rust-0.2.32-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

wrf_rust-0.2.32-cp313-cp313-macosx_11_0_arm64.whl (977.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

wrf_rust-0.2.32-cp313-cp313-macosx_10_12_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

wrf_rust-0.2.32-cp312-cp312-win_amd64.whl (904.1 kB view details)

Uploaded CPython 3.12Windows x86-64

wrf_rust-0.2.32-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

wrf_rust-0.2.32-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

wrf_rust-0.2.32-cp312-cp312-macosx_11_0_arm64.whl (977.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

wrf_rust-0.2.32-cp312-cp312-macosx_10_12_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

wrf_rust-0.2.32-cp311-cp311-win_amd64.whl (904.4 kB view details)

Uploaded CPython 3.11Windows x86-64

wrf_rust-0.2.32-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

wrf_rust-0.2.32-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

wrf_rust-0.2.32-cp311-cp311-macosx_11_0_arm64.whl (981.7 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

wrf_rust-0.2.32-cp311-cp311-macosx_10_12_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

wrf_rust-0.2.32-cp310-cp310-win_amd64.whl (904.2 kB view details)

Uploaded CPython 3.10Windows x86-64

wrf_rust-0.2.32-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

wrf_rust-0.2.32-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

wrf_rust-0.2.32-cp310-cp310-macosx_11_0_arm64.whl (981.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

wrf_rust-0.2.32-cp310-cp310-macosx_10_12_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file wrf_rust-0.2.32.tar.gz.

File metadata

  • Download URL: wrf_rust-0.2.32.tar.gz
  • Upload date:
  • Size: 195.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.13.1

File hashes

Hashes for wrf_rust-0.2.32.tar.gz
Algorithm Hash digest
SHA256 ee8d0e7d816764b6d58f61febfb4e12d843dcdc32ccc55477c68c26cd5534f05
MD5 732ef68e3b936d2e9eb4be8ee491518d
BLAKE2b-256 1414ff02ad860f0827cbf6cd944015d2b053b939139969ca934934046c532a43

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fd905765bf441936616302ff3c319838a6075e7a0a86fd41195961cb3844d32d
MD5 a4f685a4081280178ede7a2c13baebee
BLAKE2b-256 8120072218ff7b146d7d36fed6d44374314645d826a7dda001947e81cfd0366f

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 421ee5abafe5da0d83b8c917d933d28b4e6ba8af7d0060f7436e6ca53c102e95
MD5 3af6fcb2fe96804286395ca446b940e7
BLAKE2b-256 01e25a8e1b0bc9d7531a43c4181e0edf6c502e0534476fc8be84a2bb9e3ae4fa

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0eba989b6dfe97b7fc19d4f790d177fa7c56627a3d92e811f87699d70bdd1b49
MD5 0b73931098c852016a652c764bf2953b
BLAKE2b-256 bef7cfa8d22a52ab60cb1722c0cf557edf0d1ecbb953277ef12eb4dc7a554e06

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 00a2e06459c4217e2cd3a075c3b49128f1e967ed41dc80dabe146dc006d7e5a6
MD5 eaecc1c79c163197c730b5df1420f34f
BLAKE2b-256 1bb027e8b3c5177a29e52e6f8e6c07fe186699668a47c963d9db3a1c0500112e

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 487fab9e649199db34aa03eddd598ed995979005d0b42293424a044402e7287e
MD5 c4d799352eb0b45465649231f41c7c2b
BLAKE2b-256 ef9f13d9537de63bba83451133cb554edbaf380ee6b6da8fcd3b093a96adf5af

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 517aa7884899a4d08b5836ac0a1064b782a0f60f1b73b13c6b5fc487c57fe1c2
MD5 777b6aee88abfe0b64b1910b785743a6
BLAKE2b-256 e348bc3f7b58bb9f8381bab9e0dd68c08c27eb3e1316b80d9e7c93f28ef32230

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 595613a83752a24bd42cd997f591eb84dc19b4409a816a62a79bd5dba7dc9327
MD5 0098e0fbbfdfd25b32f0a4d34441339d
BLAKE2b-256 4d7219ebf789b7aa5bfccb0b99ae1ee976a27a6994cd6da68af612dba08ba08b

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e49d16bf285b2c7f1ea7d8b11649182da84fe1bb2bf70deac6d4ccd1b04e1fe8
MD5 96a02a311694111d95a56c9da8b4bf53
BLAKE2b-256 654ce45fb1eacead4abae6a665530eceeed3b438d1eaf783d7a5ba69ee17ea24

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 42428b992784730815a0f9d2316d44791acfe544dafad77ff861f43fd129b912
MD5 64fc7cb07002844aa2ac6ba38e8dd6e5
BLAKE2b-256 7d6dfe420fc29528f0e3aaf88423492f7b40122c52a06451f2c9909c37cf0ad5

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4a9ee51fff670e81683fcd212772b50796e89dc74abf7b5ee3b17f9fc5c8699a
MD5 035be9f2c40b97da40298f294c638eac
BLAKE2b-256 0ed90f391342124f6754f9232ff613812297e662e42b976be34ae225dade88e7

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 82fd90b373abe885d055ef88d08576955b449394dd3e9b0632099c6c056c4ea5
MD5 bf08afa26198c9370e85b159ee82c88f
BLAKE2b-256 f5d9770bfe77c2b10be9d7c1421a683f3997fac0a7dc4fbfa4ebfcc994970c58

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 01efe2ecc290e9295f5fc5486f1214ca87ddb757ae1ac43919ac2d4e9477abf2
MD5 c4f75f13d9c8662065560ceee59a50c7
BLAKE2b-256 812c16f1a85d50838e0038193c45ec13b906bdb48692e4b90a9722092cc01539

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ae7c29e1c56700e980548853ba31c5d9beaaa2bb7a92f055e2e1a4fe206bde42
MD5 1838551a7a74ad3f6ce48d8e7f52fc52
BLAKE2b-256 578a485e92cd4e514b886b613c3900dae22e769e7f569a35460ee02f1789acd2

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dcf6e37e35116f1d02c7e11a9b5e734464b1eeeb733a7d8be493430aa643520d
MD5 54bc797d4a3d528b939aac303283f78a
BLAKE2b-256 885f90c5d9c524226426a315bba0d6262f39a75f9ef90b1664620818cbf51faf

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 11c1ede73dee9640c6a9aac640189027ad82b58025a7bc9f8ecefc7fe48f642b
MD5 440a796c3e3a22c5f3e7849cf539aac2
BLAKE2b-256 3bddda7ba813c75502fe9a83a601869381bd0dbfc499d07e37a4daa6456de9cb

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e1a4e7223018fa6d74f2215b60f0c370beaeaeaffad95d18bc4ca53d5c82b497
MD5 3ee1f8449bf859e489ec7e70b4196cee
BLAKE2b-256 96c039c4a2b25365cd11e21f738d265c0cdf387479080c492854ce1362adfa38

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 131bc627ab846e37ac414d92c4003203413cdbba2cc447881c027c80a30c385d
MD5 c592dbde1c305a8f3758cdfc9c8bf66e
BLAKE2b-256 b7f16f207a84106faf16286fefee47861407babfe094d7c5d0a57ff14ab35fac

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e5087b79c00a4576db021d98b67d88135aef6a98ffb442cc2def7d498038888f
MD5 621b8c0324519cea9b8fa7f5c25bbda9
BLAKE2b-256 0b8f7f545658fec839cb01519b2a7f32ef49e94beb41f2fee24c0eeabd7ca65a

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f90657e34761078a895aedb16f65b5f3995fafc5ec2a0ce2b78edcb51093c6c4
MD5 ed45d7002699047301efda38bcba7c28
BLAKE2b-256 d658dcd6c90bc2ba8a4d1c1fd37f70641a73e5369b3aebfd0b0c2367067facc0

See more details on using hashes here.

File details

Details for the file wrf_rust-0.2.32-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for wrf_rust-0.2.32-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6fb8aafdcf223099cd35ec9c3f8323bf3f0c7326bc03cbc70e0fe7f70ec6278e
MD5 7442b7d6e59a9fa138a6f043d103e8d7
BLAKE2b-256 a1e81458e4942f8e7d6c0a090551490418c9152808c829eb4f2a19f667cb6123

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page