ECMWF reduced Gaussian (N/O) to regular Gaussian in-memory converter
Project description
A lightweight, high-performance Python library for converting ECMWF reduced Gaussian grids (N-grids and O-grids) to regular Gaussian grids. Designed for efficient in-memory processing with zero intermediate file I/O.
Overview
GaussRegular specializes in converting ECMWF reduced Gaussian grids to full (regular) Gaussian grids:
- N-grids: Classical reduced Gaussian grids (e.g., N320, N640)
- O-grids: Octahedral reduced Gaussian grids (e.g., O320, O640, O1280)
Both grid types carry a pl array (points per latitude row) and use identical row-wise interpolation logic, matching CDO's setgridtype,regular and setgridtype,regularnn behavior.
Features
- Dual grid support: Handles both classical N-grids (e.g., N320, N640) and octahedral O-grids (e.g., O320, O640, O1280)
- Two interpolation modes:
- Bilinear (default) — matching CDO
setgridtype,regular - Nearest-neighbor — matching CDO
setgridtype,regularnn
- Bilinear (default) — matching CDO
- C-accelerated: Core interpolation in compiled C, ~10-100x faster than pure NumPy
- In-memory processing: Read GRIB2 data → convert → analyze → output, no intermediate files
- Double-precision internals: Matching CDO's numerical accuracy
- xarray/cfgrib integration: Direct support for GRIB2 data
- Batch processing: Efficient multi-dimensional array handling (time, level, etc.)
Installation
pip install gaussregular
With xarray support:
pip install "gaussregular[xarray]"
Quick Start
Case 1: Direct Numpy Array Conversion
If you have a NumPy array with known grid metadata:
import numpy as np
import gaussregular as gr
# Your reduced Gaussian data (1D array, one value per grid point)
values = np.random.rand(1040640) # Example data
# Gaussian row length array (from GRIB metadata, e.g., GRIB_pl)
pl = np.array([20, 27, 36, 40, 45, ..., 360, 360], dtype=np.int32) # 161 latitude rows in this example
# Create regularizer
regularizer = gr.GaussRegularizer(method="linear")
# Convert to regular Gaussian (2D array)
regular_data, lon = regularizer.regularize_values(
values=values,
pl=pl,
missval=np.nan
)
print(f"Output shape: {regular_data.shape}") # e.g. (161, 320) in this example
print(f"Longitude points: {lon.size}")
Case 2: xarray DataArray (from cfgrib)
If you're reading GRIB2 files with cfgrib:
import xarray as xr
import gaussregular as gr
# Open GRIB2 file with cfgrib backend
ds = xr.open_dataset("era5_sample.grib", engine="cfgrib")
da = ds["temperature"] # xarray.DataArray
# Create regularizer
regularizer = gr.GaussRegularizer(method="linear", cache=True)
# Convert directly
regular_da = regularizer.regularize_xarray(da)
print(f"Regular grid shape: {regular_da.shape}")
print(f"Coordinates preserved: {list(regular_da.coords.keys())}")
The library automatically extracts GRIB_pl, grid type, and other metadata from the DataArray attributes.
Case 3: Multi-dimensional Data (Time series, Levels)
Batch processing with leading dimensions:
import xarray as xr
import gaussregular as gr
# Multi-dimensional xarray: (time, level, values)
ds = xr.open_dataset("era5_multi_level.grib", engine="cfgrib")
da = ds["temperature"] # Shape: (24, 137, 1040640) in this example
regularizer = gr.GaussRegularizer(method="linear", cache=True)
regular_da = regularizer.regularize_xarray(da)
print(f"Output shape: {regular_da.shape}") # e.g. (24, 137, 161, 320) in this example
The regularizer automatically handles reshaping and maintains coordinate dimensions.
Case 4: xarray Dataset (Multiple Variables)
You can pass a full xr.Dataset directly. All convertible reduced-Gaussian variables are regularized.
import xarray as xr
import gaussregular as gr
ds = xr.open_dataset("era5_multi_vars.grib", engine="cfgrib")
regularizer = gr.GaussRegularizer(method="linear", cache=True)
regular_ds = regularizer.regularize_dataset(ds)
# Or use auto dispatch:
# regular_ds = regularizer.regularize(ds)
print(regular_ds)
Case 5: Regional Sub-area Data
For data covering only a portion of the globe (e.g., a regional cut from a model run), specify the longitude bounds and grid number:
import numpy as np
import gaussregular as gr
# Regional reduced Gaussian data
values = np.random.rand(342080) # Subset of N320 (e.g., Europe region)
pl = np.array([...]) # Row lengths for the region
regularizer = gr.GaussRegularizer(method="linear")
# Specify regional bounds and grid number for proper output sizing
regular_data, lon = regularizer.regularize_values(
values=values,
pl=pl,
missval=np.nan,
grid_number=320, # N320 grid
xfirst=0.0, # Start longitude (degrees east)
xlast=40.0, # End longitude (degrees east)
)
print(f"Regional grid shape: {regular_data.shape}")
print(f"Longitude range: {lon[0]:.2f}–{lon[-1]:.2f}°E")
Parameters for regional data:
grid_number(int): Gaussian truncation number (e.g., 320 for N320). Required to distinguish global vs. regional grids.xfirst(float, default=0.0): Longitude of the first data point (degrees east, range 0–360).xlast(float, default=359.9999): Longitude of the last data point (degrees east).
The library automatically infers the output longitude count based on the regional bounds.
Advanced: Fast Mode (Skip Missing-Value Detection)
If your input is guaranteed to have no missing values, enable fast=True to skip per-row missing-value detection for ~1.8x speedup:
import gaussregular as gr
engine = gr.GaussRegularizer(method="linear", cache=True)
# Standard mode with missing-value checking
regular_ds_safe = engine.regularize_dataset(ds, fast=False) # Default
# Fast mode: assumes no missing values (dangerous if false!)
regular_ds_fast = engine.regularize_dataset(ds, fast=True) # ~1.8x faster
Warning: Use fast=True only when you are certain the input contains no missing values (NaN, sentinel values, etc.). Incorrect use may produce garbage output.
API Reference
GaussRegularizer
Main converter class.
Parameters:
method(str, default="linear"): Interpolation method, either"linear"or"nearest"grid_number(int, optional): Default Gaussian truncation number N (e.g., 320 for N320/O320). Used whenGRIB_Nis missing for xarray inputs and as a fallback whenregularize_valuesis called without a per-callgrid_number. When neither metadata nor this attribute provide N, a heuristic based on the equatorial row length is usedcache(bool, default=False): Enable xarray metadata plan caching for repeated calls on same-structure datamax_plan_cache(int, default=32): Maximum number of cached conversion plans
Methods:
regularize(data, nlon=None, grid_type_hint=None, method=None)
- Auto-detects input type (
xr.Dataset,xr.DataArray, or NumPy) and calls appropriate method - Returns regularized data in same type as input
regularize_values(values, pl, missval, nlon=None, method=None, fast=False)
values: 1D NumPy array (len(values) == sum(pl))pl: 1D NumPy array of row lengths (from GRIB_pl)missval: Missing-value sentinel (float). Points equal to this value (or NaN, ifmissvalis NaN) are treated as missing and handled by the interpolation kernelnlon(optional): Number of columns in output regular grid. Auto-inferred if not providedmethod(optional): Per-call method override:"linear"or"nearest"fast(optional): Skip missing-value detection when input has no missing values- Returns:
(out, lon)whereoutis NumPy array andlonis longitude vector
regularize_xarray(dataarray, nlon=None, grid_type_hint=None, method=None, fast=False)
dataarray: xarray.DataArray with GRIB metadata in.attrs- Requires:
GRIB_plattribute. IfGRIB_missingValueis present it is used asmissval; otherwise NaN values are treated as missing method(optional): Per-call method override:"linear"or"nearest"fast(optional): Skip missing-value detection when input has no missing values- Returns: xarray.DataArray with regularized data and preserved coordinates
regularize_dataset(dataset, nlon=None, grid_type_hint=None, method=None, fast=False)
dataset: xarray.Dataset with one or more reduced Gaussian variables- Converts each convertible variable and keeps non-convertible variables unchanged
method(optional): Per-call method override:"linear"or"nearest"fast(optional): Skip missing-value detection when input has no missing values- Returns: xarray.Dataset
clear_cache()
- Clears internal xarray plan cache
Module-level Functions
regularize_values(values, pl, missval, nlon=None, method="linear", fast=False)
- Standalone function using default regularizer configuration
regularize_xarray(dataarray, grid_type_hint=None, method="linear", fast=False)
- Standalone function using default regularizer configuration
regularize_dataset(dataset, grid_type_hint=None, method="linear", fast=False)
- Standalone function using default regularizer configuration
Grid Specifics
N-grids (Classical Gaussian)
- Regular spacing in longitude
- Example: N320 → 4×N = 1280 columns at the equator in the regular grid
- Total reduced-grid points: 4×N×(2N+1)
O-grids (Octahedral)
- Refinement at equator for better accuracy
- Example: O320, O640, O1280
- Formula: nlon = 4×N + 16 for O-grid
The library automatically detects grid type from GRIB metadata. You can also override with grid_type_hint parameter.
Supported Grid Types
GaussRegular recognizes many GRIB metadata variants:
reduced_ggreduced-ggreduced gaussianoctahedral_ggoctahedral_reduced_gg- And several aliases
See GRID_TYPE_FULL_NAMES in the API for the full list.
Performance Tuning
Interpolation Method
method="linear"(default): Bilinear interpolation. Slightly slower but more accurate.method="nearest": Nearest-neighbor. Faster, less smooth.
Missing-Value Detection
fast=False(default): Safe mode. Detects missing values in each row and handles them gracefully (~11.8 sec for N320 ERA5 example).fast=True: Speed mode. Skips per-row missing-value detection and assumes no missing values exist. Only use when input has no missing values. Typical speedup: ~1.8x (~6.3 sec for same example).
Caching
- Enable
cache=Truewhen processing multiple DataArrays with identical structure to reuse parsed metadata.
Typical throughput:
- On a typical ERA5 model-level example (4 time steps × 137 levels, N96/O96 grids), a full-field linear interpolation runs in ~0.24 s on a modern desktop CPU
Limitations
- Missing values must be consistently marked — via NaN or a numeric
missval/GRIB_missingValue; whenfast=Trueyou must guarantee there are no missing values - Requires GRIB metadata —
plarray must be provided or in DataArray attrs - Supports only Gaussian grids — other map projections not supported
- Precision: Outputs double-precision computation; results cast back to input dtype
- No projection support — only Gaussian grid conversions
Testing & Validation
GaussRegular has been validated against CDO setgridtype,regular and setgridtype,regularnn with double-precision agreement to machine epsilon.
Test with real ERA5 data:
python examples/run_era5_demo.py
Requirements
- Python: 3.9+
- NumPy: ≥1.23
- Optional: xarray ≥2023.1, cfgrib ≥0.9.10
Citation
If you use GaussRegular in research, please cite:
@software{gaussregular,
author = {Qianye Su},
title = {GaussRegular: ECMWF Reduced Gaussian to Regular Grid Converter},
year = {2026},
url = {https://github.com/QianyeSu/GaussRegular}
}
Troubleshooting
"Missing GRIB_pl in DataArray attrs"
- Ensure you opened the file with
engine="cfgrib" - Check that cfgrib correctly parsed the GRIB2 file
"Input does not look like reduced Gaussian grid"
- Verify your file contains a reduced Gaussian grid (not full Gaussian, lat-lon, or other projection)
- Pass
grid_type_hintif metadata is nonstandard
"Results look wrong near missing values"
- Ensure you are not using
fast=Truewhen missing values are present - Verify that missing values are either NaN (and
missvalis left as default) or match theGRIB_missingValue/missvalyou pass - If necessary, preprocess your data(例如插值或填充)以减少大块缺测区域对结果的影响
Performance is slower than expected
- Use
method="linear"unless you specifically want nearest-neighbour behavior - Use caching:
regularizer.cache=Truefor repeated calls - Profile with larger batch operations instead of single conversions
Contributing
Contributions welcome! Please:
- Read the source code and existing patterns
- Write tests for new features
- Ensure CI passes before submitting PR
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
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gaussregular-0.1.0.tar.gz.
File metadata
- Download URL: gaussregular-0.1.0.tar.gz
- Upload date:
- Size: 25.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1523cabc623d6f82ae9c68e4efbb7746b948d0b31b797313dae4b40c78db80ef
|
|
| MD5 |
b530fc8a4c7deb11e922d6e94f41d1be
|
|
| BLAKE2b-256 |
32d6bc25496d9045192f284a5fb9093f91ab57169974572991fc4339b852112f
|
File details
Details for the file gaussregular-0.1.0-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 31.9 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e8907c6db22ad3ed0da7a9d3416f159f882aa6d989801a6d10fae38a9965bed
|
|
| MD5 |
255096ec39cc09f85fa0b82aed7e3e9e
|
|
| BLAKE2b-256 |
d3159baf91a55efdb4061e9e0d6bb7d90d4be1b3ca0872b8fc8e2d626dd98f68
|
File details
Details for the file gaussregular-0.1.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 48.6 kB
- Tags: CPython 3.14, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
09d9112aac508785c5499ae99b89a4b3f91bb51ea1b8e9c0fd4137a063a6581b
|
|
| MD5 |
68930e8c658db352f73f68659980b92d
|
|
| BLAKE2b-256 |
3a61107bc0d7a9509a756371481f09bbe73722c701789564022e34015db831e0
|
File details
Details for the file gaussregular-0.1.0-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 49.3 kB
- Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fbc8d1bbd4668308afcf1100e98ec832f763e8804a9055e1bf970437af8268ff
|
|
| MD5 |
be92ccfa94d86359da6bd1d11191ba85
|
|
| BLAKE2b-256 |
7a0d97bc1c6d5cb6140a39b308c91d909f3db4d517f40fbe5024cd3d7e4ef7ce
|
File details
Details for the file gaussregular-0.1.0-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 27.9 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e025a1aeb1fc6b6e1abc0422a53f9ce9f245a292b96d1bd1cba6e37e134fed39
|
|
| MD5 |
6a98b42037ec6bc226eb0a3ec1f27737
|
|
| BLAKE2b-256 |
4991406176430ef8b7b7e917950bccf83714ebbecfc9544a41c0401ad6dffcd9
|
File details
Details for the file gaussregular-0.1.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 31.2 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c6093a99b17437d699bc446277874590bd8a43101e868ac621de0ff1a752c5f
|
|
| MD5 |
cc3d50918b74e17894c3a985c94963ce
|
|
| BLAKE2b-256 |
7ab5ed9cb7140c10db156efbadd8e9592aef71627fc098cace276d818299e8b5
|
File details
Details for the file gaussregular-0.1.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 48.5 kB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc3a174773b7730a8545542f808c0d329fc1b61577899ba15cd98b717d3b641d
|
|
| MD5 |
60af62c70c25b93f934c5ca7124df5ba
|
|
| BLAKE2b-256 |
ac224f8114360431693d6498101d5c9305880331b01c29f3329aadd902d47d57
|
File details
Details for the file gaussregular-0.1.0-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 49.2 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
12f53509f729640c2fbcb0a3a0be40ade1786567f515cdf45a85f89507374257
|
|
| MD5 |
a36fa3b296788ce0e2b8df02b9d838e6
|
|
| BLAKE2b-256 |
e800948fb7edbf926bfa5444e95c685d71ffb5bc425f00889d40a5e65a5fbc20
|
File details
Details for the file gaussregular-0.1.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 27.9 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e457dfcdeae44cc9afcabea068074a08ab20cd9209fbfaf58f6f4333041381e0
|
|
| MD5 |
be90a14a6c92355c9fd0becca9d7aa1b
|
|
| BLAKE2b-256 |
7deb0edb95f24b855e2e0c611ba72c8830e7504066166c83f1a321858f35bcc6
|
File details
Details for the file gaussregular-0.1.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 31.2 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c1711ebf362f53859439511a688a176dd070535bc5e3e729733597bd3c4b164
|
|
| MD5 |
36df698e5d1cde05cbacbabeffd36531
|
|
| BLAKE2b-256 |
e2b48628fad6082d6c5ac5e6c4a7c316ac37f569306a16543a5a9f4427258d71
|
File details
Details for the file gaussregular-0.1.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 48.5 kB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e307872f6f7c5bdb6bb8be7b038fa0b417b6d4bf3a0aef5f512da76093873b04
|
|
| MD5 |
94bb9cc6fd31d1763aedfb15303207d5
|
|
| BLAKE2b-256 |
748bf7649482dbd82abd6ea16d2e85d54cecfa15d0f2e6ccc7a2ec9f7268880b
|
File details
Details for the file gaussregular-0.1.0-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 49.3 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e2793a20557be0fdc1894083cce3484c6968a4e966d7d65ea233821ededb949
|
|
| MD5 |
1b473b13aad69ea83129c948e259cdde
|
|
| BLAKE2b-256 |
ce6ac9615bad1438ced47b4be1e037d8ff5099fdcd75c93c70019993e795dbcb
|
File details
Details for the file gaussregular-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 28.0 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d099140237a4a1dc388163492bd34908d67883982f49abd57a7693fe2b56fb61
|
|
| MD5 |
319514566d7a1e189fca31df2282bdff
|
|
| BLAKE2b-256 |
177fd10d3dc0c70db61b5a061c2f7240828fdea7d156d223f0937eb6dde2202e
|
File details
Details for the file gaussregular-0.1.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 31.3 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0c0ee8130a93c524768dd132e4a16ba892b5bf0e6dfa0029503f39ec56599ba
|
|
| MD5 |
3ff8545d94cd5219696a4977b528fdce
|
|
| BLAKE2b-256 |
e925232cf1fbc449e86d765479f082e9f07f181fe15295a82886af5a8c89086e
|
File details
Details for the file gaussregular-0.1.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 47.0 kB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
030e59753e2823846465458ed938fd3c364a2f24ff0c719d83fe431bcb58c507
|
|
| MD5 |
68630bc96fe829abfd07e3adb9954037
|
|
| BLAKE2b-256 |
881ee17dfb48e6538873a4baa92ef522fbabdd0232193d7b1e9083f97af85429
|
File details
Details for the file gaussregular-0.1.0-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 48.4 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b138c9d3e32c90ed57a0b050da80c344127dc3989542eab41006fa9d2a07a4b5
|
|
| MD5 |
740f88eb0dcf772457da854548e81a4c
|
|
| BLAKE2b-256 |
cba0efac349a23c7ae0aca8e8ec30c452bf0fdc23fb364b079ea328b625f08be
|
File details
Details for the file gaussregular-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 28.1 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b990520dc488f3721a58bed4c8e41c39da2d838b2e96945dec4b6e0e7e6e616c
|
|
| MD5 |
bc351dca99ecf47e45a4eea69cc97f05
|
|
| BLAKE2b-256 |
080437731a0b4c9862d2a8b18ae8b97446fca5cbe27bafd539afafbacdd0c5be
|
File details
Details for the file gaussregular-0.1.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 31.3 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a827dd16cec5a899e7b841fd796519c0ef01b2108b23a28ec3eefa0e921a8d95
|
|
| MD5 |
17e8176da59d8f86bb4742a566de036a
|
|
| BLAKE2b-256 |
6e7dbaa3e363ec86068730cda74da4a9a51f250ce2a6a709bd15c976fb49863b
|
File details
Details for the file gaussregular-0.1.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 46.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48b451f7a71244b7d82dd03884e39f007b2cfa86e521103807a3b9160d61f2ad
|
|
| MD5 |
4e82942467665beb9c7d51659e1fb013
|
|
| BLAKE2b-256 |
01a4da0184fe2105313033de39222f043ef2f0f0909bfcb47f834c799cb8f303
|
File details
Details for the file gaussregular-0.1.0-cp310-cp310-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp310-cp310-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 48.3 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f88d6c9c7f53f0f67e523184e24f20dec2e07707af8adba778b6f57d07990cf3
|
|
| MD5 |
1f06c454aaa415f5f3fdc55cb5b92d40
|
|
| BLAKE2b-256 |
c835dd6ffea3b553e2ceb4f5e847571352dd9d90b4760712d17d3a44cee06298
|
File details
Details for the file gaussregular-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 28.1 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61359f72e456ffa50164cec3b9f90370f67cbaa1abcf7b93a6a47a039dad140e
|
|
| MD5 |
86eb4fc984267ccd34a2b7d7f5373572
|
|
| BLAKE2b-256 |
2bc25a7811a12441ddac090cfbec9d9c9e6c24cec4b170880325981f4e5a8651
|
File details
Details for the file gaussregular-0.1.0-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 31.3 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb742c28be392a67d135837d6669ca5dc4fa81f86931109a521b0be5610519fb
|
|
| MD5 |
836c7692d349e0ed0867e5029bd003a3
|
|
| BLAKE2b-256 |
beaa13091c6fb93a63e664fcfb1560e67d767363757d05eba2df1f43dee5f782
|
File details
Details for the file gaussregular-0.1.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 46.7 kB
- Tags: CPython 3.9, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9eb0d736537db9bbb1f74f0772b5da5e65a4c656fe874c552bf7c42a729d785c
|
|
| MD5 |
9bfbc76b035f6953a70cddb880c20483
|
|
| BLAKE2b-256 |
bb123fdfbdd7268062770d2ff667ea357cfb6d8e5d025e0d1af7bd1048d8c70e
|
File details
Details for the file gaussregular-0.1.0-cp39-cp39-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp39-cp39-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 48.1 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
69880bab187cdd58b9b4d35332486a28c28e78ed1c20124e26488743f5c05bd1
|
|
| MD5 |
962f26b587123af0c8f3729ed26b1834
|
|
| BLAKE2b-256 |
5b71f584e4dbbe001649d53c25c60626852a2276feed06f7eca73e7643c896be
|
File details
Details for the file gaussregular-0.1.0-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: gaussregular-0.1.0-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 28.1 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4196e4ea065fdfd8f7d647cea17be92a21c6344f444d4330fe3268ee5db6b9e4
|
|
| MD5 |
076df3048dd1475fd5988d56284f6de8
|
|
| BLAKE2b-256 |
ace879c492c2fe274f9305b2ed46af287ff5fadbac9b7b44e62f48e37ca4c4be
|