diff --git a/tests/test_regrid/test_reduce.py b/tests/test_regrid/test_reduce.py index 058e04a46..7d81f7547 100644 --- a/tests/test_regrid/test_reduce.py +++ b/tests/test_regrid/test_reduce.py @@ -12,10 +12,8 @@ def forward_args(): def reverse_args(): - values = np.flip(np.array([0.0, 1.0, 2.0, np.nan])) - weights = np.array([0.5, 0.5, 0.5, 0.5]) - work = np.empty_like(weights) - return values, weights, work + values, weights, work = forward_args() + return np.flip(values), weights, work @pytest.mark.parametrize("args", [forward_args(), reverse_args()]) diff --git a/xugrid/regrid/nanpercentile.py b/xugrid/regrid/nanpercentile.py index 07a0ced4c..1163c3612 100644 --- a/xugrid/regrid/nanpercentile.py +++ b/xugrid/regrid/nanpercentile.py @@ -1,5 +1,5 @@ """ -Numba percentile methods allocate continuosly on the heap. +Numba percentile methods allocate continuously on the heap. This has significant overhead when calling the reduction method millions of times -- as happens when regridding. diff --git a/xugrid/regrid/regridder.py b/xugrid/regrid/regridder.py index 9b06ee735..bb587ec30 100644 --- a/xugrid/regrid/regridder.py +++ b/xugrid/regrid/regridder.py @@ -467,10 +467,16 @@ class OverlapRegridder(BaseOverlapRegridder): Examples -------- + Create an OverlapRegridder to regrid with mean: + + >>> regridder = OverlapRegridder(source_grid, target_grid, method="mean") + >>> regridder.regrid(source_data) + Setup a custom percentile method and apply it: >>> p33_3 = OverlapRegridder.create_percentile_method(33.3) - >>> regridder = OverlapRegridder(source, target, method=p33_3) + >>> regridder = OverlapRegridder(source_grid, target_grid, method=p33_3) + >>> regridder.regrid(source_data) """ _JIT_FUNCTIONS = {