From c80fed1875c4876c6b1eb16c6bb18656c6cb05d9 Mon Sep 17 00:00:00 2001 From: Juniper Tyree Date: Tue, 22 Jul 2025 10:22:58 +0300 Subject: [PATCH] Fix precision and rounding for stochround codec --- pyproject.toml | 2 +- src/climatebenchpress/compressor/compressors/stochround.py | 2 +- src/climatebenchpress/compressor/compressors/stochround_pco.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index ecc1ed6..bcd4831 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,7 +20,7 @@ dependencies = [ "numcodecs-wasm-fixed-offset-scale~=0.3.0", "numcodecs-wasm-jpeg2000~=0.2.0", "numcodecs-wasm-pco~=0.2.1", - "numcodecs-wasm-round~=0.3.0", + "numcodecs-wasm-round~=0.4.0", "numcodecs-wasm-sperr~=0.1.0", "numcodecs-wasm-sz3~=0.6.0", "numcodecs-wasm-tthresh~=0.2.0", diff --git a/src/climatebenchpress/compressor/compressors/stochround.py b/src/climatebenchpress/compressor/compressors/stochround.py index 3b76db9..dad28e7 100644 --- a/src/climatebenchpress/compressor/compressors/stochround.py +++ b/src/climatebenchpress/compressor/compressors/stochround.py @@ -16,7 +16,7 @@ class StochRound(Compressor): def abs_bound_codec(error_bound, **kwargs): precision = error_bound return CodecStack( - numcodecs_wasm_uniform_noise.UniformNoise(scale=precision / 2, seed=42), + numcodecs_wasm_uniform_noise.UniformNoise(scale=precision, seed=42), numcodecs_wasm_round.Round(precision=precision), numcodecs_wasm_zstd.Zstd(level=3), ) diff --git a/src/climatebenchpress/compressor/compressors/stochround_pco.py b/src/climatebenchpress/compressor/compressors/stochround_pco.py index e0b2f8b..6f25180 100644 --- a/src/climatebenchpress/compressor/compressors/stochround_pco.py +++ b/src/climatebenchpress/compressor/compressors/stochround_pco.py @@ -16,7 +16,7 @@ class StochRoundPco(Compressor): def abs_bound_codec(error_bound, **kwargs): precision = error_bound return CodecStack( - numcodecs_wasm_uniform_noise.UniformNoise(scale=precision / 2, seed=42), + numcodecs_wasm_uniform_noise.UniformNoise(scale=precision, seed=42), numcodecs_wasm_round.Round(precision=precision), numcodecs_wasm_pco.Pco( level=8,