Skip to content

Eddy detection for POP3 #138

@zmbvsky

Description

@zmbvsky

Hi,
I'm a Master's Student at the University of Hamburg and I'd like to apply the eddy detection and also the tracking to a dataset derived from the Parallel Ocean Program (POP).
The installation went well and the detection is working for the given example file (nrt_global_allsat_phy_l4_20190223_20190226.nc).
I tried to put all my data into a NetCDF with similar format as shown in the example.

 Source:
           20010101format.nc
Format:
           netcdf4_classic
Dimensions:
           time      = 1
           latitude  = 1200
           longitude = 3600
Variables:
    time     
           Size:       1x1
           Dimensions: time
           Datatype:   single
    latitude 
           Size:       1200x1
           Dimensions: latitude
           Datatype:   single
    longitude
           Size:       3600x1
           Dimensions: longitude
           Datatype:   single
    SSH      
           Size:       3600x1200x1
           Dimensions: longitude,latitude,time
           Datatype:   single
    UVEL     
           Size:       3600x1200x1
           Dimensions: longitude,latitude,time
           Datatype:   single
    VVEL     
            Size:       3600x1200x1
            Dimensions: longitude,latitude,time
            Datatype:   single

When I try to run the eddy detection on this dataset, I get the following error message:

  C:\Users\felix\anaconda3>EddyId share/20010101format.nc 20010101 SSH UVEL VVEL longitude latitude ./data_out -v INFO
 ←[30;47mWARNING←[0m 2022-02-21 15:38:37,567 ←[30;47mgrid←[0m.←[30;47m__init__←[0m :
        ←[30;47mWe assume pixel position of grid is centered for share/20010101format.nc←[0m
←[36mINFO←[0m 2022-02-21 15:38:37,571 ←[36mgrid←[0m.←[36msetup_coordinates←[0m :
        ←[36mGrid center←[0m
Traceback (most recent call last):
  File "c:\users\felix\anaconda3\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "c:\users\felix\anaconda3\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\felix\anaconda3\Scripts\EddyId.exe\__main__.py", line 7, in <module>
  File "c:\users\felix\anaconda3\lib\site-packages\py_eddy_tracker\appli\grid.py", line 135, in eddy_id
    a, c = identification(
  File "c:\users\felix\anaconda3\lib\site-packages\py_eddy_tracker\appli\grid.py", line 185, in identification
    grid.bessel_high_filter(h, cut_wavelength, **kw_filter)
  File "c:\users\felix\anaconda3\lib\site-packages\py_eddy_tracker\dataset\grid.py", line 1496, in bessel_high_filter
    data_out = self.convolve_filter_with_dynamic_kernel(
  File "c:\users\felix\anaconda3\lib\site-packages\py_eddy_tracker\dataset\grid.py", line 1383, in convolve_filter_with_dynamic_kernel
    kernel = kernel_func(lat, **kwargs_func)
  File "c:\users\felix\anaconda3\lib\site-packages\py_eddy_tracker\dataset\grid.py", line 1342, in kernel_bessel
    kernel[0, half_y_pt * order] = pi
IndexError: index 0 is out of bounds for axis 0 with size 0

Since I'm not very familiar with Python, it's very hard for me to understand the problem in this case and I would be very happy about any help or suggestions.
The only difference I see between my file and the given example are the missing longitude and latitude bounds. Are they required for the eddy detection?

I hope I provided all necessary informations and would be very happy about help, solving this problem.
Cheers
Felix

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions