goestools: assertion failure: Expected to extract mode and channel from file name
I’ll try to poke at this later, but just making a record of this here for now
terminate called after throwing an instance of 'std::runtime_error'
what(): Assertion `rv == 2` failed at /nas/achin/devel/goestools/src/goesproc/handler_goesr.cc:29, Expected to extract mode and channel from file name (OR_ABI-L2-RRQPEF-M6_G16_s20191981650398_e20191981700106_c20191981700191.lrit)
Aborted
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Reactions: 2
- Comments: 27 (13 by maintainers)
Commits related to this issue
- Don't crash on files without channel number Non-CMIP products started coming down in July 2019 where there is no such thing as a channel number. Also see #57. — committed to pietern/goestools by pietern 5 years ago
- Try to extract region from ancillary text header first The region field in the ancillary text header was originally ignored and the code only used the file name to determine the region information. T... — committed to pietern/goestools by pietern 5 years ago
This is awesome guys!
I took the fix and threw a bunch of refactoring on top to hopefully arrive at the same functionality you’re getting now, but with the addition of a
productsconfigurable in the configuration.Some relevant commits:
producttooriginto make room for a newproductsconfigurable that’s used for the actual L2 product names.productsfield and indeed extracts the product name from the filename as @eminence suggested earlier in this thread. I didn’t find any other place where it is encoded. I would have expected it to sit in the ancillary text header tbqh.productsfield for the handler to pick it up (and to differentiate between CMIP and non-CMIP handlers), but instead can have one withproducts = [ "cmip" ]and another withproducts = [ "^cmip" ]. Of course you can still list them out if you want to use different directories, filenames, etc.I ran the following configuration against a few sample L2 LRITs and it looks like it works:
I’m working on the lookups now, here’s a pair of examplers for RRQPEF and LSTF: https://imgur.com/a/peEYjTE