Skip to main content

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
  • 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
  • Configurable precision: precision="auto" preserves float32/float64 input precision; single and double force the output precision
  • 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 (Default)

By default fast=True is used for best performance. The linear interpolation kernel handles missing values (NaN / sentinel) correctly even in fast mode — if both interpolation neighbors are missing the output is missing, otherwise the valid neighbor is used. Set fast=False only if you need per-row missing-value scanning for strict correctness on exotic sentinel values:

import gaussregular as gr

engine = gr.GaussRegularizer(method="linear", cache=True)

# Default: fast=True — recommended for all ERA5/GRIB data
regular_ds = engine.regularize_dataset(ds)

# Safe mode: per-row missing-value scan (slower, ~1.8x)
regular_ds_safe = engine.regularize_dataset(ds, fast=False)

Advanced: Precision

By default precision="auto" is used. Float32 inputs use the single-precision C path and return float32 outputs; float64 inputs use the double-precision C path and return float64 outputs. Use precision="single" or precision="double" to force a specific output precision:

import gaussregular as gr

engine = gr.GaussRegularizer(method="linear", cache=True)

regular_auto = engine.regularize_xarray(da)  # follows da.dtype for float32/float64
regular_f32 = engine.regularize_xarray(da, precision="single")
regular_f64 = engine.regularize_xarray(da, precision="double")

API Reference

GaussRegularizer

Main converter class.

Parameters:

  • method (str, default="linear"): Interpolation method, either "linear" or "nearest"
  • precision (str, default="auto"): Precision policy, one of "auto", "single", or "double". Auto preserves float32/float64 input precision
  • grid_number (int, optional): Default Gaussian truncation number N (e.g., 320 for N320/O320). Used when GRIB_N is missing for xarray inputs and as a fallback when regularize_values is called without a per-call grid_number. When neither metadata nor this attribute provide N, a heuristic based on the equatorial row length is used
  • cache (bool, default=False): Enable xarray metadata plan caching for repeated calls on same-structure data
  • max_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=True)

  • 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, if missval is NaN) are treated as missing and handled by the interpolation kernel
  • nlon (optional): Number of columns in output regular grid. Auto-inferred if not provided
  • method (optional): Per-call method override: "linear" or "nearest"
  • fast (default=True): Per-row missing-value scan toggle. True (recommended) lets the interpolation kernel handle NaN/sentinel natively. Set False for explicit per-row scanning
  • Returns: (out, lon) where out is NumPy array and lon is longitude vector

regularize_xarray(dataarray, nlon=None, grid_type_hint=None, method=None, fast=True)

  • dataarray: xarray.DataArray with GRIB metadata in .attrs
  • Requires: GRIB_pl attribute. If GRIB_missingValue is present it is used as missval; otherwise NaN values are treated as missing
  • method (optional): Per-call method override: "linear" or "nearest"
  • fast (default=True): Per-row missing-value scan toggle
  • Returns: xarray.DataArray with regularized data and preserved coordinates

regularize_dataset(dataset, nlon=None, grid_type_hint=None, method=None, fast=True)

  • 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 (default=True): Per-row missing-value scan toggle
  • Returns: xarray.Dataset

clear_cache()

  • Clears internal xarray plan cache

Module-level Functions

regularize_values(values, pl, missval, nlon=None, method="linear", fast=True)

  • Standalone function using default regularizer configuration

regularize_xarray(dataarray, grid_type_hint=None, method="linear", fast=True)

  • Standalone function using default regularizer configuration

regularize_dataset(dataset, grid_type_hint=None, method="linear", fast=True)

  • 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_gg
  • reduced-gg
  • reduced gaussian
  • octahedral_gg
  • octahedral_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=True (default): Recommended mode. The linear interpolation kernel correctly propagates missing values at boundaries (both neighbors missing → output missing). Provides maximum throughput.
  • fast=False: Per-row missing-value scan before interpolation. Use only if you have exotic non-NaN sentinel values that require explicit detection. Typical slowdown: ~1.8x.

Caching

  • Enable cache=True when 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

  1. Missing values are propagated by the interpolation kernel — NaN/sentinel inputs produce NaN outputs at affected grid points by default (fast=True). For strict per-row scanning use fast=False
  2. Requires GRIB metadata — pl array must be provided or in DataArray attrs
  3. Supports only Gaussian grids — other map projections not supported
  4. Precision: Outputs double-precision computation; results cast back to input dtype
  5. 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_hint if metadata is nonstandard

"Results look wrong near missing values"

  • Ensure you are not using fast=True when missing values are present
  • Verify that missing values are either NaN (and missval is left as default) or match the GRIB_missingValue/missval you 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=True for repeated calls
  • Profile with larger batch operations instead of single conversions

Contributing

Contributions welcome! Please:

  1. Read the source code and existing patterns
  2. Write tests for new features
  3. Ensure CI passes before submitting PR

Metadata

Release files for gaussregular 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gaussregular 0.1.3
File Size Uploaded
gaussregular-0.1.3.tar.gz 27.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for gaussregular 0.1.3
File
gaussregular-0.1.3-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
gaussregular-0.1.3-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
gaussregular-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
gaussregular-0.1.3-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
gaussregular-0.1.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
gaussregular-0.1.3-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-64, Linux glibc 2.17+ x86-64 Details
gaussregular-0.1.3-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
gaussregular-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
gaussregular-0.1.3-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
gaussregular-0.1.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
gaussregular-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
gaussregular-0.1.3-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
gaussregular-0.1.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
gaussregular-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
gaussregular-0.1.3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
gaussregular-0.1.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
gaussregular-0.1.3-cp310-cp310-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
gaussregular-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
gaussregular-0.1.3-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
gaussregular-0.1.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp39-cp39-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64, Linux glibc 2.5+ x86-64 Details
gaussregular-0.1.3-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
gaussregular-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details

Total release size: 1.3 MB

Release files / gaussregular-0.1.3.tar.gz

Download URL gaussregular-0.1.3.tar.gz
Size 27.2 kB
Tags Source
SHA-256 checksum
How to use checksums
47b6eb10c16032bd86212966ae7f258fd43251de594f6b0e3e7db9234d56b41d
BLAKE2b-256 checksum
How to use checksums
9e200826bc53d574bef6ae02d29ca4e730eefb12019f34b6c283f68deaf6efa6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp314-cp314-win_amd64.whl

Download URL gaussregular-0.1.3-cp314-cp314-win_amd64.whl
Size 34.5 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
4448166c5c241fdbee5547446282ea813078c9c2983a2ec1a231f1613dcae407
BLAKE2b-256 checksum
How to use checksums
62f90149643b7cc29d74309ddce54fc36d05319faa5581d1ff42f6218be15de8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 56.2 kB
Tags CPython 3.14 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
0691a6b43021d9be31ec5bc4a07f7631a076d2dc3aef98157c7a0d2d18e89626
BLAKE2b-256 checksum
How to use checksums
5d71c263e5169818a904e464230ed7ea67c435b712b71e031aafea34e76e391a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
Size 58.4 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
6d306b5dd412ac103c1b67bd13f1b04f52e93a3d447107b9d127ad956be610d9
BLAKE2b-256 checksum
How to use checksums
916220411d67e1c52bc292e86cca0e9b5985fd9fc3f5a9e4576b91a2dfcd9bcd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp314-cp314-macosx_11_0_arm64.whl

Download URL gaussregular-0.1.3-cp314-cp314-macosx_11_0_arm64.whl
Size 30.3 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2a45420615d202e6ab36aabf81f2053b99b83f16b4a05e4f6cd22ef83ee87da3
BLAKE2b-256 checksum
How to use checksums
2ab106bdfef88a189b754c2ce0b2da14efc47341b59cb544685aa93b73be82eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl

Download URL gaussregular-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl
Size 31.0 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
c486249ac4861f45d2a853e819b371e6eee8cf519cb40f42ce3b54a64a886e65
BLAKE2b-256 checksum
How to use checksums
f324c1f0b72ac6b6972b275ce3586a0a5dfc7b4b7c5959350c089c281dbe4d65
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp313-cp313-win_amd64.whl

Download URL gaussregular-0.1.3-cp313-cp313-win_amd64.whl
Size 33.9 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e7691b9c304f85aca3025798ba66faf46a9b8cb1d3cb0c84f5e88d43ee622e3d
BLAKE2b-256 checksum
How to use checksums
32bcd9287453897286262e76d61a153afb2eb26f3cc1531cf21c7f67b09d9cc5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 56.0 kB
Tags CPython 3.13 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
cca6d01828323c9a6b01645940f81f9e56096b27a9a1da85b9b229d460a00a65
BLAKE2b-256 checksum
How to use checksums
ac4cd399325e3c847d2b541ab6444b8ec940cc0e1e907445be04e356d34afd09
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
Size 58.1 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
0e5338f58d2d07eb7405604d6d1fbf21d162d2ba501ba510733779e0517a04f9
BLAKE2b-256 checksum
How to use checksums
0f4c87d3c3f620ab62183f37edbcd9dc68f4783ab4e71963c56d463f90538419
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp313-cp313-macosx_11_0_arm64.whl

Download URL gaussregular-0.1.3-cp313-cp313-macosx_11_0_arm64.whl
Size 30.3 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6d7adf216ef94640a8d6ffcc04f3c9cfeeb230cfee9df68aac975bbc32c5e507
BLAKE2b-256 checksum
How to use checksums
88825d48dd56df64bce9e0d9081cc5571ab973303b5fe957d3689b6c8017d344
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl

Download URL gaussregular-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl
Size 30.9 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
9092ccff09ad2078cbd19688578637f9090c8265d7d2b952e652d768243d4feb
BLAKE2b-256 checksum
How to use checksums
afce77e84b330a781b9bc6e6c4afd5f8f631d2daf224f57bf305cbc73a123dcf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp312-cp312-win_amd64.whl

Download URL gaussregular-0.1.3-cp312-cp312-win_amd64.whl
Size 33.9 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
443215d929b9cd7f96568a35401fd1200fa27f105c2255281130cfb13c6dc8d0
BLAKE2b-256 checksum
How to use checksums
31e3291320362c8facec7f5301e9abca2bf8ed5dc2288a574a5ec68c6dd3ccd0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 56.0 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
e3c077ee4ecf2aab71784bfe5ff4768fb012d931f2392af0b6d51e105fe5936d
BLAKE2b-256 checksum
How to use checksums
deaa0fee76bd7f52daea89ab17c1650fdb75343ac9f646570b576e455d077b73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
Size 58.2 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
92409210ef31a072993c32c40beec4caeb5ee4b73a0c36c999ed8f9c8d9028f2
BLAKE2b-256 checksum
How to use checksums
a1d3cd71078bc27e2e701431b998474763efb8a311a689fe09fd94dc5830912f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp312-cp312-macosx_11_0_arm64.whl

Download URL gaussregular-0.1.3-cp312-cp312-macosx_11_0_arm64.whl
Size 30.3 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ab9d33d119d93b8ade7ca0befc21553cd8f7dc11295d96f70bff521bb13264a6
BLAKE2b-256 checksum
How to use checksums
2d4826cfeb9253a8b91a6d5b36fb063092c9497ed5aaab05a60a9a7614ec9335
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl

Download URL gaussregular-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl
Size 30.9 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
e64519a88ab85ba98d5638f79599edd73b11862017028dfc0ada6b056b0c3a39
BLAKE2b-256 checksum
How to use checksums
10703764432958309b3967dcdf9ba97f36207a1b44c6729b889e7100fd850db5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp311-cp311-win_amd64.whl

Download URL gaussregular-0.1.3-cp311-cp311-win_amd64.whl
Size 33.9 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
d11d780c214accc34288559606263fc6573e0b6054394b32392a20a481404955
BLAKE2b-256 checksum
How to use checksums
83c7da8c57dda609bdcfd48e4f410ca561654badba3c6b538c113e87d2c818b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 54.8 kB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
21aa82de513e2a08d3801e860187a9bf0442621be7c38c80c8764d4773a31976
BLAKE2b-256 checksum
How to use checksums
9652efb1b891026d397c2ea4b5c74b9c2637f01990e651913db92a78f637ee44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
Size 57.7 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
6aa2b74cf18c010563333520796a9840b3c16e2070a765a6e623ea04db09fad4
BLAKE2b-256 checksum
How to use checksums
0219a3d2c7a64eddb9303c2ea4412afd0ec1b53a005e68fa4bbe88510843e36d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp311-cp311-macosx_11_0_arm64.whl

Download URL gaussregular-0.1.3-cp311-cp311-macosx_11_0_arm64.whl
Size 30.3 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
900c06df6863c4aff2e6e71ced7c97f213d1fb8ec2cb39124aaaafaacf29b0ac
BLAKE2b-256 checksum
How to use checksums
b14bed380e732d71b671d95beabe23dd9c6d7ed190dac16b21fb24b816f18ef4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl

Download URL gaussregular-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl
Size 31.0 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
32589362c1cbec947be71f0bc21d6e1eac61628109e6a0dc0d43a3c8dda6e3c8
BLAKE2b-256 checksum
How to use checksums
7956173cdd96a9b1b0b51a1dce1f9225188d4b0895927a8be4e54e255c33df45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp310-cp310-win_amd64.whl

Download URL gaussregular-0.1.3-cp310-cp310-win_amd64.whl
Size 33.9 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
af12677ad41e51f1e5d50cd42ee031cc8b6b591432d40a18a65136b5ae37b87d
BLAKE2b-256 checksum
How to use checksums
bfd83c666cded43a89c7af064387956565179abce0342c3779c87988d3087175
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 54.0 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
eb28a9c7b2ed6171be55fd6028e830c37946eaa05e20939a87b4a7cc4e6c6f40
BLAKE2b-256 checksum
How to use checksums
c4e7d9873a0a1139cccf06300e9a653489c3cff03cb22fdb30eafd83bb1166ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp310-cp310-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp310-cp310-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
Size 56.8 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
c299b109b52b0104ad6ddf03d1b9f89d789b347d2c2e460ef95b57cea3a64027
BLAKE2b-256 checksum
How to use checksums
e548a92f658da6f520d133783c07b73b40debbcaefa00d74d2c00732ed69033f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp310-cp310-macosx_11_0_arm64.whl

Download URL gaussregular-0.1.3-cp310-cp310-macosx_11_0_arm64.whl
Size 30.3 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d80aa7a843ff5b96da4735499b62dd02c71c48e06cf60356c13fa53dafe8c539
BLAKE2b-256 checksum
How to use checksums
808afc8024de1e994f312ce76943e8c9679318cf943ecbfbedadf28ecc2770a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl

Download URL gaussregular-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl
Size 31.0 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
f5ae2751713966b49c23d5318d06c0cc40d2543a77928507dccbbaba953922dd
BLAKE2b-256 checksum
How to use checksums
caa9fbab24fb31119e0220f6059b2734091cbfadbc2813005ece81b439ac7848
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp39-cp39-win_amd64.whl

Download URL gaussregular-0.1.3-cp39-cp39-win_amd64.whl
Size 33.9 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
44401547bd9e45d7891a8aef8a3bd0eeb3f321a80d65e025e65be9152f33ce19
BLAKE2b-256 checksum
How to use checksums
ab34abf7b113fc11b31fc6987814cc62b75b9097a9de1e2d7ea0e077fbb13210
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp39-cp39-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 53.7 kB
Tags CPython 3.9 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
de26517de22defc772d962aacb23fd85f3b4a82d2582e80594bff27ecd15479a
BLAKE2b-256 checksum
How to use checksums
912a43fb07db003d273664f572a06c2b7867d5c1be64301faff73416ea32c9fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp39-cp39-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl

Download URL gaussregular-0.1.3-cp39-cp39-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl
Size 56.5 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
43af37d02b460ea671dbb962b17e173d48c61bd90f8966bac80994ee4ad65cf3
BLAKE2b-256 checksum
How to use checksums
4acd6b51c7186dad5667616c599a4766309b90b00d0730b6080218c8590dc8c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp39-cp39-macosx_11_0_arm64.whl

Download URL gaussregular-0.1.3-cp39-cp39-macosx_11_0_arm64.whl
Size 30.3 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
066dcc2f4912c381bfdff59e6626af82991c096702231da1f15f7737a42e71a7
BLAKE2b-256 checksum
How to use checksums
f7ad713de89055d31e98dccad17e09aa2d03ad810fba772b2c2ddf7106fead70
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / gaussregular-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl

Download URL gaussregular-0.1.3-cp39-cp39-macosx_10_9_x86_64.whl
Size 31.0 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
20670afc32627eb3113fe9c131fa707b2edade7cda0cf4a1e5d0f2f0487d4fc6
BLAKE2b-256 checksum
How to use checksums
8f82d42c597393fe09324ef70eef5ab603b8d4a7ac49b4d73bcf9c00091f1b5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release history Release notifications | RSS feed

This release

0.1.3 This release

31 release files

0.1.2

31 release files

0.1.1

25 release files

0.1.0

25 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page