Enumeration code for ARIA S1 GUNW products
>>> from asf_enumeration import aria_s1_gunw
>>> frames = aria_s1_gunw.get_frames(flight_direction='ASCENDING', path=175)
>>> frames[0]
AriaFrame(id=27236, path=175, flight_direction='ASCENDING', polygon=<POLYGON ((30.157 1.767...>)))
>>> acquisitions = aria_s1_gunw.get_acquisitions(frames[0])
>>> acquisitions[0]
Sentinel1Acquisition(date=datetime.date(2014, 10, 17), frame=AriaFrame(...), products=[<asf_search.ASFProduct>])In order to easily manage dependencies, we recommend using dedicated project environments via Anaconda/Miniconda or Python virtual environments.
asf_enumeration can be installed into a conda environment with:
conda install -c conda-forge asf_enumeration
or into a virtual environment with:
python -m pip install asf_enumeration
These are the main data classes used by the asf_enumeration.aria_s1_gunw module
AriaFramewhich represents all metadata associated with a ARIA frame (id, path, flight direction and it's polygon)Sentinel1Acquisitionwhich represents all available Sentinel-1 SLC's over an ARIA frame on a specific date (products, date, frame)
The asf_enumeration.aria_s1_gunw module exposes these functions
get_framesget all ARIA frames based on filter critiria (geometry, flight direction, path)get_frameget a single ARIA frame based on it's IDget_acquisitionsget all Sentinel-1 acquisitions for a given ARIA frame sorted by dateget_acquisitionget a Sentinel-1 acquisition for a given ARIA frame and dateget_productget an ARIA product for a given reference date, secondary date, and ARIA frame, if the product existsproduct_existscheck if an ARIA product exists in the ASF archive given reference date, secondary date, and ARIA frame
aria_s1_gunw.get_frames allows for filtering based on any shapely.Geometry, as well as flight_direction and path
frames_over_point = aria_s1_gunw.get_frames(geometry=shapely.Point(122.78, -8.55))
frames_filtered = aria_s1_gunw.get_frames(flight_direction='DESCENDING', path=2)A single frame can be looked up using aria_s1_gunw.get_frame
frame = aria_s1_gunw.get_frame(100)aria_s1_gunw.get_acquisitions returns all the Sentinel-1 acqusitions over a ARIA frame. It takes either the ARIA frame ID or an AriaFrame object as input.
acquisitions_frame_id = aria_s1_gunw.get_acquisitions(9852)
frame = aria_s1_gunw.get_frame(9852)
acquisitions_frame_obj = aria_s1_gunw.get_acquisitions(frame)An acquisition for a specific date can be found using aria_s1_gunw.get_acquisition
single_acquisition = aria_s1_gunw.get_acquisition(frame=9852, date=datetime.date(2014, 11, 3))aria_s1_gunw.get_product gets an ARIA product from the ASF archive if it exists.
# S1-GUNW-D-R-163-tops-20250527_20250503-212910-00121E_00010S-PP-07c7-v3_0_1
product = aria_s1_gunw.get_product(datetime.date(2025, 5, 27), datetime.date(2025, 5, 3), 25388)aria_s1_gunw.product_exists checks if an ARIA product already exists in the ASF archive
# S1-GUNW-D-R-163-tops-20250527_20250503-212910-00121E_00010S-PP-07c7-v3_0_1
aria_s1_gunw.product_exists(datetime.date(2025, 5, 27), datetime.date(2025, 5, 3), 25388)- Install git and conda.
- Clone the repository.
git clone [email protected]:ASFHyP3/asf-enumeration.git cd asf-enumeration - Create and activate the conda environment.
conda env create -f environment.yml conda activate asf-enumeration - Run the tests.
pytest