From b66eafef7857d2ea298523e484488c7d221bc52c Mon Sep 17 00:00:00 2001 From: Lehman Garrison Date: Thu, 29 Feb 2024 13:21:29 -0800 Subject: [PATCH 1/4] zcv: use asdf lazy_load=False and N_modes -> N_mode --- abacusnbody/hod/zcv/advect_fields.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/abacusnbody/hod/zcv/advect_fields.py b/abacusnbody/hod/zcv/advect_fields.py index f28beca..a31381c 100644 --- a/abacusnbody/hod/zcv/advect_fields.py +++ b/abacusnbody/hod/zcv/advect_fields.py @@ -262,8 +262,8 @@ def main(path2config, want_rsd=False, alt_simname=None, save_3D_power=False, onl print("Computing cross-correlation of", keynames[i], keynames[j]) # load field - field_fft_i = asdf.open(fields_fft_fn[i])['data'] - field_fft_j = asdf.open(fields_fft_fn[j])['data'] + field_fft_i = asdf.open(fields_fft_fn[i], lazy_load=False)['data'] + field_fft_j = asdf.open(fields_fft_fn[j], lazy_load=False)['data'] if save_3D_power: power_ij_fn = Path(save_z_dir) / f"power{rsd_str}_{keynames[i]}_{keynames[j]}_nmesh{nmesh:d}.asdf" @@ -295,7 +295,7 @@ def main(path2config, want_rsd=False, alt_simname=None, save_3D_power=False, onl P['binned_poles'] *= field_D[i]*field_D[j] pk_auto.append(P['power']) pk_ij_dict[f'P_kmu_{keynames[i]}_{keynames[j]}'] = P['power'] - pk_ij_dict[f'N_kmu_{keynames[i]}_{keynames[j]}'] = P['N_modes'] + pk_ij_dict[f'N_kmu_{keynames[i]}_{keynames[j]}'] = P['N_mode'] pk_ij_dict[f'P_ell_{keynames[i]}_{keynames[j]}'] = P['binned_poles'] pk_ij_dict[f'N_ell_{keynames[i]}_{keynames[j]}'] = P['N_mode_poles'] del field_fft_i, field_fft_j; gc.collect() # noqa: E702 From a176bed1db165c145e3935905d703c3f4746823f Mon Sep 17 00:00:00 2001 From: Lehman Garrison Date: Thu, 29 Feb 2024 15:48:03 -0800 Subject: [PATCH 2/4] asdf: use asdf._compression to support asdf 3.1.0 --- abacusnbody/data/asdf.py | 5 ----- abacusnbody/data/compaso_halo_catalog.py | 8 ++++++-- abacusnbody/data/pipe_asdf.py | 8 ++++++-- abacusnbody/data/read_abacus.py | 9 +++++++-- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/abacusnbody/data/asdf.py b/abacusnbody/data/asdf.py index 6493da3..70fbd89 100644 --- a/abacusnbody/data/asdf.py +++ b/abacusnbody/data/asdf.py @@ -17,11 +17,6 @@ from asdf.extension import Compressor, Extension -def _monkey_patch(*args,**kwargs): - raise Exception("Please use abacusnbody.data.asdf.set_nthreads(nthreads)") - -asdf.compression.set_decompression_options = _monkey_patch - def set_nthreads(nthreads): blosc.set_nthreads(nthreads) diff --git a/abacusnbody/data/compaso_halo_catalog.py b/abacusnbody/data/compaso_halo_catalog.py index 174eebd..1e35484 100644 --- a/abacusnbody/data/compaso_halo_catalog.py +++ b/abacusnbody/data/compaso_halo_catalog.py @@ -20,17 +20,21 @@ from pathlib import PurePath import asdf -import asdf.compression import astropy.table import numba as nb import numpy as np from astropy.table import Table +try: + import asdf._compression as asdf_compression +except ImportError: + import asdf.compression as asdf_compression + from . import asdf as _asdf from . import bitpacked try: - asdf.compression.validate('blsc') + asdf_compression.validate('blsc') except Exception as e: raise Exception("Abacus ASDF extension not properly loaded! Try reinstalling abacusutils, or updating ASDF: `pip install asdf>=2.8`") from e diff --git a/abacusnbody/data/pipe_asdf.py b/abacusnbody/data/pipe_asdf.py index 5abb791..50980c6 100755 --- a/abacusnbody/data/pipe_asdf.py +++ b/abacusnbody/data/pipe_asdf.py @@ -86,11 +86,15 @@ from timeit import default_timer as timer import asdf -import asdf.compression import numpy as np try: - asdf.compression.validate('blsc') + import asdf._compression as asdf_compression +except ImportError: + import asdf.compression as asdf_compression + +try: + asdf_compression.validate('blsc') except Exception as e: raise Exception("Abacus ASDF extension not properly loaded! Try reinstalling abacusutils, or updating ASDF: `pip install asdf>=2.8`") from e diff --git a/abacusnbody/data/read_abacus.py b/abacusnbody/data/read_abacus.py index bc22276..db82908 100644 --- a/abacusnbody/data/read_abacus.py +++ b/abacusnbody/data/read_abacus.py @@ -71,9 +71,14 @@ def read_asdf(fn, load=None, colname=None, dtype=np.float32, verbose=True, **kwa ''' import asdf - import asdf.compression + + try: + import asdf._compression as asdf_compression + except ImportError: + import asdf.compression as asdf_compression + try: - asdf.compression.validate('blsc') + asdf_compression.validate('blsc') except Exception as e: raise Exception("Abacus ASDF extension not properly loaded! \ Try reinstalling abacusutils: `pip install 'abacusutils>=1'`, \ From e05ce5675276adddd475ecdc15de2c6097061de9 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 29 Feb 2024 23:58:10 +0000 Subject: [PATCH 3/4] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- abacusnbody/data/asdf.py | 1 - 1 file changed, 1 deletion(-) diff --git a/abacusnbody/data/asdf.py b/abacusnbody/data/asdf.py index 70fbd89..fb09266 100644 --- a/abacusnbody/data/asdf.py +++ b/abacusnbody/data/asdf.py @@ -11,7 +11,6 @@ import struct import time -import asdf import blosc import numpy as np from asdf.extension import Compressor, Extension From 686e7cbffaa26115f25cf52b0b9070dca1ddc23c Mon Sep 17 00:00:00 2001 From: Lehman Garrison Date: Fri, 1 Mar 2024 09:03:35 -0500 Subject: [PATCH 4/4] Update CHANGES.rst --- CHANGES.rst | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/CHANGES.rst b/CHANGES.rst index 7f3b019..5e33975 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,6 +1,19 @@ Changelog ========= +2.0.1 (2024-03-01) +------------------ +This is a bugfix release primarily to add support for ASDF 3.1.0. +Several other bugs in the ZCV and HOD modules are also fixed. + +Fixes +~~~~~ +- Fix ASDF error in ZCV module, add ASDF 3.1.0 support [#130] +- bug fix keys() [#126] +- Sandydev: fixed reseeding bug [#127] +- fix reseed bug [#128] +- backward compatible fix for velocity bias [#121] + 2.0.0 (2023-11-15) ------------------