Skip to main content

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

Project description

wrf-rust

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

Install

python -m pip install --force-reinstall "wrf-rust==0.2.36"

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

0.2.36 is the conservative compatibility release for applications built against 0.2.35, including WRF-Runner's New-PC-Updates branch. Because PyPI already contains numerically higher 0.4.x releases, an unpinned pip install -U wrf-rust will not select 0.2.36; pin the version exactly as shown above.

0.2.36 Compatibility and Performance

This release starts from the v0.2.35 source and backports only output-preserving performance work: effective-inflow caching, parallel depth-limited CAPE and EL columns, cached CAPE reuse in severe composites, parallel HDF5 chunk decoding, reduced CAPE allocations, and removal of full rotated-wind volume copies. It does not include the later science-formula, diagnostic-registry, ECAPE-dependency, or Python return-contract changes.

Validation on a real 2.39 GB, 800 x 800 x 79 WRF file found byte-identical results for all 96 registered diagnostics versus v0.2.35. A representative WRF-Runner batch with 18 plot workloads and six process workers improved from 48.27 s to 35.25 s on a 24-thread Linux system (1.37x), while sampled aggregate peak RSS fell from 23.38 GB to 22.68 GB. The larger approximately 3.25x result measured elsewhere is a single-process, shared-WrfFile diagnostic benchmark; it is not an end-to-end WRF-Runner claim.

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

96 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 tehi tts vtp_mod 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. tehi and tts mirror the SPC beta Tornadic 0-1 km EHI and Tornadic Tilting and Stretching products. vtp_mod is the modified violent tornado parameter using MLCAPE, ESRH, EBWD, MLLCL, MLCIN, 0-3 km MLCAPE, and 700-500 hPa lapse rate.

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.36.tar.gz (205.7 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.36-cp313-cp313-win_amd64.whl (897.1 kB view details)

Uploaded CPython 3.13Windows x86-64

wrf_rust-0.2.36-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.36-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.36-cp313-cp313-macosx_11_0_arm64.whl (968.9 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

wrf_rust-0.2.36-cp313-cp313-macosx_10_12_x86_64.whl (996.3 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

wrf_rust-0.2.36-cp312-cp312-win_amd64.whl (897.9 kB view details)

Uploaded CPython 3.12Windows x86-64

wrf_rust-0.2.36-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.36-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.36-cp312-cp312-macosx_11_0_arm64.whl (969.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

wrf_rust-0.2.36-cp312-cp312-macosx_10_12_x86_64.whl (997.0 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

wrf_rust-0.2.36-cp311-cp311-win_amd64.whl (898.5 kB view details)

Uploaded CPython 3.11Windows x86-64

wrf_rust-0.2.36-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.36-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.36-cp311-cp311-macosx_11_0_arm64.whl (974.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

wrf_rust-0.2.36-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.36-cp310-cp310-win_amd64.whl (898.5 kB view details)

Uploaded CPython 3.10Windows x86-64

wrf_rust-0.2.36-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.36-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.36-cp310-cp310-macosx_11_0_arm64.whl (974.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

wrf_rust-0.2.36-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.36.tar.gz.

File metadata

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

File hashes

Hashes for wrf_rust-0.2.36.tar.gz
Algorithm Hash digest
SHA256 c85680f46b4942e703728e855cf7ab0828f3d1690b4fcb1955ecd85d9e322e4b
MD5 03a2c4f1a8f136264b661bbb856e2f8b
BLAKE2b-256 4e4014f7d4b71cd0ce7a38c9ea213d87ce79175a94fe1dfe5b6eb9964ca40af0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 f5b3856251b0b3e2ac9f66fc0921e9fe37ad66938758d618d6283b84f46dd3c2
MD5 1fcb240aee16a2eae362203672052b60
BLAKE2b-256 2308645a49193f2d0fbf8cb6f8f2431f36a98200fd18f00011b3c9639a898485

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8777a498f57496df687136c80ecb1252e4af5f76efe1cff14444aaf7185b5f9c
MD5 b80c9861832fcf097d0f009730855867
BLAKE2b-256 2c86fc9632fe0fc65ec0b7dce6af3a0e126b691a2cb968749990c8b6b2adeae4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7c8c31594491c7a0a81507046f263d9c9fa443b46bb53a5e8cd779869949e723
MD5 e43cada9aa4bba9b8489cf11ca4c3c32
BLAKE2b-256 5965950a3852a938491cecbf362dae67ded149debc62ef0ab0e7f9f6ce6359fb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e27b69fa946c71d7231bb3a368619ed5f7c07e6ee16c34413ae1070c012c823a
MD5 307f5c4b85d4e243aaf00ed60b72ccf0
BLAKE2b-256 32e8b9037c821b6c109afac6daed7284fca58c45754bf9004caf89f08446a0ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e5446ed6eabf7463eb5953b837c8f7ca34088539612d06feeeaef0471909c64c
MD5 2432e0e8a05702f71ad9c388e39522da
BLAKE2b-256 1219adad52db3bc62409aa89f6248898acf9e0afaa7b20d863c63fa2ca72fc48

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 689ed3c02749afb2ddc516332bb66d7b24aa4a2f4fdbc50c4f305e09ab157610
MD5 b952b82d78a91f44314aff1ba905adff
BLAKE2b-256 0b6662a5dc78008196195a419242733bed84b3299d42762c8645773df2a2213c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ee4d4bab186ba65671a6bb3737044af284d55625982e99b3eebf7c8d158dcc90
MD5 c3c69b8cb2f17a6e4f60b883bf6a2ee4
BLAKE2b-256 3255d5d9b5be0a5d7dd8baa7301da89412c062991cc174369312758f6d6274a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3d0acd1714ed6b76c1ae7607fa0ab29e907bbcf652af20348a9c8266844ea933
MD5 e2284328954ebaa1f2c39d1f04f2d3c7
BLAKE2b-256 8c75e9dda550f65890d5c3c80cf721e57398e83e618ef95aedf70b1140169e7d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b74a03b5cfdecbabe5b23d2a701d520d6bc6a6bda8eaafdde6393d5476824d76
MD5 73d3e1ea1a645148f546be17afd192ab
BLAKE2b-256 78f693b15cd125f9be8fd5dfa80c7a8fb082e26b0c3ddcdc97def63991ef220b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cbbf8b1377bdeb2d381c84faa3023f648127af158add80936684f74c9c64b525
MD5 b7fb0480acb4dff2f91e289eb780ec2f
BLAKE2b-256 8eaeb78d27a75bb0b96b92dd281d6e022ed98911a0cce3f12ed8f19719b394b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bddedde990b0659a5491f14bea246a66ce0059d7ef0504907d6cd133c6731667
MD5 883a3d5ec693bc652c87e54047bcd223
BLAKE2b-256 670fa83cd54c3fdc9cce15c43018ad06d1da27c6cd2923b797fc1151376f0563

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 15ccd5768af8886d66cf1ad0acc43a30380c75f4f5e0a0c7bf13e3e771cb084c
MD5 57712edec97b7f13055e8352ea367cea
BLAKE2b-256 931a6c2b76b32d7f9a54f94878a9da9fa90955b4a35be48343473b9e4e401249

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f0eec201a00b96fa6f5be669c83b8563c3e6c51b91cbe72d2a0b1a198b24ff69
MD5 007f50176c802a58512575b5d34f989c
BLAKE2b-256 0cab99fa4a55c2f1874c7b8ed02c7d29d00fae74b927b4a2c56e73b3e4ecd61a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3a66e84c3b8909a9762153f55471b1d266e3c93c11733df9752332e6475e04b7
MD5 db829bdf4a18f5e507b933433317bcbe
BLAKE2b-256 9c230594f73c184cd437a00d6fc8e314dd23486bfdda14745241a98d7a95e6d9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a49b182188d76aca12b322916138fa4bebc24aaba25c817cb97077ad51165bb2
MD5 e23ce327277fda60d5071e1e3922a921
BLAKE2b-256 ffc21952b89c0036d8a9502115cf676e7a20b08036550758b51bd7279143ebd9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 5af1a7d5fc83182190dd103661b46f379901f3e96ddc8332ce2859a5f6371eb0
MD5 f539a103a33596d5629762bdccdf737a
BLAKE2b-256 f1e2cb49ae45b04d9a14049f09b8fe98d6958370d55715870b9beb7c62dfc85a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 034e9afe3d741a8a250452b0d619dff288995d92a3af925f1f2e0d8dbd3b8fd0
MD5 c5a23d26e3bc0c3e3d5d67fc92d9b8a6
BLAKE2b-256 4bf76cfa20b1ea9def10a1b904d7f9447258bf7f9221af4f84e86f58982e23ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5aa56cd724d5ad493e26c873a09138aeb2aa03f7ee293c681857d1b039604b7d
MD5 f15b8beb1b22f8b62b2bbf786b2f7e58
BLAKE2b-256 8e3de43554834afc6ab85fbb47d600fbf0b8f1bb1298990a1013aecead16aa10

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d8265675326faf635e8f4bde6d2cc4933608fb02e82b914a59d6011274c2a127
MD5 c1b421a60db0965443a96bd6d252dc95
BLAKE2b-256 7d08889b8e2c1be89d6ac2ced275552269a46f58519614050da60533f87a20ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for wrf_rust-0.2.36-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 00f15a91e6e326b4545807121d18ae6f9335c23ada7f370384d17088d2a0a3a2
MD5 d68623884dba3418305e1fe4c9fe6dc5
BLAKE2b-256 f0fc4d8054ed7947fb4da278cd590220d578fea31f9daf45495fd0d2e8747e9b

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