simonsobs / mnms

Generate map-based noise models and noise simulations.
MIT License
1 stars 1 forks source link

crash when generating new sims with mode 'fdw' #7

Open mgatti29 opened 1 month ago

mgatti29 commented 1 month ago

Hi, I try to generate a new noise sim with running this:

config_name = 'act_dr6.01_cmbmask' noise_modelname = 'fdw' qids = ['pa4a', 'pa4b'] tnm = nm.BaseNoiseModel.from_config( config_name, noise_modelname, *qids, ) my_sim = tnm.get_sim(split_num=7, sim_num=200, lmax=5400)

and got the following error

Sim split_num 7, sim_num 200, lmax 5400, alm False not found on-disk, generating instead 90.82 277.07 291.43 Generating observed-pixels mask 2.89 275.60 291.43 Generating sqrt_ivars for qid pa6a 2.71 275.60 291.43 Generating sqrt_ivars for qid pa6b Building and storing FDWKernels 82.60 310.30 310.73 Generating noise sim for split_num 7, sim_num 200, lmax 5400, alm False

AssertionError Traceback (most recent call last) Cell In[9], line 1 ----> 1 my_sim = tnm.get_sim(split_num=split_i, sim_num=200, lmax=5400)

File /global/u2/m/mgatti/mnms/mnms/noise_models.py:1763, in BaseNoiseModel.get_sim(self, split_num, sim_num, lmax, seed, alm, check_on_disk, generate, keep_model, keep_mask_obs, keep_sqrt_ivar, write, verbose) 1761 # get the sim 1762 with bench.show(f'Generating noise sim for {utils.kwargs_str(split_num=split_num, sim_num=sim_num, lmax=lmax, alm=alm)}'): -> 1763 sim = self._get_sim( 1764 model_dict, seed, self._iso_filt_method, self._ivar_filt_method, 1765 filter_kwargs, verbose 1766 ) 1767 sim *= mask_obs 1768 if alm:

File /global/u2/m/mgatti/mnms/mnms/noise_models.py:2581, in FDWNoiseModel._get_sim(self, model_dict, seed, iso_filt_method, ivar_filt_method, filter_kwargs, verbose) 2578 self._fk_dict[lmax] = self._get_kernels(lmax) 2579 fk = self._fk_dict[lmax] -> 2581 sim = self.class.get_sim_static( 2582 sqrt_cov_mat, seed, fk, nthread=0, iso_filt_method=iso_filt_method, 2583 ivar_filt_method=ivar_filt_method, filter_kwargs=filter_kwargs, 2584 verbose=verbose 2585 ) 2587 # We always want shape (num_arrays, num_splits=1, num_pol, ny, nx). 2588 return sim.reshape(self._num_arrays, 1, -1, *sim.shape[-2:])

File /global/u2/m/mgatti/mnms/mnms/noise_models.py:2636, in FDWNoiseModel.get_sim_static(cls, sqrt_cov_mat, seed, fdw_kernels, nthread, iso_filt_method, ivar_filt_method, filter_kwargs, verbose) 2590 @classmethod 2591 def get_sim_static(cls, sqrt_cov_mat, seed, fdw_kernels, nthread=0, 2592 iso_filt_method=None, ivar_filt_method=None, 2593 filter_kwargs=None, verbose=False): 2594 """Draw a realization from the square-root covariance in the directional 2595 wavelet basis. Allows filtering the output map after the tiling 2596 transform. (...) 2634 filter_kwargs. 2635 """ -> 2636 sim = fdw_noise.get_fdw_noise_sim( 2637 sqrt_cov_mat, seed, fdw_kernels, nthread=nthread, verbose=verbose 2638 ) 2640 sim = cls.filter( 2641 sim, iso_filt_method=iso_filt_method, 2642 ivar_filt_method=ivar_filt_method, filter_kwargs=filter_kwargs, 2643 adjoint=False, verbose=verbose 2644 ) 2646 return sim

File /global/u2/m/mgatti/mnms/mnms/fdw_noise.py:1030, in get_fdw_noise_sim(sqrt_cov_wavs, seed, fdw_kernels, nthread, verbose) 1026 wmap_sim = utils.concurrent_einsum( 1027 '...ab, ...b -> ...a', wmap, wmap_sim, nthread=nthread) 1028 wavs_sim[idx] = wmap_sim -> 1030 kmap = fdw_kernels.wav2k(wavs_sim, nthread=nthread) 1032 return kmap

File /global/u2/m/mgatti/mnms/mnms/fdw_noise.py:178, in FDWKernels.wav2k(self, wavs, nthread) 175 wav = wavs[kern_key] 176 assert wav.shape[:-2] == preshape, \ 177 f'wav {kern_key} preshape is {wav.shape[:-2]}, expected {preshape}' --> 178 kmap_wav = kernel.wav2k(wav, nthread=nthread) 179 for sel in kernel._sels: 180 kmap[sel] += kmap_wav[sel]

File /global/u2/m/mgatti/mnms/mnms/fdw_noise.py:386, in Kernel.wav2k(self, wmap, use_kernel_wcs, nthread) 364 def wav2k(self, wmap, use_kernel_wcs=True, nthread=0): 365 """Generate the real DFT of a wavelet map for this kernel. This is 366 achieved by convolving the real DFT of the wavelet map with the 367 complex conjugate of this kernel. (...) 384 Real DFT of a map to be analyzed. 385 """ --> 386 assert wmap.shape[-2] == self._k_kernel.shape[-2], \ 387 f'wmap must have same shape[-2] as k_kernel, got\n' + \ 388 f'{wmap.shape[-2]} and {self._k_kernel.shape[-2]}' 389 assert wmap.shape[-1]//2+1 == self._k_kernel.shape[-1], \ 390 f'wmap must have same shape[-1]//2+1 as k_kernel, got\n' + \ 391 f'{wmap.shape[-1]//2+1} and {self._k_kernel.shape[-1]}' 393 kmap = utils.rfft(wmap, normalize='backward', nthread=nthread)

AssertionError: wmap must have same shape[-2] as k_kernel, got 331 and 333

mgatti29 commented 1 month ago

for later reference, a few info about my environment

_libgcc_mutex 0.1 conda_forge conda-forge _openmp_mutex 4.5 2_gnu conda-forge astropy 5.2.2 pypi_0 pypi asttokens 2.4.1 pypi_0 pypi backcall 0.2.0 pypi_0 pypi beautifulsoup4 4.12.3 pypi_0 pypi bornraytrace 0.2 pypi_0 pypi bzip2 1.0.8 hd590300_5 conda-forge ca-certificates 2023.7.22 hbcca054_0 conda-forge camb 1.5.2 pypi_0 pypi chainconsumer 0.34.0 pypi_0 pypi classy 2.9.4 pypi_0 pypi cmb-lensing-sbi 0.1 pypi_0 pypi colorama 0.4.6 pypi_0 pypi colossus 1.3.5 pypi_0 pypi comm 0.2.0 pypi_0 pypi conan 2.4.1 pypi_0 pypi contourpy 1.1.1 pypi_0 pypi cosmology 2022.10.9 pypi_0 pypi cosmolopy 0.4.1 pypi_0 pypi cycler 0.12.1 pypi_0 pypi cython 3.0.5 pypi_0 pypi debugpy 1.8.0 pypi_0 pypi decorator 5.1.1 pypi_0 pypi distro 1.8.0 pypi_0 pypi ekit 0.2.5 pypi_0 pypi executing 2.0.1 pypi_0 pypi falafel 0.1.0 pypi_0 pypi fasteners 0.19 pypi_0 pypi flt 2022.10.17 pypi_0 pypi fonttools 4.44.0 pypi_0 pypi frogress 0.9.1 pypi_0 pypi future 0.18.3 pypi_0 pypi gaussiancl 2023.1 pypi_0 pypi glass 2023.8.dev15+gba9b1b5 pypi_0 pypi halotools 0.7 pypi_0 pypi healpix 2024.1 pypi_0 pypi healpy 1.16.5 pypi_0 pypi importlib-metadata 6.8.0 pypi_0 pypi importlib-resources 6.1.0 pypi_0 pypi ipykernel 6.26.0 pypi_0 pypi ipython 8.12.3 pypi_0 pypi jedi 0.19.1 pypi_0 pypi jinja2 3.1.4 pypi_0 pypi jupyter-client 8.6.0 pypi_0 pypi jupyter-core 5.5.0 pypi_0 pypi kiwisolver 1.4.5 pypi_0 pypi ld_impl_linux-64 2.40 h41732ed_0 conda-forge lenspyx 2.0.51 pypi_0 pypi libffi 3.4.2 h7f98852_5 conda-forge libgcc-ng 13.2.0 h807b86a_2 conda-forge libgomp 13.2.0 h807b86a_2 conda-forge libnsl 2.0.1 hd590300_0 conda-forge libsqlite 3.44.0 h2797004_0 conda-forge libuuid 2.38.1 h0b41bf4_0 conda-forge libzlib 1.2.13 hd590300_5 conda-forge llvmlite 0.41.1 pypi_0 pypi lsstdesc-coord 1.3.0 pypi_0 pypi markupsafe 2.1.5 pypi_0 pypi matplotlib 3.7.3 pypi_0 pypi matplotlib-inline 0.1.6 pypi_0 pypi mcfit 0.0.21 pypi_0 pypi mnms 0.0.7 dev_0 mpi4py 3.1.5 pypi_0 pypi mpmath 1.3.0 pypi_0 pypi ncurses 6.4 h59595ed_2 conda-forge nest-asyncio 1.5.8 pypi_0 pypi numba 0.58.1 pypi_0 pypi numpy 1.24.4 pypi_0 pypi openssl 3.1.4 hd590300_0 conda-forge optweight 0.0.3 pypi_0 pypi orphics 0.1 pypi_0 pypi packaging 23.2 pypi_0 pypi pandas 2.0.3 pypi_0 pypi parso 0.8.3 pypi_0 pypi patch-ng 1.17.4 pypi_0 pypi patsy 0.5.3 pypi_0 pypi pexpect 4.8.0 pypi_0 pypi pickleshare 0.7.5 pypi_0 pypi pillow 10.1.0 pypi_0 pypi pip 23.3.1 pyhd8ed1ab_0 conda-forge platformdirs 3.11.0 pypi_0 pypi prompt-toolkit 3.0.39 pypi_0 pypi psutil 5.9.6 pypi_0 pypi ptyprocess 0.7.0 pypi_0 pypi pure-eval 0.2.2 pypi_0 pypi pybind11 2.13.1 pypi_0 pypi pyerfa 2.0.0.3 pypi_0 pypi pyfisher 2.1.0 pypi_0 pypi pygments 2.16.1 pypi_0 pypi pyparsing 3.1.1 pypi_0 pypi python 3.8.18 hd12c33a_0_cpython conda-forge python-dateutil 2.8.2 pypi_0 pypi pytz 2023.3.post1 pypi_0 pypi pyyaml 6.0.1 pypi_0 pypi pyzmq 25.1.1 pypi_0 pypi readline 8.2 h8228510_1 conda-forge scipy 1.10.1 pypi_0 pypi setuptools 68.2.2 pyhd8ed1ab_0 conda-forge six 1.16.0 pypi_0 pypi sofind 0.0.7a0 dev_0 soupsieve 2.5 pypi_0 pypi stack-data 0.6.3 pypi_0 pypi statsmodels 0.14.0 pypi_0 pypi sympy 1.12 pypi_0 pypi tabulate 0.9.0 pypi_0 pypi tk 8.6.13 noxft_h4845f30_101 conda-forge tornado 6.3.3 pypi_0 pypi traitlets 5.13.0 pypi_0 pypi transformcl 2022.8.9 pypi_0 pypi treecorr 5.0.1 pypi_0 pypi typing-extensions 4.8.0 pypi_0 pypi tzdata 2023.3 pypi_0 pypi unyt 2.9.5 pypi_0 pypi urllib3 1.26.19 pypi_0 pypi wcwidth 0.2.9 pypi_0 pypi wheel 0.41.3 pyhd8ed1ab_0 conda-forge xz 5.2.6 h166bdaf_0 conda-forge zipp 3.17.0 pypi_0 pypi

pixell.version '0.21.0' mnms 0.0.7 dev_0 ducc0.version '0.32.0'