umr-lops / sarwaveifrproc

SAR sea state Ifremer processor
https://cerweb.ifremer.fr/datarmor/sarwave/documentation/processor/sar/sarwaveifrproc/html/
MIT License
4 stars 1 forks source link

latest L1B without `burst` dimension are not handle by the processor #3

Closed agrouaze closed 6 months ago

agrouaze commented 6 months ago

When using Level-1B recent product (without burst dimension) as input of the sea state Level-2 processor, one can get such error:

Traceback (most recent call last):                                                                                                                                                                             
  File "/usr/local/bin/L2-wave-processor", line 8, in <module>                                                                                                                                                     sys.exit(main())                                                                                                                                                                                           
  File "/usr/local/lib/python3.10/dist-packages/sarwaveifrproc/main.py", line 82, in main                                                                                                                      
    process_files(input_safe, output_safe, model_intraburst, model_interburst, scaler_intraburst, scaler_interburst, bins_intraburst, bins_interburst, predicted_variables, product_id)                        
  File "/usr/local/lib/python3.10/dist-packages/sarwaveifrproc/utils.py", line 164, in process_files                                                                                                           
    l2_product = generate_l2_wave_product(xdt, model_intraburst, model_interburst, scaler_intraburst, scaler_interburst, bins_intraburst, bins_interburst, predicted_variables)                                
  File "/usr/local/lib/python3.10/dist-packages/sarwaveifrproc/l2_wave.py", line 39, in generate_l2_wave_product                                                                                               
    ds_intraburst = generate_intermediate_product(xdt['intraburst'].ds, intraburst_model, intraburst_scaler, intraburst_bins, predicted_variables, kept_variables)                                             
  File "/usr/local/lib/python3.10/dist-packages/sarwaveifrproc/l2_wave.py", line 69, in generate_intermediate_product                                                                                              tiles_stacked = tiles.stack(all_tiles = ['burst', 'tile_line','tile_sample'], k_phi = ['phi_hf', 'k_gp'])                                                                                                  
  File "/usr/local/lib/python3.10/dist-packages/xarray/core/dataset.py", line 5279, in stack                                                                                                                   
    result = result._stack_once(dims, new_dim, index_cls, create_index)                                                                                                                                        
  File "/usr/local/lib/python3.10/dist-packages/xarray/core/dataset.py", line 5193, in _stack_once                                                                                                                 shape = [self.sizes[d] for d in vdims]                                                                                                                                                                     
  File "/usr/local/lib/python3.10/dist-packages/xarray/core/dataset.py", line 5193, in <listcomp>                                                                                                                  shape = [self.sizes[d] for d in vdims]                                                                                                                                                                     
  File "/usr/local/lib/python3.10/dist-packages/xarray/core/utils.py", line 427, in __getitem__                                                                                                                    return self.mapping[key]                                                                                                                                                                                   
KeyError: 'burst'    
agrouaze commented 6 months ago

fixed in #6