Refactoring DSWx-S1 codebase to be more generic and multi-product focused
Proposed Changes
[ADD] DISP-S1 support
Simulating complete frames checks for CSLC-S1 (see function map_cslc_bursts_to_frames)
Basic validation against delivered DISP-S1 granules, not yet tested to be working but work-in-progress (see function map_cslc_bursts_to_frames)
New CLI support for DISP-S1: see lines 792 through 810
[CHANGE] DSWx-S1 oriented CLI
[REMOVE] Old CLI python file that was specifically for dswx-s1 in place of a more general python script
Issues
944
Testing
Function map_cslc_bursts_to_frames tested locally
Example invocation for getting list of DISP frames that should be processed according to the logic of having complete CSLC burst coverage between a start and end time:
% python opera_validator.py --start "2024-07-18T21:49:22Z" --end "2024-07-18T23:51:00Z" --endpoint_daac_output UAT --timestamp TEMPORAL --validate --product DISP-S1 --disp_s1_burst_to_frame_db opera-s1-disp-burst-to-frame.json --disp_s1_frame_to_burst_db opera-disp-s1-consistent-burst-ids-with-datetimes.json
Total granules: 323
Querying CMR for time range 2024-07-18T21:49:22Z to 2024-07-18T23:51:00Z.
Purpose
Proposed Changes
map_cslc_bursts_to_frames
)map_cslc_bursts_to_frames
)792
through810
Issues
944
Testing
map_cslc_bursts_to_frames
tested locallyFetching granules: 100%|████████████████████████████████████████████████████████████████████████| 323/323 [00:00<00:00, 351.39it/s]
Granule fetching complete. Frame ID All Possible Bursts Count Matching Bursts Count 40032 27 27 40033 27 27 40034 27 27 40039 24 24 40025 27 27 40026 27 27 40029 27 27 40030 27 27 40031 27 27