The code can handle a situation when the flux file has slightly different coordinates (i.e. precision errors) from the fp files, but it appears to be failing when you have two sites whose fps have different coordinates to each other. The specific example I am running is for 2014 hfo1234zee, using MHD and JFJ, taking fps from the store: "/group/chem/acrg/object_stores/updated/shared_store_zarr". The error I get is:
Traceback (most recent call last):
File "/user/home/zh21490/openghg_inversions/openghg_inversions/hbmcmc/run_hbmcmc.py", line 247, in <module>
mcmc_function(**param)
File "/user/home/zh21490/openghg_inversions/openghg_inversions/hbmcmc/hbmcmc.py", line 388, in fixedbasisMCMC
fp_data = basis_functions_wrapper(
^^^^^^^^^^^^^^^^^^^^^^^^
File "/user/home/zh21490/openghg_inversions/openghg_inversions/basis/_wrapper.py", line 95, in basis_functions_wrapper
basis_data_array = fixed_outer_regions_basis(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/user/home/zh21490/openghg_inversions/openghg_inversions/basis/_functions.py", line 193, in fixed_outer_regions_basis
inner_region = basis_function(fp_all, start_date, emissions_name, nbasis, abs_flux, mask=mask)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/user/home/zh21490/openghg_inversions/openghg_inversions/basis/_functions.py", line 151, in bucketbasisfunction
fps = _mean_fp_times_mean_flux(flux, footprints, abs_flux=abs_flux, mask=mask).as_numpy()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/user/home/zh21490/openghg_inversions/openghg_inversions/basis/_functions.py", line 54, in _mean_fp_times_mean_flux
mean_fp, mean_flux, mask = xr.align(mean_fp, mean_flux, mask, join="override")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/user/home/zh21490/.conda/envs/openghg_dev_env/lib/python3.12/site-packages/xarray/core/alignment.py", line 882, in align
aligner.align()
File "/user/home/zh21490/.conda/envs/openghg_dev_env/lib/python3.12/site-packages/xarray/core/alignment.py", line 571, in align
self.find_matching_indexes()
File "/user/home/zh21490/.conda/envs/openghg_dev_env/lib/python3.12/site-packages/xarray/core/alignment.py", line 271, in find_matching_indexes
raise ValueError(
ValueError: cannot align objects with join='override' with matching indexes along dimension 'lat' that don't have the same size
The code can handle a situation when the flux file has slightly different coordinates (i.e. precision errors) from the fp files, but it appears to be failing when you have two sites whose fps have different coordinates to each other. The specific example I am running is for 2014 hfo1234zee, using MHD and JFJ, taking fps from the store: "/group/chem/acrg/object_stores/updated/shared_store_zarr". The error I get is: