Enable Sentinel-1 Extra Wide (EW) SLC compatibility #153
Open
abradley60 wants to merge 4 commits into
Open
Conversation
unit tests and data for EW mode
This was referenced Jul 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Enable Sentinel-1 Extra Wide (EW) SLC compatibility
Rationale
These changes are needed to enable Sentinel-1 EW burst compatibility with S1 reader. It is an important resource in polar regions, where processing EW SLC data can enable new scientific insights. Like the IW mode, Sentinel-1 EW SLC's contain information at the burst level which is useful for processing when complex data is required. The changes extend the software's capabilities and should not impact any existing behaviour. These changes are a pre-requisite for enabling EW burst processing in other software tools such as https://github.com/GeoscienceAustralia/RTC.
Changes Overview
iwandewmodes, inferred from the SAFE filename. The main structural difference is subswath count (3 for IW, 5 for EW).S1BurstId.from_burst_paramsnow computes burst IDs for either mode using the appropriate timing constants and reference subswath offset.T_beam_ew,T_pre_ew. IW related timings have kept original namings (e.g.T_beam).ew3_mid_rangefield onSentinel1BurstSlc: AnOptional[float]field appended as the last dataclass field for backwards compatibility. EW bursts populate it and leaveiw2_mid_rangeasNone. IW bursts do the reverse. Thebistatic_delayproperty branches on whichever is set.constants.pymodule: HoldsSENSOR_MODE_SUBSWATHSandSENSOR_MODE_MID_SWATHas a standalone module to avoid circular imports.s1_infogains an--ewflag.burst_from_xmlargumentew3_annotation_pathis keyword-only with defaultNone;ew3_mid_rangeis the final dataclass field.