Skip to content

Commit 7b0f985

Browse files
authored
Merge pull request #130 from abacusorg/zcv-advect-asdf-fix
Fix ASDF error in ZCV module, add ASDF 3.1.0 support
2 parents f5bc5a3 + 686e7cb commit 7b0f985

6 files changed

Lines changed: 35 additions & 15 deletions

File tree

CHANGES.rst

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
Changelog
22
=========
33

4+
2.0.1 (2024-03-01)
5+
------------------
6+
This is a bugfix release primarily to add support for ASDF 3.1.0.
7+
Several other bugs in the ZCV and HOD modules are also fixed.
8+
9+
Fixes
10+
~~~~~
11+
- Fix ASDF error in ZCV module, add ASDF 3.1.0 support [#130]
12+
- bug fix keys() [#126]
13+
- Sandydev: fixed reseeding bug [#127]
14+
- fix reseed bug [#128]
15+
- backward compatible fix for velocity bias [#121]
16+
417
2.0.0 (2023-11-15)
518
------------------
619

abacusnbody/data/asdf.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,11 @@
1111
import struct
1212
import time
1313

14-
import asdf
1514
import blosc
1615
import numpy as np
1716
from asdf.extension import Compressor, Extension
1817

1918

20-
def _monkey_patch(*args,**kwargs):
21-
raise Exception("Please use abacusnbody.data.asdf.set_nthreads(nthreads)")
22-
23-
asdf.compression.set_decompression_options = _monkey_patch
24-
2519
def set_nthreads(nthreads):
2620
blosc.set_nthreads(nthreads)
2721

abacusnbody/data/compaso_halo_catalog.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,21 @@
2020
from pathlib import PurePath
2121

2222
import asdf
23-
import asdf.compression
2423
import astropy.table
2524
import numba as nb
2625
import numpy as np
2726
from astropy.table import Table
2827

28+
try:
29+
import asdf._compression as asdf_compression
30+
except ImportError:
31+
import asdf.compression as asdf_compression
32+
2933
from . import asdf as _asdf
3034
from . import bitpacked
3135

3236
try:
33-
asdf.compression.validate('blsc')
37+
asdf_compression.validate('blsc')
3438
except Exception as e:
3539
raise Exception("Abacus ASDF extension not properly loaded! Try reinstalling abacusutils, or updating ASDF: `pip install asdf>=2.8`") from e
3640

abacusnbody/data/pipe_asdf.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,11 +86,15 @@
8686
from timeit import default_timer as timer
8787

8888
import asdf
89-
import asdf.compression
9089
import numpy as np
9190

9291
try:
93-
asdf.compression.validate('blsc')
92+
import asdf._compression as asdf_compression
93+
except ImportError:
94+
import asdf.compression as asdf_compression
95+
96+
try:
97+
asdf_compression.validate('blsc')
9498
except Exception as e:
9599
raise Exception("Abacus ASDF extension not properly loaded! Try reinstalling abacusutils, or updating ASDF: `pip install asdf>=2.8`") from e
96100

abacusnbody/data/read_abacus.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,14 @@ def read_asdf(fn, load=None, colname=None, dtype=np.float32, verbose=True, **kwa
7171
'''
7272

7373
import asdf
74-
import asdf.compression
74+
75+
try:
76+
import asdf._compression as asdf_compression
77+
except ImportError:
78+
import asdf.compression as asdf_compression
79+
7580
try:
76-
asdf.compression.validate('blsc')
81+
asdf_compression.validate('blsc')
7782
except Exception as e:
7883
raise Exception("Abacus ASDF extension not properly loaded! \
7984
Try reinstalling abacusutils: `pip install 'abacusutils>=1'`, \

abacusnbody/hod/zcv/advect_fields.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -262,8 +262,8 @@ def main(path2config, want_rsd=False, alt_simname=None, save_3D_power=False, onl
262262
print("Computing cross-correlation of", keynames[i], keynames[j])
263263

264264
# load field
265-
field_fft_i = asdf.open(fields_fft_fn[i])['data']
266-
field_fft_j = asdf.open(fields_fft_fn[j])['data']
265+
field_fft_i = asdf.open(fields_fft_fn[i], lazy_load=False)['data']
266+
field_fft_j = asdf.open(fields_fft_fn[j], lazy_load=False)['data']
267267

268268
if save_3D_power:
269269
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
295295
P['binned_poles'] *= field_D[i]*field_D[j]
296296
pk_auto.append(P['power'])
297297
pk_ij_dict[f'P_kmu_{keynames[i]}_{keynames[j]}'] = P['power']
298-
pk_ij_dict[f'N_kmu_{keynames[i]}_{keynames[j]}'] = P['N_modes']
298+
pk_ij_dict[f'N_kmu_{keynames[i]}_{keynames[j]}'] = P['N_mode']
299299
pk_ij_dict[f'P_ell_{keynames[i]}_{keynames[j]}'] = P['binned_poles']
300300
pk_ij_dict[f'N_ell_{keynames[i]}_{keynames[j]}'] = P['N_mode_poles']
301301
del field_fft_i, field_fft_j; gc.collect() # noqa: E702

0 commit comments

Comments
 (0)